Essentials of OVID

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

description

Essentials of OVID. Using UML based notation to capture system requirements and design. Overview of Socio-cognitive Engineering. Design Concept. Contextual Studies. Design space. Task model. Evaluation. System specification. Theory of Use. General requirements. Deployment. - PowerPoint PPT Presentation

Transcript of Essentials of OVID

Page 1: Essentials of OVID

Essentials of OVID

•Using UML based notation to capture system requirements

and design.

Page 2: Essentials of OVID

Overview of Socio-cognitive Engineering

Generalrequirements

Theory of Use

Design Concept

ContextualStudies

Task model

Design space

System specification

ImplementationDeployment

Evaluation

Page 3: Essentials of OVID

Use of OVID UML

Generalrequirements

Theory of Use

Design Concept

ContextualStudies

Task model

Design space

System specification

ImplementationDeployment

Evaluation

* also used for business process models and software engineering

* *

Page 4: Essentials of OVID

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

Page 5: Essentials of OVID

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

Page 6: Essentials of OVID

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 http://www.projtech.com/info/smmethod.html

Page 7: Essentials of OVID

Class diagrams (users and goals)

Generalrequirements

Theory of Use

Design Concept

ContextualStudies

Task model

Design space

System specification

ImplementationDeployment

Evaluation

Page 8: Essentials of OVID

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

Page 9: Essentials of OVID

Class diagrams (users)

•Actors represent groups of users

•Subclass hierarchy shows levels of grouping

•Can also show other relationships

Page 10: Essentials of OVID

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

Page 11: Essentials of OVID

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

Page 12: Essentials of OVID

Class diagrams (goals)

•Break down goals until all users have different goals

•Goals can be quantitative or qualitative

Defines how it is validated

Page 13: Essentials of OVID

Activity diagrams

Generalrequirements

Theory of Use

Design Concept

ContextualStudies

Task model

Design space

System specification

ImplementationDeployment

Evaluation

Page 14: Essentials of OVID

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

Page 15: Essentials of OVID

Activity diagrams

•One lane for each participant

users and system

•Place activities, states and decisions in the right lane

Page 16: Essentials of OVID

Use cases

Generalrequirements

Theory of Use

Design Concept

ContextualStudies

Task model

Design space

System specification

ImplementationDeployment

Evaluation

Page 17: Essentials of OVID

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

Page 18: Essentials of OVID

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

Page 19: Essentials of OVID

Class diagrams (objects and views)

Generalrequirements

Theory of Use

Design Concept

ContextualStudies

Task model

Design space

System specification

ImplementationDeployment

Evaluation

Page 20: Essentials of OVID

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

Page 21: Essentials of OVID

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

Concrete People Forms Users Abstract

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

•Guest •Reservation•Folio

•Guest•Reservation clerk•Front Desk clerk•Night auditor

•Authorization•Stay•Dates

Page 22: Essentials of OVID

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

Page 23: Essentials of OVID

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

Page 24: Essentials of OVID

Core hotel model

Page 25: Essentials of OVID

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

Page 26: Essentials of OVID

Class diagram for views

•View classes have stereotype of <<view>>

•Attributes show which parts of objects are used for an interaction

•Can connect users to show where they start

Page 27: Essentials of OVID

State models

Generalrequirements

Theory of Use

Design Concept

ContextualStudies

Task model

Design space

System specification

ImplementationDeployment

Evaluation

Page 28: Essentials of OVID

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

Page 29: Essentials of OVID

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

Page 30: Essentials of OVID

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?’

Page 31: Essentials of OVID

State table

Open Inputs Process [valid data]

Process [invalid data]

Reenter input

Check-in

Close out

[Initial] To receiving input

Receiving input

To receiving input

To confirmed

To invalid

Confirmed

To [final]

Invalid To receiving input

To [final]

Rows: States, Columns: Operations

Page 32: Essentials of OVID

State Table

Open Inputs Process [valid data]

Process [invalid data]

Reenter input

Check-in Close 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

Not allowed

Confirmed

Not allowed - no changes are allowed once a reservation is confirmed

To [final] Not allowed

Invalid Not allowed To receiving input

Not allowed

To [final]

Rows: States, Columns: Operations

Page 33: Essentials of OVID

Sequence diagrams

Generalrequirements

Theory of Use

Design Concept

ContextualStudies

Task model

Design space

System specification

ImplementationDeployment

Evaluation

Page 34: Essentials of OVID

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

Page 35: Essentials of OVID

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

Page 36: Essentials of OVID

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)

Page 37: Essentials of OVID

Models As Input To Presentation View Design

Page 38: Essentials of OVID

Objects in many views

Page 39: Essentials of OVID

Objects retain identity

Page 40: Essentials of OVID

Same objects, two tasksMaking a reservation

Checking in

Page 41: Essentials of OVID

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

Page 42: Essentials of OVID

Paper prototype

Page 43: Essentials of OVID

Paper prototype

Page 44: Essentials of OVID

Paper prototype

Page 45: Essentials of OVID

Medium fidelity prototype

Page 46: Essentials of OVID

Medium fidelity prototype

Page 47: Essentials of OVID

Medium fidelity prototype

Page 48: Essentials of OVID

Medium fidelity prototype

Page 49: Essentials of OVID

Medium fidelity prototype

Page 50: Essentials of OVID

Flow between views

Page 51: Essentials of OVID

Another realisation

Page 52: Essentials of OVID

Presentation model

Page 53: Essentials of OVID

Resources

•OMG UML resources page http://www.omg.org/uml/

•Rational UML resources page http://www.rational.com/uml/index.jsp

•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 1578701015

•Ease of Use web site and OVID section http://www.ibm.com/easy http://www.ibm.com/ibm/easy/eou_ext.nsf/Publish/589