Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap...

43
Process Model & Life Cycle Brigida Arie Minartiningtyas, M.Kom

Transcript of Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap...

Page 1: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Process Model & Life Cycle

Brigida Arie Minartiningtyas, M.Kom

Page 2: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

• DefinitionProcess

ACTIVITIES (TASKS), CONSTRAINTS, RESOURCES

PROCEDURESTOOLS & TECHNIQUES

OUTPUT

[ Results ]

[ Product ]

[ Set of Goals ]

[ Standards ]

INPUT

[ Source ]

[ Requirements ]

Process

FINAL OUTPUT

[ Results ]

[ Product ]

[ Set of Goals ]

[ Standards ]

Karakteristik

• Kegiatan-kegiatan

• Menggunakan sumberdaya

• Terdiri dari sub-proses

• Memiliki kriteria In & Out

• Dilakukan berurutan

• Memiliki panduan

• Memiliki kendala & kontrol

Proses Adalah

Page 3: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Proses Seleksi

Calon Karyawan

ACTIVITIES (TASKS), CONSTRAINTS, RESOURCES

PROCEDURESTOOLS & TECHNIQUES

OUTPUT[Pendaftar diterima/ditolak]

INPUT[Data pendaftar]

Constraint

Kebutuhan

Nilai gaji

Contoh Proses

Page 4: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Strategy

Planning

Feasibility

Study

Requirement

Analysis

DesignImplementation

Testing

Maintenance

Development

phase

Definition phaseMaintenance phase

Requirements analysis

& definition

System Design

Program Design

Program Implementation

Unit Testing

Integration Testing

System Testing

System Delivery

Maintenance

Activity

Activity

Activity

Activity

Activity

Activity

Activity

Proses dalam setiap tahap….

Page 5: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Detailed

Analysis

Detailed

Design

Construction

Testing

Operation &

Maintenance

Feasibility

Study

System

Delivery

Status Quo & Problem

Identification

Evaluasi costs & benefits

Output: feasibility report

Definisi permasalahan

Pilihan solusi & benefits

Sumber daya yang dibutuhkan & scheduling

Model Waterfall

System / Information engineering [Roger. S. Pressman]

Page 6: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Requirement Analysis

Investigation

Identitifikasi requirements

Fungsionalitas

Kualitas

Output: req specification document

Functional req

Non-functional req

Quality controls

Detailed

Analysis

Detailed

Design

Construction

Testing

Operation &

Maintenance

Feasibility

Study

System

Delivery

Status Quo & Problem

Identification

Model Waterfall

System / Information engineering [Roger. S. Pressman]

Page 7: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Program Design

System Design Pembangunan modul

sistem

Output: design spec. anddocument

S/W Architecture

Its relationships

Detailed

Analysis

Detailed

Design

Construction

Testing

Operation &

Maintenance

Feasibility

Study

System

Delivery

Status Quo & Problem

Identification

Model Waterfall

System / Information engineering [Roger. S. Pressman]

Page 8: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Unit & Integration Test

System Test:Tes fungsional

Tes Kinerja

User Acceptance Test

Tes instalasi

Coding

Module Testing

Detailed

Analysis

Detailed

Design

Construction

Testing

Operation &

Maintenance

Feasibility

Study

System

Delivery

Status Quo & Problem

Identification

Model Waterfall

System / Information engineering [Roger. S. Pressman]

Page 9: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Terperinci dan detilCocok untuk

developer pemula

Dinyatakan sebelummasuk tahap

berikutnya

Berfokus padadokumentasi

Keuntungan-Waterfall

Page 10: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Jarang sesuai urutan yang direncanakan

Iterations confusion

Ketidakpastian (Kesulitan memetakan SEMUA user req)

• Apakah sistem memenuhi harapan user?

Ketidak jelasan proses pengembangan

• Tidak ada pengecekan kembali

Produk baru muncul diakhir tahapan

Tidak terdapat pedoman, jika terjadi perubahan

Kekurangan-Waterfall

Page 11: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Prototyping

Model

Page 12: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Pengembangan produk sebagian

•Pemeriksaan thd Customers & developers

•Memeriksa setiap aspek sistem yg diusulkan

•Kesesuaian dan Ketepatan

Cepat Pembangunan (all / part)

Pemahaman dan klarifikasi masalah

Prototyping Model

Page 13: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Model Prototype

Page 14: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Identifikasi kebutuhan

Perancangan sementara

Diterjemahkan ke dalambahasa pemrograman

White Box, Black Box, Basis Path, pengujian arsitektur

Page 15: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Prototype Requirements

Lists of Revisions

System Requirements

Prototype System

Prototype Design

Test

Lists of Revisions

Lists of Revisions

Delivered

System

Prototyping Model

Page 16: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Prototype Requirements

Lists of Revisions

Prototype System

Prototype Design

Test

Lists of Revisions

Lists of Revisions

Sediakan alternatif desain

Direvisi sampai sesuai

Program mulai dibangun

Tiap perubahan dibahas

Alternatif desain mengungkap

permasalahan

Kembali dalam aktifitas req

Delivered

SystemSystem

Requirements

Prototyping Model

Page 17: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Komunikasi yang baikantara developer & user

• User berpartisipasiaktif

Penentuan kebutuhanlebih mudah diwujdukan

Waktu pengembangansingkat

Penerapan mudah

• User tau apa yang diinginkannya

Keuntungan-Prototyping

Page 18: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Proses analisis dan perancangan terlalu singkat

Kurang fleksibel terhadap perubahan

User merasa prototype adalah PL yang sesunggguhnya

Developer sering membuat kompromi implementasi (OS tidakrelevan; algoritma tidak efisien)

Kekurangan-Prototyping

Page 19: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Rapid

Application

Development

Page 20: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

• End-users melakukan evaluasi pada setiap tahap

Incremental

• Adaptasi

• Model linear (Waterfall)

• Perkembangan yang pesat

• Menggunakan pembangunan component-based

• Periode singkat

• 60 – 90 hari

Siklus pengembangan pendek

Rapid

Application Development

Page 21: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan
Page 22: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Business

modeling

Data modeling

Process

modeling

Application

generation

Testing &

turnover

Team # 1

Business

modeling

Data modeling

Process

modeling

Application

generation

Testing &

turnover

Team # 2

Business

modeling

Data modeling

Process modeling

Application

generation

Testing & turnover

Team # 3

60 – 90 days

Pemodelan fungsi bisnis(information flow)

What info ? business process

What info is generated ?

Who processes it ?

Who generates it ?

Where does info go to next ?

Aliran informasidisempurnakan menjadi obyekdata

Karakteristik obyek data diidentifikasi

Hubungan antara obyek data didefinisikan

Rapid

Application Development

Page 23: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Business

modeling

Data modeling

Process

modeling

Application

generation

Testing &

turnover

Team # 1

Business

modeling

Data modeling

Process

modeling

Application

generation

Testing &

turnover

Team # 2

Business

modeling

Data modeling

Process modeling

Application

generation

Testing & turnover

Team # 3

60 – 90 days

Obyek data berubah utkmelaksanakan fungsi bisnis

Dibuat deskripsi pemrosesan

Add, Modify, Delete & Retrieve

Menggunakan 4th

Generation techniques (misal: Code generators)

Reusable components

Automated tools

Menekankanpenggunaan kembali

Banyak komponen ygtelah diuji

Komponen baru ygakan diuji

Rapid

Application Development

Page 24: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Sesuai utk proyeksingkat

Kesulitan pengujianminimum

• Reusable components

Pembangunan ygcepat

• Automated tools

Pendekatanstraight-forward

Keuntungan-RAD

Page 25: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Tidak sesuai utk proyek besar

•Melibatkan banyak tim yg bekerja

Komitmen penuh tim deadlines

Tidak sesuai untuk:

• Systems fine tuning

• System interaksi teknologi baru

• System interaksi sistem yg lainnya

Kekurangan-RAD

Page 26: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Evolutionary

Model

Page 27: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Incremental Model

• Gabungan Waterfall dan Prototype

• Proyek kecil

• Anggota tim sedikit

• Waktu terbatas

Spiral Model

• Adaptasi Prototype (iterasi) dan Waterfall (pengendalian dan sistematika)

• Proyek skala besar

• Waktu dan dana mencukupi

Page 28: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Incremental

Model

Page 29: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

PL dibagi menjadi serangkaian increment yang dikembangkan secara bergantian

Page 30: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Requirements dipartisi menjadi subsistem denganfungsionalitasnya

Use Case 1Use Case 1Use Case 2

Use Case 1Use Case 2Use Case 3

Incremental Model

Page 31: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Fungsi tambahan ditambahkan terus untuk membuat sistemmenjadi lebih baik.

Pada increment pertama PL yang jadi, mengakomodasikebutuhan inti. Baru pada tahap berikutnya ditambahkankemampuan baru

Page 32: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Increment 1hanya memberi fungsi inti –> hanya bisa mengetik saja

Increment 2bisa word art, spelling, dll

Page 33: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Personil bekerjaoptimal

Mengakomodasiperubahan secarafleksibel

• Waterfall Iteration

User dapatmenggunakan dahulu

bagian yang telahselesai dibangun

Mengurangi trauma perubahan system

• User dibiasakan menggunakan produk

Memaksimalkanpengembalian modal

investasi user

Keuntungan-Incremental

Page 34: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Tidak cocok untuk proyek besar

• Lebih dari 200.000 baris coding

Sulit memetakan kebutuhan user dalamrencana spesifikasi tiap-tiap hasil dariincreament

Kekurangan-Incremental

Page 35: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Spiral Model

Page 36: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Komunikasi dengan user

Penentuan sumberinformasi dan batas waktu

Pendefinisian resiko(teknis dan manajemen)

Pembuatan prototipe

Pembangunan PL, diuji, diinstal

User memberi masukan

Page 37: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Bentuk Sederhana

•Model waterfall plus analisis resikosebelum setiap tahap

• Resiko tdk dptdiselesaikan -> Proyek dihentikan

Spiral Model

Page 38: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

PLAN DEVELOP AND TEST

DETERMINE GOALS,ALTERNATIVES,CONSTRAINTS

EVALUATE ALTERNATIVESAND RISKS

startRequirements,life-cycle plan

Budget1

Risk analysis1

Risk analysis2

Risk analysis3

Risk analysis4

Budget2Budget3Budget4 Prototype1

Proto-type2

Proto-type3

Proto-type4

Concept ofoperation

Detaileddesign

Code

Unit test

Systemtest

Acceptancetest

Implementationplan

Page 39: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Concept Development Project (proyek pengembangan konsep) New Product Development Project (proyek pengembangan produk baru) Product Enhancement Project (proyek peningkatan produk) Product Maintenance Project (proyek pemeliharaan proyek)

Page 40: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Mempertimbangkanresiko kesalahan

Lebih realistis untukmencerminkankeadaan sebenarnya

• Waterfall Iteration

Developer dan User cepat mengetahuikesalahan

• Prosesnya diamati denganbaik

Keuntungan-Spiral

Page 41: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Waktu pengembangan panjang

Biaya besar

Tergantung tenaga ahli

• Memperkirakan resiko

Sulit mengontrol proses

Kekurangan-Spiral

Page 42: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Memberikan full-system diawal, kemudian merubahfungsionalitas dari setiap subsistem dengan setiaprilis terbaru

Use Case 1Use Case 2Use Case 3(release 1)

Use Case 1Use Case 2Use Case 3(release 2)

Use Case 1Use Case 2Use Case 3(release 3)

Iterative Model

Page 43: Process Model & Life Cycle · Cocok untuk developer pemula Dinyatakan sebelum masuk tahap berikutnya Berfokus pada dokumentasi Keuntungan-Waterfall. Jarang sesuai urutan yang direncanakan

Validation

Memastikan semua req

terpenuhi, setiap fungsi

dapat ditelusuri sesuai

dengan req

Verification

Mengecek kesesuaian

masing-masing fungsi

(quality)

Waterfall-Prototype