Perangkat Lunak
Merupakan program-program komputer dan dokumentasi yang
berkaitan,
Produk perangkat lunak dibuat untuk pelanggan tertentu ataupun
untuk pasar umum
Produk perangkat lunak tersebut:
• Generik – dibuat untuk dijual ke suatu kumpulan pengguna yang berbeda
• Bespoke (custom) – dibuat untuk suatu pengguna tunggal sesuai dengan
spesifikasinya.
9559805.doc 1
Model proses Generik:
• Waterfall (Air terjun)
• Pengembangan secara evolusi
• Transformasi formal
• Model SPiral
• Integrasi daru komponen yang reusable
9559805.doc 2
Proses Perangkat Lunak
9559805.doc 3
Requirements
definition
System and
software design
Implementation
and unit testing
Integr ation and
system testing
Operation and
maintenance
9559805.doc 4
Tujuannya adalah untuk memahami kebutuhan sistem. Biasanya
diawali dengan pemahaman kebutuhan yang minim.
Concurr ent
activities
Initial
Specification
version
Outline Intermediate
Development
description versions
Final
Validation
version
9559805.doc 5
Requirements Formal Formal Integration and
definition specification transformation system testing
Development System
and integration validation
Keuntungan
9559805.doc 6
Nilai penggunan dapat ditentukan pada setiap increament sehingga
fungsionalitas sistem disediakan lebih awal,
Increment awal berupa prototype untuk membantu memahami
kebutuhan pada increment berikutnya,
Memiliki risiko lebih rendah terhadap keseluruhan pengembagan
sistem,
Prioritas tertinggi pd pelayanan sistem adalah yang paling diuji.
9559805.doc 7
Model Pengembangan Spiral
Proses direpresentasikan sebagai model spiral (bukan berupa barisan aktfitas yang dapat ditrack
mundur)
Setiap loop dalam model spiral menyatakan fase proses,
Tidak terdapat fase tertentu seperti spesifikasi atau perancangan, tetapi loop dalam spiral ditentukan
pada apa yang dibutuhkan,
Determine objectives
Evaluate alternatives
alternatives and identify, resolve risks
constraints Risk
analysis
Risk
analysis
Risk
analysis Opera
Prototype 3 tional
Prototype 2 protoype
Risk
REVIEW analy sis Proto
type 1
Requirements plan Simulations, models, benchmarks
Lifecycle plan Concept of
Operation S/W
requirements Product
design Detailed
Requirement design
Development
plan validation Code
Design Unit test
Integration
and test plan V&V Integr ation
Plan next phase test
Acceptance
Service test Develop, verify
nextlevel product
9559805.doc 8
Sektor pada model Spiral
Menentukan Tujuan
Mengidentifikasikan spesifikasi tujuan setiap fase
Menilai Resiko dan Pengurangannya
Resiko dinial dan aktifitas ditempatkan untuk mengurangi resiko
kunci
Pengembangan dan validasi
Suatu model pengembangan sistem dipilih dari model generic
Perencanaan
Project di review dan fase spiral berikutnya direncanakan
Feasibility Requirements
study elicitation and
analysis
Requir ements
specification
Feasibility Requirements
report validation
System
models
User and system
requirements
Requirements
document
9559805.doc 9
Perancangan dan Implementasi Perangkat Lunak
Proses konversi sistem spesifikasi ke sistem yang dapat dieksekusi
langsung
Perancangan Perangkat Lunak
Perancangan Struktur Perangkat Lunak
Implementasi
Translasi struktur ke dalam bentuk program
Aktifitas perancangan dan implementasi berhubungan dekat dan dapat
saling berinteraksi
Requirements
specification
Design acti
vities
Architectur
al Interface Component Data Algorithm
Abstract
design design design structur
e design
specification
design
Software Data
System Interface Component Algorithm
specification structure
architectur
e specifica
t ion specification specifica
t ion
specification
Design pr
oducts
9559805.doc 10
Metode Perancangan
• Pendekatan sistematis untuk merancang perangkat lunak
• Perancangan biasanya didokumentasikan dengan model grafik
• Beberapa model yang dapat digunakan:
o Data Flow Model
o Model relasi atribut entitas
o Model terstruktur
o Model Object
9559805.doc 11
Unit
testing
Module
testing
Subsystem
testing
System
testing
Acceptance
testing
9559805.doc 12
Stage Pengujian Perangkat Lunak
• Unit Testing: Pengujian Komponen-komponen secara individu
• Modul Testing: Pengujian terhadap komponen yang saling berhubungan,
• Sub-system Testing: Pengujian terhadap module-module sistem yang saling berhubungan.
Fokus pada pengujian interface.
• System Testing: Pengujian keseluruhan sistem,
• Acceptance Testing: Pengujian yang dilakukan oleh pengguna untuk melihat apakah sistem
sudah dapat diterima.
9559805.doc 13
9559805.doc 14
Evolusi Sistem
Existing New
systems system
9559805.doc 15
Klasifikasi Tool
9559805.doc 16