1 Real-time requirements  Intro to Software Engineering  Software Development Process Models  Formal methods in software specification  Structured.

Slides:



Advertisements
Similar presentations
Requirements Elicitation and Use Case Diagrams
Advertisements

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.
Use Case & Use Case Diagram
Presentation material is based on notes from Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 1 ECE.
Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 4, Requirements Elicitation.
Karolina Muszyńska Based on:
Use Case Modeling SJTU. Unified Modeling Language (UML) l Standardized notation for object-oriented development l Needs to be used with an analysis and.
Software Requirements Engineering
Muhammad Usman, Assistant Professor
CSC 301H, Introduction to Software Engineering Fall 2009 TA Golnaz Elahi
Chapter 4, Requirements Elicitation
Documenting Requirements using Use Case Diagrams
Use Cases Chapter 4. After Scenarios Find all the use cases in the scenario that specifies all possible instances of how to report a fire –Ex: “Report.
Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 4, Requirements Elicitation: Functional Modeling.
UML exam advice. Minimal, yet sufficient UML course 80% of modeling can be done with 20% of the UML. Which 20% was that again? We’re supposed to be “Use.
Teamwork Know each other Compete Leadership Strengths and Weaknesses
Chapter 3 Object-Oriented Analysis of Library Management System(LMS)
CMPT 275 Software Engineering
CMPT 275 Software Engineering
Object-oriented Design CSCI 5801: Software Engineering.
Software Engineering 1 Object-oriented Analysis and Design Chap 30 Relating Use Cases.
Chapter 3 Use Cases.
Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 1 Functional Modeling.
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
1 Objectives  Describe design constraints.  Identify methods of specifying functional requirements.  Describe techniques for writing and structuring.
Systems Analysis and Design in a Changing World, 6th Edition
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 4, Requirements Elicitation: Functional Modeling.
1 Object-Oriented Modeling Using UML (2) CS 3331 Fall 2009.
1 CMPT 275 Phase: Design. Janice Regan, Map of design phase DESIGN HIGH LEVEL DESIGN Modularization User Interface Module Interfaces Data Persistance.
1 CMPT 275 Software Engineering Requirements Analysis Phase Requirements Analysis Activity (Identifying Objects, Scenarios) Janice Regan,
System Specification Specify system goals Develop scenarios Define functionalities Describe interface between the agent system and the environment.
1 IBM Software Group ® Mastering Requirements Management with Use Cases Module 10: Structure the Use-Case Model.
UML Diagrams: Class Diagrams The Static Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 4, Requirements Elicitation: Functional Modeling.
Key Takeaway Points A use case is a business process; it begins with an actor, ends with the actor, and accomplishes a business task for the actor. Use.
1 Object-Oriented Analysis Use Case Driven. 2 The outline method for OOA 1.Identify object classes within the problem domain 2.Define the behaviour of.
Using UML, Patterns, and Java Object-Oriented Software Engineering Functional Modeling.
Faculty of Computer & Information Software Engineering Third year
Lecture 3 Uses Cases Topics UML Use Cases pop quiz Readings: Chapter 3 January 24, 2008 CSCE 492 Software Engineering.
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4 th edition, Prentice Hall, Hans Van Vliet, Software.
Faculty of Computer & Information
Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 4, Requirements Elicitation: Functional Modeling.
PRJ566 System Sequence Diagrams.  A system sequence diagram …. Illustrates input and output events related to the system under discussion.  Larman,
The Static Analysis Model Class Diagrams Prof. Hany H. Ammar, CSEE, WVU, and Dept. of Computer Science, Faculty of Computers and Information, Cairo University.
1 אירוע אמאזון. 2 שלבי הפיתוח עם דיאגרמות UML 3 אמאזון תרשים תוכן.
1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases.
Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Engineering Lab Use Cases Faculty of Information system Technology.
Systems Analysis and Design in a Changing World, 6th Edition
Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 4, Requirements Elicitation: Functional Modeling.
Unified Modeling Language User Guide Section 4 - Basic Behavioral Modeling Chapter 16 - Use Cases Chapter 17 - Use Case Diagrams.
Scenario A scenario is a sequence of steps describing an interaction between a user and a system. Use case is a set of scenarios tied together by a common.
UML (Unified Modeling Language)
McGraw-Hill/Irwin© 2008 The McGraw-Hill Companies, All Rights Reserved Chapter 17 Object-Oriented Design and Modeling Using the UML.
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4 th edition, Prentice Hall, Hans Van Vliet, Software.
CS 501: Software Engineering Fall 1999 Lecture 15 Object-Oriented Design I.
1 After the scenarios are formulated Find all the use cases in the scenario Describe each of these use cases in more detail Participating actors Describe.
Embedded Systems Software Engineering
Architecture Review 10/11/2004
UML Diagrams: Class Diagrams The Static Analysis Model
Use Case Modeling - II Lecture # 27.
Functional Modeling.
Chapter 4, Requirements Elicitation: Functional Modeling
SEMCOM COLLEGE LIBRARY INFORMATION SYSTEM
Start at 17th March 2012 end at 31th March 2012
تحلیل و طراحی سیستم‌های شی گرا
Chapter 4, Requirements Elicitation: Functional Modeling
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4th edition, Prentice Hall, Hans Van Vliet, Software Engineering:
Software Requirements Specification Document
Chapter 4, Requirements Elicitation: Functional Modeling
Chapter 4, Requirements Elicitation: Functional Modeling
Presentation transcript:

1 Real-time requirements  Intro to Software Engineering  Software Development Process Models  Formal methods in software specification  Structured Analysis  Object-oriented analysis and the UML Use Cases

2 Object-oriented analysis– Use Case Use Case diagram of inertial measurement system.

3 Context diagram Inertial Measurement System

4 Example: Library Use Case Diagram A computerized library system for a university keeps track of all books and periodicals in the library and their check-out status. Checkout and return are automated through a bar code reader (an external device). The library system also interfaces with an external relational database which stores information about the library users (students, faculty, and staff), including whether they have any library items checked out.. Library users can access the catalog and recall books and periodicals. Library employees have the same access as well as additional capabilities (e.g., listing the status of an item). (Note: the library catalog is part of the library computer system so it is not shown as an actor.)

5 Use Case for Employee Login 1.Employee initiates use case by entering user name 2.System prompts for password 3.If password is valid, employee is logged on and now has access to employee commands Starting and Ending Conditions? Exceptions? e.g., cannot find the employee login

6 Use Case for Check book availability 1.User/Employee initiates use case by selecting the check book availability option 2.System prompts for choice of search by title, author, or call number 3.User makes selection and enters title, author or call number 4.System performs search through the library catalog database 5.If a match is found, system displays item status (not checked out, checked out and due date, overdue) Starting and Ending Conditions? Exceptions?

7 >: Functional Decomposition  Problem: A function in the original problem statement is too complex to be solvable immediately  Solution: Describe the function as the aggregation of a set of simpler functions. The associated use case is decomposed into smaller use cases CreateDocument Scan OCR Check >

8 >: Reuse of Existing Functionality  Problem: How can we reuse existing functions?  Solution: The include association (“A delegates to B”)  Note: The base case cannot exist alone. It is always called with the supplier use case ViewMap OpenIncident AllocateResources > Base Use Case Supplier Use Case

9 Home Automation example – factor out common functionality

10 Another Home Automation example – factor out common functionality

11 > Association for Use Cases  Problem: The functionality in the original problem statement needs to be extended.  Solution: An extend association: B is an extension of A.  Note: In an extend association, the base use case can be executed without the use case extension ReportEmergency FieldOfficer Help > A B Base Use Case

12 Home Automation example

13 ValidateUser CheckPassword CheckFingerprint Parent Case Child Use Case Generalization association in use cases  Problem: You have common behavior among use cases and want to factor this out.  Solution: The generalization association factors out common behavior.

14 Example using >

15 Simplified with an abstract use case

16 Anesthesia Machine Use Cases

17 Decomposition of the Deliver Anesthesia Use Case

18 Use Case Activity Breakdown

19 Ventilator Use Cases

20 User Interface Use Cases

21 Vaporizer Use Cases

22 SPO2 Monitor Use Cases

23 CO2 Monitor Use Cases

24 Agent Monitor Use Cases

25 Breathing Circuit Use Cases

26 Bad Use Case Modeling

27 Adding a Textural Characterization

28 Use Case Relations

29 Relating Text and Scenarios

30 Use Case Sequence Diagram

31 Deliver Anesthesia Collaboration

32 Elaborated Scenario Part 1

33 Elaborated Scenario Part 2

34 Alarm On Critical Event Statechart

35 Statecharts and Sequence Diagrams

36 Display Waveform Activity Diagram

37 Use Case Timing Diagram

38 Best practices in specifying requirements  Bad: The systems shall be completely reliable. The system shall be modular. The system shall be maintainable. The system will be fast. Errors shall be less than 99%.  Better: Response times for all level one actions will be less than 100 ms. The cyclomatic complexity of each module shall be in the range or 10 to % of the transactions shall be processed in less than 1 s. An operator shall not have to wait for the transaction to complete. MTBF shall be 100 hours of continuous operation.