SISTEM PERANGKAT LUNAK PERANCANGAN ARSITEKTUR PERANGKAT LUNAK By TTS ARSITEKTUR PERANGKAT LUNAK ( 1 ) An abstract system specification consisting primarily of functional components described in terms of their behaviors and interfaces and component-component interconnections. The interconnections define provide by which components interact. How the system is decomposed and organized into components and must describe the interfaces between these components. ARSITEKTUR PERANGKAT LUNAK ( ) Gambaran bagaimana elemen/komponen fungsional perangkat lunak disusun, diorganisasi dan distrukturkan sehingga: Hubungan antar elemen/komponen dapat dijelaskan. Interface yang menghubungkan elemen/komponen dapat didefinisikan. Wujud dan penempatan elemen/komponen dalam tempat penyimpanan sekunder secara fisik dapat ditetapkan. 3 1
CONTOH ARSITEKTUR PERANGKAT LUNAK ( 1 ) Model Analisis (DFD level atomik) id_mhs Petugas info_mhs 1..3 Cari Info Mahasiswa mahasiswa Arsitektur Perangkat Lunak (Fisik) call Search Script dan Procedure Cari(NIM) query/select NIM : Cari Tabel Mahasiswa NIM Nama Kelas display hasil query 4 CONTOH ARSITEKTUR PERANGKAT LUNAK ( ) Model Analisis (DFD level atomik) 1 Tambah Data id_barang Bagian Penjualan Modul Pemanggil rec_barang id_supplier Tambah Data Arsitektur Perangkat Lunak (Structure Chart) Kelola Data Induk Pergudangan Proses 1.0 Proses.0 Tambah Data Tambah Data id_barang rec_barang id_supplier supplier Modul-modul atomik (procedure, function) Baca Id_ Baca Id_ 5 STRUCTURE CHART Diagram untuk menggambarkan arsitektur perangkat lunak secara keseluruhan tanpa memperlihatkan proses pemilihan dan pengulangannya secara rinci. Menggambarkan arsitektur perangkat lunak seperti diagram organisasi sebuah perusahaan. 6
SIMBOL STRUCTURE CHART Simbol Arti Modul Pemanggilan modul Data atau elemen kontrol yang dikirimkan atau diterima dari satu modul Pengulangan di dalam modul Penyeleksian kondisi di dalam modul 7 CONTOH STRUCTURE CHART : PASCAL ( 1) notasi untuk parameter input yang dikirimkan kepada modul yang dipanggil x, y A B p, q modul pemanggil notasi untuk parameter output yang diberikan pada modul pemanggil modul yang dipanggil Modul A memanggil modul B dengan data x dan y sebagai parameternya. Modul B mengirimkan data p dan q sebagai return value ke modul A. Procedure A; Var p, q : Real; Procedure B(x, y : Real); p := { manipulasi nilai p } q := { manipulasi nilai q } B(x, y); { call procedure B } Potongan kode program dalam bahasa Pascal 8 CONTOH STRUCTURE CHART : PASCAL () Modul A akan memanggil modul B jika kondisi dalam modul A dipenuhi. A Modul A akan memanggil modul C secara berulang. B C Potongan kode program dalam bahasa Pascal Procedure C; Procedure B; Procedure A; If True Then B; {call procedure B} While True Do C; {call procedure C} 9 3
CONTOH STRUCTURE CHART : PHP FormInput.html <html> <form method=post action=.php> </html> FormInput.php <? //.php function getid() { } function saveid(id) { } id = getid(); saveid(id)?> id getid id saveid 10 CONTOH STRUCTURE CHART : DELPHI main.pas unit main; var Form1: TForm1; implementation uses ; procedure TForm1.Click(Sender: TObject); begin frm.show; end; end. rekam.pas unit ; var frm: TForm1; implementation end. Main 11 TRANSFORMASI DFD - STRUCTURE CHART ( 1 ) Ubah diagram konteks menjadi modul utama (top module atau executive module) dari structure chart. Ubah DFD level-1 menjadi modul-modul yang dipanggil oleh modul utama. Jika pemanggilan modul untuk proses-proses pada DFD level-1 membutuhkan data atau event tertentu, tambahkan sebuah modul untuk membaca data atau event tersebut. Ubah DFD level-, 3, 4, dst. menjadi modul-modul lainnya sesuai dengan fungsinya dengan pendekatan Transform Analysis dan atau Transaction Analysis. 1 4
TRANSFORMASI DFD - STRUCTURE CHART ( ) Transform Analysis Transaction Analysis 13 End of This Session 14 5