PEMODELAN ANALISIS PL Aprilia Sulistyohati, S.Kom
Jurusan Teknik Informatika Universitas Islam Indonesia
Your Logo
REKAYASA SISTEM VS REKAYASA PERANGKAT LUNAK
Rekayasa sistem berkaitan dengan semua aspek dalam pembangunan sistem berbasis komputer termasuk hardware, rekayasa PL dan proses RPL adalah bagian dari rekayasa sistem yang
meliputi pembangunan PL, infrasktruktur, kontrol, aplikasi dan database pada sistem.
Page 2
RPL VS Computer Science Computer science berhubungan dengan teori dan metode yang mendasari sistem komputer dan perangkat lunak, RPL
berhubungan
dengan
memproduksi perangkat lunak.
Page 3
praktek
dalam
PROSES PERANGKAT LUNAK
Serangkaian kegiatan dan hasil relevannya yang menghasilkan produk perangkat lunak.
Aktivitas dalam proses Perangkat Lunak : 1.
Spesifikasi Perangkat Lunak : Fungsionalitas perangkat lunak dan batasan kemampuan operasinya harus didefinisikan.
2.
Pengembangan (Perancangan dan Implementasi) Perangkat Lunak: Perangkat lunak yang memenuhi spesifikasi harus di produksi
3.
Validasi Perangkat Lunak : Perangkat lunak harus divalidasi terlebih dahulu sebelum melakukan pengujian untuk menjamin bahwa perangkat lunak bekerja sesuai dengan apa yang diinginkan oleh pelanggan.
4.
Evolusi Perangkat Lunak : Perangkat lunak harus berkembang untuk memenuhi kebutuhan pelanggan. Page 4
Model Proses Perangkat Lunak
Yaitu deskripsi yang disederhanakan dari proses perangkat lunak yang dipresentasikan dengan sudut pandang tertentu. Bisa mencakup kegiatan yang merupakan bagian dari proses perangkat lunak, produk perangkat lunak, dan peran orang yang terlibat pada rekayasa perangkat lunak.
Page 5
Jenis Model Proses PL 1.
Model aliran kerja (workflow) menunjukkan kegiatan pada
proses
bersama
ketergantungannya.
dengan
input,
output,
Merepresentasikan
dan
pekerjaan
manusia. 2.
Model aliran data (data flow) merepresentasikan proses sebagai suatu set kegiatan yang melakukan transformasi data. Menunjukkan bagaimana input ke proses, misalnya spesifikasi
ditransformasi
menjadi desain. Page 6
menjadi
output,
misalnya
Model umum pada proses PL A. Model air terjun (waterfall) Mengambil
kegiatan
pengembangan,
dasar validasi,
misalnya evolusi
spesifikasi, dan
merepresentasikannya sebagai fase-fase proses yang berbeda seperti spesifikasi persyaratan, perancangan perangkat lunak, implementasi, pengujian.
Page 7
Masalah dengan model waterfall Terjadinya pembagian proyek menjadi tahap-tahap yang tidak fleksibel, karena kesepakatan harus dilakukan pada tahap awal proses.
Hal ini mengakibatkan sulitnya untuk merespon perubahan kebutuhan pengguna (user).
Page 8
Gambar model waterfall Requirements definition System and software design Implementation and unit testing Integr ation and system testing Operation and maintenance
Page 9
Cont.. B.
Pengembangan Evolusioner Berdasarkan pada ide untuk mengembangkan implementasi awal, memperlihatkannya kepada user untuk dikomentari, dan memperbaikinya
versi
demi
versi
sampai
sistem
yang
memenuhi persyaratan diperoleh.
Tidak ada kegiatan spesifikasi, pengembangan, dan validasi yang terpisah. Kegiatan2 ini dilakukan pada saat yang bersamaan dengan umpan balik yang cepat untuk masing2 kegiatan. Page 10
Ada 2 jenis pengembangan evolusioner : 1)
Pengembangan Eksplotari
Tujuan dari proses ini
adalah bekerja dengan pelanggan untuk menyelidiki persyaratan mereka dan mengirimkan sistem akhir. Harusnya
diawali
dengan
kebutuhan
yang
sudah
dimengerti. 2)
Prototipe yang dapat dibuang (throw-away)
Berkonsentrasi pada eksperimen, dengan persyaratan pelanggan yang tidak dipahami dengan baik.
Page 11
Gambar model Pengembangan Evolusioner Concurr ent activities
Outline description
Page 12
Specification
Initial version
Development
Intermediate versions
Validation
Final version
Kelebihan model Pengembangan Evolusioner Lebih efektif dari pendekatan air terjun dalam menghasilkan sistem yang memenuhi kebutuhan langsung dari pelanggan. Sementara user mendapat pemahaman yang lebih baik dari masalah
mereka,
merefleksikannya.
Page 13
sistem
perangkat
lunak
dapat
Cont.. C. Model Pengembangan Sistem Formal
Proses pengembangan Perangkat Lunak didasarkan pada transformasi matematis dari spesifikasi sistem menjadi program yang dapat dijalankan. Requirements definition
Formal specification
Page 14
Formal transformation
Integration and system testing
Masalah model Pengembangan sistem Formal Kurangnya visibilitas proses apabila sistem dikembangkan dengan cepat, tidaklah efektif dari segi biaya Sistem seringkali memiliki struktur yang buruk karena Perubahan yang terus-menerus cenderung merusak struktur perangkat lunak. Penyesuaian perubahan menjadi makin sulit dan mahal. Membutuhkan keahlian khusus dalam mengaplikasikannya.
Page 15
D. Model Pengembangan Berorientasi Pemakaian Ulang (ReUsable)
Bergantung pada sejumlah besar komponen perangkat lunak yang dapat dipakai ulang, yang bisa didapat, dan berapa kerangka kerja integrasi untuk komponen-komponen ini.
Komponen-komponen ini dapat juga sistem yang disebut COTS (Commercial Off-The-Shelf Systems/Sistem Siap Beli Komersial) yang dapat digunakan untuk memberikan fungsionalitas khusus seperti format teks atau perhitungan numerik Page 16
Gambar Model Pengembangan Berorientasi (Re-Usable)
Requirements specification
Component analysis
Requirements modification
System design with reuse
Development and integration
Page 17
System validation
Keuntungan Model Re-Usable Mengurangi
besarnya
perangkat
lunak
yang
akan
dikembangkan Memperkecil biaya dan resiko
Memungkinkan penyelesaian perangkat lunak dengan cepat
Page 18
PEMODELAN SISTEM Model Proses Sebuah teknik untuk mengorganisasikan dan mendokumentasikan struktur dan aliran data melewati sebuah “proses” dalam sistem dan/atau logika, kebijakan, dan prosedur-prosedur yang akan diimplementasikan dengan “proses” dalam sistem.
Page 19
Diagram Arus Data/DAD (Data Flow Diagram/DFD) Model proses digambarkan dengan Diagram Arus Data/DAD (Data Flow Diagram/DFD).
DFD menggambarkan secara rinci urut-urutan langkah dari masing-masing proses yang digambarkan dalam diagram arus data.
DFD == bubble chart, transformation graph, dan process model.
Page 20
DFD vs Flowchart NO 1
DFD
FLOWCHART
Hanya dapat dieksekusi satu Proses dapat dioperasikan secara per satu pada satu saat paralel tertentu. Flowchart menunjukkan urutan proses atau operasi Menunjukkan aliran data melewati dalam sebuah algoritma atau sistem. program.
2
3
Tanda anak panah Tanda anak panah merepresentasikan jalur aliran data, menujukkan penghubung ke looping dan branching tidak proses selanjutnya, dan ditunjukkan. mengijinkan adanya looping and branching Dapat menunjukkan proses-proses yang memiliki perbedaan waktu
Page 21
Tidak
Cont.. DFD hanya memiliki 3 simbol dan 1 koneksi (simbol yang digunakan dapat berbeda-beda, tergantung acuan yang digunakan):
Nomor Proses Nama Proses
- 1. Process : - 2. External entity :
- 3. Data storage :
Nama External Entity
table/storage
- 4. Data flow : Nama data flow
Page 22
Pedoman Menggambar DFD (Whitten dan Bentley, 1998): 1) Identifikasikan semua external entity sistem yang terlibat; 2) Identisikasikan semua input dan output yang terlibat dengan external entity; 3) Gambarlah terlebih dahulu suatu diagram konteks atau diagram
induk untuk garis besar, kemudian dipecah untuk level-level berikutnya; 4) Gambarlah bagan berjenjang (hirarchy chart) untuk semua
proses yang ada di sistem untuk mempersiapkan penggambaran DFD level berikutnya;
Page 23
Cont... 5) Gambarlah sketsa DFD untuk overview diagram (level 0) berdasarkan proses bagan berjenjang; 6) Gambarlah DFD untuk level-level berikutnya, yaitu level 1, kemudian dipecah dalam level 2, dan seterusnya; 7) Setelah semua level DFD digambarkan, selanjutnya adalah menggambar
DFD
untuk
pelaporan
manajemen
yang
digambarkan secara terpisah; 8) Semua level DFD yang telah digambar termasuk DFD untuk pelaporan manajemen digabung dalam satu diagram.
Page 24
FLOWCHART Sekumpulan
simbol-simbol
yang
menunjukkan
atau
menggambarkan rangkaian kegiatan program dari awal hingga akhir. Sehingga flowchart ini digunakan untuk menggambarkan urutan langkah-langkah pekerjaan disuatu Algoritma.
Page 25
SIMBOL-SIMBOL DALAM FLOWCHART
Page 26
CONT..
Page 27
UML (Unified Modeling Language) Sebuah
pemodelan
untuk
menentukan
visualisasi,
konstruksi, dan medokumentasikan informasi dari perangkat lunak.
BAGIAN-BAGIAN UML: - View - Diagram - Model element - General mechanism
Page 28
~ END ~
Page 29