interfaces (module 09)€¦ · hardware to hardware interfaces – are functional or structural and...
TRANSCRIPT
SE Tutorial Interfaces - 1version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
InterfacesInterfaces
SE Tutorial Interfaces - 2version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
The Importance ofThe Importance ofInterfacesInterfaces
�Interface development is a SystemsEngineering activity because of the basic needto break down large problems into manyrelated smaller ones�The smaller problems have interfaces between
them that must be compatible across all terminals�Interface – a point at which independent
systems or components meet and act orcommunicate with each other
�Interfaces can exist between system elements�Interfaces can also exist between a system
element and the system environment
SE Tutorial Interfaces - 3version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
The Importance ofThe Importance ofInterfacesInterfaces -- 22
�Interfaces can enhance system capability but atrade-off must be made between internal andexternal complexity�In Software Engineering, this is recognized in the
attempt to balance the concepts of cohesion andcoupling
�Interfaces between hardware and softwaremust be carefully examined due to the impactthose interfaces have on the design ofcomplex, software intensive systems
SE Tutorial Interfaces - 4version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
The Importance ofThe Importance ofInterfacesInterfaces -- 33
InternalInterfaces
MediaExternalInterface
Terminal 1 Terminal 2
Media
Types of Implementation Interfaces
SE Tutorial Interfaces - 5version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
The Importance ofThe Importance ofInterfacesInterfaces -- 44
�The characteristics of an interface will dependon the “type” of interface being considered�The previous Figure represents the conventional
view of an implementation interface between twoterminals or subsystems
�Interfaces should be permitted between multipleterminals
�Interfaces should be permitted to simply passthrough a terminal
�External interfaces to the environment in terms ofother products in the physical system would requirethe environment to be a terminal – the media wouldbe thought of as a conduit through whichinformation, energy, mass, etc. could pass through
SE Tutorial Interfaces - 6version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
The Importance ofThe Importance ofInterfacesInterfaces -- 55
�Interfaces should possess the capability to describea logical connection between terminals that have nophysical reality
�Interfaces must be properly described to a level ofdetail needed for detailed design
�An Interface Requirements Specification canrepresent the requirements or constraints of systeminterfaces, both internal and external, and caninclude both functional and external interfaces
SE Tutorial Interfaces - 7version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
Basic Type ofBasic Type ofInterfacesInterfaces
�There are two basic types of interfaces thatmust be considered� Organizational interfaces where Configuration
Management controls the transfer of configurationitems:� individual� project� customer� life-cycle phase
SE Tutorial Interfaces - 8version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
Basic Type ofBasic Type ofInterfacesInterfaces -- 22
� Technical interfaces where ConfigurationManagement holds descriptions like any otherconfiguration item such as:� system� user� software� hardware� communication
SE Tutorial Interfaces - 9version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
Common InterfacesCommon Interfaces
�Internal Interface – An internal interface residesinside the element of focus, including itsterminals, connectors and media
�External interface – An external interface to anelement will have at least one internal terminaland one external terminal�The media connecting the terminals will go across
the plane that separates the internal from theexternal terminal through a connector
�An external terminal can be an environment
SE Tutorial Interfaces - 10version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
Common InterfacesCommon Interfaces -- 22
�Functional Interface – Functional interfacesdescribe the role of an internal or externalinterface in terms of translating control,information, or energy across an interface
�Physical Interface – A physical interface is areal and tangible interface between physicalterminals or between a physical terminal andthe environment�Normally defined during the logical design phase
SE Tutorial Interfaces - 11version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
Common InterfacesCommon Interfaces -- 33
�Logical Interface – A logical interfacerepresents a logical connection betweenterminals�The logical interface is not real but does put
demands on the system such as resource utilization�A logical interface can also be viewed as an
abstraction between two elements that are logicallyconnected
�Environmental Interface – An interfacebetween a system or component and thenatural or induced environment�The environment may serve as a terminal and as
the media
SE Tutorial Interfaces - 12version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
Common InterfacesCommon Interfaces -- 44
�Dynamic Interface – Any interface whose terminal,connector, or media characteristics change over time�Can be state dependent�Can be time critical
�Hardware to Hardware Interfaces – Are functional orstructural and can exist to perform a service, transferinformation, translate force, or provide structure andsupport�Hardware interfaces are physical in that they are real objects
that touch the environment and media�The issues relating to hardware interfaces deal with the form
and fit of the hardware components and the functions theyperform
�Understanding these types of interfaces requires knowledgerelating to implementation engineering design principles
SE Tutorial Interfaces - 13version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
Common InterfacesCommon Interfaces -- 55
�Software Interfaces – Software interfaces canbe functional, informational, or environmental�Functional – Deals with the passing of control
elements�Informational – Deals with data�Environmental – Normally relates to human or
hardware interfaces
�Control interfaces are characterized bysoftware logic for decision making, processactivation, storage transition, and timinginvolving the storage, manipulation andmovement of other data types
SE Tutorial Interfaces - 14version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
Common InterfacesCommon Interfaces -- 66
�The most common software interface is the“user interface”�Most difficult to handle – must provide value and
have properties that permit users to obtain thefunctionality without significant difficulty
�Consider to be “external”�Systems that have no user interfaces are normally
embedded, real-time systems
SE Tutorial Interfaces - 15version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
Common InterfacesCommon Interfaces -- 77
�The complexity of the interactions between softwaremodules external to each module is called “Coupling”�Low coupling – data is transferred between two modules�High coupling – common data between modules is
shared�The goal for software integration is to keep the software
coupling as low as possible�Cohesion – a measure of the functional association
among the elements of a software component�Cohesion is considered the glue that holds the software
components together�Higher levels of cohesion are desirable
SE Tutorial Interfaces - 16version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
Common InterfacesCommon Interfaces -- 88
�Hardware to Software Interfaces – Softwareinterfaces occur through hardware media�Hardware receives and sends information to/from
software through some type of transducer thatchanges an electrical or electromechanical signalinto bits and vice-versa
�Bits are transferred through hardware media andstored in hardware such as magnetic memory or acache until it is made available to the software
�Hardware serves as the media in all softwareinterfaces
�Hardware such as processing, data transmission,and storage, buffering, display, and input are oftentransparent to the software developer
SE Tutorial Interfaces - 17version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
Common InterfacesCommon Interfaces -- 99
�Communication Interfaces� Communication interfaces include the interfaces
between the software modules and communicationhardware and software such as local area networkprotocols
� Communication interfaces are especially importantto take advantage of the emerging multi-mediacommunications industry
SE Tutorial Interfaces - 18version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
EIAEIA –– 632632Processes forProcesses for
Engineering a SystemEngineering a System(Demand for Care of Interfaces)(Demand for Care of Interfaces)
SE Tutorial Interfaces - 19version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
InterfacesInterfaces –– 632632
�Interface Management – System internal andexternal interfaces are maintained andcontrolled including the completion of interfacedefinition, assessments of compatibility,changes, and coordinations and approval inaccordance with the Interface ManagementPlan
SE Tutorial Interfaces - 20version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
InterfacesInterfaces –– 632632 -- 22
�Interface descriptions must be managed toensure that:�All internal and external, functional and physical
interfaces for a building block are identified, defined,assigned, documented and managed - includinghuman interfaces
�Building block design definitions are compatible interms of form, fit, and function
�Interfaces changes affecting the building block andaffected by the building block are controlled toprevent adverse consequences
�Interfaces should be managed and controlled in aninformation database
SE Tutorial Interfaces - 21version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
InterfacesInterfaces –– 632632 -- 33
�Logical solution representations – One or moresets of logical solution representations that areappropriate to the engineering life-cycle phaseand the system being engineered or re-engineered have been formed and defined andinclude:�Interfaces related to logical arrangements and
sequencing or derivative representations to include:� start and end of states� inputs and outputs defined
�Interface attributes identified and defined that triggera behavioral response, change of state or mode, ordata flow
SE Tutorial Interfaces - 22version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC
SummarySummary
� Interface – a point at which independent systems orcomponents meet and act or communicate with eachother
� Interface requirements include both logical andphysical interfaces – they include as necessaryphysical measurements, definitions of sequences ofenergy or information transfer and all other significantinteractions between items
� Internal Interface – an internal interface resides insidethe element of focus, including its terminals, connectorsand media
�External interface – an external interface to an elementwill have at least one internal terminal and one externalterminal