Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1.

Slides:



Advertisements
Similar presentations
Software Quality Assurance Plan
Advertisements

Requirement Analysis and Specification Mr. Manoj Kumar Kar.
Unit 251 Summary  Requirements may be represented in itemized format or in visual modeling (UML). Once the complete set of requirements are in our hand,
Sixth Hour Lecture 10:30 – 11:20 am, September 9 Framework for a Software Management Process – Artifacts of the Process (Part II, Chapter 6 of Royce’ book)
Information System Design IT60105 Lecture 3 System Requirement Specification.
 Every stage from phase DESIGN in Software Development Process will have “design document” especially in analysis and design phases.  “Design document”
ATM User Interface Design. Requirements A bank customer is able to access his or her account using an automatic teller machine. To be able to use an ATM.
Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1.
IS550: Software requirements engineering Dr. Azeddine Chikh 4. Validation and management.
3 REQUIREMENTS ANALYSIS I. Plan project Integrate & test system Analyze requirements Design Maintain Test unitsImplement Identify corporate practices.
Software Documentation Written By: Ian Sommerville Presentation By: Stephen Lopez-Couto.
Application architectures
Database Auditing Models Dr. Gabriel. 2 Auditing Overview Audit examines: documentation that reflects (from business or individuals); actions, practices,
Chapter 7 Database Auditing Models
TECHNOLOGY GUIDE 2: Software 1. 2 TG2.1 Introduction to Software TG2.2 Software Issues TG2.3 Systems Software TG2.4 Application Software TECHNOLOGY GUIDE.
Chapter 13 Prepared by Richard J. Campbell Copyright 2011, Wiley and Sons Auditing Human Resources Processes: Personnel and Payroll in Service Industries.
Information Systems in Organisations
Database Actors Database Administrators Database Designers
Copyright CHS Payroll, Inc 2004 (Click anywhere to advance screen.) MyPayrollWeb.com Tour The ultimate online payroll experience from CHS Payroll.
Requirements Elicitation. Requirement: a feature or constraint that the system must satisfy Requirements Elicitation: specification of the system that.
© VESP International Pty Limited To Contents Slide CLICK to advance slides/ bullet points within slides Integrated Master Planner An Overview.
Software Engineering Modern Approaches
Requirements Spec Revisited Dan Fleck. Responsibility - if you don’t do well in class, who’s problem is it?
Prologue: The Software Process. Main Phases of Software Process 1. Requirements Analysis (answers “WHAT?”) Specifying what the application must do 2.
REQUIREMENTS ANALYSIS. Initialize Use Case for Encounter Encounter foreign character player designer Set rules actors Encounter Travel to adjacent area.
SWE 316: Software Design and Architecture – Dr. Khalid Aljasser Objectives Lecture 7 Requirements and Domain Classes SWE 316: Software Design and Architecture.
Presented by Khaled Chebaro, Yaser Jafar, Orin Pereira KYO Engineering Consultants Inc. on 27/11/07 Automated Banking Machine for MacBank Inc. SFWR 3M04.
Requirements Management with Use Cases Module 2: Introduction to RMUC Requirements Management with Use Cases Module 2: Introduction to RMUC.
Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1.
Faculty of Computer & Information Software Engineering Third year
Database Security and Auditing: Protecting Data Integrity and Accessibility Chapter 7 Database Auditing Models.
Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1.
Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights.
SYSTEMS ANALYSIS AND DESIGN LIFE CYCLE
REQUIREMENTS ANALYSIS - C1. Plan project Integrate & test system Analyze requirements Design Maintain Test unitsImplement Identify corporate practices.
Rational Requirements Management with Use Cases v5.5 Copyright © Rational Software, all rights reserved 1 Requirements Management with Use Cases.
Group 2 : Team Battleship Team Members: Zhen Cai Christopher Campbell Justin Doll Jason Miller Nicholas Rimer Raeginald Timones.
ANU comp2110 Software Design lecture 5 COMP2110 Software Design in 2003 lecture 5 Requirements Specifications lecture 3 of 3 The Encounter game case study.
Use Case Diagram The purpose is to communicate the system’s functionality and behaviour to the customer or end user. Mainly used for capturing user requirements.
Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1.
Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1.
Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1.
Requirements Management with Use Cases Module 10: Requirements Across the Product Lifecycle Requirements Management with Use Cases Module 10: Requirements.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
CS212: Object Oriented Analysis and Design Lecture 32: Use case and Class diagrams.
© 2010 John Wiley & Sons Ltd. Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1.
Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1.
Unit 17: SDLC. Systems Development Life Cycle Five Major Phases Plus Documentation throughout Plus Evaluation…
CSC480 Software Engineering Lecture 7 September 16, 2002.
Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1.
T EST T OOLS U NIT VI This unit contains the overview of the test tools. Also prerequisites for applying these tools, tools selection and implementation.
Chapter 7 Part II Structuring System Process Requirements MIS 215 System Analysis and Design.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition Copyright © 2015 John Wiley & Sons, Inc. All rights.
6 th Annual Focus Users’ Conference 6 th Annual Focus Users’ Conference ERP Fixed Assets ERP Fixed Assets Presented by: Will Brock ERP Programmer PowerPoint.
Chapter 3: Software Design –Use case Diagram Nouf Alghanmi.
 System Requirement Specification and System Planning.
3 REQUIREMENTS ANALYSIS I. Plan project Integrate & test system Analyze requirements Design Maintain Test unitsImplement Identify corporate practices.
Requirements Spec Revisited
Software testing
Developing Information Systems
Software Documentation
Chapter 6 – System Design II: Behavioral Models
Order-to-Cash (Project-Based Services) Scenario Overview
4 REQUIREMENTS ANALYSIS CASE STUDY
Software requirements
Chapter 6: Principles of Requirements Analysis
Order-to-Cash (Project-Based Services) Scenario Overview
Sketch of Encounter State-Transition Diagram
Initialize Use Case for Encounter
Presentation transcript:

Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1

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

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

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

© 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

© 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

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

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

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

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: ; p270 split © 2010 John Wiley & Sons Ltd. 10

© 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

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

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

Selecting Procedure GUI © Eric J. Braude / J. Wiley 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

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

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

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

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

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

© 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

© 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

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

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

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

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

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

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

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

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

The Eclipse Workbench © 2010 John Wiley & Sons Ltd. 30

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

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

Example of Document Open in Writer Source: © 2010 John Wiley & Sons Ltd. 33