Senin, 19 Desember 2011

Metode Desain


BAB I PENDAHULUAN
1.1.       PENDAHULUAN
Rekayasa perangkat lunak telah berkembang sejak pertama kali diciptakan pada tahun 1940-an hingga kini. Focus utama pengembangannya adalah untuk mengembangkan praktek dan teknologi untuk meningkatkan produktivitas para praktisi pengembang perangkat luank dan kualitas aplikasi yang dapat digunakan oleh pemakai. Metode Desain ini sendiri digambarkan sebagai proses multi-langkah dimana representasi struktur data, struktur program, karakteristik interface dan detail prosedur disintesis dari persyaratan informasi.
Menurut E. S. Taylor Desain adalah langkah pertama dalam fase pengembangan bagi setiap produk atau sistem yang direkayasa. Desain dapat didefinisikan sebagai proses aplikasi berbagai teknik dan prinsip bagi tujuan pendefinisian suatu perangkat. Tujuan desainer adalah untuk menghasilkan suatu model atau representasi dari entitas yang kemudian akan dibangun. Proses dimana model dikembangkan, menggabungkan intuisi dan penilaian berdasarkan pengalaman dalam membangun entitas yang sama, serangkaian prinsip dan atau heuristik yang menuntun cara dimana model disusun, serangkaian kriteria yang memungkinkan penilaian terhadap kualitas dan terhadap suatu proses iterasi yang membawa kepada suatu representasi nilai akhir.
Desain merupakan informasi yang terkendali, metode desain perangkat lunakditarik dari pertimbanganyang masing-masing terdiri dari tiga domain model analisis. Domain data, fungsi dan perilaku yang berfungsisebagai panduan pembuatan desain.
Metode yang dibutuhkan untuk membuat masing-masing lapisan model desain adalah untuk memberikan suatu pendekatan sistematis bagi penarikan desain – cetak biru yang dari sana  perangkat lunak di produksi.
Tujuan dari metode desain adalah kunci untuk mendapatkan wawasan atau kebenaran esensial yang unik menghasilkan lebih banyak solusi holistik untuk mencapai pengalaman yang lebih baik untuk pengguna dengan produk, jasa, lingkungan dan mengandalkan sistem mereka.  Mempelajari landasan teoritis tentang desain serta bagaimana mencapai sasaran tersebut secara metodologis. Pengenalan cara dan urutan mendesain serta membangun metode berpikir yang sesuai dengan proses permasalahan desain, yakni dengan metode pemecahan masalah.

1.2.       POKOK PEMBAHASAN
Dalam  perkuliahan Rekayasa Perangkat Lunak ini Kami  diberi kesempatan membahas tentang metode desain. Melalui materi ini mahasiswa Informatika diharapkan dapat memahami dan metode dan cara mendesain suatu sistem. Sesuai dengan pokok pembahasan yang telah dipaparkan, maka pokok-pokok pembahasan dari metode desain yang diberlakukan dalam tugas ini yaitu akan menjelaskan tentang ;
  1. Desain Data
  2. Desain Arsitektur
  3. Proses Desain Arsitektur
  4. Pemetaan Transformasi
  5. Pemetaan Transaksi
  6. Pasca Pemrosesan Desai n
  7. Optimasi Desain Arsitektur
  8. Desain Interface
  9. Desain Prosedural
Di dalam pembahasan metode desain ini akan dijelaskan peranan penting arsitketur di metode desain, kenapa demikian, arsitektur sendiri bukanlah Perangkat Lunak operasional, namun dia merupakan representasi yang memungkinkan pengembangan PL untuk: Menganalisa efektivitas desain dalam memenuhi kebutuhan, dan mengetahui alternatif-alternatif arsitektur pada keadaan dimana membuat perubahan desain relatif lebih mudah serta mengurangi resiko terkait dengan konstruksi Perangkat Lunak.
  
BAB II PEMBAHASAN
2.1.       DESAIN DATA
Desain data adalah aktivitas pertama dari empat aktivitas desain yang dilakukan selama rekayasa perangkat lunak. Pengaruh struktur data pada struktur program dan kompleksitas prosedural menyebabkan desain data berpengaruh penting terhadap kualitas perangkat lunak, konsep penyembunyian informasi dan abstraksi data memberi dasar pendekatan terhadap desain data. Tanpa melihat teknik desain yang akan digunakan, data yang di desain dengan baikdapat membawa kepada struktur programdan modularitas yang lebih baik, serta mengurangikompleksitas prosedural.
Wasserman mengusulkan  Serangkaian prinsip yang dapat digunakan untuk menentukan dan mendesain data. Pada Kenyataannya desain data dimulai selama pembuatan model analis. Karena analisis persyaratan perangkat lunak dan desain seringkali overlap. Serangkaian prinsip untuk spesifikasi data :
  1. Prinsip analisis sistematik yang di apliksikan pada fungsi dan perilaku seharusnya diaplikasikan juga pada data.
  2. Semua struktur data dan operasi yang akan dilakukan pada masing – masing struktur data harus diidentifikasi.
  3. Kamus data harus dibangun dan digunakn untuk menentukan baik data maupun desain program.
  4. Keputusan desain data tingkat rendah harus ditunda sampai akhir proses desain.
  5. Representasi struktur data hanya boleh diketahui oleh modul – modul yang harus menggunkan secara langsung data yang didisikan didalam struktur tersebut.
  6. Pustaka struktur data danoperasi yang digunakan yang dapat diaplikasikan pada struktur data tersebut harus dikembangkan.
  7. Desain perangkat lunak dan bahasa pemerograman harus mendukung spesifikasi dan realisasi dari tipe – tipe data abstrak.  

Desain data merupakan aktivitas pertama dari empat desain yang dilakukan dalam perangkat lunak. Tujuan Desain Data yaitu Memilih representasi logis dari objek data ( struktur data ) yang telah di identifikasi.

2.2.       DESAIN ARSITEKTUR
Desain arsitektur adalah untuk mengembangkan struktur program modular dan merepresentasikan hubungan control antar modul.
Metode desain yang disajikan pada bagian ini mendorong prekayasa perangkat lunak untuk berkosentrasi pada desain arsitektur sebelum mencemaskan masalah perpipaan.
2.2.1      KONTRIBUTOR
Desain arsitektur berakar dari konsep esain yang lebih awal yang menekankan pada modularitas [DEN73], desain topdown[WIR71],dan pemerograman terstruktur [DAH72,LIN70]. Steven, Myers, dan Constantine [STE74], adalah perintis desain perangkat lunak yang didasarkan pada aliran data melalui sebuah sistem.
2.2.2          AREA APLIKASI
Masing – masing metode desain mempunyai kelemahan dan kelebihan. Factor seleksi yang penting untuk suatu metode desain adalah luasnya apliksi dimana aplikasi dapat di aplikasikan. Desain berorientasi pada alira dat dapat menyetujui rentang area aplikasi yang luas.

2.3.       PROSES DESAIN ARSITEKTUR
Desain yang berorientasi pada aliran data merupakan suatu metode desain arsitektur yang mengijinkan transisi yang baik dari model analisis ke deskripsi desain dari struktur program. Trnsisi dari aliran informasi (yang ditujukan sebagai diagram aliran data) kestruktur dilakukan bagian dari proses 5 langkah:
  1. Tipe aliran informasi dibangun.
  2. Batas aliran diindikasikan.
  3. DFD dipetakan didalam struktur program.
  4. Hirarki kontrol ditentukan dengan pemfaktoran.
  5. Struktur resultan disaring atau diperhalus dengan menggunakan pengukuran desain dan heuristik.
  6. Pada bagian ini kita akan mengamati 2 tipe aliran.

2.3.1     ALIRAN TRANSFORMASI
Informasi memasuki system bersama dengan jalur yang mentransformasikan data eksternal kedalam bentuk internal dan akan didefinisikan sebagai aliran masuk. Pada inti perangkat lunak terjadi transisi. Data yang masuk dilewatkan melalui pusat transformasi dan mulai bergerak sepanjang jalur yang sekarang mengarah keluar dari perangkat lunak. Data yang mengalir disepanjang jalur – jalur disebut aliran keluar. Keseluruhan aliran data  terjadi dalam cara yang berurutan dan mengikuti satu atau hanya beberapa jalur”garis lurus”. Bil segmen dari diagram aliran data menunjukkan karakteristik tersebut, maka disitu ada aliran transformasi.
2.3.2     ALIRAN TRANSAKSI
Aliran transaksi ditandai dengan pergerakan data sepanjang jalur masuk yang mengkonversi informasi dunia eksternal kedalam suatu transaksi. Transaksi tersebut dievaluasi, dan berdasarkan nilai, aliran sepanjang satu daribeberapa jalur aksi diinisiasi. Pusat aliran informasi dari mana banyak jalur aksi berasal disebut pusat transaksi.

2.4     PEMETAAN TRANSFORMASI
Pemetaan transformasi adalah serangkaian langkah desain yang mengijinkn sebuah DFD dengan karakteristik aliran transformasi untuk dipetakan ke dalam template yang telah ditentukan sebelumnya untuk struktur program.
Langkah – langkah desain pemetaan transformasi:
  1. kajilah model sistem fundamental.
  2. Kajilah dan saringlah diagram aliran data untuk perangkat.
  3. Tentukan apakah DFD memiliki karakteristik aliran transformasi dan transaksi.
  4. Isolasi pusat transformasidengan mengkhususkan batas aliran masuk dan keluar.
  5. Lakukan”pemfaktoran tingkat pertama”
  6. Lakukan”pemfaktoran tingkat kedua”
  7. Saringlah struktur program iterasi pertama dengan menggunakan heuristic desain bagi kualitas perangkat lunak yang telah ditingkatkan.

2.5     PEMETAAN TRANSAKSI
Pada banyak aplikasi perangkat lunak, item data tunggal memicu satu atau sejumlah aliran informasi yang mempengaruhi suatu fungsi yang diimplikasikan oleh pemicu item data. Item data yang disebut transaksi, dan karakteristik alirannya yang terkait.
Langkah – langkah desain pemetaan transaksi:
  1. Kaji model sistem fundamental.
  2. Kaji dan saring diagram aliran data untuk perangkat lunak.
  3. Tentukan apakah DFD memiliki karakteristik aliran transformasi atau transaksi.
  4. Identifikasi pusat transaksi dan karakteristik aliran sepanjang masing – masing jalur aksi.
  5. Petakan DFD pada sebuah struktur program yang sesuai dengan pemerosesan transaksi.
  6. faktorkan dan saringlah struktur transaksi dan struktur masing – masing jalur aksi.
  7. saringlah strutur program iterasi pertama dengan menggunakan heuristic desain untuk kualitas perangkat lunak yang dikembangkan.

2.6     PASCA PEMEROSESAN DESAIN
Aplikasi dari pemetaan transaksi dan transformasi yang berhasil kemudian ditambahkan pada dokumentasi tambahan yang dibutuhkan sebagai bagian dari desain arsitektur. Setelah struktur dikembangkan dan disaring, tugas – tugas berikut harus dilakukan:
  1. Mengembangkan narasi pemerosesan untuk masing – masing modul.
  2. Menyediakan deskripsi interface untuk masing – masing modul.
  3. Menentukan struktur data local dan global.
  4. Mencatat semua batasan desain.
  5. Mengkaji desain.
  6. Mempertimbangkan “optimasi” (bila perlu dan dibenarkan).

2.7     OPTIMASI DESAIN ARSITEKTUR
Desainer perangkat lunak harus memperhatikan perkembangan representasi perangkat lunak yang akan memenuhi semua fungsi dan persyaratan kinerja dan penerimaan jasa berdasarkan pengukuran desain kualitas. Oleh karena itu cukup beralasan untuk mengusulkan pendekatan berikut ini untuk perangkat lunak kinerja – kritis.
  1. Kembangkan dan saringlah struktur program tanpa memperhatikan optimasi kinerja – kritis.
  2. Gunakan peranti CASE yang mensimulasi kinerja run – time untuk menisolasi area inesifiensi.
  3. selama iterasi desain selanjutnya, pilihlah modul yang dicurigai “time hot” dan dengan hati – hati kembangkanlah prosedur(algoritma – algoritma) untuk efisiensi waktu.
  4. Kodekan sebuah bahasa pemerograman yang sesuai.
  5. Instrumentasikan perangkat lunak untuk mengisolasi modul yang menjelaskan utilisasi proses yang berat.
  6. Bila perlu, Desain ulang atau kodekan kembali bahasa yang tergantung pada mesin untuk meningkatkan efisiensi.

2.8     DESAIN INTERFACE
            Desain interface memfokuskan diri pada 3 area perhtian:
  1. Desain interface antara modul – modul perangkat lunak.
  2. Desain interface antara perangkat lunak dan produser dan konsumen informasi bukan manusia lainnya (yakni entitas eksternal lainnya).
  3. Desain interface antara pemakai dan komputer.

2.8.1     DESAIN INTERFACE PEMAKAI INTERNAL DAN EKSTERNAL
Desain interface program internal, yang kadang disebut desain interface intermodular, dikendalikn oleh data yang harus mengalir diantara modul – modul dan karakteristik bahasa pemerograman dimana perangkat lunak akan diimplementasikan. Secara umum, model analisis berisi banyak informasi yang dibutuhkan bagi desain interface intermodular.
Desain interface eksternal dimulai dengan evaluasi terhadap masing – masing entitas eksternal yang di representasikan pada DFD model analisis. Persayaratan data dan kontrol dari entitas eksternal ditentukan, dan dirancang interface eksternal yang sesuai. Desain interface eksternal bagi masing – masing sensor didasarkan item kontrol dan data spesifik yang dibutuhkan untuk sensor tersebut.
Baik desain interface eksternal maupun internal harus dirangkai dengan validasi data dan algoritma penanganan kesalahan dalam sebuah modul. Karena efeksamping menyebar melalui interface program, maka penting untuk mengecek semua aliran data dari modul ke modul (atau ke dunia luar) untuk memastikan bahwa data sesuai dengan batas yang telah ditentukan selama analisis persyaratan.
2.8.2     DESAIN INTERFACE PEMAKAI
Desain interface pemakai berkaitan dengan study terhadap manusia, juga terhadap isu – isu teknologi. Siapakah para pemakainya? Bagaimana pemakai belajar berinteraksi dengan sistem berbasis komputer yang baru? Bagaimana pemakai menginterpresentasikan  informasi yang dihasilkanoleh sistem? Apakah yang diharapkan dari sistem tersebut? Itu hanya sebagian kecil dari banyak pernyataan yang harus diajukan dan dijawab sebagai bagian dari desain interface pemakai.
2.8.3     MODEL – MODEL DESAIN INTERFACE
Ada empat model yang berbeda pada saat manusia-komputer/ human-komputer interface (HCL) akan didesain. Perekayasa perangkat lunak menciptakan sebuah model desain, perekayasa manusia ( atau perekayasa perangkat lunak) membangun model pemakai, pemakai akhir mengembangkan citra mental yang sering disebut user’s model atau perception, dan implementer sistem menciptakan system image [RUB88].
Model desain dari keseluruhan sistem menggabungkan data, arsitektur, interface, dan representasi prosedural dari perangkat lunak.
Model pemakai menggambarkan profil para pemakai akhir dari sistem. Untuk membangun interface pemakai yang efektif,”semua desain harus dimulai dengan suatu pemahaman terhadap pemakai yang dimaksudkan, meliputi profil, usia, jenis kelamin”[SHN87]. Para pemakai juga dapat dikategorikan sebagai:
  1. Orang baru
  2. Pemakai intermiten yang banyak pengetahuan
  3. Pemakai yang banyak pengetahuan dan sering Persepsi sistem (model pemakai) merupakan citra sistem yang ada dikepala seorang pemakai akhir. Sebgai contoh, bila pemakai pengelola kata tersebut, persepsi sistem akan menuntun respon tersebut.
Citra sistem merangkai manifestasi bagian luar dari sistem berbasis computer (tampilan luar dan “rasa” interface), dengan semua informasi yang mendukung (buku-buku, manual, pita video) yang menggambarkan sintaksis dan semantik sistem.

2.9     DESAIN PROSEDURAL
Desain prosedural terjadi setelah data, desain arsitektur dan interface dibangun. Dalam dunia yang ideal, spesifikasi prosedural diperlukan untuk menetapkan detail algoritma yang akan dinyatakan dalam suatu bahasa ibu, seperti bahasa inggris.  Desain prosedural harus menentukan detail desain prosedural tanpa ada ambiguitas. Ciri – ciri program yang baik/ terstruktur :
  1. Dapat dijalankan dengan baik dan benar.
  2. Dapat dijalankan secara efektif dan efisien dengan tidak banyak menggunakan syntaks yang tidak perlu.
  3. Mudah di baca dan dipahami oleh orang lain maksud dan tujuan objek yang akan ditampilkan.
  4. Mudah diperbaiki jika terjadi kesalahan.
  5. Biaya pengujian yang dibutuhkan rendah.
  6. Memiliki dokumentasi yang baik.
  7. Biaya perawatan dan dokumentasi yang dibutuhkan rendah.
  8. Program hanya terdiri dari tiga struktur kontrol. Yaiut struktur urut, struktur seleksi, dan sturkutr repetisi atau reiterasi.
READ MORE - Metode Desain