Essentials of OVID Using UML based notation to capture system requirements and design.

Slides:



Advertisements
Similar presentations
Database Systems: Design, Implementation, and Management Tenth Edition
Advertisements

© 2010 Bennett, McRobb and Farmer1 Use Case Description Supplementary material to support Bennett, McRobb and Farmer: Object Oriented Systems Analysis.
Object-Oriented Analysis and Design
Actors and use cases Use-case diagram Brief notation Prioritization Fully dressed notation Requirements Functional requirements  Use-cases.
OOAD Using the UML - Use-Case Analysis, v 4.2 Copyright  Rational Software, all rights reserved 1/18 Use Case Analysis – continued Control Classes.
Capturing the requirements
Documenting Requirements using Use Case Diagrams
Actor Specification Actor Name: Designer Abstract: No
UML and the Software Lifecycle
6/8/991 Analysis Tuesday 09/14/99 Revised: September 11, 2000 (APM)
Analysis Concepts and Principles
Introduction to Software Engineering Dr. Basem Alkazemi
Use Case Analysis – continued
Requirements Gathering : Determining the scope of the system 1. Elicitiation – fact finding 2. Specification 3. Validation.
Unified Modeling Language
Page 1 ISMT E-120 Introduction to Microsoft Access & Relational Databases The Influence of Software and Hardware Technologies on Business Productivity.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Use case diagrams A use case diagram is UML’s notation for showing the relationships among a set of use cases and actors A use case diagram can help the.
System Analysis Overview Document functional requirements by creating models Two concepts help identify functional requirements in the traditional approach.
Page 1 ISMT E-120 Desktop Applications for Managers Introduction to Microsoft Access.
USE Case Model.
User Interface Theory & Design
Data flow diagrams.
BPMN By Hosein Bitaraf Software Engineering. Business Process Model and Notation (BPMN) is a graphical representation for specifying business processes.
Chapter 4 User Experience Model. User experience model (Ux) Visual specification of the user interface Visual specification of the user interface Both.
Page 1 What is the UML? UML stands for Unified Modeling Language The UML combines the best of the best from – Data Modeling concepts (Entity Relationship.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 A Discipline of Software Design.
Introduction to Sequence Diagrams
Fall CIS 764 Database Systems Engineering L21: Status Project Reviews Testing.
Developing Use Cases in a Group Carolyn L. Cukierman Face-to-Face Technology Conference March 27, 2000.
Internet Software Development Putting it all together Paul J Krause.
1 SYS366 Lecture Visual Modeling and Business Use Case Diagrams.
5 Systems Analysis and Design in a Changing World, Fourth Edition.
Requirement Engineering. Review of Last Lecture Problems with requirement Requirement Engineering –Inception (Set of Questions) –Elicitation (Collaborative.
UML The Unified Modeling Language A Practical Introduction Al-Ayham Saleh Aleppo University
 A software application is like a city  Modeling = Architecture  OOP = Civil Engineering  UML Classes = Blueprints of Buildings  UML is a common.
Lecture 3 Uses Cases Topics UML Use Cases pop quiz Readings: Chapter 3 January 24, 2008 CSCE 492 Software Engineering.
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 4: Restaurant.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Chapter 5 Models and UML Notation for The Object-Oriented Approach.
Actors and Use Case Diagrams Month Day, Year. Agenda Training Plan Overview Review Detailing Requirements with Requisite Pro Concepts Setting Up XDE Integration.
Chapter 8 Analysis & Modeling. Data Modeling examines data objects independently of processing focuses attention on the data domain creates a model at.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Engineering Lab Use Cases Faculty of Information system Technology.
User Interface Theory & Design Lecture 6a 1.  User interface is everything the end user comes into contact with while using the system  To the user,
Use Case Model Use case diagram.
Use Case Driven Analysis Requirements Use Case Use Case Description System Sequence Diagram Chapter 5.
Requirements Management with Use Cases Module 10: Requirements Across the Product Lifecycle Requirements Management with Use Cases Module 10: Requirements.
Requirement engineering & Requirement tasks/Management. 1Prepared By:Jay A.Dave.
1 Week 6 Software Engineering Fall Term 2015 Marymount University School of Business Administration Professor Suydam.
UML - Development Process 1 Software Development Process Using UML.
Overview of Socio-cognitive Engineering General requirements Theory of Use Design Concept Contextual Studies Task model Design space System specification.
Capturing Requirements. Questions to Ask about Requirements 1)Are the requirements correct? 2)Consistent? 3)Unambiguous? 4)Complete? 5)Feasible? 6)Relevant?
Use Case Diagrams. Introduction In the previous Lecture, you saw a brief review of the nine UML diagrams. Now that you have the clear, you'll start to.
1 SYS366 Week 2 - Lecture 2 Visual Modeling & UML.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition Copyright © 2015 John Wiley & Sons, Inc. All rights.
Systems Analysis and Design in a Changing World, Fourth Edition
Business Process and Functional Modeling
Welcome to M301 P2 Software Systems & their Development
Chapter 4: Business Process and Functional Modeling, continued
Software Engineering Lecture 4 System Modeling The Analysis Stage.
School of Business Administration
Use case diagrams A use case diagram is UML’s notation for showing the relationships among a set of use cases and actors A use case diagram can help the.
Creating Use Cases.
Use Case Model Use case diagram.
Use Case Model Use case description.
UML’s StateChart FSM, EFSM in UML Concurrent states Tool support.
BPMN - Business Process Modeling Notations
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
PPT4: Requirement analysis
Presentation transcript:

Essentials of OVID Using UML based notation to capture system requirements and design.

Overview of Socio-cognitive Engineering General requirements Theory of Use Design Concept Contextual Studies Task model Design space System specification ImplementationDeployment Evaluation

Use of OVID UML General requirements Theory of Use Design Concept Contextual Studies Task model Design space System specification ImplementationDeployment Evaluation * also used for business process models and software engineering * *

Why UML? CASE tools support UML and can be used to facilitate communication within a project team  design can be partitioned for teams  control levels and versions software design and business process are already documented in UML  can teach other disciplines to use OVID subset May use ‘gatekeeper’ to help others understand

Summary of UML used Class diagrams  for users, goals  for objects and views Activity diagrams  for old tasks and new tasks Use cases  for function specification

Summary of UML used State models  for object and view states  Harel diagram from UML  state tables added from Schlear and Mellor* Sequence Diagrams  for detailed tasks * see

Class diagrams (users and goals) General requirements Theory of Use Design Concept Contextual Studies Task model Design space System specification ImplementationDeployment Evaluation

Class diagrams (users and goals) Describe the stakeholders in the system  users (roles)  indirect users  customers, buyers, managers… Describe the goals they have  quantitative goals  qualitative goals

Class diagrams (users) Actors represent groups of users Subclass hierarchy shows levels of grouping Can also show other relationships

Class diagrams (users) Record attributes of users in the role Focus on things that make them different Use when recruiting subjects for studies or validation

Class diagrams (goals) Goals are states that users want to reach Use class showing goal Connect users who have that goal Attributes show how to measure the goal

Class diagrams (goals) Break down goals until all users have different goals Goals can be quantitative or qualitative  Defines how it is validated

Activity diagrams General requirements Theory of Use Design Concept Contextual Studies Task model Design space System specification ImplementationDeployment Evaluation

Activity diagrams Capture tasks in detail  both existing practice and new design  capture activity, goals reached, decisions made Use swimlanes to show how several users and/or systems participate in activity  know who does what and when  crossing between lanes = communication

Activity diagrams One lane for each participant  users and system Place activities, states and decisions in the right lane

Use cases General requirements Theory of Use Design Concept Contextual Studies Task model Design space System specification ImplementationDeployment Evaluation

Use cases Describe the functions the system will enable  at the end of design space analysis Relate each case to the goals it satisfies Capture details to aid design priority  How many users know of this case – via connections to goals and hence users  How often this case is used

Use cases Define functions that you will include in the design  in CASE tools the use cases can contain other diagrams such as activity diagrams Show which users will need which functions

Class diagrams (objects and views) General requirements Theory of Use Design Concept Contextual Studies Task model Design space System specification ImplementationDeployment Evaluation

Class diagrams (objects and views) Define the objects the users will know  name and description lead to metaphor  attributes Describe how the user will see the objects as multiple views  which attributes are seen when  transition between views

Finding objects to model Identify the objects - review nouns that are found in the task models Sort the objects utilizing a simple table (optional – can do directly into modelling if desired) Define each object with 1 clause (no jargon) in ways users would understand them Put objects in model (including definitions, attributes and operations) and define relationships between objects ConcretePeopleFormsUsersAbstract Real things you can touch or walk away with Those who are managed by the system or have things saved for them Existing paperwork or other system Those who operate the system or directly interact with the system Anything else Hotel Room Credit card Key GuestReservation Folio Guest Reservation clerk Front Desk clerk Night auditor Authorization Stay Dates

Class diagram for user objects Create classes for each object the users need Names and descriptions should be as simple as possible Add attributes and operations as you design

Relationships for objects For many-to- many relationships add an object to represent the relationship An existing form is often the right object for this

Core hotel model

Finding views Review most frequent or most commonly used tasks (in use cases) first Note the objects involved in activities as swimlanes are crossed Define a view of that object that has the necessary information

Class diagram for views View classes have stereotype of > Attributes show which parts of objects are used for an interaction Can connect users to show where they start

State models General requirements Theory of Use Design Concept Contextual Studies Task model Design space System specification ImplementationDeployment Evaluation

State models Show how objects and views change with events in the system  what is the lifecycle of each object  does the view state match the object Harel diagrams for ‘normal’ events State tables for exceptions

State model as Harel diagram Use state diagrams (Harel Diagrams) to show normal processes for an object or a view Transition names should correspond to operations Convert to state tables to examine all combinations of states and transitions

State models (state tables) Harel diagrams can be transcribed to state tables  normally gives a sparse table  empty cells represent events you have not designed for – fill in all empty cells by making design decisions – consider ‘if the user was trying to do that, what would they expect to happen?’

State table OpenInputsProcess [valid data] Proces s [invalid data] Reenter input Check-inClose out [Initial]To receivin g input Receivin g input To receivin g input To confirme d To invalid Confirme d To [final] InvalidTo receivin g input To [final] Rows: States, Columns: Operations

State Table OpenInputsProcess [valid data] Process [invalid data] Reenter input Check-inClose out [Initial]To receiving input Not available to the user Receiving input Open is an internal action so not available to the user To receiving input To confirmed To invalid Must be invalid Not allowed ConfirmedNot allowed - no changes are allowed once a reservation is confirmed To [final]Not allowed InvalidNot allowedTo receiving input Not allowedTo [final] Rows: States, Columns: Operations

Sequence diagrams General requirements Theory of Use Design Concept Contextual Studies Task model Design space System specification ImplementationDeployment Evaluation

Sequence diagrams Alternative to activity diagrams  expressed as ‘messages’ or ‘methods’  normally only needed for fine grain design such as when relating to complex state models  no decisions/branching available

Realising design Models considered by  graphic design  software design Class diagrams (objects) lead to data design Class, activity and sequence diagrams with state models lead to program design Class (views) and activity diagrams with state models lead to window/web page/dialog designs

Sequence diagram To read these diagrams – Read down a column to determine the order of activities performed by the entity (an actor, object or view)

Models As Input To Presentation View Design

Objects in many views

Objects retain identity

Same objects, two tasks Making a reservation Checking in

Views math sequences The state diagrams clarify the interaction information that was left to interpretation in the Abstract View Knowing which steps are supported by an object completes the information needed to plan its view in the composition

Paper prototype

Medium fidelity prototype

Flow between views

Another realisation

Presentation model

Resources OMG UML resources page  Rational UML resources page  OVID book  Designing for the User with OVID: Bridging User Interface Design and Software Engineering by Dave Roberts, Dick Berry, Scott Isensee, John Mullaly  Published by Macmillan Technical Publishing 1998, 187 pages ISBN Ease of Use web site and OVID section  