Download presentation
Presentation is loading. Please wait.
1
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved COMP1007 Introduction to Systems Requirements Use-Cases II
2
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Learning Objectives v Consider how to structure the Use Case Model using –include –extend –generalisation
3
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Structuring the Use Case Model v Objectives: “To extract behaviour in use cases that need to be considered as abstract use cases. Examples of such behaviour are common behaviour, optional behaviour, exceptional behaviour, and behaviour that is to be developed in later iterations. To find new abstract actors that define roles that are shared by several actors. “ RUP 2000
4
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Structuring the Use Case Model v Essentially –simplify the use cases by identifying common behaviour (include and generalisation) or exceptional/optional behaviour (extend) u common behaviour need only be specified once u exceptional/optional behaviour is specified separately
5
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved UML Definitions v Abstract Use Case –a use case that cannot be directly instantiated v Concrete Use Case –a use case that can be directly instantiated –initiated by an actor and comprises a complete flow of events
6
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Placing an order Concrete Use Case Probably quite complicated
7
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Stereotypes v Stereotype –meta-classification of a modelling element –based on existing modelling elements – may extend semantics but not structure of existing types and classes. –some are predefined, others may be user defined –uses matched guillemets around stereotype name eg «include»
8
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Stereotypes v Generally represents a usage distinction v Include and Extend are stereotype relationships. v UML suggests using dashed arrows but Rational Rose use solid association arrows stereotyped as include or extend
9
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Include Relationship v Used when –separating complex details to improve clarity –separating behaviour used by several base use cases v A use case instance following the base use case must also follow (include) the inclusion use in order to be complete
10
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Placing an order - structured New Inclusion Use Cases Base Use Case now has simplified specification Include relationship
11
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Include Relationships v RecordCustomerInformation (and the the other inclusions use cases) is included as a contiguous series of events at one location in the base use case PlaceOrder.
12
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Extend Relationship v Used when –optional or exceptional behaviour are specified separately in an extension use case thus simplifying the specification of the base use case v The flow of events in the base use case is complete and does not reference the extension use case
13
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Extension use case containing optional behaviour Extends relationship
14
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Extension Points v An extension use case is inserted into the base use case at one or more extension points which have to be explicitly named. v A base use case with events ‘mnopqr’ might be extended by the use case ‘abcde’ to be instantiated as ‘mabnopcdqre’
15
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Generalisations v Used when behaviour common to two or more use cases is factored into a parent use case v Means that a use case instance following the child use case also follows the parent use case to be complete
16
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Generalisation Parent Use Case Child Use Case Generalisation Relationship
17
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Generalisation v In this case ValidateCustomer is abstract. Frequently the generalisation use case is abstract but in general neither the parent or child use case need be abstract.
18
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Generalisation v Child use case may –add behaviour segments or modify behaviour segments inherited from the parent –the structure of the parent is preserved –multiple child use cases are independent of each other eg an instance of ValidateCustomer is either completed by CheckPassword or CheckRetinaScan
19
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Other approaches v Larry Constantine –distinguishes between essential (business) use cases and conventional or concrete use cases v Alistair Cockburn –builds “(business) goal-driven” use cases
20
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Other approaches v Craig Larman –influenced by Constantine distinguishes between High-Level use cases and Real use cases, and also between Initiating Actors and Participating Actors
21
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved Summary v Considered use structuring to identify commonality using –include, extend, generalisation relationships between use cases –and generalisation between actors v Note that this is not a form of functional decomposition
22
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved References v Cockburn, Alistair, Writing Effective Use Cases, Addison-Wesley, 2000 v Bennett, S., McRobb, S. & Farmer, R. Object-Oriented Systems Analysis and Design using UML McGraw-Hill 1999, Ch 5 v Jacobson, I., Booch, G. and Rumbaugh, J. (1999), The Unified Software Development Process, Addison-Wesley, Reading Mass. (Ch 7) v Rational Unified Process 2000
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.