You are on page 1of 34

Applying UML in your S/W

Development Process
Thanadee Ujjubandh
thanadee_u@nomagicasia.com

No Magic Asia Ltd.


www.nomagicasia.com
© No Magic, Inc., 2004
Just Technology That Works 1
Agenda

ƒ Problem in S/W Development


ƒ What is S/W Development Process?
ƒ What is UML?
ƒ Why do we need UML?
ƒ Unified Process
ƒ Good UML Tool

© No Magic, Inc., 2004


Just Technology That Works 2
Problem in S/W Development

ƒ Delayed project
ƒ Over budget
ƒ Not meet customer requirement
ƒ Incremental development is very hard
ƒ Lack of reusable

© No Magic, Inc., 2004


Just Technology That Works 3
Failure Statistics

Completed

23% 28%
Over time, Over buget
and few features than
the initial specification

49% Cancelled during


development cycle

© No Magic, Inc., 2004


Just Technology That Works 4
Compare Failure 1994-2000

250%
200%
150% 1994
100% 2000
50%
0%
Additional Time Additional Cost Complete Features
and Functions

© No Magic, Inc., 2004


Just Technology That Works 5
What’s happen?

ƒ Better Tools
ƒ Better Skilled
ƒ Better Process

© No Magic, Inc., 2004


Just Technology That Works 6
What is the S/W Development
Process ?

ƒ The process defines “who” do “what”, “when”


and “how” to reach the goal
ƒ The Goal is to build a quality software product
or to upgrade the existing one
ƒ An efficient process provides guidelines for
efficient software development of quality
software, it reduce risk and increase
predictability

© No Magic, Inc., 2004


Just Technology That Works 7
What is UML?

ƒ A standard language (notation) for modeling


object-oriented systems
ƒ A standard maintained by OMG (Object
Management Group)
ƒ A modeling language including nine diagrams to
describe a system
ƒ UML is just the notation (Not a Process), we
apply different kind of diagram to show the system
in different point of view

© No Magic, Inc., 2004


Just Technology That Works 8
UML Diagrams

1. Use Case Diagram


2. Class Diagram
3. Object Diagram
4. State Diagram
5. Activity Diagram
6. Sequence Diagram
7. Collaboration Diagram
8. Component Diagram
9. Deployment Diagram

© No Magic, Inc., 2004


Just Technology That Works 9
Use Case Diagram

ƒ Describe the functionality provided by system


ƒ Contain actor, use case and relationships

© No Magic, Inc., 2004


Just Technology That Works 10
Activity Diagram

ƒ Describe actions flow in the internal process of


a system
ƒ Support parallel behavior for multi-thread
programming

© No Magic, Inc., 2004


Just Technology That Works 11
Class Diagram

ƒ Describe static structure of the system


ƒ Contain classes and relationships

© No Magic, Inc., 2004


Just Technology That Works 12
Object Diagram

ƒ Describe the objects and relationships that


could be instantiated from the class diagram

© No Magic, Inc., 2004


Just Technology That Works 13
Sequence Diagram (1)

ƒ Describe interaction of classes or objects


arrange in time sequence
ƒ Describe how a process is performed by a group
of classes or objects by a sequential set of steps
ƒ Provide an object oriented view of a procedural
views

© No Magic, Inc., 2004


Just Technology That Works 14
Sequence Diagram (2)

© No Magic, Inc., 2004


Just Technology That Works 15
Collaboration Diagram

ƒ Describe how class and object


interact/collaborate to the others
ƒ Provide an alternative view to the sequence
diagram

© No Magic, Inc., 2004


Just Technology That Works 16
State (Statechart) Diagram

ƒ Describes how an object changes behavioral


states through its lifecycle
ƒ Describe the responses of the object or class
to external stimuli

© No Magic, Inc., 2004


Just Technology That Works 17
Component Diagram

ƒ Describe the various software components and


their relationships in a system

© No Magic, Inc., 2004


Just Technology That Works 18
Deployment Diagram

ƒ Describe physical relationships between S/W


and H/W (node) in delivered system
ƒ Present how components and objects route
through the network

© No Magic, Inc., 2004


Just Technology That Works 19
Combining Component and
Deployment Diagram
ƒ Place Component Diagram on Deployment
Diagram
ƒ Display which component runs on which nodes

© No Magic, Inc., 2004


Just Technology That Works 20
Why do we need UML?

ƒ Capture business processes or requirements


ƒ Communication tool
ƒ Manage complexity of the system
ƒ Define software architecture
ƒ Promote component reusability

© No Magic, Inc., 2004


Just Technology That Works 21
UML in your S/W
Development Process

© No Magic, Inc., 2004


Just Technology That Works 22
Software Development
Life Cycle
Gathering Requirement

Documentation

Implementation

Integrate and
Testing

Maintenance
and Evolution

© No Magic, Inc., 2004


Just Technology That Works 23
Unified Process

ƒ A software development process


ƒ Component-based
ƒ Uses UML

© No Magic, Inc., 2004


Just Technology That Works 24
Key Points of Unified Process

I. Use Case Driven


II. Architecture Centric
III. Iterative and Incremental

© No Magic, Inc., 2004


Just Technology That Works 25
I. Use Case Driven Process

© No Magic, Inc., 2004


Just Technology That Works 26
II. Architecture-Centric

ƒ Give a clear perspective of the whole system


ƒ Describes the model element
ƒ Blueprint of software system

© No Magic, Inc., 2004


Just Technology That Works 27
III. Iterative and Incremental

ƒ The process provides the strategy for


developing software product in small
manageable steps
– Plan a little (Milestone)
– Specify, design and implement a little
– Integrate, test and run each iteration a little

© No Magic, Inc., 2004


Just Technology That Works 28
Software Development Process
(Use Case Driven Process)

© No Magic, Inc., 2004


Just Technology That Works 29
Software Requirement
Specification

© No Magic, Inc., 2004


Just Technology That Works 30
Software Design Description

© No Magic, Inc., 2004


Just Technology That Works 31
Test Design

© No Magic, Inc., 2004


Just Technology That Works 32
Good UML Tool should be
ƒ Full support for UML 1.4
ƒ UML Diagram Extensibilities Support
ƒ XMI Format File Support (Support standard format for exchange)
ƒ Database Design Support
ƒ Round-trip Engineering
ƒ Model Analysis Facilities
ƒ Convert Model to Document in HTML format
ƒ Version Control and Sharing the Model over network
ƒ Integration with leading IDEs
ƒ Multi-Language Support
ƒ UML Syntax Checker
ƒ Portability
ƒ Performance
ƒ Service and Support
ƒ Cost
© No Magic, Inc., 2004
Just Technology That Works 33
Reference

ƒ http://www.standishgroup.com
“Extreme_chaos”, “The CHAOS Report (1994)
ƒ The Unified Software Development Process
ƒ No Magic Process
ƒ www.magicdraw.com
No Magic Asia Ltd.
719, 22nd Fl., KPN Tower, Rama IX Rd.,
Bangkapi, Huaykwang, Bangkok 10310
Phone: +66 (0) 2717-0250
Fax: +66 (0) 2717-0251
e-mail: nomagicth@nomagicasia.com
URL: http://www.nomagicasia.com
© No Magic, Inc., 2004
Just Technology That Works 34

You might also like