Tải bản đầy đủ (.pdf) (206 trang)

Tài liệu phân tích thiết kết hệ thống của IBM

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.04 MB, 206 trang )

► ► ►

Module 0
About This Course

®

IBM Software Group

Essentials of Visual Modeling with UML 2.0
Module 0: About This Course

1

Topics
Intended Audience and Prerequisites.................................................................... 0-3
Course Objectives ................................................................................................ 0-4

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.

0-1


Essentials of Visual Modeling with UML 2.0

Introductions

Introductions
Š Your organization
Š Your role


Š Your background, experience
ƒ Object technology experience
ƒ Software development experience

Š Your expectations for this course

2

0-2

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.


Module 0 - About This Course

Intended Audience and Prerequisites
Intended Audience and Prerequisites
Š Intended Audience
ƒ Software developers who are making the
paradigm shift to visual modeling
ƒ Software managers who need to better
understand object technology
ƒ Data modelers who need to better communicate
with object modelers

Š Prerequisite
ƒ A desire to learn about visual modeling

3


The assumption here is that those attending this class work for a software company.

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.

0-3


Essentials of Visual Modeling with UML 2.0

Course Objectives
Course Objectives
Š After completing this course, you will be
able to:
ƒ Define the history and current application of
object technology.
ƒ Explain what the UML represents.
ƒ Explain abstraction, encapsulation, modularity,
and hierarchy.
ƒ Describe the physical structure of a class.
ƒ Identify the relationship between a class and an
object.
ƒ Define polymorphism and generalization.
4

0-4

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.



Module 0 - About This Course

Rational University Curriculum

Rational University Curriculum
Curriculum Flow:
Designer

Instructor-led
Web-based
Optional

Path 1
DEV110
Principles of
Modeling
2 hours

DEV111
Principles of
UC Modeling
with UML

DEV112
Principles of
Analysis I

DEV113

Principles of
Analysis II

DEV160
Principles of
Modeling
Behavior

2 hours

2 hours

2 hours

2 hours

OR
Path 2
DEV275
Essentials
of Visual
Modeling
with UML
1 day

DEV475
Mastering Object
Oriented
Analysis &
Design with UML

4 days

5

The above courses are the courses that Rational University offers. As you can see for
each major software development team role, Rational University offers a professional
development course.

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.

0-5


Essentials of Visual Modeling with UML 2.0

Rational University Curriculum

Rational University Curriculum
Curriculum Flow:
Enterprise Architect

Instructor-led
Web-based
Optional

Path 1
DEV110
Principles of
Modeling

2 hours

DEV111
Principles of
UC Modeling
with UML

DEV112
Principles of
Analysis I

DEV113
Principles of
Analysis II

2 hours

2 hours

2 hours

OR
Path 2
DEV475
Mastering Object
Oriented
Analysis &
Design with UML
4 days


DEV275
Essentials
of Visual
Modeling
with UML
1 day

6

0-6

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.


Module 0 - About This Course

Rational University Curriculum

Rational University Curriculum
Curriculum Flow:
System Analyst

REQ480
Management
with Use
Cases
3 days

Instructor-led

Web-based
Optional

REQ310
Essentials of
Rational
RequisitePro

DEV110
Principles of
Modeling

5 hours

2 hours

OR

OR

REQ370
Essentials of
Rational
RequisitePro

DEV275
Essentials of
Visual
Modeling with
UML


1 day

1 day

7

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.

0-7


Essentials of Visual Modeling with UML 2.0

Course Materials

Course Materials
Š Student Manual

8

The Student Manual contains copies of the slides as well as detailed Student Notes.

0-8

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.



Module 0 - About This Course

Other Sources of Information

Other Sources of Information
Š Rational Web site
ƒ />
Š Rational developerWorks
ƒ />
Š UML Resource Center
ƒ />
Š Rational Edge
ƒ />ge/
9








The Rational Web site provides the latest information on new products, visual
modeling and development, events, customer support, documentation and
training, to name just a few.
Rational developer Works, a customer-only site is IBM’s resource for
developers.
The UML Resource Center provides additional UML resources like Whitepapers
and recommended reading. It facilitates newsgroups and information about
services and training.

The Rational Edge is a free new e-zine dedicated to the practitioners and
decision-makers in the Rational community. Brought to you monthly by Rational
Software, this publication will help you use Rational products and services to
their very best advantage, and develop high-quality software at the speed today's
marketplace demands.

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.

0-9


Essentials of Visual Modeling with UML 2.0

Logistics

Logistics

Morning
2 Fifteen minute breaks
Lunch
1 Hour
Afternoon
2 Fifteen minute breaks

10

0 - 10

© Copyright IBM Corp. 2004

Course materials may not be reproduced in whole or in part without the prior written permission of IBM.


► ► ►

Module 1
Introduction to Object Technology

®

IBM Software Group

Essentials of Visual Modeling with UML 2.0
Module 1: Introduction to Object Technology

1

Topics
What Is Object Technology?................................................................................. 1-4
Where Is Object Technology Used? ...................................................................... 1-8

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.

1-1


Essentials of Visual Modeling with UML 2.0

Objectives


Objectives
Š Define object technology and show its
strengths.
Š Explain the history of object technology.
Š Discuss how object technology is used
today.

2

1-2

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.


Module 1 - Introduction to Object Technology

Where Are We?

Where Are We?
Š What is object technology?
Š Where is object technology
used today?

3

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.


1-3


Essentials of Visual Modeling with UML 2.0

What Is Object Technology?
What Is Object Technology?
Š A set of principles
(abstraction,
encapsulation,
polymorphism) guiding
software construction,
together with languages,
databases, and other
tools that support those
principles. (Object
Technology - A
Manager’s Guide, Taylor,
1997.)

4










1-4

Object technology is used for creating models that reflect a specific domain using
the terminology of the domain.
Models created using object technology should be easy to create, change,
expand, validate, and verify.
Systems built using object technology are flexible to change, have well-defined
architectures, and have the opportunity to create and implement reusable
components.
Models created using object technology are conveniently implemented in
software using object-oriented programming languages.
Object technology is not just a theory, but a well-proven technology used in a
large number of projects and for building many types of systems.
Successful implementation of object technology requires a method that integrates
a development process and a modeling language with suitable construction
techniques and tools. (UML Toolkit, Eriksson and Penker, 1997.)

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.


Module 1 - Introduction to Object Technology

The Strengths of Object Technology

The Strengths of Object Technology
Š Reflects a single paradigm
Š Facilitates architectural and code reuse
Š Reflects real world models more closely
Š Encourages stability

Š Is adaptive to change

5

So what’s the big deal about object technology? Why has the software industry made
such a noticeable shift to object-oriented languages like Java? Much of the answer has
to do with the strengths of object technology. There are some people who believe
that object technology is a passing fad and will quickly go away, while others believe
that object technology is the silver bullet that answers all software development
problems. The truth is that the answer probably lies somewhere in between. Object
technology is a powerful and challenging way to develop software. The result of this
hard work can be a software system that:






Reflects a single paradigm. It provides a consistent language that can be applied
for both system and business engineering.
Facilitates architectural and code reuse by clearly articulating the major
components and the critical interfaces between them.
Reflects real world models more closely. The objects themselves often
correspond to phenomena in the real world that the system is to handle.
Is more stable, a change to the system can be localized to a small part of the
system.
Is adaptive to change -a small change in requirements does not mean massive
changes to the system.

© Copyright IBM Corp. 2004

Course materials may not be reproduced in whole or in part without the prior written permission of IBM.

1-5


Essentials of Visual Modeling with UML 2.0

The History of Object Technology

The History of Object Technology
Š Major object technology milestones
Simula

C ++

The UML

1967

Late 1980s

1996

1972

1991

2004

Smalltalk


Java

UML 2

6












1-6

Object technology is not a new idea. It has been around for over 30
years. Below is a brief history of the major milestones in the history of object
technology.
In 1967, Simula was designed and became the first language to use objects and
classes.
In 1972, Alan Kay and others at Xerox PARC created Smalltalk whose roots were
tied to Simula. In 1980, Smalltalk became the first commercial release of an
object-oriented programming environment.
Bjarne Stroustrop, the originator of the C language, released C++ to the public
in the late 1980’s. C++ was not an entirely new language, but an extension of C

abilities.
In 1991, James Gosling created a language named Oak that was the predecessor
to Java. It was created because his development team at Sun Microsystems was
writing software for information appliances. He found that C++ was too
complex and insecure for the job. Therefore, he created the Oak language.
UML 2.0 replaces UML version 1.4. Released in 2004, the Object Management
Group (OMG) developed two complementary specifications called the
Infrastructure and Superstructure specification. The Infrastructure defines the
foundational language constructs required for UML 2.0 and serves as an
architectural foundation. The Superstructure defines the user level constructs.
Together, they constitute a complete specification for the UML 2.0 modeling
language.

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.


Module 1 - Introduction to Object Technology

Where Are We?

Where Are We?
Š What is object technology?
Š Where is object technology
used today?

7

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.


1-7


Essentials of Visual Modeling with UML 2.0

Where Is Object Technology Used?
Where Is Object Technology Used?
Š Client/Server Systems
and Web Development
ƒ Object technology
allows companies to
encapsulate business
information in objects
and helps to distribute
processing across the
Internet or a network.

8

Object technology allows companies to encapsulate business information in objects
and helps to distribute processing across the Internet or a network. Enterprise
development environments such as Sun’s J2EE and Microsoft’s .Net technologies use
objects as the basis for their technology.

1-8

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.



Module 1 - Introduction to Object Technology

Where Is Object Technology Used? (continued)

Where Is Object Technology Used? (continued)
Š Real-time systems
ƒ Object technology
enables real-time
systems to be
developed with higher
quality and flexibility.
4

9

Object technology is used in the following industries and software applications:
Telecommunications – circuit switching systems, wireless systems, transmission
systems, satellite systems, fault management, call/connection control, and protocol
development.
Data communications – LAN hub switches, multi-protocol routers, packet switching
& frame relay, ATM switching systems, connection control, node management, fault
management, and protocol development.
Defense and aerospace – command and control systems, missile control systems,
defense simulators, cockpit control systems, air traffic control systems, target tracking,
distributed computer modeling, man machine interface control, communication
modes and control, redundancy management.
Industrial control – office equipment, factory control systems, multi-processor high
speed printers, automotive systems, PWB and IC water fabrication, device control,
system management, distributed process control, machine position control,

bandwidth allocation.

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.

1-9


Essentials of Visual Modeling with UML 2.0

Differences Between OO and Structured Design

Differences Between OO and Structured Design
Š Object-orientation (OO)
ƒ Melds the data and data flow process together
early in the lifecycle
ƒ Has a high level of encapsulation
ƒ Promotes reuse of code differently
ƒ Permits more software extensibility

10

In the world of structured design, there has always been an uneasy relationship
between the data model in an entity-relationship diagram and the dataflow diagram.
The dataflow process and the data meet in some places, but in not others, they miss
each other altogether. Object-orientation (OO) melds the data and dataflow process
together early in the lifecycle. In object-orientation, concern yourselves with defining
the static and dynamic views of the system (Jones, p.65).
Object-orientation has a very high level of encapsulation associated with it. Data,
operations, and entire classes can be encapsulated. Structured programming relies

upon data structures, sophisticated algorithms, and elaborate relationships between
procedure and data (Jones, p.65).
Object-orientation promotes reuse of code at the class level rather than at the level of
the individual subroutine (Jones, p. 66).
The goal of extensible software is to share a solution that most closely fits the
problem. By doing this, you can ensure that a small requirements change doesn’t
require major modifications to your system. Because object orientation is built using
classes that are abstractions of actual business objects, OO techniques come closer to
permitting software extensibility than structured design.

1 - 10

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.


Module 1 - Introduction to Object Technology

Discussion

Discussion
Š What is your perception of object
technology?
Š What do you perceive as object
technology’s strengths? Its weaknesses?
Š Why are you making the shift to object
technology?

11


© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.

1 - 11


Essentials of Visual Modeling with UML 2.0

1 - 12

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.


► ► ►

Module 2
Principles of Visual Modeling

®

IBM Software Group

Essentials of Visual Modeling with UML 2.0
Module 2: Principles of Visual Modeling

1

Topics
What Is a Model? ................................................................................................. 2-4

Four Principles of Modeling ................................................................................ 2-11
What Is the UML? .............................................................................................. 2-17
A Language Is Not Enough to Build a System....................................................... 2-25

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.

2-1


Essentials of Visual Modeling with UML 2.0

Objectives

Objectives
Š Describe the importance of visual modeling
and the role of Model Driven Architecture.
Š Define the four principles of visual
modeling.
Š Explain what the Unified Modeling
Language (UML) represents.
Š Define the type of process that best relates
to the UML.

2

2-2

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.



Module 2 - Principles of Visual Modeling

Where Are We?

Where Are We?
Š What is modeling?
Š Four principles of visual
modeling
Š The UML
Š Process and visual modeling

3

© Copyright IBM Corp. 2004
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.

2-3


×