• Tidak ada hasil yang ditemukan

Bagian #1. Rational Unified Process (RUP)

N/A
N/A
Protected

Academic year: 2022

Membagikan "Bagian #1. Rational Unified Process (RUP)"

Copied!
47
0
0

Teks penuh

(1)

Rational Unified Process (RUP)

Bagian #1

1

(2)

Apa yang disebut RUP?

RUP (Rational Unified Process) adalah model proses pengembangan perangkat lunak berbasis UML

(Unified Modeling Language).

 Dikembangkan oleh Rational Software berdasarkan model proses UP (Unified Process).

 Karakteristik RUP:

– Berulang

– Architecture centric – Use case-driven

– Risk-driven

(3)

Proses pada RUP

3

(4)

Phase pada RUP

Inception

Initial requirement capture (Initial Risk Analysis), Penentuan Tujuan dan manfaat perangkat lunak, penetapan proses-proses bisnis, dan

perencanaan proyek.

Elaboration

Requirement analysis & Analysis- Use case analysis, Risk Assesment Plan Revised (Penentuan use case dan rancangan arsitektur perangkat lunak.

Construction

Fokus pada implementasi dari Desain (Pembuatan perangkat lunak yang siap diserahkan kepada pemakai).

Transition

Penyerahan perangkat lunak kepada pemakai, pengujian di tempat pemakai, dan perbaikan saat dan setelah pengujian (Software update).

(5)

Workflow pada RUP

Aliran Kerja Utama (Core Workflow)

 Pemodelan Bisnis (Business Modeling)

 Kebutuhan (Requirements)

 Analisis dan Perancangan (Analysis and Design)

 Implementasi (Implementation)

 Pengujian (Testing)

 Deployment

5

(6)

Workflow pada RUP ( lanjutan )

Aliran Kerja Pendukung (Supporting Wokflow)

 Manajemen Konfigurasi dan Perubahan (Configuration and Change Management)

 Manajemen Proyek (Project Management)

 Lingkungan (Environment)

(7)

Unified Modeling Language (UML)

Bagian #2

7

(8)

Apa yang Disebut UML?

 UML (Unified Modeling Language) adalah bahasa untuk visualisasi, spesifikasi,

kontruksi, dan dokumentasi artifak-artifak perangkat lunak yang dibuat dengan

menggunakan pendekatan berorientasi objek.

 Dibuat untuk standarisasi pemodelan hasil

analisis dan perancangan perangkat lunak

berorientasi objek.

(9)

Apa yang Disebut UML ( lanjutan )

 Diciptakan bersama-

sama oleh Grady Booch, James Rumbaugh, dan Ivar Jacobson mulai tahun 1994.

 Diakui sebagai standar pemodelan objek oleh Object Management Group (OMG) pada tahun 1997.

9

(10)

Sejarah UML

(11)

Bahasa Pemodelan UML

 Pemodelan Use-case (Use-case Modeling)

 Pemodelan Kelas dan Objek (Class and Object Modeling)

 Pemodelan Komponen (Component Modeling)

 Distribution and Deployment Modeling

11

(12)

Komponen Penyusun UML

(13)

UML 2.2 Diagram

13

(14)

Use Case Diagram

 Menggambarkan apa yang dilakukan sistem saat berinteraksi atau menanggapi event yang diterima dari entitas luar (pemakai, sistem lain).

 Simbol use case diagram:

actor

use case

communication/

association

generalization

dependency

(15)

Use Case Diagram ( lanjutan )

 Contoh use case diagram:

15

(16)

Use Case Diagram ( lanjutan )

 Contoh relationship antar use case:

(17)

Class Diagram

 Menggambarkan kumpulan kelas, antarmuka, dan hubungan antar kelas secara statis.

 Simbol class diagram:

class

interface

association

agregation / composition

generalization

17

(18)

Class Diagram ( lanjutan )

 Contoh class diagram:

(19)

Object Diagram

 Menggambarkan kumpulan objek dan hubungan diantaranya.

 Notasi yang digunakan sama dengan class

diagram, hanya saja nama kelas (pada simbol kelas) diganti dengan nama objek.

19

(20)

Sequence Diagram

 Menggambarkan interaksi antar objek yang

diorganisasi berdasarkan urutan waktu sebagai realisasi dari use case sesuai rincian skenarionya.

 Simbol sequence diagram:

object

life line

message (call)

message (return)

(21)

Sequence Diagram ( lanjutan )

 Contoh sequence diagram:

21

(22)

Collaboration Diagram

 Menggambarkan kolaborasi antar objek sebagai realisasi dari use case sesuai rincian skenarionya.

 Simbol collaboration diagram:

object

link

message

(23)

Collaboration Diagram ( lanjutan)

 Contoh collaboration diagram:

23

(24)

Statechart Diagram

 Menggambarkan keadaan objek berikut transisinya sesuai event yang diterima dan response yang

diberikannya.

 Simbol statechart diagram:

state

transition

initial state

final state

(25)

Statechart Diagram ( lanjutan )

 Contoh statechart diagram:

25

(26)

Activity Diagram

 Menggambarkan aktivitas komputasi atau workflow suatu sistem dalam bentuk urutan action state.

 Simbol activity diagram:

action/activity state

activity flow

concurrent (fork, join)

initial state (start)

final state (end)

branch

(27)

Activity Diagram ( lanjutan )

 Contoh activity diagram:

27

(28)

Component Diagram

 Menggambarkan arsitektur fisik perangkat lunak secara menyeluruh dalam bentuk komponen-

komponen dan packages.

 Simbol component diagram:

component package

(29)

Component Diagram ( lanjutan )

 Contoh component diagram:

29

(30)

Component Diagram ( lanjutan )

 Contoh component diagram (package):

(31)

Deployment Diagram

 Menggambarkan komponen-komponen fisik dari sistem seperti pemroses, workstation, dan jaringan sebagai tempat dimana perangkat lunak dideploy.

 Simbol deployment diagram:

processor

connection

computer node / devices

31

(32)

Deployment Diagram ( lanjutan )

 Contoh deployment diagram:

(33)

Keterkaitan Antar Diagram UML

33

(34)

Penggunaan Diagram UML

Workflow Diagram Penggunaan

Requirements Use Case Diagram Kebutuhan fungsional perangkat lunak Analysis & Design Sequence Diagram Realisasi untuk masing-masing use case

Collaboration Diagram Realisasi untuk masing-masing use case Statechart Diagram Keadaan objek selama siklus hidupnya Activity Diagram Workflow dalam sistem

Class Diagram Kumpulan kelas dan keterkaitannya Component Diagram Arsitektur fisik perangkat lunak Deployment Diagram Penempatan perangkat lunak

(35)

Use Case Analysis

 What is a Use Case?

– A sequence of actions a system performs that yields a valuable result for a particular actor.

 What is an Actor?

– A user or outside system that interacts with the system being designed in order to obtain some value from

that interaction

 Use Cases describe scenarios that describe the interaction between users of the system and the system itself.

 Use Cases describe WHAT the system will do, but never

HOW it will be done.

(36)

What’s in a Use Case?

 Define the start state and any preconditions that accompany it

 Define when the Use Case starts

 Define the order of activity in the Main Flow of Events

 Define any Alternative Flows of Events

 Define any Exceptional Flows of Events

 Define any Post Conditions and the end state

 Mention any design issues as an appendix

 Accompanying diagrams: State, Activity, Sequence Diagrams

 View of Participating Objects (relevant Analysis Model Classes)

 Logical View: A View of the Actors involved with this Use Case, and any Use Cases used or extended by this Use Case

(37)

Use Cases Describe Function not Form

Use Cases describe WHAT the system will do, but never HOW it will be done.

Use Cases are Analysis Products, not Design Products.

(38)

Use Cases Describe Function not Form

 Use Cases describe WHAT the system should do, but never HOW it will be done

 Use cases are Analysis products, not design

products

(39)

Benefits of Use Cases

 Use cases are the primary vehicle for requirements capture in RUP

 Use cases are described using the language of the

customer (language of the domain which is defined in the glossary)

 Use cases provide a contractual delivery process (RUP is Use Case Driven)

 Use cases provide an easily-understood communication mechanism

 When requirements are traced, they make it difficult for requirements to fall through the cracks

 Use cases provide a concise summary of what the system

should do at an abstract (low modification cost) level.

(40)

Difficulties with Use Cases

 As functional decompositions, it is often difficult to make the transition from functional description to object

description to class design

 Reuse at the class level can be hindered by each

developer “taking a Use Case and running with it”. Since UCs do not talk about classes, developers often wind up in a vacuum during object analysis, and can often wind up doing things their own way, making reuse difficult

 Use Cases make stating non-functional requirements

difficult (where do you say that X must execute at Y/sec?)

 Testing functionality is straightforward, but unit testing

the particular implementations and non-functional

(41)

Use Case Model Survey

 The Use Case Model Survey is to illustrate, in

graphical form, the universe of Use Cases that the system is contracted to deliver.

 Each Use Case in the system appears in the Survey with a short description of its main function.

– Participants:

• Domain Expert

• Architect

• Analyst/Designer (Use Case author)

• Testing Engineer

(42)

Sample Use Case Model Survey

(43)

Analysis Model

 In Analysis, we analyze and refine the requirements described in the Use Cases in order to achieve a more precise view of the

requirements, without being overwhelmed with the details

 Again, the Analysis Model is still focusing on WHAT we’re going to do, not HOW we’re going to do it (Design Model). But what we’re going to do is drawn from the point of view of the developer, not from the point of view of the customer

 Whereas Use Cases are described in the language of the customer, the Analysis Model is described in the language of the developer:

– Boundary Classes – Entity Classes – Control Classes

(44)

Why spend time on the Analysis Model, why not just “face the cliff”?

 By performing analysis, designers can inexpensively come to a better understanding of the requirements of the system

 By providing such an abstract overview, newcomers can understand the overall architecture of the system efficiently, from a ‘bird’s eye view’, without having to get bogged down with implementation details.

 The Analysis Model is a simple abstraction of what the system is going to do from the point of view of the developers. By “speaking the

developer’s language”, comprehension is improved and by abstracting, simplicity is achieved

 Nevertheless, the cost of maintaining the AM through construction is weighed against the value of having it all along.

(45)

Boundary Classes

 Boundary classes are used in the Analysis Model to model

interactions between the system and its actors (users or external systems)

 Boundary classes are often implemented in some GUI format (dialogs, widgets, beans, etc.)

 Boundary classes can often be abstractions of external APIs (in the case of an external system actor)

 Every boundary class must be associated with at least one actor:

(46)

Entity Classes

 Entity classes are used within the Analysis Model to model persistent information

 Often, entity classes are created from objects

within the business object model or domain

model

(47)

Control Classes

 The Great Et Cetera

 Control classes model abstractions that coordinate, sequence, transact, and otherwise control other objects

 In Smalltalk MVC mechanism, these are controllers

 Control classes are often encapsulated interactions between other objects, as they handle and coordinate actions and control flows.

Referensi

Dokumen terkait

11-16 17-18 10 20 24 28 30 34 37 Fungsi Produk Antarmuka Perangkat Keras Arsitektur Perangkat Lunak Use Case Diagram Pengelolaan Pemesanan Barang Pengelolaan Akun

Gambar 3.2 Struktur Organisasi Purchasing Logistik 35 Gambar 3.3 Aktor Dalam Use Case Diagram 47 Gambar 3.4 Use Case dalam Use Case Diagram 50 Gambar 3.5 Activity Diagram

Data model adalah cara formal untuk menggambarkan data yang digunakan dan diciptakan dalam suatu sistem bisnis [9], class diagram website e-mall dapat dilihat

Salah satu metode yang dapat digunakan untuk pengembangan perangkat lunak sistem informasi pemesanan makam secara online ini yaitu metode RUP atau yang sering disebut

Berikut ini hasil penerjemahan proses bisnis dari Sistem Informasi Penelitian dan Pengabdian Dosen Jurusan Ilmu Komputer, dapat dilihat pada Gambar 3.. Business Use Case

a) Perangkat keras (Hardware), mencakup berbagai peranti fisik sepeti komputer, printer, dan jaringan. b) Perangkat lunak (Software), merupakan kumpulan dari perintah

Untuk seluruh tugas menggambar diagram UML, dalam analytical evaluation perangkat lunak UMLet versi 9.1 memiliki nilai yang lebih besar dibandingkan dengan perangkat lunak DIA versi

“Sistem Informasi Inventory Gudang Dalam Ketersediaan Stok Barang Menggunakan Metode Buffer Stok.” Jurnal Informatika dan Rekayasa Perangkat Lunak 12: 174–82.. Modul Pembelajaran