ECE362– Principles of Design The System Engineering Process Systems Copyright © 2003, International Centers for Telecommunication Technology, Inc. 1 Unit Overview • • • • The systems challenge System concepts and terms Diagrams for systems Actors, boundaries, interfaces Copyright © 2003, International Centers for Telecommunication Technology, Inc. 2 >>The Systems Challenge<< The Man-Made World Is Increasingly Populated by Systems • Transportation, Energy & Power Systems • Manufacturing, Construction Systems • Telecommunication Networks • Man-Made Biological, Health, and Personal Care Systems • Facility, Properties • Business Processes • Other Man-Made and Natural Systems Copyright © 2003, International Centers for Telecommunication Technology, Inc. 3 >>The Systems Challenge<< These Systems Are Becoming More Complex • Under pressure of demand & competition • Enabled by progress in technology • Becoming more complex at exponentially growing rates Copyright © 2003, International Centers for Telecommunication Technology, Inc. 4 >>The Systems Challenge<< The Growth Of Systems Complexity Eventually Can Outpace Human Ability To: • • • • • • Describe Predict Manage Monitor Configure Evolve • • • • • • Understand Install Operate Repair Maintain Account For • • • • • • Communicate About Design and Implement Manufacture Diagnose Control Maintain Security Of Those Systems must be produced . . . Copyright © 2003, International Centers for Telecommunication Technology, Inc. 5 >>The Systems Challenge<< . . . At Least Within Reasonable: • Time • Cost • Effort • Sense of Security from Risk Copyright © 2003, International Centers for Telecommunication Technology, Inc. 6 Systematica Metaclass The system perspective • A System is a collection of interacting Components : Interaction Relationships System Components Copyright © 2003, International Centers for Telecommunication Technology, Inc. 7 What does “interact” mean? • Components are said to interact if one one component can impact the state of another. • Components that do not impact each others’ states are said to be isolated or non-interacting. Interacting Interactions Impact Component States System Non-interacting Components Copyright © 2003, International Centers for Telecommunication Technology, Inc. 8 What does “state” mean? • The state of a component helps determine its externally visible future interactive behavior. • States are values of component state variables, such as: • • • • • • • Temperature, Pressure, Density Position, Velocity, Acceleration Happiness, Frustration, Satisfaction Profitability Voltage, Current Asleep, Awake Empty, Full Components and systems have states. System Components Copyright © 2003, International Centers for Telecommunication Technology, Inc. 9 Systems may use any technology • • • • • • • Mechanical Electronic Software Chemical Thermodynamic Human organizations Biological Copyright © 2003, International Centers for Telecommunication Technology, Inc. 10 Example system • System: Semi-trailer truck hauling freight • Components: engine, power train, suspension, lubrication system, fuel system, braking system, electrical system, cab, trailer, navigation system, communication system, software modules • Interactions: mechanical support, electrical power dependency, control interaction, mechanical drive, thermal interaction Copyright © 2003, International Centers for Telecommunication Technology, Inc. 11 Example system • System: Telecommunication services system • Components: telephones, modems, workstations, transmission links, circuits, switches, base stations, communication sessions, software, customer requests, billing systems, customer analysts • Interactions: electrical & optical physical interactions, symbolic trunk status signaling, mechanical mounting support, power dependency, fault propagation Copyright © 2003, International Centers for Telecommunication Technology, Inc. 12 Subsystems • A Component can itself be a System • This just means the Component has Components. • This makes it a Subsystem of the first system. • This can continue indefinitely. • Where does it stop? System Subsystem Copyright © 2003, International Centers for Telecommunication Technology, Inc. 13 Where does it stop? • It does not stop — we do! • These are modeling constructs—ideas in our heads. • We are using the System Perspective: • How we have chosen to think about a system. System Subsystem Copyright © 2003, International Centers for Telecommunication Technology, Inc. 14 Is everything a system? • Is a rock a system? – Does it have parts? Interactions? – If you are a geologist, a rock is a system: • Strata, crystals, chemical interactions, pressures – But, if you are using the rock in your slingshot, this is not useful to know! – Different people need different models for different purposes – Views of models Copyright © 2003, International Centers for Telecommunication Technology, Inc. 15 What to model? • In model based systems engineering, it is not enough for a model to be correct: – We also have to ask if a model is useful to us. – We only need to model what is useful, to sort out requirements, plan designs, communicate specifications, verify behavior, etc. – There is a tendency of new modelers to model too much, to include too much detail …. so watch out! Copyright © 2003, International Centers for Telecommunication Technology, Inc. 16 The System Perspective • Some definitions of the concept of system include not only: – that there are components, – and that there is a framework of interaction relationships, • but also these additions: – that a system exists for a purpose and has a body of rules about it. Interaction Relationships System Components Copyright © 2003, International Centers for Telecommunication Technology, Inc. 17 The System Perspective • Systematica formally models intelligence and the actual management of systems, including both man-made and natural systems: – So, we consider ideas such as “purpose” and “rules” to be part of other (extended) systems that we will model later in this workshop, including use of other Metaclasses. – Thus, we only need to remember that a system is a collection of components and their interaction relationships: Interaction Relationships System Components Copyright © 2003, International Centers for Telecommunication Technology, Inc. 18 Naming and defining systems • Systems have names and definitions: – System name: a brief noun phrase – System definition: one or a few sentences • Example: – System name: Acme Model 17 Lawnmower – System definition: The lawnmower product model sold by Acme Lawnmower Company for mid-range commercial applications. Copyright © 2003, International Centers for Telecommunication Technology, Inc. 19 Logical Systems • A Logical System is a system identified based solely upon its required functionality (its behavior as seen by external systems interacting with it), and not based upon how it achieves that functionality internally or its identity or physical make-up. Environment System Copyright © 2003, International Centers for Telecommunication Technology, Inc. 20 Logical Systems • Logical Systems are typically named and defined without reference to proper names (product, people, organization names). They are typically defined without reference to their physical composition (unless--in a few cases--this is a part of the externally required behavior). General name for a TYPE of system. Environment System Copyright © 2003, International Centers for Telecommunication Technology, Inc. 21 Logical Systems • Example of Logical System: – Engine System: An Engine System converts atmospheric air and chemical fuel into rotating mechanical power for use by other machine subsystems. Environment System Copyright © 2003, International Centers for Telecommunication Technology, Inc. 22 Physical Systems • A Physical System is a system defined based upon its physical identify or physical composition. Physical Systems may be given proper names, such as names of commercial products, corporate systems, people, organizations, buildings, etc., i.e. a SPECIFIC system. Copyright © 2003, International Centers for Telecommunication Technology, Inc. 23 Physical Systems • Examples of Physical Systems: – Model 3406 Engine – Building 407 – Program Module 1750 Copyright © 2003, International Centers for Telecommunication Technology, Inc. 24 Physical and Logical Systems • A Logical System is equivalent to a functional role. • Physical Systems may be assigned responsibilities to perform roles that are Logical Systems. Example of Logical System: Engine System: An Engine System converts atmospheric air and chemical fuel into rotating mechanical power for use by other machine subsystems. Example of Physical Systems: Model 3406 Engine: The Engine System sold by Caterpillar Inc. into the mid-range industrial market. Copyright © 2003, International Centers for Telecommunication Technology, Inc. 25 Physical and Logical Systems • What is are examples of RHIT ECE physical systems? – – – – ECE 300 Course ECE 320 Course ECE 340 Course ECE 360 Course • What are example RHIT ECE logical systems? – – – – Communications systems sequence Control systems sequence Electromagnetics sequence Design sequence Copyright © 2003, International Centers for Telecommunication Technology, Inc. 26 System diagrams • Formal diagram notation: – UML subset--UML class/object diagrams • Frequently used system diagrams: – – – – System environment diagram System domain diagram System logical architecture diagram System physical architecture diagram (physical deployment diagram) Copyright © 2003, International Centers for Telecommunication Technology, Inc. 27 System diagrams • System environment diagram: To illustrate the systems (called “actors”) outside a “subject system”, with which it interacts. • System domain diagram: To illustrate the important relationships between the actors for a subject system (domain knowledge). Copyright © 2003, International Centers for Telecommunication Technology, Inc. 28 Actors, boundaries, interfaces • Actors: The systems external to a subject system, with which it directly interacts. • System Boundaries: The set of all actors for a subject system constitutes its formal boundary. This is often informally illustrated with a line boundary dividing the system from its environment: Environment System Copyright © 2003, International Centers for Telecommunication Technology, Inc. 29 Actors, boundaries, interfaces • System Interfaces: We will formally define interfaces in a later unit, but show their graphical appearance for now. Interfaces Environment System Copyright © 2003, International Centers for Telecommunication Technology, Inc. 30 States • A State is a system condition, situation, or mode, that has existence for a length of time. The state of a system determines in part its future behavior. • The time history of states of systems can be described using “trajectories” of states: – finite state machines, or – continuous paths in phase space. State transition diagrams, or (UML) state charts, can be used to graphically describe finite state machines. State B causal event 1 causal event 2 State C State A causal event 3 Copyright © 2003, International Centers for Telecommunication Technology, Inc. 31 States • State transitions are graphically illustrated links indicating the passage of a system from one state to another. • Events are occurrences in time. • Events can be modeled as the cause of state transitions, by labeling state transition lines with event names. Event Name State B causal event 2 State Transition causal event 1 State State C State A causal event 3 Copyright © 2003, International Centers for Telecommunication Technology, Inc. 32 Lawn mower example lawnmower started Starting Servicing service complete Idling disengage mowing service request received start request received Shut Down Normal Mowing engage mowing shut down initiated normal shut down completed Shutting Down overheat recovery complete overheated shutdown completed Overheat Recovering Lawnmower State Copyright © 2003, International Centers for Telecommunication Technology, Inc. 33 Organizing functions with states • Functions can be associated with states. – This is a way to indicate what functional interactions are required to occur during certain situations (that is, “when” they should occur in time) – This is a way to connect the (software engineering) “use case method” to state and function modeling techniques Copyright © 2003, International Centers for Telecommunication Technology, Inc. 34 Lawnmower example Starting Functions: 1. Start (w/i 10 seconds of turning key) 2.Check Starting Interlocks (blades must be disengaged) 3. Noise control (conform to ASPE 102.3 noise guidelines) 4.Emission control (conform to EPA 11.2 emission guidelines) Mowing Functions: 1.Cut grass (to operator determined length) 2. Noise control (conform to ASPE 102.3 noise guidelines) 4.Emission control (conform to EPA 11.2 emission guidelines) Copyright © 2003, International Centers for Telecommunication Technology, Inc. Shutting Down Functions: 1. Disengage blades 2. Shut down engine 35 ECE362 Principles of Design The System Engineering Process Requirements Environment System Copyright © 2003, International Centers for Telecommunication Technology, Inc. 36 Requirements Overview • This unit overlaps and utilizes the ideas of the previous units, to assemble the metaclasses into requirements supporting structures, emphasizing the HLR Process. • Content: – – – – – Requirements versus design High level requirements (HLR) process Detail level requirements (DLR) process Analysis: decomposition of functions, states, systems Assembling specification documents Copyright © 2003, International Centers for Telecommunication Technology, Inc. 37 Requirements-design iteration Available Technologies Customer/Market Needs Design Specification (“Design”) Requirements Specification (“Analysis”) design impacts requirement structure refinement Copyright © 2003, International Centers for Telecommunication Technology, Inc. refinement 38 Engineering processes • This section will particularly focus on model-based methodology for representing high level requirements and high level design frameworks. Copyright © 2003, International Centers for Telecommunication Technology, Inc. 39 Requirements (or PDS) • Statements at external boundary of subject system • What we want the system to be or do Environment System Copyright © 2003, International Centers for Telecommunication Technology, Inc. 40 Design • Statements about internal physical components and their interaction relationships • How we are going to meet requirements Environment System Copyright © 2003, International Centers for Telecommunication Technology, Inc. 41 Interfaces • Connect internal components to external components or actors • Help us group attributes and behaviors seen externally Environment System Copyright © 2003, International Centers for Telecommunication Technology, Inc. 42 Inside vs. outside Requirement statement Design statement Detailed design statement Detailed requirement statement More detailed requirement Requirements statement Environment Design More detailed Interfaces design statement System Detail does not equal design Copyright © 2003, International Centers for Telecommunication Technology, Inc. 43 Inside vs. outside, continued • Reference boundaries • One person’s design is another person’s requirement Environment System Copyright © 2003, International Centers for Telecommunication Technology, Inc. 44 An SE benefits “sweet spot” • The High Level Requirements (HLR) and High Level Design (HLD) processes require less time and effort than their detailed counterparts. – However, there is typically a very high return on this investment. • Many organizations utilize extensive detailed specifications, but don’t have HLR and HLD specifications. – This means that there is not a unifying framework structure, shared mentally by all concerned, that simplifies and organizes the detailed specifications. – HLR/HLD is a “sweet spot” in the SE process, because it can rapidly begin digging an organization out of problems caused by this lack. Copyright © 2003, International Centers for Telecommunication Technology, Inc. 45 Generic HLR Process • Generic (unconfigured) HLR Processes: – – – – – – – – Identify Stakeholder (Customer) Needs Process Refer to process framework Identify System Environment Process drawings in handouts. Identify Features, Services Process Identify Use Cases Process Identify Functions Process Identify Scenarios Process Analyze Logical Architecture Process Repository and Specification Assembly Process (Validation and verification are associated with most of these processes) Copyright © 2003, International Centers for Telecommunication Technology, Inc. 46 Identify stakeholder needs • Stakeholders are people or organizations with an interest (stake) in the system being specified: – – – – – – – Customers Users Operators Maintainers Company Owners Regulators Others Copyright © 2003, International Centers for Telecommunication Technology, Inc. 47 Identify system environment • System environment diagram: – Subject System--system whose requirements are to be specified – Actors--interacting systems external to the Subject System • Boundary defines system by defining what it is not--listing the external interacting actors • Often harder than it looks: – Often skipped as “obvious” – Later source of confusion Actor Actor Actor Copyright © 2003, International Centers for Telecommunication Technology, Inc. Actor Subject System Actor 48 Identify system environment • Domain diagram identifies relationships between actors that are important to system requirements • Explicitly models “domain knowledge” about the environment • Establishes the semantics of the subject system specification to follow Actor Actor Actor Copyright © 2003, International Centers for Telecommunication Technology, Inc. Actor Subject System Actor 49 ECE362 – Principles of Design The System Engineering Process High Level Design Environment System Copyright © 2003, International Centers for Telecommunication Technology, Inc. 61 Unit Overview • • • • • • Inside versus outside Design decomposition, synthesis High level design is physical architecture Tracing requirements to design Detail design Host Company standard design architectural patterns Copyright © 2003, International Centers for Telecommunication Technology, Inc. 62 Inside versus outside Requirements • Statements at the external boundary – What we want the system to be or do, seen externally Environment System Copyright © 2003, International Centers for Telecommunication Technology, Inc. 63 Inside versus outside Design • Statements about internal physical components and their interaction relationships – How we are going to meet requirements Environment System Copyright © 2003, International Centers for Telecommunication Technology, Inc. 64 Inside versus outside Inside versus outside Requirement statement Design statement Detailed design statement Detailed requirement statement More detailed requirement Requirements statement Environment Design More detailed Interfaces design statement I I System Detail does not equal design Copyright © 2003, International Centers for Telecommunication Technology, Inc. 65 Inside versus outside Inside vs. outside, continued • Reference boundaries • One person’s design is another person’s requirement Environment System Copyright © 2003, International Centers for Telecommunication Technology, Inc. 66 Inside versus Outside In the following sections, we will refine our understanding of the meaning of “inside” and “outside”, by considering: – System boundaries and interiors (“who”) – Function boundaries and interiors (“what”) – State boundaries and interiors (“when”) Copyright © 2003, International Centers for Telecommunication Technology, Inc. 67 Uniform bookkeeping language • There is a tendency to record designs in a different language from that used to express requirements. – In particular, to record designs in technology-specific languages • This causes problems of communication and understanding across groups and job functions. – Technology-specific language can cloud the structure of a design, and obscure its connection to requirements. • Remember, what is a design for one person is a requirement for another, so language ought not shift. Copyright © 2003, International Centers for Telecommunication Technology, Inc. 68 Uniform bookkeeping language • A big surprise: High level designs can be recorded in exactly the same language as requirements: – Who: who are the internal components? – What: what are the functional interactions between these components? – When: when do these interactions occur? • This is the same language that expressed interactions of the subject system with its external environment/actors. • This improves communication and understanding. • In particular, it makes tracing external requirements to internal architecture much easier--improving everyone’s understanding. Copyright © 2003, International Centers for Telecommunication Technology, Inc. 69 Uniform bookkeeping language • This does not prevent us from recording detail designs in technology-specific languages--and we should do so; e.g., – – – – electronic schematics program design mechanical drawings hydraulic schematics • But, it means that each such design should have its high level design (physical architecture) recorded in the uniform language of system engineering. – This expresses high level organization as a framework for later detail design, and across different technologies that must be integrated. – It connects design to the requirements it supports. Copyright © 2003, International Centers for Telecommunication Technology, Inc. 70 Design Decomposition • System decomposition divides a system into sub-systems: – dividing who does things; pulls apart systems • Functional decomposition divides a function into sub-functions: – dividing what gets done; pulls apart functions • State decomposition divides a state into sub-states: – dividing when things happen; pulls apart time Copyright © 2003, International Centers for Telecommunication Technology, Inc. 71 Function Allocation • Function Allocation allocates the “whats” to the “whos” and “whens”: – which sub-systems perform which function roles (who) – in which sub-states functions are to occur (when) Copyright © 2003, International Centers for Telecommunication Technology, Inc. 72 Decomposition: Synthesis and Analysis • There are infinitely many ways to divide and allocate these. • This division process is synthesis--often a creative act. – May be viewed as a kind of unfolding of the structure of the system, in three (or more) dimensions. Copyright © 2003, International Centers for Telecommunication Technology, Inc. 73 Decomposition: Synthesis vs. Analysis We check potential solutions by analysis, to see if they meet requirements. Available Technologies Customer/Market Needs Requirements Specification (“Analysis”) Design Specification (“Design”) design impacts requirement structure refinement refinement Copyright © 2003, International Centers for Telecommunication Technology, Inc. 74 Synthesis • Synthesis is challenging when there is no familiar design pattern (decomposition) that satisfies the given requirements. • Known patterns of architecture, or even known useful components, can help this process. – This can include analogy • A family pattern of architecture for the subject system can help even more: – Changes the problem from synthesis to re-use, configuration, and analysis Copyright © 2003, International Centers for Telecommunication Technology, Inc. 75 Synthesis methods • More synthesis methods become available constantly: – – – – – – Design for Six Sigma (DFSS) / IDDOV Robust Design™, Taguchi Methods™ TRIZ™ Technology specific synthesis methods and tools Toolbox of design patterns known to work Legacy architecture and available components • We are often not free to synthesize “clean sheet”: – Legacy architecture, available components, existing manufacturing and support frameworks are constraints – Incremental evolution and punctuated equilibrium Copyright © 2003, International Centers for Telecommunication Technology, Inc. 76 Synthesis methods • While differing in specifics, all these methods have same goals: – Establish a set of internal physical subsystems and their organizing framework of interactions – Allocation of external interactions (functional requirements) to them – Optimization of trade-offs to meet various objectives and constraints • So, even though different methods may produce different design solutions, the form of the information they produce is the same: – The high level design of the system – And allocation of requirements onto that architecture Environment System Copyright © 2003, International Centers for Telecommunication Technology, Inc. 77 Functional analysis vs. synthesis • The term “analysis” is used in two different ways: – Requirements analysis (or functional analysis): • Analyzes the functional requirements of a system, decomposing them into logical architecture that is still short of a design, but begins to hint at a design. • This is the logical architecture discussed in the Requirements unit. – Analysis of design: • After a design has been synthesized, this kind of analysis studies the characteristics of that design – e.g., by simulation, mathematics, reasoning, constructing prototypes, etc. • These are certainly not the same thing! Copyright © 2003, International Centers for Telecommunication Technology, Inc. 78 Functional requirements • Functional requirements are the relationship between system inputs and system outputs : – In linear systems, this reduces to the system’s transfer function. – Most systems aren’t linear, but the general statement still holds for all of them. – This relationship is therefore encoded in words, tables, graphs, mathematics, fuzzy statements, and other forms. – But, it is still the formal relationship of inputs to outputs: Input 1 Actor A Actor B Output X Output Y Subject System Input 3 Actor C Input 2 Domain Interaction Copyright © 2003, International Centers for Telecommunication Technology, Inc. 79 Example: PID Controller (proportional, integral, derivative) – The diagram expresses the external mathematical relationships of inputs and outputs—equivalent to a differential equation. – But, this does not say whether the result is to be obtained by allocation onto analog electronics, a DSP chip, a mechanical Bush Differential Analyzer, a block oriented simulator, nor the order of differentiation and integration around the loop. – It expresses external requirements, not internal design. Subject System Proportional K1 Operator Differentiator + - K2 * S + Controlled Plant Integrator K3 / S Copyright © 2003, International Centers for Telecommunication Technology, Inc. 80 Implications for creative design solutions • “Thinking outside the box” has come to mean thinking of solutions to requirements that are outside of expected paradigms. • Suppose instead that you let “the box” stand for the boundary of the Subject System. • If you draw a logical architecture inside the box, you are really expressing a way of thinking about the external functional relationships. • Different decompositions suggest different design solutions when these are allocated onto physical components. • So, you can “think outside the box” (think about external relationships) by drawing inside the box! Subject System Input 1 Actor A Output X Logical Role L Logical Role M Output Y Input 3 Actor C Logical Role K Actor B Input 2 Copyright © 2003, International Centers for Telecommunication Technology, Inc. Domain Interaction 81 Functional Decomposition Functions are pulled apart (decomposed) into sub-functions for different reasons: – Design Reasons: • Creating algorithms to obtain functional results: Allocation of sub-functions to different states in time. • Allocation of sub-functions to different system components responsible for performing them • Allocation of responsibility for different sub-functions to different engineers – Non-Design Reasons (during Requirements phase): • Explanatory: function is too complex to understand/communicate well • Part of the function is a common requirement to be reused in other functions Copyright © 2003, International Centers for Telecommunication Technology, Inc. 82 “Pulling Apart” Requirements Into Functional Components Functional Decomposition Function • Functions can be “pulled apart” into Sub-functions • Not all functional decomposition is for design. Actor (Recall decomposition of functions in the analysis process.) Actor Function Actor Internal View Component Subject System Sub-Function • Internal view components connect sub-functions There are many different ways to decompose the same Function Copyright © 2003, International Centers for Telecommunication Technology, Inc. 83 Functional Decomposition Function: Calling Function • Sub-functions are “contained in” Functions • Functions are “composed Actor of” sub-functions Actor Actor • Function.Subfunction Sub-Function – Calling.Ringing Subject System – Loading.Lifting • This is a containment hierarchy • The same function can be contained in more than one function (re-used as a requirement) Copyright © 2003, International Centers for Telecommunication Technology, Inc. 84 System Decomposition: “Pulling Apart” Systems Function Synthesis of Design Components: – – – The Subject System is “pulled apart” into interacting design components These are assigned to implement the sub-functions This is design decomposition Actor Function – There are infinitely may different ways to pull the same system apart into design components Allocation of Functions: – – – Individual roles of functions are allocated to design components The roles are the named diamond corner connectors A single role is only assigned to one component Actor Actor Roles Subject System Sub-Systems (Components) Copyright © 2003, International Centers for Telecommunication Technology, Inc. Subject System 85 Allocation of Function Roles – – – – – – A single role is only assigned to one component A single function may have its multiple roles allocated across multiple components • In this case, the components interact Or, the function may have all its roles assigned to a single component • In this case, the function is internal to the Actor component--not visible to components with which it interacts One component can implement more than one role, and more than one function. All this may revise our original functional decomposition Even though we drew the Function diamond outside the Subject System, its implementing subfunctions are all allocated to components internal to the Subject System Function Actor Function Actor Roles Subject System External Roles: – Copyright © 2003, International Centers for Telecommunication Technology, Inc. Sub-function roles associated with Function external roles connect to external Actors 86 State Decomposition: “Pulling Apart” Time Function • • • • • • We started this whole process with a single State, that was a Use Case (Situation) for the Subject System. Our original Function(s) described outcome requirement(s) that must be met in that Use Case (State). The Function was decomposed into Subfunctions, and allocated to design components. That design may also specify an “algorithm”--that the sub-functions be allocated to different sequential steps over time to construct the function outcome. This “pulls apart” the sub-functions in time These new steps describe a state machine of sub-states of the original Use Case state. Actor Function Actor Actor Sub-Function Subject System Original Use Case State Original Use Case State Substate 1 Substate 2 Substate 3 Copyright © 2003, International Centers for Telecommunication Technology, Inc. 87 State Decomposition: “Pulling Apart” Time • There are infinitely many different ways to “pull apart” the original Use Case state into sub-states. • This may include concurrent state machines that communicate by events. Function Actor Original Use Case State Function Actor Actor Substate 1 Substate 2 Sub-Function Substate 3 Subject System Original Use Case State Substate 4 Substate 5 Original Use Case State Substate 1 Substate 2 Original Use Case State Substate 1 Substate 2 Substate 3 Substate 3 Copyright © 2003, International Centers for Telecommunication Technology, Inc. 88 State Decomposition: “Pulling Apart” Time Allocation of functions to states: • Remember that the original State was itself a Use Case for the whole Subject System. • Each new sub-state is now itself a Use Case (Situation) requirement on an internal design component. • So, we have “pulled apart” the original Use Case state into a set of related sub-state use cases--a decomposition in time coordinated with the decomposition of functions and the decomposition of the system. Function Actor Function Actor Actor Sub-Function Subject System Original Use Case State Substate 1 Substate 2 Function A Substate 3 Function B, C Function D Function E Substate 4 Copyright © 2003, International Centers for Telecommunication Technology, Inc. Substate 5 89 Repeating the Cycle • Since we have new use cases (sub-states) for the new functions (sub-functions) and new (internal design) components, we can repeat the cycle again, beginning with use case requirements on the new components. • This decomposition cycle repeats until we reach “small enough” components that we don’t have to design them. • This results in a containment hierarchy of: – Use Cases (sub-state containment hierarchy) – Functions (sub-function containment hierarchy) – Components (component containment hierarchy) • Don’t forget that this containment hierarchy is not the same as the class hierarchy--which can also exist for each. Copyright © 2003, International Centers for Telecommunication Technology, Inc. 90 High Level Design Is Architecture • Architecture is a listing of a system’s major components and relationships • Simple patterns to reduce complexity Copyright © 2003, International Centers for Telecommunication Technology, Inc. 91 Architecture: One Perspective “Have you ever looked at a modern airplane? Have you followed from year to year the evolution of its lines? Have you even thought, not only about the airplane but about whatever Man builds, that all of Man’s industrial efforts, all his computations and calculations, all the nights spent over working draughts and blueprints, invariably culminate in the production of a thing whose sole and guiding principle is the ultimate principle of simplicity? In anything at all, perfection is finally attained not when there is no longer anything to add, but when there is no longer anything to take away, when a body has been stripped down to its nakedness. Startling as it is that all visible evidence of invention should have been refined out of (the airplane) and that there should be delivered to us an object as natural as a pebble polished by the waves, it is equally wonderful that he who uses this instrument should be able to forget that it is a machine. And thus, the realities of Nature resume their pride of place. It is not with metal that the pilot is in contact. Contrary to the vulgar illusion, it is thanks to the metal, and by virtue of it, that the pilot rediscovers Nature. The machine does not isolate Man from the great problems of Nature, but plunges him more deeply into them.” - Antoine de Saint-Exupery, “Wind, Sand, and Stars” Copyright © 2003, International Centers for Telecommunication Technology, Inc. 92 Architecture: Another Perspective “Form ever follows function.” - Louis Sullivan (Building architect, father of the skyscraper, teacher of Frank Lloyd Wright.) Copyright © 2003, International Centers for Telecommunication Technology, Inc. 93 Types of architecture • A single system has multiple architectures. • Each architecture is a different view of what is considered to be the major components and relationships of a system. • Each view is from a different perspective: – Example: Architecture of a building, viewed by occupant, electrical/mechanical contractor, and janitorial services contractor. Copyright © 2003, International Centers for Telecommunication Technology, Inc. 94 Types of architecture • Examples of types of architecture: – – – – – – – Physical architecture Logical architecture Manufacturing architecture Shipping and storage architecture Service, maintenance, support architecture Embedded intelligence architecture Project architecture • “Views of Systems” Copyright © 2003, International Centers for Telecommunication Technology, Inc. 95 Architecture • These different architectures are not independent of each other. • When they are treated as independent, problems follow: – Conflicts between Engineering, Manufacturing, Service, Marketing, etc. • Different architectural views can be resolved through Correlation of Architectures. Copyright © 2003, International Centers for Telecommunication Technology, Inc. 96 Correlation and Tracing • Correlation, or tracing, relates different architectural views to each other. Copyright © 2003, International Centers for Telecommunication Technology, Inc. 97 Detail Design • Decomposition is repeated in successive stages • Detail Design follows High Level Design • Technology-specific aspects appear: – – – – Electronic parts Software modules Mechanical components etc. • Where system engineering meets technology specific engineering disciplines – The transition in the Systems Engineering “Vee” from systems engineering to discipline-specific engineering. Copyright © 2003, International Centers for Telecommunication Technology, Inc. 98 Systematica, Gestalt Rules, Return on Variation are trademarks of System Sciences, LLC. Copyright © 2003, International Centers for Telecommunication Technology, Inc. 99
© Copyright 2025 Paperzz