Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and...

22
SE Tutorial Interfaces - 1 version NDIA CMMI Conf v1.4 © 2004 Kasse Initiatives, LLC Interfaces Interfaces

Transcript of Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and...

Page 1: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

SE Tutorial Interfaces - 1version NDIA CMMI Conf v1.4© 2004 Kasse Initiatives, LLC

InterfacesInterfaces

Page 2: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 3: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 4: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 5: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 6: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 7: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 8: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 9: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 10: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 11: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 12: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 13: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 14: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 15: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 16: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 17: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 18: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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)

Page 19: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 20: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 21: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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

Page 22: Interfaces (module 09)€¦ · Hardware to Hardware Interfaces – Are functional or structural and can exist to perform a service, transfer information, translate force, or provide

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