{"id":2361,"date":"2017-01-23T01:37:50","date_gmt":"2017-01-23T06:37:50","guid":{"rendered":"http:\/\/dwaynephillips.net\/workingup\/?p=2361"},"modified":"2017-01-11T08:41:39","modified_gmt":"2017-01-11T13:41:39","slug":"systems-engineering-and-interfaces","status":"publish","type":"post","link":"https:\/\/dwaynephillips.net\/workingup\/2017\/01\/systems-engineering-and-interfaces\/","title":{"rendered":"Systems Engineering and Interfaces"},"content":{"rendered":"<p>by Dwayne Phillips<\/p>\n<p><strong>Systems are commonly built by connecting smaller systems. This requires that the systems are connect-able, and that requires a defined interface.<\/strong><\/p>\n<p>Most of the time, we build systems by connecting large boxes together in a system diagram. There are exceptions, and another post will discuss some of those. Still, connect the boxes with lines and arrows and such. The boxes may represent hardware, software, or persons.<\/p>\n<p>To connect boxes, the boxes must be connect-able. This means the interfaces of the boxes must match. We can\u2019t connect a 110-volt electric outlet to a water hose. The interfaces don\u2019t match.<\/p>\n<p>The systems engineer is the person responsible for ensuring the interfaces match. Each box needs to have a defined interface. This documentation can take many forms (paper, audio, video, etc.), but it must exist. In technical terms, the defined interface is called an Interface Control Document or ICD. Again, it doesn\u2019t have to be a paper document, but it must exist.<\/p>\n<p>Some people think of the ICD as a contract. Others think of it as a UML diagram. Others think of it as a service-level agreement. All these work fine in the appropriate circumstances. The ICD should be visible and usable. There are no secrets here. The secrets are inside the boxes (what is there and how it works). The services provided by the box must be openly visible.<\/p>\n<p>This may seem obvious and common sense to most persons. It is not, however, common practice. Lots of angst on systems development occurs because the ICD is\u2026well, it doesn\u2019t exist and persons think it is bureaucratic nonsense.<\/p>\n<p>This is yet another answer to, \u201cWhy do we need someone called a systems engineer?&#8221;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>by Dwayne Phillips Systems are commonly built by connecting smaller systems. This requires that the systems are connect-able, and that requires a defined interface. Most of the time, we build systems by connecting large boxes together in a system diagram. There are exceptions, and another post will discuss some of those. Still, connect the boxes [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[119,32,115,48,58],"tags":[120,154,227,170,178],"class_list":["post-2361","post","type-post","status-publish","format-standard","hentry","category-adults","category-communication","category-engineering","category-general-systems-thinking","category-systems","tag-adults","tag-communication","tag-engineering","tag-general-systems-thinking","tag-systems"],"_links":{"self":[{"href":"https:\/\/dwaynephillips.net\/workingup\/wp-json\/wp\/v2\/posts\/2361","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dwaynephillips.net\/workingup\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dwaynephillips.net\/workingup\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dwaynephillips.net\/workingup\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dwaynephillips.net\/workingup\/wp-json\/wp\/v2\/comments?post=2361"}],"version-history":[{"count":1,"href":"https:\/\/dwaynephillips.net\/workingup\/wp-json\/wp\/v2\/posts\/2361\/revisions"}],"predecessor-version":[{"id":2362,"href":"https:\/\/dwaynephillips.net\/workingup\/wp-json\/wp\/v2\/posts\/2361\/revisions\/2362"}],"wp:attachment":[{"href":"https:\/\/dwaynephillips.net\/workingup\/wp-json\/wp\/v2\/media?parent=2361"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dwaynephillips.net\/workingup\/wp-json\/wp\/v2\/categories?post=2361"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dwaynephillips.net\/workingup\/wp-json\/wp\/v2\/tags?post=2361"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}