Apa itu Software Design? | Killjols Apa itu Software Design? | Killjols
Get Update Everyday Like Our FB Pages

Monday

HAHAHA HAHAHA HAHAHA HAHAHA HAHAHA
Chord List: # | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z : TOP 10

Apa itu Software Design?

Apa itu Design?


Design atau Reka bentuk secara umum di fahami sebagai:

1. Mencapai atau Menyediakan penyelesaian(Solusi) bagaimana untuk Memenuhi beberapa Keperluan(Requirement) atau Menyelesaikan beberapa Masalah (Solve problem)

2. Menghasilkan idea-idea atau Prinsip algoritma tentang bagaimana untuk Memenuhi keperluan itu.

3. Proses atau langkah-langkah yang definitif(muktamad) tentang bagaimana untuk memenuhi keperluan.

4. Hasil dari proses rekabentuk di-formalkan ke dalam beberapa dokumentasi reka bentuk yang mengikut piawaian(standardized design document).


Definisi rasmi Design(Reka bentuk) yang di nyatakan dalam dokumen IEEE 24765 
adalah:

1. Satu proses Mendefinisikan seni beni, komponen , interfaces , dan ciri-ciri lain pada sistem atau komponen.

2. Hasil Dari pada proses Mendefinisikan seni beni, komponen , interfaces , dan ciri-ciri lain pada sistem atau komponen.


Beza Requiremetn dan Design.

Ia adalah penting untuk kita membezakan antara keperluan(Requirement) dan Reka Bentuk(Design) .

Keperluan ( APA?)
Reka Bentuk (Bagaimana untuk?)

1. Keperluan adalah mengenai apa yang harus dan apa perlakuan(Behavior) ia harus  pamerkan/perlihatkan.

*What it must be and what the behavior it must exhibits

2. Rekabentuk mengenai bagaimana untuk kita capai apa yang ia perlu jadi dan bagaimana kita boleh mencapai apa-apa perlakuan(behavior) yang ia perlu pamerkan.

*How to achieve what it must be and how to achieve the behavior it must exhibits.


Bila dan Dimana kita memulakan Software Design?


Kita mula me-rekabentuk perisian(Software Design) dari Keperluan perisian dan spesifikasinya(Software Requirement and Specifications).

Kolerasi(Perkaitan) Sistem Kejuruteraan dan Perisian Kejuruteraan.

Definisi Masalah(Sistem) dan Analisis Keperluan(Software)

Deskripsi: Menentukan keperluan(need) dan kekangan (constraint) dengan menganalisis keperluan sistem yang diperuntukkan kepada perisian

*Problem Definition and Requiremetn Analysis.

Analisis Solusi(Sistem) dan Reka Bentuk Perisian(Software)

Deskripsi: Menentukan cara untuk memenuhi keperluan dan kekangan , Menganalisis cara penyelesaian yang boleh, dan memilih yang terbaik(optima).

*Solution Analysis and Software Design.

Proses Perancangan

Deskripsi: Menentukan tugas-tugas pembangunan produk , keutamaan dan potensi risiko kepada projek.

*Planning Process

Proses Kawalan.

Deskripsi: Menentukan kaedah/cara untuk pengawalan projek dan proses, penilaian pencapaian dan prestasi dan langkah pembetulan jika perlu.

*Control Process

Penilaian produk dan Verifikasi, Validasi(Pengesahan) dan Pengujian(Testing). 

Deskripsi: Penilaian Produk Akhir. dan dokumentasi.

*Product Evaluation and Verfication ,validation and testing


Kita perlu benar-benar memahami keperluan dan spesifikasi pengguna sebelum kita memulakan proses reka bentuk perisian. Matlamat untuk reka bentuk perisian adalah untuk memenuhi semua keperluan dan spesifikasi.

Kita juga mesti memahami sepenuhnya kedua-dua keperluan sistem dan keperluan perisian. Perisian bukan semata Perisian sahaja. Ia mesti menjadi sebahagian dari sistem yang besar(hardware atau sistem software)

Kenapa Software Design Diperlukan?


Kita perlu melaksanakan reka bentuk perisian untuk menyediakan penyelesaian yang memenuhi keperluan sistem, keperluan perisian yang fungsional(Functional) dan Bukan Fungsional(Non-Functional)

Baca di sini tentang --->> Keperluan Fungsional dan Bukan Fungsional

1. Produk atau hasil daripada rekabentuk ialah satu set dokumen reka bentuk atau idea reka bentuk. Ia adalah cara penyampaian kepada orang lain , terutama kepada pembina perisian dan pelaksana . Penyelesaian adalah mengenai bagaimana untuk mencapai keperluan sistem.

2. Set dokumen reka bentuk mengandungi elemen model reka bentuk, Artifak reka bentuk dan penerangan reka bentuk. Ia termasuk rekod keputusan yang di ambil untuk pemilihan reka bentuk, dan penjelasan rasional bagi setiap keputusan yang penting dan tidak remeh(Non-trivial).

3. Dokumen rekabentuk mengandungi tahap perincian yang berbeza, skop , komponen dan liputan(coverage). 

Sebagai contoh: Ia mempunyai draf reka bentuk , reka bentuk kesuluruhan, reka bentuk , awal , reka bentuk terperinci , reka bentuk arkitektur. Reka bentuk data, reka bentuk hubungan antara entiti, reka bentuk aliran data, reka bentuk aliran proses, reka bentuk logik dan banyak lagi

*Draft design, overall design, premilinary design, detailed design , architecture design , 
data design , data flow design , process flow design and logic design.

4. Jenis Dokumen keperluan yang akan dihasilkan dalam proses reka bentuk perisian  adalah berbeza , bergantung kepada pengkhususan/spesifik sistem dan keperluan sistem dan spesifikasi yang dibincang.

5. Set lengkap dokumen reka bentuk menjadi asas evolusi/perkembangan perisian dan penyelegaraan(maintainance) dalam keseluruhan proses kitaran hayat pembangunan sistem dan perisian(System development life cycle proses)


Siapa yang melaksanakan Software Design?


Seseorang yang memandu akan dipanggil pemandu , seseorang me-reka bentuk perisian akan di panggil Perekabentuk perisian(Software Designer) .

Seorang pereka bentuk perisian mestilah seorang yang mempunyai pengalaman untuk:

1. Memahami sistem dan dokumen keperluan perisian dan spesifikasinya.

2.Memahami Reka Bentuk Model Perisisan , Alat Reka Bentuk(Design tools). dan proses reka bentuk(Design process).

3.Mampu menganalisis sistem dan keperluan perisian, kekangan(constraint) dan menterjemahkan kepada reka bentuk model dan proses perisisan.

4. Memahami kesan yang di berikan oleh model reka bentuk perisian kepada proses pembinaan perisian dan perlaksanaanya.

5. Mempunyai pemahaman yang sangat baik dalam paradigma pengaturcaraan(Programming) yang berbeza dan perlaksanaannya.

Sebagai contoh pengaturcaraan: structured programming, imperative programming, object-oriented
programming, aspect-oriented programming, functional programming, event-based programming,
concurrent programming, distributed programming, and service-oriented programming.

6.Mempunyai pemahaman yang baik dalam pengaturcaraan struktur data yang berbeza, algoritma dan kesan dalam perlaksanaan yang berbeza.

7. Mempunyai pemahaman yang baik terhadap perbezaan sistem dan strategi penggunaan perisian(software deployment strategies), , teknik , protokol komunikasi(communication protocols) dan perlaksaannya yang berbeza.

Seorang pereka perisian yang baik mempunyai ciri-ciri diatas

Selalunya arkitek perisian seorang yang pakar atau seorang programmer komputer yang berpengalaman atau pengurus yang membuat pemilihan reka bentuk komputer tahap tinggi dan menetapkan piawaian teknikal ,  termasuk perisian ,  software coding standard , tools, dan platform.

Jika pereka perisian seorang yang tidak berpengalaman atau tidak cekap , Ia Mungkin berakhir dengan satu reka bentuk perisian yang...

1. Tidak memenuhi keperluan sistem dan perisian.
2. Tidak boleh dibina dan dilaksana.


Bila kita perlu melaksanakan Software Design?


Dengan  semua penerangan di atas kita tahu , yang kita perlu memulakan reka bentuk  perisian apabila kita telah disediakan dengan keperluan dan sepisifikasi.

Dengan apa kita melaksanakan Software Design?



Melaksanakan rekabetuk perisian menggunakan alat rekabentuk perisian yang khusus , ini bermakna kita akan menghasilkan rekabentuk dokumen yang standard. Terdapat banyak software design tools di pasaran, terdapat yang komersial dan percuma.

*Special Software Design Tools.

Contoh: IBM Rational ROSE, Visiual Paradigm


Bagaimana kita melaksanakan Software Design dan menjana output?


Rekabentuk perisian adalah proses kreatif dan sistematik, kreatif bermakna ia adalah  mempunyai banyak  cara untuk menyediakan solusi untuk memenuhi keperluan tertentu. Secara sistematik pula terdapat beberapa struktur dan perlaksanaan langkah , dan prosedur yang jelas.

Secara Sistematik , Prosedur Lazim untuk Aktiviti merekabentuk Perisian:

1. Keperluan Dianalisa sepenuhnya untuk memahami fungsi,skop , interface ,kekangan dan
lain lain.

2. Berdasarkan analisis keperluan , proses model rekabentuk perisian dibina.

3. Dari model rekabentuk perisian , proses rekabentuk perisian dibina.

4. Proses dari analisis keperluan hingga proses model rekabentuk perisian hingga proses rekabentuk perisian diulangi sehingga keperluan dipenuhi.

5. Output akhir adalah satu set dokumen yang mengandungi elemen model reka bentuk, artifak reka bentuk dan penerangan tentang rekabentuk.

6. keputusan diambil untuk pilihan rekabentuk mesti direkodkan. Ini termasuk beberapa penjelasan mengenail rasional bagi setiap keputusan besar yang dibuat.

Ringkasan: Anlisa keperluan , Bina Model software design , bina software design, ulangi step 1 hingga 3, Set dokumen yang lengkap, Membuat keputusan berdasarkan dokumen dan membuat rekod.

Untuk pertimbangan secara kreatif , Apa yang boleh dipertimbangkan dalam aktiviti reka bentuk perisian adalah seperti berikut:

1. Pertimbangan menerima pakai patent rekabentuk perisian tertentu. Patent rekabentuk perisian itu telah terbukti menyelesaikan masalah rekabentuk yang berulang.

2. Pertimbangan pilihan yang berbeza dalam menterjemahkan model keperluan  ke dalam model reka bentuk.

3. Pertimbangan pilihan yang berbeza dalam menyediakan interfaces untuk menyokong komponen berfungsi dan koneksi mereka.

4. Pertimbangan teknik yang berbeza untuk melaksana dan mengekalkan kualiti rekabentuk.


Apakah Ciri-Ciri Rekabentuk yang baik?


1. Ketepatan(Corectness) - Penyelesaian rekabentuk yang apabila dilaksanakan haruslah menghasilkan jangkaan jawapan dan memaparkan kelakuan(behavior) yang dijangka mengikut keperluan dan spesifikasi.

2. Keteguhan(Robustness) - Penyelesaian rekabentuk  yang dihasilkan untuk menghasilkan perisisan yang mampu untuk dikendalikan dibawah tekanan atau bertoleransi dengan input yang tidak menentu atau tidak sah.

3. Kecekapan(Efficiency) - Penyelesaian rekabentuk yang akan menghasilkan perisisan menggunakan sumber yang minimum dan ia adalah cepat dan padat.

4. Fleksibel(Flexiblity) - Penyelesaian rekabentuk yang boleh mengadaptasi kepada perubahan supaya keupayaan baru boleh ditambah untuk rekabentuk tanpa perubahan yang besar.

5. Boleh Digunapakai(Reusability) - Penyelesaian rekabentuk yang dapat digunakan semula  pada situtasi yang sama dan boleh mengadaptasi dengan ciri-ciri baru dan dengan pengubahsuaian yang sedikit atau tiada langsung pengubahsuaian.

Like this post :



Killjols Blog

Blogger , Guitar Chord Collection , Lyric Collection , Lyric video maker ,

No comments :

Post a Comment