download

Matakuliah
Tahun
: Konsep Object Oriented
: 2009
PENDEKATAN SISTEM
Pertemuan 2
Pendekatan Sistem
Daur hidup sistem dan metodologi
Daur hidup Sistem
• Membangun sebuah sistem terbagi menjadi beberapa
tahap utama
• Perkembangan tiap tahap disebut life cycle atau daur
hidup sistem
• Tidak ada kesepakatan umum tentang daur hidup
sistem. Banyak metode ditemukan
Daur hidup tradisional
Definisi masalah
Studi kelayakan
Analisa
Desain
Implementasi
Daur hidup dengan prototipe
• Mendesain sistem seperti mendisain lainnya, termasuk membuat
model
• Prototipe adalah konsep dasar kerja dari model, klien dapat melihat
dan merasakan bagian sistem pada tahap awal pembuatan.
• Prototipe didalam pembuatan sangat membantu dalam
mendapatkan kebutuhan sistem pada tahap awal pembuatan. Tidak
terkecuali bagi klien yang tidak yakin dengan kebutuhannya.
• Yang biasa digunakan dalam membuat sistem adalah rapid
prototyping
Daur hidup sistem dengan prototipe(lanj’)
• Hampir semua pembuat sistem jika ingin menggunakan
rapid prototyping harus menggunakan tool modeling
yang automated dan powerfull. Implementasi pada
bahasa tingkat tinggi.
Elicit
requirement
Daur hidup dengan
prototipe(lanj’)
Carry out high
level analysis
and divided
into areas
Developing
working
Models
Demonstrate
models to
client and
users
Prototypes
Complete ?
Yes
Integrated
Prototypes
Test and
install system
No
Daur hidup obyek oriented
• Object oriented system development berdasarkan kepada daur
hidup tradisional : analisa, desain, implementasi dan pemeliharaan
sistem.
• Dengan Object oriented pembanguan terlihat sebagai sebuah
langkah yang tunggal, bersambung dengan transisi yang mulus
antar tahapnya dibandingkan daur hidup tradisional.
• Dasar dari konsep obyek oriented adalah obyek, class, asosiasi dan
inheritance menjadi kemudi dalam proses pembuatan dari tahap
paling awal dan menyediakan dasar tunggal bagi daur hidup sistem.
• Kompatible dengan prototiping
Tahap Analisis
• “Getting it right” = Jadikan hal ini benar
• Coding yang elegan, atau interface yang user friendly.
Hal ini tidak ada gunanya jika tahap analisisnya salah.
• Tahap analisis adalah sebuah periode untuk
menemukan fakta, investigasi terhadap yang ada
sekarang
• Desain sebuah kuisioner
• Anggota kunci pembuatan sistem harus di interview
tentang detail dari sistem yang berjalan sekarang.
• Gali informasi lain yang berguna, dokumen dari sistem
yang sekarang seperti laporan, surat order, invoice dll.
Tahap analisis (lanj’)
• Sejumlah dokumen dikumpulkan untuk memudahkan
mengorganisasikan material.
• Diskusikan dengan klien untuk mengecek apakah
pembuat sistem benar-benar mengerti apa yang
dikatakan pada saat interview.
• Perkecil perbedaan dan selesaikan konflik yang muncul.
Tujuan tahap analisis:
• Untuk mendefinisikan berapa luas(scope) dan kasus bisnis untuk
membangun sistem ini, termasuk penanganan resiko dan kriteria
untuk sukses
• Untuk menghasilkan sebuah kesepakatan tentang kebutuhan
sistem(ini sering berubah selama pembuatan sistem)
• Untuk mengindentikasikan obyek yang akan digunakan untuk
memenuhi kebutuhan
• Untuk mendefinisikan atribut dan tingkah laku(behavior) obyek ini.
• Untuk mendefinisikan hubungan dan pola komunikasi antar obyek;
• Untuk mencatat kejadian kejadian yang mungkin terjadi didalam
sistem dan melukiskan jalannya obyek akibat event tersebut.
Tujuan Tahap Analisis (lanj’)
• Model utama tahap analisis adalah class diagram dan
dinamik model.
• Class diagram adalah pusat dari pembuatan sistem
dengan metode object oriented.
• Class diagram berisi nama class, atribut, operasi, dan
hubungan antar obyek.
• Model dinamik berkonsentrasi dengan event atau
kejadian yang mungkin terjadu dalam sistem dan
berpengaruh terhadap hubungan antar obyek tersebut.
Tahap Desain
• Ketika developer merasakan bahawa mereka akan
dapat menyelesaikan masalah tersebut, tahap
selanjutnya adalah memikirkan bagaimana hal tersebut
dapat dicapai.
• Klien ditawarkan solusi-solusi yang berbeda beda untuk
menyelesaikan masalahnya
Tahap desain(lanj’)
• Solusi biasa yang ditawarkan:
– Sebuah solusi yang sangat murah yang menyelesaikan
tugasnya dan tidak lebih
– Sebuah solusi dengan harga menengah, yang menyelesaikan
masalah dan membuat nyaman user, ini mungkin dengan
menambahkan beberapa fitur tambahan yang tidak dibutuhkan
user, tetapi developer berpengalaman bahwa fitur ini nantinya
akan dibutuhkan
– Solusi yang mahal, apa yang user butuhkan dengan fitur yang
sangat banyak
Tahap desain(lanj’)
• Solusi mungkin akan berbeda didalam hal:
–
–
–
–
–
–
–
Batasan sistem
Batasan automasi
Hardware dan networking
Software
Strategi desain
User interface
Biaya dan waktu
Tahap desain(lanj’)
• Tugas utama didalam tahap desain didalam pembuatan sistem
dengan obyek oriented adalah untuk mendefinisikan arsitekur dari
sistem yang akan di buat.
• Menjadi lebih kecil, menjadi komponen dan sistem yang dapat di
manajemen
• Analisis berkonsentrasi pada pengertian user terhadap sistem
• Desain dikemudikan oleh implenentasi
• Desain berisi semua informasi yang dibutuhkan programmer untuk
membuat program sistem tersebut.
• Waktu untuk mengambil keputusan apakah menggunakan
komponen yang sudah ada(reusable component)
Tahap Implementasi
• Selama tahap implementasi sistem sudah dalam bentuk
fisik
• Keluaran dari tahap implementasi adalah:
– Listing program, rencana test, dan suporting dokumentasi
support
– Manual prosedur operasi
– Manual prosedur klerikal
– User Manual
Tahap Implementasi
• Mulai saat sistem diserah terimakan.
• Temukan dan koreksi kesalahan yang tidak terdeteksi
sebelum sistem diserah terimakan.
Bentuk sederhana daur hidup
sistem
Client
Requirement
Meeting
Analysis
Validation
Operational
System
Specification of
requirements
Validation
Installation &
Maintenance
Working
System
Validation
Testing
System
Design
Alternative
Siolutions
Validation
Technical
Specification
Kelebihan dari dari daur hidup object
oriented
system
• Lebih memberikan perhatian
kepada tahap
awal proses.
•
•
•
•
•
•
•
Mendorong developer untuk berpikir tentang pemeliharaan sistem,
modifikasi dan penggunaan ulang komponen.
Object Oriented adalah semua istilah umum, mengkover konsep kunci,
seperti encapsulation, class, dan inheritance. Berbagi konsep yang kompke
dan mengkonikasikan ide lebih efektif.
Transisi yang mulus dari ide pertama sampai kepada akhir
Mensupport pengulangan dalam proses pembuatan
Mendasarkannya pada data, membawa kepada konsep yang
menyatu(obyek)
Object oriented mampu mendefiniskan ulang dan memperluas model
Traceability : kemampuan menelusur dari permintaan sampai kepada code
program
Metodologi
• Sebuah metodologi softaware biasanya berdasarkan
kepada sebuah daur hidup model pembangunan sistem,
dan mempunyai sejumlah tahap dan aturan tiap
tahapnya..
Metodologi(lanj’)
• Kenapa kita membutuhkan metodologi?
– Metodologi membantu kita dengan memanajemen seluruh
proyek dengan membaginya menjadi tahap2 pembuatan yang
kecil, dengan tugas spesifiki yang harus diselesaikan dan tugas
yang independent
– Membantu dengan merencanakan jadwal dan monitoring
perkembangan sistem
Metodologi awal
• Real-time system:
– Yourdon
– Mascot3
– JSD (Jackson System Development )
• Information System
– SSADM (Structured System Analysis and Design Method)
– JSD (Jackson System Development)
– Information Engineering (James Martin)
Metodologi obyek oriented
•
•
•
•
Responsibility-Driven Design (Wirfs-Brock et al.,1990)
Booch (1994)
Objectory (Jacobson et al.,1992)
Object Modeling Technique (OMT) (Rumbraugh et
al.,1991)
• Unified modeling Language (UML).
Responsibility-Driven Design (WirfsBrock
et
al.,1990)
• Metodologi ini berfokus pada tahap awal dari pembuatan
sistem.
• Disain bertumpu kepada bagaimana mendefinisikan
tugas tanggung jawab antar class yang berbeda.
Booch (1994)
• Orang pertama yang menyarankan pembuatan object
oriented sistem dengan pendekatan “round-trip gestalt
design”: sebuah pengulangan yang berkembang dalam
proses pembuatanan.
• Banyak notasi Booch yang digunakan dalam UML.
Objectory (Jacobson et al,1991)
• Kontribusi utama dari metodologi ini adalah use case,
dimana setiap fungsionalitas dalam sistem digambarkan
dalam prespektif user.
• Sebuah use case di definisikan kembali dengan
sejumlah skenario
• Use case dan sekanrio adalah cara yang efektif untuk
mengidentifikasikan kebutuhan awal dari user terhadap
sistem tersebut.
•
Object Modeling Technique (OMT)
(Rumbraugh
et
al.,1991)
Rumbraugh Mengklaim bahwa OMT adalah metode
yang dapat menyesuaikan kedua daur hidup yaitu daur
hidup penuh dan pembuatan sistem menggunakan rapid
prototyping.
• OMT memiliki tiga tahap utama : analisa, desain dan
implementasi.
• Pusat dari proses ini adalah sebuah model obyek
didalam problem domain dan detil implementasi akan
ditambahkan kemudian selama proses pembuatan.
• Object model dalam OMT banyak digunakan dalam UML
Unified Modeling Language (UML)
• Beberapa generasi kedua metodologi O-O (( Fusion,
Objectory, Responsibility-Driven, Syntropy)
mengabungkan elemen-elemennya kedalam metode OO.
• Beberapa variasi tersebut berkontribusi dalam UML
Memilih metodologi.
• Tiga hal yang harus diperhatikan dalam memilih
metodologi:
– Siapakah stakeholdernya?
– Tipe apa sistem yang akan dibuat?
– Apakah fitur-fitur utama yang akan dibangun dalam sistem
•
Contoh pada just a line security
problem
Stakeholders
–
–
–
–
–
•
Sue and Harry Preston
Just a line employees
Visitor to the Just a Line
The local council (if the car park is to be affected)
The developers
Type Of system
– Security, but not safety critical
– Processing of data and interface both important
•
Development environment:
–
–
–
–
–
Need to investigate thoroughly how access is controlled at present
Need to be aware that proposed measures may be unpopular with employees
The systems should be in operation relatively soon
Money is presumably not a problem
Prototyping is a feasible approach.