desain arsitektur-pl-pert5
DESCRIPTION
TRANSCRIPT
LUKMAN HAKIM
FASE PENGEMBANGAN DAN DESAIN PERANGKAT LUNAKFase pengembangan terdiri dari 3 langkah :
1. Design
2. Code Generation (manual
or automatic)
3. Testing
Setiap langkah melakukan transformasi informasi dalam suatu cara yang akhirnya menghasilkan software komputer yang valid
Terjemahan Model Analisis menjadi Desain
Entity-Relationship
DiagramData
Dictionary
State-TransitionDiagram
Data FlowDiagram
proceduraldesign
interface design
architectural design
data design
Terjemahan Model Analisis menjadi Desain
Data design mengubah model informasi (entity relationship diagram dan data dictionary) menjadi struktur data
Architectural design berisi hubungan antar elemen dalam program
Interface design menjelaskan bagaimana bagaimana komunikasi
di dalam perangkat lunak, dengan sistem, dan dengan manusia yang menggunakannya.
Sebuah interface mengandung maksud sebuah aliran informasi.
Procedural design mengubah elemen struktural dari arsitektur program menjadi deskripsi prosedural dari komponen perangkat lunak
Petunjuk Dalam Melakukan Desain
Sebuah desain harus menunjukkan organisasi secara hirarkis
Sebuah desain harus bersifat modular; jadi, sebuah perangkat lunak seharusnya dapat dibagi-bagi secara lojik menjadi beberapa elemen yang melakukan fungsi atau subfungsi secara spesifik
Sebuah desain harus mengandung abstraksi data dan prosedural
Sebuah desain harus mengarah pada modul-modul (prosedur atau subrutin) yang menunjukkan karakteristik fungsional
LanjutanSebuah desain harus mengarah pada
antarmuka yang mengurangi kompleksitas hubungan antar modul dan dengan lingkungan luar
Sebuah desain harus diturunkan menggunakan metode yang berulang yang diarahkan oleh informasi yang dihasilkan pada tahap analisis perangkat lunak
Kebutuhan Perangkat LunakDijelaskan dengan “Information Domain”, “Functional and performance requirments”, “Feed the design step” Menggunakan metodelogi :
1. Data Design
2. Architectural Design3. Procedural Design Data Design difokuskan pada definisi dari struktur data Architectural Design mendefinisikan hubungan antara elemen struktur utama dari program Procedural Design mengubah struktur elemen ke dalam prosedur software
Penting kah Desain
Proses Desain
Software design Suatu proses yang
melewati serangkaian kebutuhan yang
membentuk sebuah perangkat lunak
Software design dibagi dalam 2 tahap :
1. Preliminary DesignPada tahap ini difokuskan dengan
transformasi dari keperluan / kebutuhan ke dalam data dan arsitektur software
2. Detail DesignDifokuskan pada penghalusan
representasiarsitektur yang berisi struktur data
detail dan algoritma untuk software
Kualitas Desain dan PLBeberapa tuntunan dalam melakukan agar dihasilkan desain dengan kriteria yang baik, yaitu suatu desain haruslah :1. Memperlihatkan organisasi hirarki yang mengontrol elemen- elemen software
2. Berkenaan dengan modul. Software secara logika terbagi dalam elemen elemen yang membentuk fungsi dan sub fungsi
3. Berisi representasi yang berbeda dan terpisah dari data dan prosedur
4. Membentuk modul ( contoh subroutine dan procedure ) yang memperlihatkan karakteristik fungsi yang tidak saling bergantung
5. Diturunkan dengan menggunakan metode perulangan yang didukung oleh informasi yang ada selama analisa kebutuhan software
Evolusi desain PLEvolusi dari desain software merupakan proses yang berkelanjutan terus selama 3 dekade Beberapa metodologi telah tumbuh, dan secara umum memiliki karakteristik sebagai berikut :1. Sebuah mekanisme untuk menterjemahkan representasi domain informasi ke dalam representasi desain2. Notasi untuk merepresentasikan fungsi komponen-komponen dan interfaces-nya3. Heuristics bagi penyaringan dan partisi4. Petunjuk untuk penaksiran kualitas
DASAR-DASAR DESAINMembantu software engineer untuk menjawab pertanyaan-pertanyaan berikut :Apakah kriteria yang dapat dipakai untuk mempartisi software menjadi sejumlah komponen ?Bagaimana fungsi atau struktur data dipisahkan dari suatu representasi konseptual software ? Apakah ada kriteria yang seragam yang menetapkan kualitas tehnik dari suatu software desain ?
Arsitektur PLArsitektur perangkat lunak menyinggung 2 karakteristik penting dari sebuah program komputer :1. Hirarki struktur dari komponen-komponen prosedural ( modul )2. Struktur data
Program Strukture Program structure
menampilkan / menyajikan organisasi ( seringkali organisasi hirarki ) dari komponen-komponen program ( modul-modul ) dan mengandung arti hirarki dari kontrol program
Notasi yang digunakan adalah diagram tree. Biasanya dinamakan structure chart
Data Strukture
Software ProsedureDifokuskan pada detail pemrosesan dari setiap modul secara individu. Prosedur harus mengandung spesifikasi yang benar / tepat dari pemrosesan, termasuk : sequence of events, decision points, repetitive operations, dan struktur data.
Prinsip –Prinsip PerancanganPrinsip Desain memungkinkan perekayasa Perangkat lunak untuk mengendalikan proses desainProses desain tidak boleh mengalami “tunnel vision”
Desainer harus memperhatikan pendekatan-pendekatan alternatif, menilainya berdasarkan persyaratan masalah, sumber daya yang ada untuk melakukan pekerjaan, dan konsep desain
Desain harus dapat dilacak ke model analisisTidak melakukan desain pada hal yang sama
berulang-ulangDesain harus merepresentasikan masalah pada
keadaan nyataDesain harus memperlihatkan keseragaman dan
integrasi
lanjutanDesain harus terstruktur untuk mengatisipasi
adanya perubahanDesain bukan coding, coding bukan desainPenilaian kualitas desain harus dilaksanakan
pada saat desain tersebut dibuatDesain harus di-review untuk meminimasi
kesalahan konseptual
DOKUMENTASI DESAINI.Ruang Lingkup
A. Sasaran SistemB. Persyaratan utama softwareC. Batasan-batasan dan pembatasan desain
II. Desain DataA. Obyek data dan struktur data resultanB. Struktur file dan database
1. Struktur file eksternala. struktur logisb. deskripsi record logisc. metode akses2. data global3. file dan referensi lintas data
lanjutanIII. Desain Arsitektural
A. Kajian data dan aliran controlB. Struktur program yang diperoleh
IV. Desain InterfaceA. Spesifikasi interface manusia-mesinB. Aturan desain interface manusia-mesinC. Desain interface eksternal
1. Interface untuk data eksternal2. Interface untuk sistem atau peralatan eksternal
V. Desain ProseduralUntuk masing-masing modul :A. Naratif pemrosesanB. Deskripsi InterfaceC. Deskripsi bahasa (atau lainnya) desainD. Modul-modul yang digunakanE. Struktur data internalF. Keterangan/larangan/pembatasan
VI. Persyaratan Lintas-ReferensiVII. Ketetentuan pengujian
1. Panduan pengujian2. Strategi integrasi3. Pertimbangan Khusus
VIII. Catatan KhususIX. Lampiran