• Tidak ada hasil yang ditemukan

The Unified Modeling Language

N/A
N/A
Protected

Academic year: 2018

Membagikan "The Unified Modeling Language"

Copied!
44
0
0

Teks penuh

(1)
(2)

The Unified Modeling Language

The Unified Modeling Language (UML) is a

standard language for writing software

blueprints. The UML may be used to

visualize, specify, construct, and document

the artifacts of a software intensive system.

Grady Booch

James Rumbaugh (OMT)

(3)

Building Blocks of UML

Things

Relationships

(4)

Things

Structural things

classes, interfaces, collaborations, use

cases, active classes, components, nodes.

Behavioral things

interactions, state machines.

Grouping things

packages.

Annotational things

(5)

Relationships

Dependency

Association

(6)

Diagrams

1. Class diagram

2. Object diagram

3. Use case diagram

4. Sequence diagram

5. Collaboration diagram

6. Statechart diagram

7. Activity diagram

8. Component diagram

(7)

Structural Things

Structural things are the nouns of UML

models. These are the mostly static parts of

a model, representing elements that are

(8)

Class

Class

 A class is a description of a set of objects that share

the same attributes, operations, relationships, and semantics.

Attribute

 An attribute is a named property of a class that

describes a range of values that instances of the property may hold.

Operation

 An operation is the implementation of a service that

(9)

Use Case

Use case

 A use case specifies the behavior of a system or a

part of a system and is a description of a set of sequences of actions, including variants, that a

system performs to yield an observable result of value to an actor.

Actor

(10)

Use Case Diagram

Use case diagram

A use case diagram

shows a set of use cases and actors and their

(11)

Interface

Interface

 An interface is a collection of operations that specify a

service of a class or component.

Register.exe Billing.exe

(12)

Collaboration

Collaboration

 Cross between an symbol diagram and a sequence

diagram (interaction).

 Describes a specific scenario

 Numbered arrows show the movement of messages

during the course of a scenario

When to use a Collaboration Diagram

 When you prefer to show a spatial organization of

(13)
(14)

Node

 A node is a physical element that exists at run time

and represents a computational resource.

emCity

tornado Student DB

Course Scheduling

(15)

Behavioral Things

Behavioral things are the dynamic parts of

UML models. These are the verbs of a

(16)

Behavioral Things (cont’d)

Interaction

 An interaction is a behavior that comprises a set of

messages exchanged among a set of objects within a particular context to accomplish a specific purpose.

State machine

 A state machine is a behavior that specifies the

sequences of states an object or an interaction goes through during its lifetime in response to events,

(17)

Grouping and Annotational Things

Grouping things are the organizational parts of UML

models.

Package

 A package is a general purpose mechanism for organizing

elements into groups.

(18)

Dependency

Dependency

 A dependency is a using relationship that states that

a change in specification of one thing may affect another thing that uses it, but not necessarily the reverse.

RegistrationManager

(19)

Association

Association

 An association is a structural relationship that

specifies that objects of one thing are connected to objects of another.

(20)

Aggregation

Aggregation

 An aggregation is a special form of association that

specifies a whole part relationship between the

aggregate (the whole) and a component (the part).

Course

(21)

Generalization

Generalization

 A generalization is a relationship between a general

thing and a more specific kind of that thing.

Sometimes it is called an ''is a kind of'' relationship.

(22)

Realization

Realization

 A realization is a semantic relationship between

classifiers, wherein, one classifier specifies a contract that another classifier guarantees to carry out.

Register.exe Billing.exe Billing System

(23)

Class and Object Diagram

Class diagram

 A class diagram shows a set of classes, interfaces,

and collaborations and their relationships.

Object diagram

 An object diagram shows a set of objects and their

(24)

Sequence Diagram

Sequence diagram

 A sequence diagram is an interaction diagram that emphasizes the time ordering of messages.

 This diagram is a model describing how groups of objects collaborate in

some behavior over time.

 The diagram captures the behavior of a single use case.

 It shows objects and the messages that are passed between these objects

in the use case.

When to use a sequence diagram

 A good design can have lots of small methods in different classes. Because

of this it can be difficult to figure out the overall sequence of behavior. This diagram is simple and visually logical, so it is easy to see the sequence of the flow of control.

 A sequence diagram also clearly shows concurrent processes and

(25)
(26)

State Chart Diagram

Statechart diagram

 A statechart diagram shows a state machine, consisting of

states, transitions, events, and activities.

 Provides a very detailed picture of how a specific symbols

changes states.

 A state refers to the value associated with a specific attribute of

an object and to any actions or side

 effects that occur when the attribute’s value changes

When to use a State Diagram

 Used when you are working on real-time process control

applications or systems that involve concurrent processing

 When you want to show the behavior of a class over several use

(27)
(28)

Activity Diagram

 Activity diagram

 An activity diagram is a special kind of a statechart diagram that shows the flow from activity to activity

(29)

Deployment Diagram

 A Deployment diagram shows the configuration of run-time processing elements

and the software components, processes, and objects. Software component instances represent run-time manifestations of code units. Components that do not exist as run-time entities do not appear on these diagrams. These

(30)

Component Diagram

 A component diagram shows the dependencies among software components,

including source code, binary code and executable components. Some

(31)

Example

An University wants to computerize their registration

system

 The Registrar sets up the curriculum for a semester

 One course may have multiple course offerings

 Students select 4 primary courses and 2 alternate courses

 Once a student registers for a semester, the billing system is

notified so the student may be billed for the semester

 Students may use the system to add/drop courses for a period

of time after registration

(32)

Actors

An actor is someone or some thing that must

interact with the system under development

Student Registrar

Professor

(33)

Use Cases

use case is a pattern of behavior the system exhibits

 Each use case is a sequence of related transactions

performed by an actor and the system in a dialogue

Actors are examined to determine their needs

 Registrar -- maintain the curriculum

 Professor -- request roster

 Student -- maintain schedule

(34)

Use Case Diagram

Student Professor

Maintain Schedule

Maintain Curriculum Request Course Roster

Billing System

(35)

Sequence Diagram

StudentRecord Enrollment StudentSchedule courseOffering

StudentId

create studentSchedule

verifyPrerequisites

display studentSchedule selectCourse

addCourse prereqs met

prereqs not met

password verified

prerequisites deny enrollment

getPrerequisites

checkEnrollment space available

Student

(36)

Collaboration Diagram

: Registrar

course form : CourseForm

theManager : CurriculumManager aCourse :

Course

1: set course info 2: process

3: add course

(37)

Classes

RegistrationForm

RegistrationManager

Course

Student

CourseOffering Professor

(38)

Classes

RegistrationForm

RegistrationManager

addStudent(Course, StudentInfo)

(39)

Relationships

addStudent(Course, StudentInfo)

(40)

Multiplicity and Navigation

addStudent(Course, StudentInfo)

(41)

Inheritance

addStudent(Course, StudentInfo)

(42)

State Transition Diagram

Initialization Open

entry: Register student exit: Increment count

Closed Canceled

do: Initialize course

do: Finalize course do: Notify registered students

Add Student / Set count = 0

Add student[ count < 10 ]

[ count = 10 ] Cancel

Cancel

(43)

Component Diagram

Course Course

(44)

Deployment Diagram

Registration Database

Library

Dorm

Referensi

Dokumen terkait

Dari kegiatan ini dapat disimpulkan bahwa penambahan kayu jambal dan kemiri sebagai bahan pra mordan dibarengi pengaturan pH pada pewarnaan batik dengan ekstrak akar

Program Takhasus Baca Kitab Kuning Kelas X MA Unggulan Al- Imdad Pandak Bnatul Yogyakarta ” , Skripsi Pendidikan Bahasa Arab Fakultas Ilmu Tarbiyah dan Keguruan,

Peubah yang diamati meliputi (a) banyaknya telur yang diletakkan oleh parasitoid per kutu putih yang terparasit, (b) banyaknya telur parasitoid yang terenkapsulasi per kutu

SD Laboratorium UM sebagai lembaga sekolah dasar swasta yang mengimplementasikan Kurikulum 2013 yang menekankan pada pembentukan kompetensi serta karakter peserta didik dan

Jumlah dan proporsi penduduk yang bekerja menurut lapangan usaha merupakan salah satu indicator yang digunakan untuk melihat potensi sector perekonomian dalam menyerap

Standar Nasional Perpustakaan Desa/Kelurahan ini meliputi standar koleksi, sarana dan prasarana, pelayanan, tenaga, penyelenggaraan, dan pengelolaan perpustakaan. Standar ini

Penelitian ini menggunakan beban complement yang dibutuhkan pada generator pembangkit listrik agar perubahan dari beban konsumen tidak mempengaruhi tegangan, dengan

Dari hasil analisis, nilai rata-rata post-test kelompok eksperimen sebesar 86 sedangkan nilai rata-rata post-test kelompok kontrol sebesar 78 ( 1 &gt; 2) maka