Modelling Requirements - Ch. 11 Flashcards
1
Q
What is a Use Case?
A
In UML a use case is something that an actor wants the IT system to do; a ‘case of use’.
Each use case has a stated goal and contains a description of the actions that the system must perform in order to achieve it.
A Use Case has:
- Actors (matchstick if human or rectangle with an <<actor>> before system name if actor is asystem)</actor>
- Each use case is shown as an oval and respresents a function the system will perform in response to the actor (verb-noun, e.g. ‘Book Room’)
- A defined boundary indicated by drawing a large box around all of the use cases with the actors outside the box.
- Associations indicate which actors will need to interact with which use case (lines to link actors with use cases).
- <<include>> use cases included in a use case shown on diagram</include>
- <<extend>> use cases linked, but with the originating ‘extend’ use case having its own use case diagram (extension of diagram)</extend>
Pros:
Very useful during workshops as they are so easily understood.
2
Q
What is the purpose of a Data Model?
A
- allows stakeholders who will need to use the system or obtain information from it to agreed on data to be recorded and retrieved.
- provides basis for database design or evaluation of off-the-shelf applications.
- helps the analyst understand data required to support process improvements.
- provides mechanism for communicating data requirements forward into the design and build of an IT system.
3
Q
What is an Entity Relationship Diagram?
A
Identfies and provides understanding of:
- Data attributes
- Entities (grouping of attributes)
- Entity type and Entity occurent (e.g. Book vs book title such as Alice In Wonderland)
- Entity type = table
- Entity occurence = record with unique identifier (e.g. account_number)
- Represented by a box
- Singular Noun name
- physical (e.g. order, customer, supplier)
- conceptual (e.g. booking, appointment)
- active (e.g. meeting, course)
- parent entity (‘one’ end) may exist without child entries
- child entity (‘many’ end) must have a parent
- many to many relationships need to be resolved by adding an intermediate entity (e.g. ‘employee’ to ‘project’ = add ‘contract’ entity)
- Relationship between entities (business connection shown as a line linking entities)
- Optionality
- if relationship is optional (e.g. ‘customer call’ to ‘order’), the relationship will be shown by a dotted line
- fully mandatory relationships are shown by solid lines
- Relationship names (e.g. ‘sales region’ responsible_for AND ‘customer’ allocated_to)
- Exclusivity arc (e.g. ‘employee’ allocated EITHER TO ‘sales region’ OR ‘office’)
4
Q
What is a Class Model?
A
Shows graphically the classes in a system and their associations with each other (similar to entity relationship diagrams).
Contains:
- objects (e.g. account_number) - objects are sent messages that invoke a response
- classes (object class, similar to entity type - represented by rectangular boxes with three sections containing:
- name of class ‘Account’ ‘Payment’ ‘Transaction’ ‘OrderLine’
- attributes (items of data about the class ‘name’ ‘dateLastPayment’ ‘creditLimit’)
- Operations (invoked by messages beign sent toi t) named the same as the message that invokes it ‘Replace creditLimit with newCreditLimit’
- associations