The Engineering Design of Systems Models and Methods

  • Slides: 85
Download presentation
The Engineering Design of Systems: Models and Methods Buede Chapter 6 – Requirements and

The Engineering Design of Systems: Models and Methods Buede Chapter 6 – Requirements and Defining the Design Problem And a little bit of Wasson Ch 52 MG 587 Systems Engineering 1

Let’s review…. • Overall goal is to specify and ultimately build a large, complex

Let’s review…. • Overall goal is to specify and ultimately build a large, complex system. – Missions to Mars being an example. – Or, maybe, redesigning Verizon’s network. – Too big to expect our favorite, Agile methods to work well, all by themselves. • So, we use a ‘systems approach’ to develop documentation and a ‘model’ for the system. • Start with stakeholder input. • The systems model has many sections that describe as much as we can about the system – written, visual, and graphical. • The process followed is key to a successful outcome. • Linkages between sections/components is key to a successful outcome. 2

Key topics for this week 1. 2. 3. 4. 5. 6. 7. 8. Your

Key topics for this week 1. 2. 3. 4. 5. 6. 7. 8. Your HW for this week – 2 A and 2 B (project). – Alternative ways to represent stuff, vs IDEF 0. How’s all this is different from Agile, and why. – The SEI article you read, week 2 (see schedule). Review of how we get to originating requirements. – The ones from the customer All about requirements – – – Different types Where they come from How to write them The rules, regs, and connections between operational concept, ESD (External Systems Diagram), objectives hierarchy, and requirements. A detailed look at the elevator case study Examples – – ATM System (homework) Lawnmower (a little discussion in class) Airbus “fly by wire” (separate slide set) Ulrich & Eppinger’s view of assessing customer needs. – What’s the terminology & process in the rest of engineering? 3

Your HW for this week • Feel free to show and tell directly. –

Your HW for this week • Feel free to show and tell directly. – Let’s do 2 A first, then 2 B (your project). – How did you choose the ways to represent the ATM? • Next week – the project assignment is to do the same thing for your project. • HW 3 is to do some requirements – convert to Agile. 4

Alternative ways to show stuff, from IDEF 0 • How about vs the External

Alternative ways to show stuff, from IDEF 0 • How about vs the External Systems Diagram and their sequence diagrams? – Suggest that we have a “Domain Model” that does a lot of what the ESD does. – And our System Sequence Diagrams are very similar. 5

Typical Software “Domain Model” This one’s for a health insurance plan… 6

Typical Software “Domain Model” This one’s for a health insurance plan… 6

Typical “System Sequence Diagram” As it says, this one’s for a sales transaction. 7

Typical “System Sequence Diagram” As it says, this one’s for a sales transaction. 7

Another, with more “swim lanes” Basic course of action for a whole “Enroll in

Another, with more “swim lanes” Basic course of action for a whole “Enroll in Seminar” use case. 8

How this differs from Agile • The SEI article on SE and Agile… •

How this differs from Agile • The SEI article on SE and Agile… • Buede’s view – Careful analysis – Organization – Weighing tradeoffs (gets into defining design) • Wasson’s view (see slides 63 - 66) – It’s all about tradeoffs! • Ulrich & Eppinger’s view (2 nd slide set) – We’ll look at specific examples, and try to turn them into user stories! 9

The SEI article… • “Agile Software Teams: How they Engage with Systems Engineering on

The SEI article… • “Agile Software Teams: How they Engage with Systems Engineering on Department of Defense Acquisition Programs” • SE has an important product side and service side. • Possible ways to handle differences: – Agile software engineering teams interacting with traditional systems engineering teams operating on that traditional systems engineering V model – systems engineers acting as Agile team members – systems engineering teams actually applying Agile methods to their own work and systems engineering functions 10

The SEI article, cntd • A whole list of successes and challenges. – E.

The SEI article, cntd • A whole list of successes and challenges. – E. g. , pilot programs to figure out what works. – Stakeholder involvement is important. – Coming to agreement about evolving requirements • Tonight’s topic! – Aligning the program roadmap with agile increments. • It will all require SE’s to understand Agile better. 11

Buede, Ch 6: Two concepts for “Requirements” 1. ‘Originating or Stakeholder Requirements’ – collection

Buede, Ch 6: Two concepts for “Requirements” 1. ‘Originating or Stakeholder Requirements’ – collection of information, scenarios, sketches, prose to describe what a system should do. 2. ‘Requirements’ – the written statements that describe inputs, outputs, and other aspects of system performance. 3. In either case, goal is to collect and describe stakeholder wants/needs, system vision, mission, constraints, and performance objectives. Build the Right System 12

Typical of SE – Two Levels of Requirements Stakeholder Requirements CI’s are “Configuration Items”

Typical of SE – Two Levels of Requirements Stakeholder Requirements CI’s are “Configuration Items” Figure 6. 1 13

Originating/Stakeholder Requirements Development Stakeholder Requirements Figure 6. 11 14

Originating/Stakeholder Requirements Development Stakeholder Requirements Figure 6. 11 14

The Big Picture – Redux Functional Architecture Operational Architecture Stakeholder Requirements Derived Requirements and

The Big Picture – Redux Functional Architecture Operational Architecture Stakeholder Requirements Derived Requirements and Flowdown Physical Architecture State Transition Diagram Interfaces Risk Analysis and Documentation 15

Life Cycle ORD (Originating Requirements Development) Requirements must be developed for each phase of

Life Cycle ORD (Originating Requirements Development) Requirements must be developed for each phase of the system’s life cycle. The life cycle phases used in this book are: 1. Development (design and integration) 2. Manufacturing or production 3. Deployment 4. Training 5. Operations, maintenance, and support 6. Refinement 7. Retirement These seven functions should be applied to each stakeholder group and phase of the system’s life cycle. Note that some of these phases may not be relevant for some systems. Most of the discussion from here on out will focus on the operations, maintenance, and support phase. 16

17

17

The Importance of Requirements Is this also a problem for Agile? Heck yes! The

The Importance of Requirements Is this also a problem for Agile? Heck yes! The first iteration(s) mostly get risk out. They don’t “produce” much of anything! 18

Where do requirements come from ? Pragmatic Principle 1 [De. Foe, 1993] Know the

Where do requirements come from ? Pragmatic Principle 1 [De. Foe, 1993] Know the Problem, the Customer, and the Consumer 1. Become the “customer/consumer advocate/surrogate” throughout the development and fielding of the solution. 2. Begin with a validated customer (buyer) need - the problem. 3. State the problem in solution-independent terms. 4. Know the customer’s (or buyer’s) mission or business objectives. 5. Don’t assume that the original statement of the problem is necessarily the best, or even the right one. 6. When confronted with the customer’s need, consider what smaller objective(s) is/are key to satisfying the need, and from what larger purpose or mission the need drives; that is, find at the beginning the right level of problem to solve. 7. Determine customer priorities (performance, cost, schedule, risk, etc. ). 8. Probe the customer for new product ideas, product problem/shortfalls, identification of problem fixes. 9. Work with the customer to identify the consumer (user) groups that will be affected by the system. 10. Use a systematic method for identifying the needs and solution preferences of each customer group. 11. Don’t depend on written specifications and statements of work. Face-to-face sessions with the different customer/consumer groups are necessary. 12. State as much of each need in quantified terms as possible. However, important needs for which no accurate or quantified measure exists still must be explicitly addressed. 13. Clarify each need by identifying the power and limitations of current and projected technology relative to the customer’s larger purpose, the environment, and ways of doing business. Pragmatic Principles 2 and 3 are on slides 81 and 83! 19

Roles & Responsibilities in Requirements Generation Who has the right to have an operational

Roles & Responsibilities in Requirements Generation Who has the right to have an operational requirement? Any individual/organization with an operational need involved in the development (design and qualification), production, deployment, training, operation, maintenance, support, refinement, decommissioning of and payment for the system. What does one call a requirer? Customer or stakeholder. Who must respond to the requirer(s) having a requirement and how? By what criteria does the systems requirements team respond? System’s requirements team, a collection of stakeholders and systems engineers. Response is acceptance, request for clarification, or rejection. This team establishes the external systems diagram and fundamental objectives hierarchy of the system, and then determines if the requirement fits within the scope of the system’s boundary and fundamental objective. 20

Roles & Responsibilities in Requirements Generation, Cont. How does one know that the requirement

Roles & Responsibilities in Requirements Generation, Cont. How does one know that the requirement is "right"? There is no right or wrong, only acceptable or unacceptable at this time. Over time, some of the system’s originating requirements will change. How are these requirements conveyed to the people who get involved once a requirer has enunciated a requirement? The system’s requirements team documents the collection of originating requirements. This Originating Requirements Document (ORD) is distributed to the stakeholders and systems engineers. Included in this document is a discussion of the operational concept of the system and the external systems and context associated with the system, that is, how each stakeholder expects to interact with the system. By reviewing the originating requirements document each stakeholder can see how the requirement suggested fits into the envisioned operation of the system, and can judge whether this vision makes sense from her/his perspective. 21

SE Design How To Talk To Stakeholders (Sound familiar? ) • Ulrich and Eppinger

SE Design How To Talk To Stakeholders (Sound familiar? ) • Ulrich and Eppinger guidelines – – – Start with Usage Scenarios (Use Cases) Ask ‘context free’ questions (what not how) Ask to observe them during “stressful” periods Give them drafts to modify Give them prototypes or choices (eye doctor) Work with them in groups From Ulrich and Epppinger’s Product Design and Development. 22

Requirements Categories Figure 6. 4 24

Requirements Categories Figure 6. 4 24

Requirements Categories Buede Textbook Raytheon 1. Input/Output 2. Technology and System Wide 3. Trade

Requirements Categories Buede Textbook Raytheon 1. Input/Output 2. Technology and System Wide 3. Trade Offs 4. Qualification 1. 2. 3. 4. Performance Environmental Interface Design Constraints 25

Requirements Categories for an Medical Device – FDA Related 3. 0 Requirements – 3.

Requirements Categories for an Medical Device – FDA Related 3. 0 Requirements – 3. 1 Physical – 3. 2 Human Factors – 3. 3 Electrical • 3. 3. 1 Power • 3. 3. 2 Interfaces – – – 3. 4 User Interface 3. 5 Functional 3. 6 Product Performance 3. 7 Diagnostic and Calibration 3. 8 Environmental – – – 3. 9 Safety 3. 10 Manufacturing 3. 11 Serviceability 3. 12 Reliability 3. 13 Quality 3. 14 Cost 3. 15 Labeling 3. 16 User Documentation 3. 17 Regulatory 3. 18 Shipping 3. 19 Accessories 26

Stakeholder Requirements Document (Stakeholder Requirements) Figure 6. 5 1. 0 System Overview 2. 0

Stakeholder Requirements Document (Stakeholder Requirements) Figure 6. 5 1. 0 System Overview 2. 0 Applicable Documents 3. 0 Requirements 3. 1 Development Phase (Programmatic) Requirements 3. 1. 1 Input/Output Requirements for Development. . . 3. 1. 4 Qualification Requirement for Development 3. 2 Manufacturing Phase Requirements. . . 3. 3 Deployment Phase Requirements. . . 3. 4 Training Phase (if present) Requirements. . . 3. 5 Operational Phase Requirements 3. 5. 1 Input/Output Requirements for Operations 3. 5. 1. 1 Input Requirements for Operations 3. 5. 1. 2 Output Requirements for Operations 3. 5. 1. 3 External Interface Requirements for Operations 3. 5. 1. 4 Functional Requirements for Operations 3. 5. 2 System-wide/Technology Requirements for Operations 3. 5. 3 Trade-off Requirement for Operations 3. 5. 4 Qualification Requirement for Operations 3. 6 System Improvement/Upgrade Phase Requirements. . . 3. 7 Retirement Phase Requirements. . . 3. 8 Overall Trade-Off Requirement Appendix A. Operational Concepts by Phase Appendix B. External System Diagrams by Phase 27

Exemplary Requirement Dimensions Input or Output performance • Presence of an Input or Output

Exemplary Requirement Dimensions Input or Output performance • Presence of an Input or Output • Quality of an output Part of a Scenario – – – Accuracy (or precision) Correctness (or confidence, error rate) Security (or perishability, survivability) – – – Intensity, size, or distance Number per unit time (throughput, velocity) Coverage (area or volume served by outputs) – – – Response time (timeliness, time to create an output) Update frequency Availability • Quantity of an output • Timing of outputs Table 6. 2 28

Exemplary Requirement Dimensions • Undesired or unexpected inputs – Unexpected or undesired inputs and

Exemplary Requirement Dimensions • Undesired or unexpected inputs – Unexpected or undesired inputs and appropriate response – Bounds on expected inputs and appropriate response Table 6. 2 29

Exemplary Requirement Dimensions Interface requirements • Required format of an input or output as

Exemplary Requirement Dimensions Interface requirements • Required format of an input or output as defined by the interface • Timing constraint associated with an interface • Physical form or fit of an interface Table 6. 2 30

Exemplary Requirement Dimensions Quality Attribute (‘-Ility’) issues: • • • Usability Weight of the

Exemplary Requirement Dimensions Quality Attribute (‘-Ility’) issues: • • • Usability Weight of the system Form (volume) and fit (dimensions) of the system Survivability of the system Availability, reliability, maintainability of the system Supportability of the system Safety of the system Security Trainability of the system Testability of the system Extensibility (expected changes/growth potential) of the system Table 6. 2 Customer Needs – Engineering Specifications 31

Exemplary Requirement Dimensions Costs for various life-cycle phases • Affordability (or operating and maintenance

Exemplary Requirement Dimensions Costs for various life-cycle phases • Affordability (or operating and maintenance cost) of the system • Development cost • Production cost (manufacturability) of the system • Deployment and training costs of the system • Decommissioning cost of the system Table 6. 2 32

Exemplary Requirement Dimensions Schedule for various life-cycle phases • Development period • Manufacturing time

Exemplary Requirement Dimensions Schedule for various life-cycle phases • Development period • Manufacturing time for each unit • Training time to reach proficiency by category of user • Deployment period • Durability (or operational life) of the system Table 6. 2 33

Characteristics of Sound Requirements Individual Requirement Attributes 1. Unambiguous – every requirement has only

Characteristics of Sound Requirements Individual Requirement Attributes 1. Unambiguous – every requirement has only one interpretation 2. Understandable – the interpretation of each requirement is clear 3. Correct – a requirement the system is in fact required to do 4. Concise – no unnecessary information is included in the requirement 5. Traced – each requirement is traced to some document or statement of the stakeholders 6. Traceable – each derived requirement must be traceable to an originating requirement via some unique name or number 7. Design independent – each requirement does not specify a particular solution or a portion of a particular solution 8. Verifiable – a finite, cost-effective process has been defined to check that the requirement has been attained Table 6. 3 34

Characteristics of Sound Requirements Attributes of the Set of Requirements 9. Unique – requirement(s)

Characteristics of Sound Requirements Attributes of the Set of Requirements 9. Unique – requirement(s) is (are) not overlapping or redundant with other requirements 10. Complete – (a) everything the system is required to do throughout the system’s life cycle is included, (b) responses to all possible (realizable) inputs throughout the system’s life cycle are defined, (c) the document is defined clearly and self-contained, and (d) there are no to be defined (TBD) or to be reviewed (TBR) statements; completeness is a desired property but cannot be proven. Together, “Unique” and “Complete” will “partition” the requirements space, into chunks of functionality that suggest how the solution might look. Partitioning below is available from http: //www. lockersnmore. com/toiletpartitions-phenolic. php. 11. Consistent – (a) internal, no two subsets of requirements conflict and (b) external, no subset of requirements conflicts with external documents from which the requirements are traced 12. Comparable – the relative necessity of the requirements is included 13. Modifiable – changes to the requirements can be made easily, consistently (free of redundancy) and completely 14. Attainable – solutions exist within performance, cost and schedule constraints Table 6. 3 35

Writing Requirements • Terminology – “Shall” to indicate the limiting nature of a requirement

Writing Requirements • Terminology – “Shall” to indicate the limiting nature of a requirement (*) – Statements of fact use “will” – Goals use “should” • Requirements statement shall include – – A subject (the relevant life-cycle system) The word ‘shall’ A relation statement (e. g. , less than or equal to) The minimum acceptable threshold with units • Avoid – compound predicates – negative predicates – ambiguous descriptors 36

Examples of Requirements • The development system shall receive inputs from stakeholders. (Input requirement)

Examples of Requirements • The development system shall receive inputs from stakeholders. (Input requirement) • The manufacturing system shall have a scrap rate of x%. (Output requirement) • The deployment system shall accept boxes of x ft 3. (Input requirement) • The training system shall complete training in x hours. (Output requirement) • The operational system shall have an operational life of x years. (System wide schedule requirement). • The refinement system shall accept new technology for the central processing unit. (Input requirement) • The retirement system shall cost less than $x. (System wide cost requirement) The fun part is we get to take a legalistic approach……… 37

SE Design ‘Writing Good Requirements’ • Proper Grammar The system shall stop the flow

SE Design ‘Writing Good Requirements’ • Proper Grammar The system shall stop the flow of liquid hydrogen in 0. 5 seconds or less. The liquid stopping time is measured from the time the control signal for stopping is received until the flow through reaches zero. • Avoid Compound Predicates The system shall fit. . . , weigh. . . , cost. . . (this causes traceability problems). • Avoid Negative Predicates The system shall not. . . (attempt to turn this into a positive statement of what the system shall do). • Avoid Ambiguous Terms – Verbs: “optimize, ” “maximize, ” and “minimize” – Adjectives: “adaptable, ” “adequate, ” “easy, ” “flexible, ” “rapid, ” “robust, ” “sufficient, ” “supportable, ” and “user-friendly” 38

40 meters 39

40 meters 39

SE Design When to Stop Seeking Requirements • As late as possible – Requirements

SE Design When to Stop Seeking Requirements • As late as possible – Requirements evolve over time as the world changes – Emergent requirements are new, undiscovered, often critical • Standish Group (1996) – Requirement related difficulties were responsible for 34 to 44 percent of project failures – $81 B in ‘ 95 and $100 B in ‘ 96 were spent on cancelled IT products 40

So, it’s a slippery slope… • Systems engineer knows the customer better than the

So, it’s a slippery slope… • Systems engineer knows the customer better than the developers • His/her role is to translate what the customer really wants into something the developers can understand • Every aspect of that role is critical! Here’s your development team executing from the requirements, in a perfectly syncrhonized interpretation! From http: //www. youcanski. com/en/. 41

Elevator case study Let’s take a detailed look at the elevator case study Matt

Elevator case study Let’s take a detailed look at the elevator case study Matt saw this last week! There really are multiple ways to move people up and down. See this video of a continuous, vertical elevator, at http: //www. youtube. com/ watch? v=Zx 3 MHm 9 Wj. B E. 42

Elevator case study Operational Concept • Vision • Mission Requirements • Usage Scenarios Kennedy

Elevator case study Operational Concept • Vision • Mission Requirements • Usage Scenarios Kennedy “Put a man on the moon and bring him Otis “Put a man on the top floor by the end of a back safely by the end of the decade” minute” Defines Justification for and Use of the System Figure 6. 6 43

Elevator case study Usage Scenarios Passengers (including mobility, visually, and hearing challenged) request up

Elevator case study Usage Scenarios Passengers (including mobility, visually, and hearing challenged) request up service, receive feedback that their request was accepted, receive input that the elevator car is approaching and then that an entry opportunity is available, enter elevator car, request floor, receive feedback that their request was accepted, receive feedback that door is closing, receive feedback about what floor at which elevator is stopping, receive feedback that an exit opportunity is available, and exit elevator with no physical impediments. Figure 6. 7 Collections of Scenarios become ‘Features’ Input/Output Trace, Sequence Diagram 44

Elevator case study External Systems Diagram • Composite of all scenarios • Shows –

Elevator case study External Systems Diagram • Composite of all scenarios • Shows – System and External Systems – Flow of Items • From external systems to system • From system to external systems • From context to system – Trace Through All Scenarios, I/O Traces Defines Boundary of the System 45

Elevator case study Elevator External Systems Diagram Figure 6. 8 46

Elevator case study Elevator External Systems Diagram Figure 6. 8 46

Elevator case study External Systems Diagram • Special Rules 1. All of the outputs

Elevator case study External Systems Diagram • Special Rules 1. All of the outputs of the system’s function (the elevator in this case) have to go to at least one of the external systems’ functions on the page and cannot exit the diagram 2. Each of the external systems must receive at least one output of our system; otherwise, the system should be part of the context 3. Must be able to ‘trace out’ the operating scenarios (I/O traces) on the diagram 47

Objectives Hierarchy • The ‘objectives hierarchy’ of a system are the goals/objectives that are

Objectives Hierarchy • The ‘objectives hierarchy’ of a system are the goals/objectives that are important to the stakeholders in a ‘value’ sense – pay more for higher performance or other benefit. Schedule / Cost / Performance 48

Cost vs. Performance • How I value cost and performance – along with constraints

Cost vs. Performance • How I value cost and performance – along with constraints that exist - determine whether I buy (or build) a: – – Ferrari 458 Italia coupe Rolls Royce Ghost Ford Mustang Honda Civic Interesting questions: Which one is least expensive? Which one has the best maintenance record? 49

Objectives Hierarchy - cntd • ‘Objective’ : Key performance parameter – Minimum acceptable threshold

Objectives Hierarchy - cntd • ‘Objective’ : Key performance parameter – Minimum acceptable threshold • Level below which entire system is unacceptable • Often defined too tightly – Desired performance level • Often bounded by technology constraints • Hierarchy integrates all objectives • Weighted Trade Offs Defines Performance Space for Design Solution 50

Elevator Objectives Hierarchy Elevator case study (from text) I love this figure! Why don’t

Elevator Objectives Hierarchy Elevator case study (from text) I love this figure! Why don’t we do this in software? Figure 6. 9 51

Objective Hierarchy and Trade Space Larger area, looser constraints, easier to find a solution

Objective Hierarchy and Trade Space Larger area, looser constraints, easier to find a solution Smaller area, tighter constraints, harder to find a solution How big is the solution set for the design ? 52

Four categories of requirements 1. Input/Output • • Input Output Functional Interface 2. Technology

Four categories of requirements 1. Input/Output • • Input Output Functional Interface 2. Technology and System-wide 3. Trade Offs 4. Qualification Where does each category come from ? ? 53

Defining Input/Output Requirements • The external systems diagram is the primary tool • The

Defining Input/Output Requirements • The external systems diagram is the primary tool • The systems engineering team must examine each input, control, and output in detail to discover every requirement associated with each of these items – Every input, control and output should have at least one requirement – There should be at least one “performance” requirement for each major system output • Interface constraints address the physical aspects of the interface to which the system has to connect to obtain the inputs and disseminate the outputs • The functional requirements should be the two to six functions that partition the system function 54

Elevator case study Exemplary Input/Output Requirements • The elevator shall receive “calls” from all

Elevator case study Exemplary Input/Output Requirements • The elevator shall receive “calls” from all floors of the building. (Input requirement) • The elevator shall indicate to a prospective passenger that he/she has successfully called the elevator. (Output requirement) • The elevator shall use a standard phone line from the building for emergency calls. (External interface requirement) 55

System-wide & Technology Requirements • Technology requirements are the ones that engineers would prefer

System-wide & Technology Requirements • Technology requirements are the ones that engineers would prefer not to have because they really do constrain the engineering creativity and should result from the other requirements if they are justifiable • Table 6. 2 provides a list of common suitability issues • A cost requirement deals with payment of money during the appropriate life-cycle phase for the system in question to be useful • A schedule requirement deals with a timing issue for the relevant system for the phase of life cycle in question • There should be a “performance” requirement for – The major suitability issues – The major cost issue – The major schedule issue 56

Usability Testing • • • Obtaining samples of users Elicit their reactions about their

Usability Testing • • • Obtaining samples of users Elicit their reactions about their needs & desires as they interact with prototypes Learnability • Efficiency • Memorability • Error rate • Satisfaction – Time to master a defined efficiency level, e. g. , 50 words per minute – Time to master a defined skill, e. g. , cut and paste – Time for a frequent user to complete a defined task – Rate of producing a defined set of products for a frequent user – Time for a casual user to complete a defined task – Time for a casual user to achieve previously achieved rate of production – Number of errors of a specific type in a given period for a given task – Stress level associated with use – Fun level associated with use 57

For a lot more on usability… • Check your interaction design book, from CSSE

For a lot more on usability… • Check your interaction design book, from CSSE 571: 58

Some customer wants/requests are imprecise and unclear How to clarify! Technical Specifications Customer wants,

Some customer wants/requests are imprecise and unclear How to clarify! Technical Specifications Customer wants, needs, and requests Imprecise and unclear [Macauley, 1996]. House of Quality How do we translate ‘easy to use’ into engineering specifications ? How do we translate ‘I want a blue system’ into engineering specifications ?

Bicycle Fork Example 60

Bicycle Fork Example 60

Trade-off Requirements • Incorporates value judgments within and across stakeholders • Sample many stakeholders

Trade-off Requirements • Incorporates value judgments within and across stakeholders • Sample many stakeholders • Bill payer ultimately responsible for integration across stakeholders • See chapter 13 for details – value functions 61

Elevator Objectives Hierarchy Elevator case study (from Case) How do we construct the Objectives

Elevator Objectives Hierarchy Elevator case study (from Case) How do we construct the Objectives Hierarchy ? ? The system shall achieved the highest weighted score combining the weighted performance and cost as shown in the objectives hierarchy. The relative weights of the cost and performance requirements are 0. 1 and 0. 9, respectively. The elevator system shall have an average wait for service (time interval between elevators) of less than 35 seconds. The design goal is 27 seconds. The elevator system shall have an average passenger transit time in the elevator car of no larger than 90 seconds. The design goal is 60 seconds. Figure 6. 9 With the Requirements !! 62

Wasson Trade Space Example 63

Wasson Trade Space Example 63

Wasson Trade Space Example - cntd 64

Wasson Trade Space Example - cntd 64

Objectives Hierarchy and Trade Space Larger area, looser constraints, easier to find a solution

Objectives Hierarchy and Trade Space Larger area, looser constraints, easier to find a solution Smaller area, tighter constraints, harder to find a solution How big is the solution set for the design ? ? There may be no solution !! 65

Wasson’s whole trade study process 66

Wasson’s whole trade study process 66

Qualification Requirements • Observance: how the measurements for every input/output and system-wide requirement will

Qualification Requirements • Observance: how the measurements for every input/output and system-wide requirement will be obtained, that is - test, analysis and simulation, inspection, or demonstration • Verification plan: how the qualification data will be used to determine that the real system conforms to the design that was developed • Validation plan: how the qualification data will be used to determine that the real system complies with the originating requirements • Acceptance plan: how the qualification data will be used to determine that the real system is acceptable to the stakeholders 67

Originating Requirements Development Figure 6. 11 68

Originating Requirements Development Figure 6. 11 68

Requirements Management 1. Identification, derivation, allocation & control of requirements, 2. In a consistent,

Requirements Management 1. Identification, derivation, allocation & control of requirements, 2. In a consistent, traceable, correlatable, verifiable manner, 3. Of all the system functions, attributes, interfaces, and verification methods, 4. That a system must meet. 69

Elevator case study Fitting it Together Recall the Elevator example… (slide 55) 70

Elevator case study Fitting it Together Recall the Elevator example… (slide 55) 70

Doing this well • Detail oriented • Consider all possibilities • Everything ties together

Doing this well • Detail oriented • Consider all possibilities • Everything ties together • Think about how it will be interpreted by others • An elegance about the structure, connections, graphical representations, and overall visual appeal. 71

Examples HW 3 Exercise ATM Sample Requirements 1. What’s important? 2. What types of

Examples HW 3 Exercise ATM Sample Requirements 1. What’s important? 2. What types of requirements? 3. What additional ones are needed from the ESD (External Systems Diagram), or whatever you used for HW 2 A? See separate file with ATM requirements! 72

Examples Class Exercise? On. Star Case • What are key requirements, from the scenarios

Examples Class Exercise? On. Star Case • What are key requirements, from the scenarios and ESD. See separate file with On. Star Case study! 73

On. Star ESD Examples 74

On. Star ESD Examples 74

Examples Traceability – backward and forward 75

Examples Traceability – backward and forward 75

Examples Class Exercise? (See sub-directory for this week) Lawnmower – Here We Mow Again

Examples Class Exercise? (See sub-directory for this week) Lawnmower – Here We Mow Again - Case • Review the operating scenarios – comments ? – Enough, too many, right ones ? – Functional vs. physical descriptions ? – Inputs/outputs are nouns ? • Does the ESD follow from the scenarios ? • Review the requirements – comments ? . See separate directory with Lawnmore requirements! 76

Requirements – other SE views MIL-STD 499 B [Military Standard, 1993]: identifies the accomplishment

Requirements – other SE views MIL-STD 499 B [Military Standard, 1993]: identifies the accomplishment levels needed to achieve specific objectives. Chambers and Manos [1992]: the attributes of the final design that must be a part of any acceptable solution to the design problem. Davis [1993]: a user need or necessary feature, function, or attribute of a system that can be sensed from a position external to that system. Grady [1993]: an essential attribute for a system or an element of a system, coupled by a relation statement with value and units information for the attribute. Harwell et al. [1993]: “If it mandates that something must be accomplished, transformed, produced, or provided, it is a requirement period. ” 77

Originating Requirements Development Figure 6. 3 78

Originating Requirements Development Figure 6. 3 78

Pragmatic Principle 2 [De. Foe, 1993] Use Effectiveness Criteria Based on Needs to Make

Pragmatic Principle 2 [De. Foe, 1993] Use Effectiveness Criteria Based on Needs to Make System Decisions 1. Select criteria that have demonstrable links to customer/consumer needs and system requirements. a. Operational criteria: mission success, technical performance b. Program criteria: cost, schedule, quality, risk c. Integrated Logistic Support (ILS) criteria: failure rate, maintainability, serviceability 2. Maintain a “need-based” balance among the often-conflicting criteria. 3. Select criteria that are measurable (objective and quantifiable) and express them in well-known, easily understood units. However, important criteria for which no measure seems to exist, still must be explicitly addressed. 4. Use trade offs to show the customer the performance, cost, schedule, and risk impacts of requirements and solutions variations. 5. Whenever possible, use simulation and experimental design to perform trade offs as methods that rely heavily on “engineering judgment” rating scales are more subject to bias and error. 6. Have the customer make all value judgments in trade offs. 7. Allow the customer to modify requirements and participate in developing the solution based on the trade offs. 81

House of Quality Technical Specifications Customer wants, needs, and requests Imprecise and unclear [Macauley,

House of Quality Technical Specifications Customer wants, needs, and requests Imprecise and unclear [Macauley, 1996]. How do we translate ‘easy to use’ or ‘blue’ into engineering specifications ?

Pragmatic Principle 3 [De. Foe, 1993] Establish and Manage Requirements 1. Identify and distinguish

Pragmatic Principle 3 [De. Foe, 1993] Establish and Manage Requirements 1. Identify and distinguish between specified (fundamental or essential), allocated, implied and derived requirements. 2. Carry analysis and synthesis to at least one level broader and deeper than seems necessary before settling on requirements and solutions at any given level. (Top down is a better recording technique than it is an analysis or synthesis technique. ) 3. Write rationale for each requirement. The attempt to write rationale for a “requirement” often uncovers the real requirement. 4. Ensure the customer and consumer understand accept all the requirements. 5. Explicitly identify and control all the external interfaces the system will have - signal, data, power, mechanical, parasitic, and the like. Do the same for all the internal interfaces created by the solution. 6. Negotiate interfaces with affected engineering staff on both sides of each interface and get written agreement by the two parties before the customer approves the interface documentation. 7. Document all requirements interpretations in writing. Don’t count on verbal agreements to stand the test of time. 8. Plan for the inevitable need to correct and change requirements as insight into the need and the “best” solution grows during development. 9. Be careful of new fundamental requirements coming in after the program is underway. They invariably have a larger impact than is obvious. 10. Maintain requirements traceability. 83

Modeling/Prototyping • A physical model of the system that – Ignores certain aspects of

Modeling/Prototyping • A physical model of the system that – Ignores certain aspects of the system – Glosses over other aspects – Is fairly representative of a third segment of aspects of the system • Throwaway prototypes developed for – Educating the users about the possibilities – Extracting requirements from the users based upon their needs • Evolutionary prototypes – Built for these educational and requirements development purposes as well – Will eventually be turned into a working version of the system 84

The Next Moon Mission Examples Unmanned 2008, Manned 2020 ‘Apollo’ looking 86

The Next Moon Mission Examples Unmanned 2008, Manned 2020 ‘Apollo’ looking 86

Examples The Next Moon Mission 87 looking ‘Space Shuttle’

Examples The Next Moon Mission 87 looking ‘Space Shuttle’

Examples The Next Moon Mission The Apollo Concept 88

Examples The Next Moon Mission The Apollo Concept 88

So, what SE requirements tools could you use? • In addition to Agile things

So, what SE requirements tools could you use? • In addition to Agile things we do now? • Which ones could be translated into our terms? 89