Prof. Hany H. Ammar, CSEE, WVU, and

Slides:



Advertisements
Similar presentations
Requirements Elicitation and Use Case Diagrams
Advertisements

IT Requirements Capture Process. Motivation for this seminar Discovering system requirements is hard. Formally testing use case conformance is hard. We.
Chapter 4 - Object-Oriented Analysis and Design in a Nutshell1 Chapter 4 Object-Oriented Analysis and Design in a Nutshell.
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
CS3773 Software Engineering Lecture 03 UML Use Cases.
The Unified Software Development Process - Workflows Ivar Jacobson, Grady Booch, James Rumbaugh Addison Wesley, 1999.
COST G9 - Work group 2 Cadastral science meeting Aalborg, Dk Modeling methodology for real estate transactions Radoš Šumrada Faculty.
Software Engineering I Object-Oriented Design
Introduction to Software Engineering Dr. Basem Alkazemi
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
IS550: Software requirements engineering Dr. Azeddine Chikh 4. Validation and management.
Mastering OOA/OOD with UML. Contents Introduction Requirements Overview OOAOOD.
UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical.
UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Prof. Hany H. Ammar, CSEE, WVU, and Dept. of Computer Science, Faculty.
CMPT 275 Software Engineering
Chapter 4 Requirements Engineering
RUP Requirements RUP Artifacts and Deliverables
UML - Development Process 1 Software Development Process Using UML (2)
Software Engineering CS B Prof. George Heineman.
Requirements Analysis
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
CS 360 Lecture 6.  A model is a simplification of reality  We build models to better understand the system being developed.  We build models of complex.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Unified Modeling Language, Version 2.0
Software Design The Dynamic Model Design Sequence Diagrams and Communication Diagrams Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical.
Requirement Engineering. Review of Last Lecture Problems with requirement Requirement Engineering –Inception (Set of Questions) –Elicitation (Collaborative.
Chapter 10 Information Systems Analysis and Design
Object-Oriented Analysis and Design An Introduction.
Requirements Modeling and Use Case Diagrams Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
UML Diagrams: Class Diagrams The Static Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Chapter 9 요구사항 모델링: 시나리오 기반 방법론 Requirements Modeling: Scenario-Based Methods 임현승 강원대학교 Revised from the slides by Roger S. Pressman and Bruce R. Maxim.
Approaching a Problem Where do we start? How do we proceed?
Lecture 7: Requirements Engineering
Requirements Capture. Four Steps of requirements capture List candidate requirements Understand system context Capture functional requirements Capture.
9/01RUT1 NASA OSMA SAS '01 R equirements U se case T ool James R. McCoy SRS Information Services NASA Software Assurance Technology Center
The Static Analysis Model Class Diagrams Prof. Hany H. Ammar, CSEE, WVU, and Dept. of Computer Science, Faculty of Computers and Information, Cairo University.
SOFTWARE REQUIREMENTS ANALYSIS (SWRA) Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Interaction Diagrams Interaction Diagrams allow the designer to show how groups of objects collaborate in some behavior. –Interaction Diagrams will show.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
1 Modeling System Requirements with Use Cases. 2 Why Do We Need Use Cases? Primary challenge in a system design process –ability to elicit correct and.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Chapter 4 Requirements Engineering (3/3) Yonsei University 2 nd Semester, 2015 Sanghyun Park.
Introduction to OOAD and the UML
Requirements Engineering-Based Conceptual Modelling From: Requirements Engineering E. Insfran, O. Pastor and R. Wieringa Presented by Chin-Yi Tsai.
CIM LAB MEETING Presentation on UML Rakesh Mopidevi Kwangyeol Ryu.
Requirement Engineering. Recap Elaboration Behavioral Modeling State Diagram Sequence Diagram Negotiation.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
UML Diagrams: Use Case Diagrams Prof. Hany Ammar, CSEE Dept., WVU.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Requirements Modeling and Use Case Diagrams
ANALISA & PERANCANGAN SISTEM Disusun Oleh : Dr. Lily Wulandari Program Pasca Sarjana Magister Sistem Informasi Universitas Gunadarma.
UML - Development Process 1 Software Development Process Using UML.
UML Course Instructor: Rizwana Noor. Overview  Modeling  What is UML?  Why UML?  UML Diagrams  Use Case  Components  Relationships  Notations.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
 System Requirement Specification and System Planning.
Chapter 5 – System Modeling
Instructor: Dr. Hany H. Ammar
UML Diagrams: Class Diagrams The Static Analysis Model
Instructor: Dr. Hany H. Ammar
UML Modeling Sequence diagram
Unified Modeling Language
Unified Modeling Language
UML Diagrams: Sequence Diagrams Dynamic Analysis Model
Presentation transcript:

UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Prof. Hany H. Ammar, CSEE, WVU, and Dept. of Computer Science, Faculty of Computers and Information, Cairo University

Outline The Requirements Model and the Analysis model Introduction to Requirements Engineering Importance of Sequence Diagrams Rules of sequence diagrams Use Cases and Sequence Diagrams The System Sequence Diagrams The Sound Recorder Example The E-Commerce Example Other Examples

The Requirements Model and the Analysis Model Elicitation Process Functional/ Nonfunctional Requirements Use Case Diagrams/ Sequence Diagrams (the system level) The Object-Oriented Analysis Process Static Analysis Dynamic Analysis - Class Diagrams - State Diagrams/ Refined Sequence Diagrams (The object level)

What is Requirements Engineering ?

What is Requirements Engineering? Requirements Management: Requirements management activities include evaluating the impact of proposed changes, tracing individual requirements to downstream work products, and tracking requirements status during development Several Requirements management tools are available in industry

What is Requirements Engineering? Major Requirements Management Tools: 1. Caliber-RM by Technology Builders, Inc.; www.tbi.com 2. RequisitePro by Rational Software Corporation; www.rational.com 3. RTM Workshop by Integrated Chipware, Inc.; www.chipware.com

What is Requirements Engineering? Requirements Elicitation is the process of gathering the different types of requirements from suitable stakeholders. Business requirements describe why the product is being built and identify the benefits for both the customers and the business. User requirements, describe the tasks or business processes a user will be able to perform with the product. (Developing use-cases) Functional requirements describe the specific system behaviors that must be implemented (Developing usage scenarios) Non-functional requirements, describe the non-functional features such as quality attributes of Reliability, Performance, availability, and maintainability.

What is Requirements Engineering? Requirements analysis: Requirements analysis includes decomposing high-level requirements into detailed functional requirements, constructing graphical requirements models or logical models (structured Analysis models, or Object-Oriented Analysis models) (for developers), and building prototypes. Analysis models and prototypes provide alternative views of the requirements, which often reveal errors and conflicts that are hard to spot in a textual SRS.

What is Requirements Engineering? Requirements Specification Specification key practice is to write down the requirements in some accepted, structured format as you gather and analyze them. The objective of requirements development is to communicate a shared understanding of the new product among all project stakeholders. Historically, this understanding is captured in the form of a textual SRS document written in natural language, augmented by appropriate analysis models. (to be discussed in detail)

What is Requirements Engineering? Requirements Verification Verification involves evaluating the correctness and completeness of the requirements, to ensure that a system built to those requirements will satisfy the users’ needs and expectations. The goal of verification is to ensure that the requirements provide an adequate basis to proceed with design Prototyping (or executable specifications) is a major technique used in verification. Examples include GUI development for user requirements verification, and Formal requirements specification environments

Importance of Sequence Diagrams Depict object interactions in a given scenario identified for a given Use Case Specify the messages passed between objects using horizontal arrows including messages to/from external actors Time increases from Top to bottom

Rules of Sequence Diagrams Sequence Initiation

Rules of Sequence Diagrams Identify objects needed to support use case, determine sequence of internal events following the external initiating event Diagrams that are not initiated with an external actor represent only a partial sequence Partial sequence diagrams should clearly identify the actor initiated sequence diagrams from which they are launched

Rules of Sequence Diagrams Messages specified on interactions can be synchronous or asynchronous Synchronous call

Rules of Sequence Diagrams Asynchronous call

Rules of Sequence Diagrams Display operation names on call arrows

Rules of Sequence Diagrams  Compound and Simple Iteration

‘included’ sequence diagrams

Showing alternate behavior in a sequence diagram

Showing Extension Point

Specifying Timing Requirements

Requirements Elicitation Process Step 4 Requirements Elicitation Process Step 4. Refining Use Cases using System Sequence Diagrams System sequence diagrams establish the dynamic behavior in terms of key scenarios of the system for each use case The system sequence diagram models a scenario of the system interactions with the environment for a given use case Input/output events are clearly identified in each sequence diagram, The State of the system before and after each event are also depicted Different diagrams model scenarios with the normal flow of events and the abnormal flow of events

Sequence Diagrams and Use Cases System Sequence Diagram The use case diagram Of system S The sequence diagram of use case UC1 for system S

UML Use Case Diagrams: The Requirements Model Study

UML Use Case Diagrams: The Requirements Model Digital Sound Recorder Case Study A sequence diagram displays object interactions arranged in a time sequence capturing a specific scenario of interactions in a use case supported by the system Time

Example: Use Case Diagram of E-Commerce Example

Place Requistion

Other Examples of Sequence Diagrams

A Simple Example of Using UML2 EXAMPLE: SATELLITE CONTROL SYSTEM

Example of Software Architecture Using UML2 SATELLITE CONTROL SYSTEM Architecture

A Simple Example Using UML2 SATELLITE CONTROL SYSTEM Architectural behavior