0% found this document useful (0 votes)
57 views34 pages

Requirements Analysis:: Modelling Concepts & Package Diagrams

The package diagram models the Cape Town Videos subsystem. It includes packages for customers, videos, employees, and the head office. Customers can apply for membership, rent videos, and return them. Employees have their shift hours tracked for payroll. Videos have their inventory managed. The head office provides marketing and accounting functions. The diagram defines the scope of the subsystem and its interactions.

Uploaded by

waatih
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
57 views34 pages

Requirements Analysis:: Modelling Concepts & Package Diagrams

The package diagram models the Cape Town Videos subsystem. It includes packages for customers, videos, employees, and the head office. Customers can apply for membership, rent videos, and return them. Employees have their shift hours tracked for payroll. Videos have their inventory managed. The head office provides marketing and accounting functions. The diagram defines the scope of the subsystem and its interactions.

Uploaded by

waatih
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 34

Requirements

Analysis:
Modelling Concepts & Package
Diagrams
D. Maureen Tanner
In This Lecture You Will Learn:
What is a model
Why we use models
The origins of the Unified Modelling Language
The purpose of the various UML diagrams
The Role and notation of the Package diagram

2
What is a Model
A model represents something else it is an abstraction of a
real life artifact
Road map
Architect Plan
Designer Blueprint

To be useful it should be at the correct level of detail and


clearly define the scope of the problem - show only the parts
of the problem being addressed (in scope)

We can model
Buildings, Vehicles, Organisations, Computer Systems
We can model different views of the artifact 3
Different Views of a Building
And many more..
Site Plan
Roof plan
Engineering Plan
Landscaping
Networking
Climate control
Floor Plan Scale Models In different
levels of detail..
Sketch plan
Final Drawings
Approved plans
Building Plans

Elevations Wiring Diagram


4
Why do we use models?
To aid the understanding of complex problems and solutions
To document this understanding in a concise, yet accurate way
To help to communicate this understanding with various stakeholders
Models provide clarity and rigor
Models can evolve as we learn

Why Visual Models?


Some problems are difficult to communicate in the narrative
Diagrams are quicker and easier to Build, Change and Understand
Generate new ideas and possibilities
Test ideas and make predictions
Automation tools exist to help:
CASE (Computer-Aided Software Engineering) tools (Rational Rose)
Diagramming Tools (Visio)
5
What is the UML
UML stands for the Unified Modeling Language
The UML is a language for specifying, visualizing, constructing
and documenting the artifacts of software systems, as well as
for business modeling and other non-software systems.
(OMG)
Widely accepted as the standard for object oriented modeling
Is not a methodology

6
Types of UML Diagrams
Structural Behavioural
Diagrams Diagrams
Focus on static aspects of Focus on Dynamic aspects
the system of the system
Examples:
Examples: Use Case Narratives,
Use Case, Class, Object Interaction (Sequence,
Component, and Communication), State
Deployment Diagrams Machine, Activity diagrams

They are used to model:


Behavioural diagrams capture the
- The things that make up a model.
varieties of interaction and
- The relationships and dependencies 7
instantaneous state within a
between elements.
model as it executes over time.
Development Process
- Use Case Diagram, Activity
Requirements Elicitation
Diagram, Package Diagram

Identify Domain Objects and


- Class Diagram
their relationships

Document Object Interaction in


- Sequence Diagram
Use Case Realisation

Document Object States and


- State Machine Diagram
Behaviour
Document Implementation - Component and
Detail Deployment Diagram

8
Developing models
The models that we produce during the development of a
system change as the project progresses.
Dimensions through which they change:
Abstraction
Formality
Level of Detail

9
Developing models
Iteration 1
Obvious use cases
Simple use case description

Iteration 2
Additional use cases
Simple use case description
Prototypes

Iteration 3
Structured use cases 10
Structured use case description
Prototypes
Development Process the Big
4

11
Summary of UML
You can use UML at three levels (Fowler)
Sketch
Blueprint
Programming Language
Need to learn to walk before you can run
UML is not perfect or complete:
Never need all of it 20% of UML helps you do 80% of your work
Never need only it
UML 2.0 specification
Focus on real-time modeling and MDA
Little impact on visual modelers
12
The Package
Diagram
Defining Systems Scope
Scope - the extent of the system under investigation
Important that all stakeholders are clear on what is going to be
done, what is included inside the boundary, what will be
provided in the solution
Scope Creep the unexpected growth of user expectations and
information requirements for an information system as the project
progresses
Adaptive approach to scope and scope creep
Scoping tools:
Context Diagram powerful tool in modeling a systems interaction
with its environment
Package Diagram (UML) provides a hierarchical representation of
various subsystems and dependencies
14
Context diagram
How a Context diagram depicts scope:
Shows the system as a single process box
Identifies people, systems and organisations that interact with the
system (external agents)
Defines all key business events to which the system must react
Defines key systems outputs
Assists analyst by documenting the overall service provided by the
system, determining what business events need to be addressed (in
scope), and those that will not be included in the project (out of
scope)

15
Cape Town Videos
The following is a description of the subsystem at CTV:
In the front of shop, the main business activity is the reservation,
rental and return of videos. Customers apply for membership at one of
the branches and provide their family details. They can also purchase
contracts which will provide them with a pool of points to use in
making rentals.
Branch managers are responsible for selecting new videos and
capturing the detail into the inventory system
Most staff members are temporary and the manager arranges staff
shifts for each month. Hours worked are entered into a payroll system
responsible for generating weekly staff wages and the managers
monthly salary. All income and expenses are fed into an accounting
package to produce the financial statements.
The Franchise has a head-office that provides certain group functions
such as marketing and group accounting. 16
Cape Town Videos Context
Diagram Management
Application
Member
Customer Contract Details Rental
Payment
Financial
Return
Statements
Invoice
Video
Catalogue
Receipt
Transfers Video
Personal Details Cape Town Transfers Franchise
Purchase Order

Employee
Shift Hours Videos Payment

Payslip CC Details

Authorisation

Invoice
Head Summary Video
CC Bureau Statement
17
Office General
Ledger
Supplier
Cape Town Videos Context
Diagram Management
Application
Member
Customer Contract Details Rental
Payment
Financial
Return
Statements
Invoice
Video
Catalogue
Receipt
Rental Subsystem Transfers Video
Personal Details Cust. Maint. Transfers Franchise
Subsystem Purchase Order
Shift Hours
Employee Inventory Payment
Subsystem

Payslip CC Details

Authorisation

Invoice
Head Summary Video
CC Bureau Statement
18
Office General
Ledger
Supplier
Package Diagrams
A diagram that takes any UML constructs (classes, use cases) and
groups them together in higher level units with dependencies.
Package diagrams are useful early on in the project to document
major sub systems and their dependencies
This information is useful in scoping the project and determining
the sequence of development
Package Diagram Systems and Dependencies

Definition: A diagram that


takes any UML constructs
(classes, use cases) and groups
them together in higher level
units with dependencies.

20
Used to scope and plan the
overall structure and
sequence of development.
Package Diagram Notation

Package diagrams are useful early on in the


project to document major sub systems and
their dependencies
This information is useful in scoping the project
and determining the sequence of development

21
Packages are shown as tabbed folders
Subordinate packages can be nested
Dependencies are shown by dashed lines with
open arrow heads
If the dotted arrow points from A to B, read as
A depends on B
Package Diagram
Packages are shown as
tabbed folders
Name can be on tab or in
package
Subordinate packages can be
nested
Dependencies are shown by
dashed lines with open arrow
heads
If the arrow points from A to
B, read as A depends on
(uses) B
Package Diagram
Customer Support Subsystems / Dependencies

23
Package Diagram

24
Package Diagram
Your use cases could be regrouped in the following packages

25
Video Shop Subsystems and
dependencies
Front of Shop

Customer
Rental
Maintenance

Inventory
Revealing Systems Functionality
Sometimes seeing just the subsystems and dependencies is enough to
understand the overall structure and purpose of an information system
However the analyst can reveal the inner workings of a subsystem by
adding some of the important functionality as short bullets (or even
use cases)
The example below reveals the key functionality of the order entry
system. These items tend to be a survey of the important features of

27
the subsystem rather than an attempt to define all its inner workings
(which at this time are not entirely known)
Customer Support Business Use Case Diagram

28
Package Diagram: Erica Hotels
Revealing Systems Functionality
Sometimes seeing just the
subsystems and dependencies is
enough to understand the overall
structure and purpose of an
information system
However the analyst can reveal the
inner workings of a subsystem by
adding some of the important
functionality as short bullets (or
even use cases)
These items tend to be a survey of
the important features of the
subsystem rather than an attempt to
define all its inner workings (which
at this time are not entirely known)
Cape Town Videos
The following is a description of the subsystems at CTV:
In the front of shop, the main business activity is the reservation, rental and
return of videos.
Customers apply for membership at one of the branches and provide their
family details. They can also purchase contracts which will provide them
with a pool of points to use in making rentals.
Branch managers are responsible for selecting new videos and capturing
the detail into the inventory system.
Most staff members are temporary and the manager arranges staff shifts
for each month. Hours worked are entered into a payroll system
responsible for generating weekly staff wages and the managers monthly
salary. All income and expenses are fed into an accounting package to
produce the financial statements.
The Franchise has a Head Office that provides certain group functions such
as marketing and group accounting.
Exercise: Draw a package diagram of the Cape Town Videos Systems
showing all major subsystems and dependencies together with key
functionality
Package Diagram: Cape Town Videos
Summary in this session we:
Reviewed steps performed during the Inception Phase of the
systems development Life Cycle
Reviewed the artifact contained in a typical Business Case
Understood the importance of defining systems scope and the role
of the context diagram
Used a UML package diagram to depict software architecture and
dependencies

33
Class Exercise
Refer to the Cape Air Case Study
Draw a package diagram to depict the hierarchy and
dependencies of the systems described in the Cape Air case
study.

34

You might also like