Chapter 4 – Requirements Engineering Lecture 3 1Chapter 4 Requirements engineering.

Slides:



Advertisements
Similar presentations
Alternative Approach to Systems Analysis Structured analysis
Advertisements

Lecture 8- Analysis Modeling The Elements of Anaylsis Model The Elements of Anaylsis Model Data Modeling, Functional Modeling and Information Flow Data.
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
Requirements Elicitation Techniques
SWE Introduction to Software Engineering
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Analysis Modeling Over view of today’s lesson T he analysis model is the first technical representation of a system. Analysis modeling uses a combination.
Analysis Modeling Instructor: Dr. Jerry Gao. Analysis Modeling Jerry Gao, Ph.D. Jan Elements of the analysis model - Data modeling - Functional.
Requirements Engineering Processes
Requirements Analysis Concepts & Principles
Analysis Concepts and Principles
Introduction to Software Engineering Dr. Basem Alkazemi
IS550: Software requirements engineering Dr. Azeddine Chikh 4. Validation and management.
UML Needed for Requirements Spec Pepper. Need UML for Requirements Use Case Activity Diagram Tool: StarUML.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Chapter 8 Analysis Modeling
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes 1.
Chapter 5: Requirement Engineering Process Omar Meqdadi SE 2730 Lecture 5 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 The requirements engineering process.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 21. Review ANALYSIS PHASE (OBJECT ORIENTED DESIGN) Functional Modeling – Use case Diagram Description.
 To describe the principal requirements engineering activities and their relationships  To introduce techniques for requirements elicitation and analysis.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Chapter 4 – Requirements Engineering Lecture 3 1Chapter 4 Requirements engineering.
Requirement Engineering. Review of Last Lecture Problems with requirement Requirement Engineering –Inception (Set of Questions) –Elicitation (Collaborative.
Chapter 4 Requirements Engineering Processes Objectives l To describe the principal requirements engineering activities and their relationships l To.
Chapter 9 요구사항 모델링: 시나리오 기반 방법론 Requirements Modeling: Scenario-Based Methods 임현승 강원대학교 Revised from the slides by Roger S. Pressman and Bruce R. Maxim.
Systems Analysis and Design in a Changing World, 3rd Edition
Developed by Reneta Barneva, SUNY Fredonia for CSIT 425 Requirements Modeling.
9-1 © Prentice Hall, 2007 Chapter 9: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
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.
1 Software Requirements l Specifying system functionality and constraints l Chapters 5 and 6 ++
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Software Engineering, 8th edition. Chapter 7 1 Courtesy: ©Ian Sommerville 2006 March 20 th, 2008 Lecture # 12 Requirements Engineering Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Chapter 4 Requirements Engineering (3/3) Yonsei University 2 nd Semester, 2015 Sanghyun Park.
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Requirement Engineering. Recap Flow Based Modeling DFDs CFDs Processing narratives Class-based Model How to select classes? How to find attributes and.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Building analysis model  Analysis modeling uses a combination of text and diagrammatic forms to depict requirements for data function and behavior in.
7-1 © Prentice Hall, 2007 Topic 7: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
Prof. Hany H. Ammar, CSEE, WVU, and
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
CS223: Software Engineering Lecture 8: Requirement Engineering.
McGraw-Hill/Irwin© 2008 The McGraw-Hill Companies, All Rights Reserved Chapter 17 Object-Oriented Design and Modeling Using the UML.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
Chapter 4 – Requirements Engineering Part 2 1Chapter 4 Requirements engineering.
1 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 7 The Object-Oriented Approach to Requirements.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Unit II: Requirements Engineering
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
 The processes used for RE vary widely depending on the application domain, the people involved and the organisation developing the requirements.  However,
Lecturer: Eng. Mohamed Adam Isak PH.D Researcher in CS M.Sc. and B.Sc. of Information Technology Engineering, Lecturer in University of Somalia and Mogadishu.
CHAPTER 5 REQUIREMENTS ENGINEERING PROCESSES 1. Objectives  To describe the principal requirements engineering activities and their relationships  To.
Pepper modifying Sommerville's Book slides
CompSci 280 S Introduction to Software Development
Requirements Engineering Processes
Business Process and Functional Modeling
Chapter 5 System modeling
Unified Modeling Language
SNS College of Engineering Coimbatore
EKT 421 SOFTWARE ENGINEERING
Data Dictionaries ER Diagram.
Requirements Engineering Process
Analysis Modeling Requirements analysis Flow-oriented modeling
Requirements Engineering Processes
Requirement Analysis using
Chapter 4 – Requirements Engineering
Presentation transcript:

Chapter 4 – Requirements Engineering Lecture 3 1Chapter 4 Requirements engineering

Requirements discovery The process of gathering information about the required and existing systems and distilling the user and system requirements from this information. Interaction is with system stakeholders from managers to external regulators. Systems normally have a range of stakeholders. Chapter 4 Requirements engineering2

Stakeholders in the MHC-PMS Patients whose information is recorded in the system. Doctors who are responsible for assessing and treating patients. Nurses who coordinate the consultations with doctors and administer some treatments. Medical receptionists who manage patients’ appointments. IT staff who are responsible for installing and maintaining the system. Chapter 4 Requirements engineering3

Interviewing Formal or informal interviews with stakeholders are part of most RE processes. Types of interview – Closed interviews based on pre-determined list of questions – Open interviews where various issues are explored with stakeholders. Effective interviewing – Be open-minded, avoid pre-conceived ideas about the requirements and are willing to listen to stakeholders. – Prompt the interviewee to get discussions going using a springboard question, a requirements proposal, or by working together on a prototype system. Chapter 4 Requirements engineering4

Interviews in practice Normally a mix of closed and open-ended interviewing. Interviews are good for getting an overall understanding of what stakeholders do and how they might interact with the system. Interviews are not good for understanding domain requirements – Requirements engineers cannot understand specific domain terminology; – Some domain knowledge is so familiar that people find it hard to articulate or think that it isn’t worth articulating.

Scenarios Scenarios are real-life examples of how a system can be used. They should include – A description of the starting situation; – A description of the normal flow of events; – A description of what can go wrong; – Information about other concurrent activities; – A description of the state when the scenario finishes.

Scenario for collecting medical history in MHC- PMS Mental Health Care-Patient Management System 7Chapter 4 Requirements engineering

Scenario for collecting medical history in MHC-PMS 8Chapter 4 Requirements engineering

Use cases Use-cases are a scenario based technique in the UML which identify the actors in an interaction and which describe the interaction itself. A set of use cases should describe all possible interactions with the system. Sequence diagrams may be used to add detail to use-cases by showing the sequence of event processing in the system. 9Chapter 4 Requirements engineering

Use cases for the MHC-PMS 10Chapter 4 Requirements engineering

11 Goals of Analysis Modeling Provides the first technical representation of a system Is easy to understand and maintain Deals with the problem of size by partitioning the system Uses graphics whenever possible Differentiates between essential information versus implementation information Helps in the tracking and evaluation of interfaces Provides tools other than narrative text to describe software logic and policy

Requirements Analysis

13 Overall Objectives Three primary objectives – To describe what the customer requires – To establish a basis for the creation of a software design – To define a set of requirements that can be validated once the software is built

14 Analysis Modeling Approaches Structured analysis – Considers data and the processes that transform the data as separate entities – Data is modeled in terms of only attributes and relationships (but no operations) – Processes are modeled to show the 1) input data, 2) the transformation that occurs on that data, and 3) the resulting output data Object-oriented analysis – Focuses on the definition of classes and the manner in which they collaborate with one another to fulfill customer requirements

15 A Set of Models Flow-oriented modeling – provides an indication of how data objects are transformed by a set of processing functions Scenario-based modeling – represents the system from the user's point of view Class-based modeling – defines objects, attributes, and relationships Behavioral modeling – depicts the states of the classes and the impact of events on these states

16 Elements of the Analysis Model Use case text Use case diagrams Activity diagrams Swim lane diagrams Scenario-based modeling Class diagrams Analysis packages CRC models Collaboration diagrams Class-based modeling Data structure diagrams Data flow diagrams Control-flow diagrams Processing narratives Flow-oriented modeling State diagrams Sequence diagrams Behavioral modeling Structured AnalysisObject-oriented Analysis

Flow-oriented Modeling

18 Data Modeling Identify the following items – Data objects (Entities) – Data attributes – Relationships – Cardinality (number of occurrences)

19 Data Flow and Control Flow Data Flow Diagram – Depicts how input is transformed into output as data objects move through a system Process Specification – Describes data flow processing at the lowest level of refinement in the data flow diagrams Control Flow Diagram – Illustrates how events affect the behavior of a system through the use of state diagrams

20 Diagram Layering and Process Refinement Context-level diagram Level 1 diagram Process Specification

Scenario-based Modeling

22 Writing Use Cases Writing of use cases was previously described in Chapter 7 – Requirements Engineering It is effective to use the first person “I” to describe how the actor interacts with the software Format of the text part of a use case (See examples in Pressman textbook on pp ) Use-case title: Actor: Description: I …

23 Example Use Case Diagram Make automated menu selections Order food and drink Pay for food and drink Notify customer that food and drink are ready Customer Cook Payment System Expert Menu System

24 Activity Diagrams Creation of activity diagrams was previously described in Chapter 7 – Requirements Engineering Supplements the use case by providing a graphical representation of the flow of interaction within a specific scenario Uses flowchart-like symbols – Rounded rectangle - represent a specific system function/action – Arrow - represents the flow of control from one function/action to another – Diamond - represents a branching decision – Solid bar – represents the fork and join of parallel activities

25 Example Activity Diagram

Class-based Modeling

27 Example Class Box Component + componentID - telephoneNumber - componentStatus - delayTime - masterPassword - numberOfTries + program() + display() + reset() + query() - modify() + call() Class Name Attributes Operations

UML Class Diagrams and Examples

Behavioral Modeling

Hotel Reservation State Transition Diagram