LINUX System (English

Download Report

Transcript LINUX System (English

Lecture 9-1 :
Intro. to UML (Unified Modeling Language)
Motivation of Modeling

Realistic and useful systems are large and complex



Systems require the work of many people



UNIX system V : 1M SLOC (source lines of code)
Windows2000 : 40M SLOC
Developers, testers, managers, clients, users, etc
Systems have an extended life cycle, hence they
evolve
1M SLOC with 100 persons ≠ 10k SLOC with 1
person
Modeling
Systems, Models, and Views

System



a set of interacting or interdependent entities forming an
integrated whole.
subsystem : is a system itself and a part of a larger system
Common characteristics of system : Systems have

Structure


Behavior


defined by parts and their composition
involves inputs, processing and outputs of materials, energy or
information
Interconnectivity

the various parts of a system have functional as well as structural
relationships between each other
Systems, Models, and Views

Model



View


Selected aspects of a model
Notation


Abstraction describing a system (or a subset)
ex) computer model, business model, data model,
mathematical model, economic model, …, etc
Set of rules for representing views
Views and models of a single system can overlap
each other
What is UML?

UML → “Unified Modeling Language”

Emerging standard for modeling object-oriented Software

Language: express idea, not a methodology
Modeling: describing a software system at a high level of abstraction
Unified: UML has become a world standard


What is UML?

More description about UML:

It is a industry-standard graphical language for specifying, visualizing,
constructing, and documenting the artifacts of software systems

The UML uses mostly graphical notations to express the OO analysis
and design of software projects.

Simplifies the complex process of software design
Why we use UML?

Use graphical notation: clearer than natural language (imprecise) and
code (too detailed).

Help acquire an overall view of a system.

UML is not dependent on any one language or technology.

UML moves us from fragmentation to standardization.

share idea and the results of system design among clients, system
analysts, and programmers
Models, Views, and Diagrams
A model is a complete
description of a system
from a particular
perspective
Use Case
Use Case
Diagrams
Sequence
Diagrams
Diagrams
Scenario
Scenario
Diagrams
Collaboration
Diagrams
Diagrams
Scenario
Scenario
Diagrams
Statechart
Diagrams
Diagrams
Use Case
Use Case
Diagrams
Use Case
Diagrams
Diagrams
State
State
Diagrams
Class
Diagrams
Diagrams
State
State
Diagrams
Object
Diagrams
Diagrams
State
State
Diagrams
Component
Diagrams
Diagrams
Models
Component
Component
Diagrams
Deployment
Diagrams
Activity
Diagrams
Diagrams
3 categories of UML diagrams

Structure Diagrams : what things must be in the system being modeled







Behavior Diagrams : what must happen in the system being modeled




Class diagram
Component diagram
Composite diagram
Deployment diagram
Object diagram
Package diagram
Activity diagram
State diagram
Use case diagram
Interaction Diagram (subset of behavior diagram) : the flow of control and data
among the things in the system being modeled




Communication diagram
Interaction overview diagram
Sequence diagram
Timing diagram
3 categories of UML diagrams
UML History
Year Version
Currently UML 2.2
2005:
UML 2.0
2001:
UML 1.4
1999:
UML 1.3
1997:
UML 1.0, 1.1
1996:
UML 0.9 & 0.91
1995:
Unified Method 0.8
Booch ‘93
OMT - 2
Other methods
Booch ‘91
OMT - 1
UML Diagrams

Each graphical notation of UML is used for drawing
diagrams

The purpose of diagrams is to provide views from
different perspective.

Model is a set of views

We will look at summary of each diagram in the
following slides
Class Diagram


Describe the static structure of the system
Objects, attributes, and associations
Use-Case Diagram

shows the functionality provided by a system in terms of actors,
their goals represented as use cases, and any dependencies
between those use cases
State (Statechart) Diagram

Describe the dynamic behavior of an individual object
as a finite state machine.
Sequence Diagram

Describe the dynamic behavior between actors and the system
and between objects of the system.
Why so many diagrams?
•
Multiple aspects of a complex system
•
Need for detailed analysis and design