Prinsip-prinsip Spesifikasi Rekabentuk

Slides:



Advertisements
Similar presentations
Protokol Rangkaian Bab 6
Advertisements

Transmisi Analog -Tranmisi Jalur Asas dan Jalur lebar
Access Point  .
CDPD Celular Digital Packet Data Mhd Farid Naqeeb B. Mhd Amin Nordin A96908 Azfa Abdul Rahman A96865.
Struktur Kawalan Ulangan
BAB 3-2 Sifat Robot. Objektif Boleh mengetahui ciri/spesifikasi robot Boleh menerangkan ciri/spesifikasi yang menerangkan kelakuan dan sifat robot Boleh.
1 Bab 4 Paradigma Pengaturcaraan Bahasa Imperatif Menurut Milulinovic (1989), bahasa pengaturcaraan boleh diklasifikasikan mengikut taksonomi arkitektur.
Ketidaktentuan –Tidak lengkap –tidak konsisten, –tidakpasti… atau ketiga- tiganya sekali.
Pembolehubah dan Pemalar
PCS (Personal Communications Services) – CDMA (Code Division Multiple Access) PCS (Personal Communications Services) PCS merupakan perkhidmatan telefon.
Sebuah alat komunikasi perhubungan melalui “rangkaian pengguna” Digunakan secara meluas di awal era keluaran telefon bimbit iaitu dari tahun 1980 ke 1990.
KOMPUTER Bagaimana?.
PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2 nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
TK2133 Komunikasi Data Bab 3 Model OSI & TCP/IP. Model OSI (Open System Interconnection) Model yg membenarkan 2 sistem berkomunikasi berdasarkan senibina.
SATELIT LEO (LOW EARTH ORBITING) SHANGARI VELUSAMY A NURUL FATIHAH BT MOHAMED KAMARUDIN A
Prinsip-prinsip Spesifikasi Rekabentuk
1 Bab 8 Halatuju dan Kekangan dalam Antaramuka : Multisensori.
AMPS /D-AMPS ADVANCED MOBILE PHONE SYSTEM/DIGITAL ADVANCED MOBILE PHONE SYSTEM.
Bab 2-10 PENGATURCARAAN.
BAB 1 - MANTIK Pembelajaran kaedah dan prinsip untuk membezakan di antara hujah yang baik dengan yang lemah. Memudahkan penyusunan idea-idea dengan teratur,
PENGHANTARAN SISTEM (DELIVERING THE SYSTEM). Pengenalan Menghampiri penghujung fasa pembangunan sistem 2 isu utama yang menentukan kejayaan dalam menghantar.
PERANCANGAN DAN PENGURUSAN PROJEK
Prinsip-prinsip Kebolehgunaan
Paradigma Pengaturcaraan
Free Space Optics(FSO) Free Space Photonics(FSP) atau Wireless optic Merujuk kepada pemindahan gelombang infrared melalui atmosfera untuk mendapatkan komunikasi.
Pernyataan Kawalan Java
BAHAGIAN 2 VB6 Procedure dan Fungsi.
F3031 Object Oriented Programming
Kandungan 1 RAID - (Redundant Array of Independent (or Inexpensive) Disks 2 Komputer Pelayan (Server) 3 Perisian Komputer Politeknik Seberang Perai.
ASAS PENGATURCARAAN C++
BAB 2 PLANNING Objektif: Pengenalan kepada perancangan projek
PENGENALAN KEPADA JELMAAN LAPLACE
Konsep Asas Pengaturcaraan
ASAS PENGATURCARAAN F1001 En. Azrol Hisham Bin Mohd Adham
PENGENALAN KEPADA SISTEM MULTIMEDIA (WXET 3142)
Paradigma Pengaturcaraan
BAB 9 VB6 DAN PANGKALAN DATA.
BAB 7 PENGUJIAN PROGRAM.
Prinsip-prinsip Kebolehgunaan
MODULE 3 : HARDWARE : MONITOR PREVENTIVE MAINTENANCE WORK
MODUL 3 FILING SYSTEM.
TOPIK KHAS : PENGGUNAAN VB DENGAN PERISIAN MICROSOFT YANG LAIN (VBA)
PERISIAN HAMPARAN ELEKTRONIK
Masalah Tugasan.
MODULE 3 : HARDWARE : MONITOR CORRECTIVE MAINTENANCE WORK
2.3 Inertia Hukum gerakan Newton pertama
Spesifikasi Pengaturcaraan Fungsian
Routing Protokol dan Konsep Routing Protocols and Concepts
Pernyataan if.. Pernyataan switch..
BAB 8 TATASUSUNAN.
Pengenalan.
Penyelesaian Rangkaian Multimedia
TOPIK KHAS : PENGGUNAAN VB DENGAN PERISIAN MICROSOFT YANG LAIN (VBA)
BAB 2(a):PENGENALAN KEPADA JELMAAN LAPLACE
2.4 MOMENTUM Disediakan Oleh : Siti Rohayu Che Hassan.
2.0 PENGALAMATAN RANGKAIAN
Prinsip-prinsip Kebolehgunaan
MENGGUNAKAN OBJEK VISUAL BASIC 6.0
BAB 2 PLANNING Objektif: Pengenalan kepada perancangan projek
E4161 SISTEM KOMPUTER & APLIKASI
Pembolehubah dan Pemalar
Oleh: Zaihan Abdul Ghani A Sharifah Suhaila Mohd Ramli A103305
POLITEKNIK PORT DICKSON E4161 SISTEM KOMPUTER & APLIKASI
Bab 6 Pengaturcaraan Lisp.
Muhamad Shukri Saud PRODUCTION ORGANIZATION
PINJAMAN ANTARA PERPUSTAKAAN
ICT HANDYBOOK SPM LA2 COMPUTER SYSTEMS 2.3 Software.
3.4.3 KONFIGURASI DAN UJIAN RANGKAIAN
Penilaian Capaian & Maklumbalas Berkaitan
Keperluan rangkaian bagi aplikasi multimedia
Presentation transcript:

Prinsip-prinsip Spesifikasi Rekabentuk Bab 3 Prinsip-prinsip Spesifikasi Rekabentuk

3.3. Pengecualian dan Pengendalian Pengecualian Pengecualian - sebarang peristiwa yang tidak dijangka atau hanya sesekali berlaku yang boleh dikesan oleh samada perkakasan atau perisian yang memerlukan perhatian. Contohnya, ralat masa-larian, disk read error, out-of-range array subscripts, pembahagian dengan 0, dan arithmetic overflow (bila suatu integer bernilai lebih besar dari yang disokong oleh perkakasan). Pengecualian akan ditimbulkan atau diberi isyarat apabila perkara-perkara sebegini berlaku. Untuk membezakan peristiwa yang dijangka dengan yang tak dijangka, aturcara perlu dibahagikan kepada beberapa unit

3.3. Pengecualian dan Pengendalian Pengecualian Apabila berlakunya suatu pengecualian, kawalan akan dipindahkan kepada unit aturcara yang bersesuaian  pengendali pengecualian (exception handler), yang akan menguruskanpengecualian tersebut Pengendali pengecualian – suatu subaturcara atau jujukan kod yang direkabentuk untuk dilarikan apabila pengecualian tertentu berlaku supaya perlaksanaan aturcara boleh diteruskan. Kebanyakan bahasa-bahasa pengaturcaraan tradisional tidak menyediakan bantuan dalam pengendalian ini.

3.3. Pengecualian dan Pengendalian Pengecualian Isu-isu penting yang perlu dipertimbangkan dalam pengendalian pengecualian: Bagaimana pengecualian yang ditakrifkan oleh pengguna ditentukan, dan apakah skopnya? Bagaimana suatu pengecualian itu ditimbulkan? Bagaimana kita menentukan unit-unit yang perlu dilarikan apabila pengecualian timbul? Bagaimana pengecualian yang timbul diikat kepada pengendali pengecualian? Adakah ralat yang boleh dikesan oleh perkakasan dianggap sebagai pengecualian yang boleh kendalikan? Should it be possible to disable exceptions? Di mana kawalan aliran aturcara selepas suatu pengecualian dipindahkan?

3.3. Pengecualian dan Pengendalian Pengecualian Kebanyakan bahasa menyediakan kemudahan (ditakrifkan oleh bahasa) untuk menggunakan pengendali pengecualian secara eksplisit. Terdapat juga pengecualian yang ditakrifkan oleh pengguna Pengecualian seperti ini perlu diisytiharkan sepertimana objek data yang lain dan hanya wujud di dalam skop pengisytiharannya Suatu subaturcara yang boleh memberikan isyarat pengecualian seperti ini akan dikodkan dengan menggunakan suatu parameter return tambahan (spt suatu integer). Parameter ini akan memberikan kod pengecualian (cth: 0 jika tiada pengecualian, 1 untuk pengecualian pertama, dan seterusnya).

3.3. Pengecualian dan Pengendalian Pengecualian Dalam kes ini subaturcara yang memanggil akan menguji secara eksplisit kod pengecualian ini selepas setiap panggilan, dan akan memindahkan kawalan kepada pengendali pengecualian yang bersesuaian. Pengendali pengecualian takrifan pengguna in bersifat seperti subaturcara(fungsi) takrifan pengguna, yang mana ia boleh menerima parameter. Beza di antara subaturcara dengan pengendali pengecualian adalah dari segi pemindahan kawalan selepas perlaksanaannya tamat. Bagi subaturcara, kawalan akan dipindahkan kepada pernyataan arahan selepas pernyataan panggilannya, manakala bagi pengendali pengecualian, kawalan mungkin akan berpindah ke temapat lain atau ditamatkan.

3.3. Pengecualian dan Pengendalian Pengecualian Misalnya dalam mekanisma pengendalian pengecualian menggunakan bahasa BASIC, pernyataan ON ERROR GOTO 100 Akan memindahkan kawalan ke pernyataan pada baris ke 100, sekiranya berlaku ralat. Pada baris ke 100, segmen pengendali pengecualian ditulis, yang akan diakhiri dengan salah satu dari 3 pernyataan di bawah: RESUME - Ini akan memindahkan kawalan balik kepada baris permulaan dim ana ralat berlaku RESUME NEXT - Ini akan memindahkan kawalan ke baris berikutnya selepas baris dim ana ralat berlaku RESUME nombor_baris - Ini akan memindahkan kawalan ke baris yang dinyatakan nombornya

3.3. Pengecualian dan Pengendalian Pengecualian Pengendalian pengecualian yang disokong oleh BASIC adalah sangat asas, dan mempunyai beberapa kelemahan seperti berikut Hanya satu pengendali pengecualian yang boleh widujudkan pada satu masa Hanya ralat tertentu yang telah ditetapkan boleh dikendalikan Tiada pengecualian takrifan pengguna yang boleh ditakrifkan Antara bahasa pengaturcaraan yang menyediakan pengedali pengecualian termasuk Ada, C++, CLU-OOL, Eiffel, Java, Mesa, ML, dan PL/1

3.3. Pengecualian dan Pengendalian Pengecualian Kelebihan mempunyai mekanisma pengendalian pengecualian dalam sesuatu bahasa adalah: Tidak perlu menulis kod untuk mengesan peristiwa yang tidak dijangka dengan banyak atau berulangkali  mengelak dari menjadikan aturcara rumit Mekanisma pengendalian pengecualian membolehkan suatu pengendali pengecualian digunakan oleh banyak unit-unit program lain Dengan pengecualain, ini menggalakkan pengguna / pengaturcara mempertimbangkan semua peristiwa yang mungkin berlaku semasa perlaksanaan aturcara dan bagaimana untuk mengatasinya. Pengendalian pengecualian membezakan di antara kod pengendalian ralat dengan kod untuk tugas-tugas yang lain di dalam aturcara  aturcara mudah dibaca dan dimodifikasi

3.3.1. Rekabentuk dan Implimentasi Suatu bahasa mungkin membenarkan penggantungan pengecualian (disabling of exceptions) dan sebaliknya. Ini diperlukan dalam kes-kes di mana pengujian pengecualian yang dilakukan memakan masa dan kos yang tinggi, berbanding dengan kesannya (tidak wajar) Contohnya, penyemakan samada indeks yang digunakan untuk suatu tatasusunan berada di dalam julatnya. Penggantungan ini berlaku semasa kompilasi, di mana kod-kod yang diperlukan untuk mengimplimenkan pengecualian ini tidak akan dijana Secara amnya, setiap pengendali pengecualian adalah suatu blok pernyataan yang diikat kepada suatu pengecualian. Untuk pengecualain yang ditakrifkan oleh bahasa, pengikatan ini berasaskan nama dan kekal

3.3.1. Rekabentuk dan Implimentasi Pengecualian yang ditakrifkan oleh pengguna pula diikat kepada nama mereka pada pengisytiharan, dan pengikatan hanya wujud di dalam skop pengisytiharan tersebut. Pengikatan pengecualian kepada pengendali pengecualiannya boleh mengikut salah satu dari model berikut: Blok pengendali pengecualian diikat kepada pengecualian di dalam skop subaturcara melalui suatu pengisytiharan yang dinyatakan pada subaturcara  pengecualian diisyhtiharkan dan diumpukkan pengendali pegecualian dalam bahagian pengisytiaran subaturcara. Dalam model ini, pengikatan pengendali pengecualian akan wujud di sepanjang skop subaurcara.

3.3.1. Rekabentuk dan Implimentasi Contoh pseudokod: Subaturcara A E1, E2 : Pengecualian Pengendali pengcualian E1 adalah { H1 blok pernyataan } Pengedali pengecualian E2 adalah { H2 blok pernyataan }   Subaturcara B E1, E3 : pengecualian Pengedali Pengecualian E1 adalah { H3 blok pernyataan } Pengedali pengecualian E3 adalah { H4 blok pernyataan }

3.3.1. Rekabentuk dan Implimentasi Mula B { blok pernyataan } Pengendali pengecualian bagi E1 adalah H3 Pengendali pengecualian bagi E2 adalah H2 Pengendali pengecualian bagi E3 adalah H4 Tamat B   Mula Pengendali pengecualian bagi E1 adalah H1 Subaturcara B Tamat A Model seperti ini diimplemenkan dalam Ada

3.3.1. Rekabentuk dan Implimentasi Pengendali pengecualian ialah suatu subprogram di luar skop subaturcara yng boleh memberikan isyarat pengeculiannya  komunikasi dilakukan melalui parameter. Pengikatan pengecualain kepada pengendalinya dilakukan melalui pernyataan perlaksanaan yang bersifat seperti pernyataan umpukan. Contoh pseudo kod: Subaturcara A E1, E2 : Pengecualian Subaturcara B E3 : Pengecualian  

3.3.1. Rekabentuk dan Implimentasi Mula B Pengendali pengecualian bagi E1 adalah H1 (pertama) atau H4 (kedua) Pengendali pengecualian bagi E2 adalah H2 (pertama) atau H5 (kedua) Ikat Pengecualian E3 kepada { H3 blok pernyataan } Pengendali pegeculaian bagi E3 adalah H3 Tamat; B

3.3.1. Rekabentuk dan Implimentasi Mula A Ikat pegecualian E1 kepada { H1 blok pernyataan } Pengendali pengecualian E1 adalah H1 Ikat pengecualian E2 kepada { H2 blok pernyataan } Pengendali pengecualian E2 adalah H2 Subaturcara B Ikat pengecualian E1 kepada { H4 blok pernyataan } Pengendali pengecualian bagi E1 adalah H4 { H5 blok pernyataan } Pengendali pengecualian bagi E2 adalah H5 Tamat; A

3.3.1. Rekabentuk dan Implimentasi Dalam contoh sebelum ini, pengecualian E1 dan E2 mempunyai ikatan yang berbeza dalam panggilan pertama dan kedua Selepas isyarat pengecualian diberikan dan dikendalikan oleh pengendali penecualian , kawalan perlaksanaan akan dipindahkan kepada bahagian lain di dalam aturcara ataupun mungkin ditamatkan. Kes di mana perlaksanaan aturcara diteruskan selepas pengecualian  penyambungan pengecualian (continuation of the exception). Ada dua pendekatan bagaimana penyambungan ini dilakukan: Model pengembalian (Resumption model Model Penamatan (Termination Model)

3.3.1. Rekabentuk dan Implimentasi Model pengembalian (Resumption model) – Kawalan dikemballikan kepada subaturcara yang memberikan isyarat pengecualian Dalam kes ini, pengendali pengecualian boleh membuat pembaikan sewajarnya supaya perlaksanaan boleh diteruskan Ada dua pilihan bagaimana perlaksanaan aturcara diteruskan; samada dengan melaksanakan semula pernyataan yang menimbulkan pengecualian, atau melaksanakan pernyataan selepas pernyataan yang menimbulkan pengecualian Walaupun kaedah ini fleksibel dan menjadikan aturcara lebih berkuasa, ia boleh menggalakkan amalan pengaturcaraan yang tidka selamat. Pendekatan ini diimplemenkan dalam bahasa PL/1 dan Mesa

3.3.1. Rekabentuk dan Implimentasi Model Penamatan (Termination Model) – Menamatkan perlaksanaan subaturcara yang menimbulkan isyarat pengecualian dan mengembalikan kawalan kepada subaturcara yang memanggil Pendekatan ini merupakan yang paling mudah, dan paling baik bagi kebanyakan keadaan pengecualian Pendekatan ini diimplemenkan oleh bahasa Bliss, CLU, ML, dan Ada.