Presentation is loading. Please wait.

Presentation is loading. Please wait.

Requirements Analysis Visual Modeling] Lab 02 Visual Modeling (from Visual Modeling with Rational Rose and UML) A way of thinking about problems using.

Similar presentations


Presentation on theme: "Requirements Analysis Visual Modeling] Lab 02 Visual Modeling (from Visual Modeling with Rational Rose and UML) A way of thinking about problems using."— Presentation transcript:

1

2 Requirements Analysis Visual Modeling] Lab 02

3 Visual Modeling (from Visual Modeling with Rational Rose and UML) A way of thinking about problems using models organized around real-world ideas A way of thinking about problems using models organized around real-world ideas We can visualize them in our head We can visualize them in our head To promote a better understanding of requirements, cleaner designs, and more maintainable systems To promote a better understanding of requirements, cleaner designs, and more maintainable systems We build models because we cannot comprehend such systems in their entirety We build models because we cannot comprehend such systems in their entirety Focus on the big picture of how a project’s components interact Focus on the big picture of how a project’s components interact Without getting bogged down in the specific details of each component Without getting bogged down in the specific details of each component

4 The Triangle for Success Notation: Unified Modeling Language (UML) Tool: Rational Rose Process Rational Objectory Process

5 INTRODUCTION TO UML

6 The Value of the UML Is an open standard Supports the entire software development lifecycle Supports diverse applications areas Is based on experience and needs of the user community Supported by many tools

7 What is the UML? The UML is a language for visualizing, specifying, constructing, and documenting the artifacts of a software-intensive system Process and implementation independent –It can be used with a large number of processes, throughout the development life cycle, and across OO implementation technologies The UML combines –Data Modeling concepts (Entity Relationship Diagrams) –Business Modeling (work flow) –Object Modeling –Component Modeling The standard for OO systems

8 The UML Usages Define the boundaries of a system & its major functions –use cases and actors Illustrate use cases – interaction diagrams Define the static structure of a system –class diagrams Model the behavior of objects –state transition diagrams Document the physical implementation architecture –component & deployment diagrams Provide for growth –stereotypes

9 Diagrams The foundation of UML Use Case Diagrams –Requirements Activity Diagrams –Generally what, not who - good to detect parallelism Interaction Diagrams –Sequence Diagrams (timeline) –Collaboration Diagrams (object centered) Static Structure Diagrams –Objects/Classes/Packages State Chart Diagrams –States of objects with interesting lifecycles Implementation Diagrams –Component Diagrams –Deployment Diagrams

10 Use case Model

11 External System Behavior: Use Case Model Complete course of events in the system, from the user’s perspective Complete course of events in the system, from the user’s perspective Use Cases Model: Illustrates Use Cases Model: Illustrates (use cases) the system’s intended functions (use cases) the system’s intended functions (actors) surroundings – external to the system (actors) surroundings – external to the system (use case diagrams) relationships between use cases and actors (use case diagrams) relationships between use cases and actors Use Case Model is an important communication vehicle between customers (they can understand it!) and developers Use Case Model is an important communication vehicle between customers (they can understand it!) and developers The collection of all use cases is everything that can be done to/with the system

12 Actors Are NOT part of the system – they represent anyone or anything that must interact with the system Are NOT part of the system – they represent anyone or anything that must interact with the system Only input information to the system Only input information to the system Only receive information from the system Only receive information from the system Both input to and receive information from the system Both input to and receive information from the system Represented in UML as a stickman Represented in UML as a stickman

13 Questions to Discover Actors? Who is interested in a certain requirement? Who is interested in a certain requirement? Where in the organization is the system used? Where in the organization is the system used? Who will benefit from the use of the system? Who will benefit from the use of the system? Who will supply the system with this information, use this information, and remove this information? Who will supply the system with this information, use this information, and remove this information? Who will support and maintain the system? Who will support and maintain the system? Does the system use an external resource? Does the system use an external resource? Does one person play several different roles? Does one person play several different roles? Does several people play the same role? Does several people play the same role? Does the system interact with the legacy system? Does the system interact with the legacy system?

14 A Case Study: Eastern State University (ESU) Registration Problem: Background After professors decide which courses they will teach, the Registrar enters in info in the computer After professors decide which courses they will teach, the Registrar enters in info in the computer A course catalog is printed and distributed to students A course catalog is printed and distributed to students Students fill out form with their choices – usually 4 courses Students fill out form with their choices – usually 4 courses Registrar enters this info into computer Registrar enters this info into computer A batch job is run overnight to assign students to courses A batch job is run overnight to assign students to courses In cases of conflict where the students cannot take the classes they had selected, the registrar contacts the students directly to obtain additional choices. In cases of conflict where the students cannot take the classes they had selected, the registrar contacts the students directly to obtain additional choices. Once all students have successfully assigned to courses, a hardcopy of the schedule is sent to the student. Once all students have successfully assigned to courses, a hardcopy of the schedule is sent to the student. Professors obtain student rosters for their classes. Professors obtain student rosters for their classes.

15 Eastern State University (ESU) Registration Problem: Problem Statement Professors indicate which courses they will teach on- line. Professors indicate which courses they will teach on- line. A course catalog is printed A course catalog is printed Allow students to select on-line four courses (and two additional choices) for upcoming semester. Allow students to select on-line four courses (and two additional choices) for upcoming semester. No course may have more than 10 students or less than 3 students. No course may have more than 10 students or less than 3 students. When the registration is completed, the system sends information to the billing system. When the registration is completed, the system sends information to the billing system. Professors can obtain course rosters on-line. Professors can obtain course rosters on-line. Students can add or drop classes on-line. Students can add or drop classes on-line.

16 Who are the Actors? Students Students Professors Professors Registrar Registrar Billing System Billing System

17 Use Case A sequence of transactions performed by a system that yields a measurable result of values for a particular actor A sequence of transactions performed by a system that yields a measurable result of values for a particular actor What are the tasks of each actor? What are the tasks of each actor? Will any actor create, store, change, remove or read information in the system? Will any actor create, store, change, remove or read information in the system? What use cases will create, store, change, remove or read this information? What use cases will create, store, change, remove or read this information? Will any actor need to inform the system about sudden, external changes? Will any actor need to inform the system about sudden, external changes? Does any actor need to be informed about certain occurrences in the system? Does any actor need to be informed about certain occurrences in the system? What use cases will support and maintain the system? What use cases will support and maintain the system? Can all functional requirements be preformed by the use cases? Can all functional requirements be preformed by the use cases? A use case typically represents a major piece of functionality that is complete from beginning to end. A use case must deliver something of value to an actor. A use case typically represents a major piece of functionality that is complete from beginning to end. A use case must deliver something of value to an actor.

18 What are the Main Use Cases Register for courses Register for courses Select Courses to Teach Select Courses to Teach Request course roster Request course roster Maintain course information Maintain course information Maintain professor information Maintain professor information Maintain student information Maintain student information Create course catalog Create course catalog

19 Use Case Relationships Between Actor and Use Case Between Actor and Use Case Association / Communication Association / Communication Arrow can be in either or both directions Arrow can be in either or both directions Arrow indicates who initiates communication Arrow indicates who initiates communication

20 Between Use Cases (Generalization): Between Use Cases (Generalization): Uses Uses Where multiple use cases share pieces of same functionality Where multiple use cases share pieces of same functionality Extends Extends Optional behavior Optional behavior Behavior only run under certain conditions (such as alarm) Behavior only run under certain conditions (such as alarm) Several different flows run base on user selection Several different flows run base on user selection Use Case Relationships

21 Main Use Case Diagram


Download ppt "Requirements Analysis Visual Modeling] Lab 02 Visual Modeling (from Visual Modeling with Rational Rose and UML) A way of thinking about problems using."

Similar presentations


Ads by Google