Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1.

Similar presentations


Presentation on theme: "Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1."— Presentation transcript:

1 Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1

2 © 2010 John Wiley & Sons Ltd. Chapter 11 Analyzing High-Level Requirements 2

3 Learning Goals Of This Chapter What are examples of customer wants? What does stakeholder vision mean? How do you interview for and document requirements? How does one write an “overview” section How do you write “main functions” and use cases? What agile methods are there for high- level requirements? How do you specify user interfaces at a high level? How does one frame security requirements? How do you use diagrams for high-level requirements? What are examples of high-level requirements in practice? Requirements analysis Design Implementation Testing Maintenance Planning The Software Development Lifecycle Phase most relevant to this chapter is shown in bold © 2010 John Wiley & Sons Ltd. 3

4 Encounter High-Level Requirements (1/2) Role-playing game which simulates all or part of the lifetime of the player's character. Game characters not under the player’s control called "foreign" characters. Game characters have a number of qualities such as strength, speed, patience etc. Each quality has a value Characters "encounter" each other when in the same area, and may then "engage" each other. 4

5 © 2010 John Wiley & Sons Ltd. Encounter High-Level Requirements (2/2) The result of the engagement depends on the values of their qualities and on the area in which the engagement takes place. Player characters may reallocate their qualities, except while a foreign character is present. Reallocation takes effect after a delay, during which the player may be forced to engage. Success is measured … by the "life points" maximum attained by the player - or - by living as long as possible. 5

6 © 2010 John Wiley & Sons Ltd. Before interview: 1. List and prioritize “customer” interviewees – most likely to determine project’s success 2. Schedule interview with fixed start and end times – at least two from development team should attend – prepare to record? At interview: 3. Concentrate on listening Don’t be passive: probe and encourage – persist in understanding wants and exploring needs – walk through use cases, also data flow? state diagrams? Take thorough notes 4. Schedule follow-up meeting for validation After interview: 5. Draft SRS high-level requirements using a standard 6. Contact customer for comments One Way to Handle Interviews 6

7 Use Cases for Encounter: UML Use Case Diagram Engage foreign character player designer Set rules actors Travel to adjacent area Initialize © 2010 John Wiley & Sons Ltd. 7

8 Initialize Use Case Scenario 1. System displays player’s main character in the dressing room. 2. System displays a window for setting his character's qualities. 3. Player allocates the qualities of his main character. 4. Player chooses an exit from the dressing room. 5. System moves player’s main character into the area on the other side of the exit. © 2010 John Wiley & Sons Ltd. 8

9 Qualities of a User Story 1.From user’s perspective 2.Discrete – Single functionality, feature or expectation – Not necessarily precise 3.Estimable – Developers can estimate required effort 4.Testable 5.Prioritized – by customer, in consultation 6.Can be fit in a single cycle 9

10 Splitting User Stories* 0.0 Will outperform all other vending machines not estimable 1.0 Payment. Accept all kinds of payments 2.0 Freshness. Sell no stale or outdated merchandise 3.0 Restocking. Automatically request restocking of items selling best in the area 4.0 …. 1.1 Accept coins 1.2 Accept currency 1.3 Accept debit card 1.4 Accept credit card 1.5 Accept debit or credit card via Web transaction 1.6 Accept foreign coins …. not estimable needs prioritization * Beck and West “Scenarios, Stories, Use Cases: Through the Systems Development Life-Cycle (Paperback) by Ian Alexander (Editor), Neil Maiden (Editor) John Wiley & Sons (2004) ISBN: 0470861940; p270 split © 2010 John Wiley & Sons Ltd. 10

11 © 2010 John Wiley & Sons Ltd. Level of knowledge and experience – computer literacy (high; moderate; low) – system experience (high; moderate; low) – experience with similar applications (high; moderate; low) – education (high school; college; advanced degree) – reading level (>12 year’s schooling; 5-12; < 5) – typing skill (135 wpm; 55 wpm; 10 wpm) Characteristics of the user’s tasks and jobs – Type of use of this application (mandatory; discretionary) – Frequency of use (continual; frequent; occasional; once-in-a-lifetime) – Turnover rate for employees (high; moderate; low) – Importance of task (high; moderate; low) – Repetitiveness of task (high; moderate; low) – Training anticipated (extensive; self-training through manuals; none) – Job category (executive; manager; professional; secretary; clerk etc.) Psychological characteristics of the user – Probable attitude towards job (positive; neutral; negative) – Probable motivation (high; moderate; low) – Cognitive style (verbal vs. spatial; analytic vs. intuitive; concrete vs. abstract) Physical characteristics of the user – Age (young; middle aged; elderly) – Gender (male; female) – Handedness (left; right; ambidextrous) – Physical handicaps (blind; defective vision; deaf; motor handicap) Know Your Users* * adapted from Galitz © 2010 John Wiley & Sons Ltd. 11

12 Preliminary Sketch of User Interface for Setting Game Character Qualities 16 © 2010 John Wiley & Sons Ltd. 12

13 Preliminary Encounter Screen Shot Name of adjacent area Name of adjacent area Name of adjacent area Name of adjacent area Graphics reproduced with permission from Corel. © 2010 John Wiley & Sons Ltd. 13

14 Selecting Procedure GUI © Eric J. Braude / J. Wiley 2003-2004 Stocking DVD GUI Click “stock DVD” GUI Transitions for Video Store: Introduction Hit “commit” button Indicates start state GUI (a state) An event (usually a mouse action) transition © 2010 John Wiley & Sons Ltd. 14

15 Selecting Procedure © copyright Eric J. Braude 2003 Stocking DVD Checking in DVD Checking out DVD Registering Customer Select “stock DVD” Select “register customer” Select “check out” Select “check in” * * * * Select “register customer” Select “check out” GUI Transitions for Video Store * Hit “commit” button © 2010 John Wiley & Sons Ltd. 15

16 Sketch of Select Procedure GUI Select Procedure Stock DVD Register customer Check out DVD Check in DVD go © 2010 John Wiley & Sons Ltd. 16

17 Sketch of Register Customer GUI Register Customer First name Last name commitCommit and check out DVD © 2010 John Wiley & Sons Ltd. 17

18 Sketch of Check Out DVD GUI Check Out DVD DVD name Customer commitRegister customer © 2010 John Wiley & Sons Ltd. 18

19 Sketch of Check In DVD GUI Check In DVD DVD name commit © 2010 John Wiley & Sons Ltd. 19

20 © 2010 John Wiley & Sons Ltd. Common Security Requirements Confidentiality “C” oData passed not visible to the unauthorized Non-repudiation oParties can prove the existence of agreements Integrity “I” oAbility to validate not/altered in transit Authentication “A” oAbility to validate user’s identity Authorization oPermission to deal with the subject oAvailability oE.g., as compromised by denial-of-service attacks 20

21 © 2010 John Wiley & Sons Ltd. Gist of HIPAA The Health Insurance Portability and Accountability Act passed in 2000 and 2002; 2003 compliance Regulates health information created or maintained by health care providers U.S. Department of Health and Human Services responsible for implementing and enforcing Main thrust: Ensure that an individual's health information is used only for health purposes. – Ensures confidentiality, integrity, and availability – Mandates safeguards for physical storage, maintenance, transmission, and access 21

22 Data Flow Diagram: Explanation of Symbols Account # & deposit balance query User account database account data Get deposit Create account summary Validate deposit Printer Input Output Processing element Data type Direction of data flow Data store …... © 2010 John Wiley & Sons Ltd. 22

23 account # & deposit balance query account # & deposit account # User Make inquiry account database deposit transaction account data Get deposit Get inquiry Validate inquiry Do deposit transaction Create account summary Validate deposit error Printer member banks bank nam e Display account account # account data account display Partial Data Flow Diagram for ATM Application © 2010 John Wiley & Sons Ltd. 23

24 Player quits Partial Encounter State-Transition Diagram Setting up Preparing Waiting Complete setup Foreign character enters area Engaging Player clicks qualities menu (initial state) (final state) © 2010 John Wiley & Sons Ltd. 24

25 Using Conditions in State-Transition Diagrams Engaging Waiting [foreign character absent] [foreign character present] Player moves to adjacent area event condition state © 2010 John Wiley & Sons Ltd. 25

26 Setting qualities Encounter State-Transition Diagram Setting up Engaging Waiting Player completes setup Player dismisses report window Reporting Foreign character enters area Encounter completed Player dismisses set qualities widow Player requests status Player requests to set qualities Foreign character enters area [foreign character absent] [foreign character present] Player moves to adjacent area Player quits © 2010 John Wiley & Sons Ltd. 26

27 Preliminary Encounter Screen Shot Name of adjacent area Name of adjacent area Name of adjacent area Name of adjacent area Graphics reproduced with permission from Corel. © 2010 John Wiley & Sons Ltd. 27

28 Preliminary Sketch of User Interface for Setting Game Character Qualities 16 © 2010 John Wiley & Sons Ltd. 28

29 Initialize Use Case for Encounter Encounter foreign character player designer Set rules actors Encounter Travel to adjacent area Initialize 1. System displays player’s main character in the dressing room. 2. System displays a window for setting his character's qualities. 3. Player allocates the qualities of his main character. 4. Player chooses an exit from the dressing room. 5. System moves player’s main character into the area on the other side of the exit. Initialize Use case Use case details © 2010 John Wiley & Sons Ltd. 29

30 The Eclipse Workbench http://www.eclipse.org/articles/Article-UI-Guidelines/Index.html © 2010 John Wiley & Sons Ltd. 30

31 Using Bugzilla in Eclipse to Track Bugs and Detailed Requirements © 2010 John Wiley & Sons Ltd. 31

32 Using Bugzilla in to Track Eclipse Bugs and Detailed Requirements 2 © 2010 John Wiley & Sons Ltd. 32

33 Example of Document Open in Writer Source: http://www.openoffice.org/product/pix/writer-big.png © 2010 John Wiley & Sons Ltd. 33


Download ppt "Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1."

Similar presentations


Ads by Google