Rpl 09 - spesifikasi formal

2,244 views

Published on

1 Comment
0 Likes
Statistics
Notes
  • Be the first to like this

No Downloads
Views
Total views
2,244
On SlideShare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
96
Comments
1
Likes
0
Embeds 0
No embeds

No notes for slide

Rpl 09 - spesifikasi formal

  1. 1. SPESIFIKASI FORMAL 1
  2. 2. Istilah ‘metode formal’ mencakup sejumlah kegiatan:• spesifikasi sistem formal,• analisis dan bukti spesifikasi,• pengembangan transformasional dan• verifikasi program.Seluruh kegiatan ini bertumpuh pada spesifikasi formalperangkat lunak. SPESIFIKASI FORMAL 2
  3. 3. Suatu spesifikasi perangkat lunakformal merupakan spesifikasi yangdinyatakan dalam bahasa yangperbendaharaan kata, sintaks, dansemantiknya didefinisikan secara formal. SPESIFIKASI FORMAL 3
  4. 4. • Rekayasa perangkat lunak yang berhasil. Penggunaan metode-metode rekayasa perangkat lunak pada proses perancangan dan pengembangan menghasilkan perbaikan kualitas perangkat lunak.• Perubahan pasar. Perangkat lunak harus dikembangkan dengan cepat dan pelanggang seringkali bersedia menerima perangkat lunak dengan beberapa kesalahan, asalkan penyerahan yang cepat dapat dilakukan.. SPESIFIKASI FORMAL 4
  5. 5. • Lingkup yang terbatas dari metode formal. Pada umumnya metode formal tidak sesuai untuk menspesifikasi interface user dan interaksi user.• Skala metode formal yang terbatas. Skala metode formal tidak bertambah dengan baik. Masalah ini diperburuk dengan ketiadaannya dukungan alat bantu untuk teknik-teknik ini. SPESIFIKASI FORMAL 5
  6. 6. Terdapat tiga tingkat spesifikasiperangkat lunak yang dapatdikembangkan. Tingkat-tingkat iniadalah persyaratan user, persyaratansistem, dan spesifikasi desain perangkatlunak. SPESIFIKASI FORMAL 6
  7. 7. Bertambahnya keterlibatan kontraktor Berkurangnya keterlibatan klien Definisi Spesifikasi Desain Desain Spesifikasipersyaratan persyaratan tingkat arsitektural formal user sistem tingi Spesifikasi Desain menunjukkan tahap-tahap spesifikasi perangkat lunak dan interfacenya dengan proses perancangan SPESIFIKASI FORMAL 7
  8. 8. Tahap akhir proses, yang merupakanpembuatan spesifikasi yang lengkap,konsisten, dan tepat, pada prinsipnyaditujukan untuk kontraktor perangkat lunak. Spesifikasi ini berfungsi sebagai dasarimplementasi sistem. Spesifikasi yang tepatini bias merupakan spesifikasi formal. SPESIFIKASI FORMAL 8
  9. 9. Spesifikasi Spesifikasi persyaratan sistem formal Desain tingkat Definisi tinggipersyaratan user Pemodelan Desain sistem arsitektural kegiatan spesifikasi dan perancangan dapat dilakukan secara parallel SPESIFIKASI FORMAL 9
  10. 10. Ada hubungan dua arah antara setiaptahap pada proses. Informasi diberikan darispesifikasi ke proses perancangan dansebaliknya. Walaupun spesifikasi telahdikembangkan dengan rinci, pemahamandalam membuat spesifikasi mengenaispesifikasi itu akan bertambah. SPESIFIKASI FORMAL 10
  11. 11. • Pembuatan spesifikasi formal memaksakan terjadinya analisis sistem rinci yang biasanya menggunakan error dan ketidak konsistenan pada spesifikasi persyaratan informal.• Deteksi error ini merupakan argumen yang paling ampuh untuk mengembangkan spesifikasi formal ( Hall, 1990).• Masalah persyaratan yang tetap tidak terdeteksi samapai tahap tahap berikutnya pada proses perangkat lunak biasanya mahal untuk diperbaiki. SPESIFIKASI FORMAL 11
  12. 12. biaya proses perangkat lunak dipengaruhi oleh penggunaan spesifikasi formal SPESIFIKASI FORMAL 12
  13. 13. Dengan spesifikasi formal, biaya spesifikasi danimplementasi dapat dibandingkan dan biaya validasisistem berkurang secara signifikan. Pekerjaan pengembangan spesifikasi formalmampu mengatasi masalah persyaratan, pekerjaanulang untuk membetulkan masalah ini setelah systemdirancang akan terhindari. SPESIFIKASI FORMAL 13
  14. 14. • Pendekatan aljabar, d mana system dikembangkan dalam hal operasi dan hubungannya• Pendekatan berbasis model, di mana model system dibangun dengan menggunakan konstruksi matematik seperti himpunan dan deret, dan operasi system didefinisikan dengan bagaimana operasi tersebut mengubah status system. SPESIFIKASI FORMAL 14
  15. 15. Sekuensial Konkuren Larch (guttag et al., 1985, 1993 Lotos (Bolognesi danAljabar OBJ (Futatsugi et al., 1985) Brinksma, 1987 Z (Spivey, 1992) CSP (Hoare, 1985)Berbasis Model VDM (Jones, 1980) Petri Nets (Peterson, B (Wordsworth, 1996) 1981) contoh bahasa pada masing-masing kelas SPESIFIKASI FORMAL 15
  16. 16. Spesifikasi interface subsistem yang tepatpenting karena pengembang subsistem harusmenulis kode yang memakai layanansubsistem lain sebelum implementasi. Spesifikasi interface memberikaninformasi untuk pengembang subsistemsehingga mereka tahu layanan apa yang akantersedia pada subsistem lain dan bagaimanaaksesnya. SPESIFIKASI FORMAL 16
  17. 17. Subsistem Subsistem A B data dan operasi yang dapat diakses melalui interface subsistem SPESIFIKASI FORMAL 17
  18. 18. SPESIFIKASI FORMAL 18
  19. 19. • Pendahuluan yang mendeklarasikan sort (nama tipe) entitas yang dispesifikasi. Sort merupakan himpunan objek. Sort biasanya diimplementasikan sebagai tipe.• Bagian deskripsi di mana operasi dideskripsikan secara informal.• Bagian signature mendefinisikan sintaks interface ke kelas objek atau tipe data abstrak.• Bagian aksioma yang mendefinisikan semantic operasi dengan mendefiniskan satu set aksioma yang mencirika perilaku tipe data abstrak. SPESIFIKASI FORMAL 19
  20. 20. • Penstrukturan spesifikasi. Organisasikan spesifikasi interface informal menjadi satu set tipe data abstrak atau kelas objek.• Penamaan spesifikasi. Tetapkan nama untuk setiap spesifikasi tipe abstrak, putuskan apakah spesifikasi tersebut membutuhkan parameter generic dan tentukan nama untuk sort yang teridentifikasi.• Pemilihan operasi. Pilih satu set operasi untuk setiap spesifikasi berdasarkan fungsionalitas interface yang teridentifikasi. SPESIFIKASI FORMAL 20
  21. 21. • Spesifikasi operasi informal. Tuliskan spesifikasi informal setiap operasi.• Definisi sintaks. Definisikan sintaks operasi dan parameter bagi setiap operasi. Ini merupakan bagian signature dari spesifikasi formal.• Definisi aksioma. Definisikan semantic operasi dengan mendeskripsikan kondisi apa yang selalu true (benar) untuk berbagai kombinasi operasi. SPESIFIKASI FORMAL 21
  22. 22. Spesifikasi list sederhana SPESIFIKASI FORMAL 22
  23. 23. • Operasi konstruktor yang membuat atau memodifikasi entitas dari sort yang didefinisikan pada spesifikasi. Biasanya, ini merupakan nama yng diberikan seperti create, Update, Add atau, dalam kasus ini, Cons yang berarti konstruksi.• Operasi inspeksi (pemeriksaan) yang mengevaluasi atribut sort yang didefinisikan pada spesifikasi. Biasanya, ini merupakan nama yang diberikan yang berhubungan dengan nama atribut atau nama seperti Eval, Get, dsb. SPESIFIKASI FORMAL 23
  24. 24. • Enter. Operasi ini menambahkan sebuah pesawat (direpresentasikan oleh identifier) pada ruang udara dengan ketinggian tertentu. Tidak boleh pesawat lain pada ketinggian tersebut atau dalam jarak 300 meter darinya.• Leave. Operasi ini mengeluarkan pesawat yang bersangkutan dari sector yang dikontrol. Operasi ini dipakai ketika pesawat berpindah ke sector berikutnya.• Move. Operasi ini memindahkan pesawat dari satu ketinggian ke yang lainnya.• Lookup. Jika diketahui identitas pesawat, operasi-operasi interface pesawat pada sector tersebut. SPESIFIKASI FORMAL 24
  25. 25. • Create. Ini merupakan operasi standar untuk tipe data abstrak. Operasi ini menyebabkan dibuatnya instance kosong dari tipe tersebut.• Put. Ini merupakan versi yang lebih sederhana dari operasi enter. Operasi ini hanya menambahkan pesawat ke sector tanpa pemeriksaan batasan.• In-space. Jika diketahui sinyal panggil (call sign) pesawat, operasi Boolean ini me-return true pesawat ada di sector yang dikontrol, dan false jika tidak.• Occupied. Jika diketahui ketinggian, operasi Boolean ini me- return true jika ada pesawat dalam jarak 300 meter dengan ketinggian tersebut, dan false jika tidak. SPESIFIKASI FORMAL 25
  26. 26. • Spesifikasi Occupied menyatakan bahwa pada ruang udara yang kosong (create), suatu ketinggian selalu kosong.• Spesifikasi Move menyatakan bahwa, jika operasi move diterapkan pada ruang udara yang kosong (Create), ruang tersebut tidak berubah dan dibangkitkanlah eksepsi untuk menunjukkan bahwa pesawat yang dispesifikasi tidak ada pada ruang udara tersebut. SPESIFIKASI FORMAL 26
  27. 27. Pendekatan alternatif bagi spesifikasi formalyang telah banyak digunakan pada proyek industriadalah spesifikasi berbasis model. Spesifikasi berbasis model merupakanpendekatan terhadap spesifikasi formal di manaspesifikasi sistem dinyatakan sebagai model statussistem. Operasi sistem dispesifikasi denganmendefenisikan bagaimana operasi tersebutmempengaruhi status model sistem. Dengandemikian, perilaku sistem dapat didefinisikan. SPESIFIKASI FORMAL 27
  28. 28. Deskripsi formal dimasukkan sebagai sebagaibagian-bagian kecil dan mudah dibaca (disebutskema) yang di bedakan dari test yang berhubungandengan menggunakan highlight grafis. Skemadigunakan untuk mengenalkan variabel status danmendefenisikan batasan dan operasi pada status. SPESIFIKASI FORMAL 28
  29. 29. SPESIFIKASI FORMAL 29
  30. 30. • Rakitan jarum. Dihubungkan ke pompa. Komponen ini digunakan untuk memasukkan insulin ke dalam tubuh penderita diabetes• Sensor. Mengukur tingkat glukosa darah user. Input dari sensor direpresentasikan oleh reading pada spesifiksi formal.• Pompa. memompa insulin dari reserfoir ke rakitan jarum. Nilai yang menunjukkan jumlah bagian insulin yang harus diberikan direpresentasikan oleh dosen pada spesifiksi formal• Kontroler. Mengontrol seluruh titik. Kontroler ini memiliki saklar on/off ditambah tombol overide (mengesampingkan), ditambah tombol ntuk menentukan jumlah yang akan diberikan. SPESIFIKASI FORMAL 30
  31. 31. • Alarm. Berbunyi jika ada masalah. Nilai yang dikirim ke alarm direfresentasikan oleh alarm ! pada spesifikasi berikut ini.• Displai. Ada dua displai. Yang satu menunjukkan pembacaan gula darah yang terakhir diukur, yang lainnya menampilkan massage.• Jam. Menginformasikan waktu saat itu untuk kontoler SPESIFIKASI FORMAL 31
  32. 32. SPESIFIKASI FORMAL 32
  33. 33. • reading? Ini merupakan bilangan asli (yaitu, bilangan bulat non-negatif ) yang merepresentasikan pembacaan dari sensor glukosa darah . ini merupakan nilai input .• Dose, cumulative _dose ini juga merupakan bilangan asli yang mempresrentasikan dosis insulin yang akan diberikan dan dosis komulatif yang telah diberikan selama periode waktu tertentu.• R0, R1,R2, ini mereplesentasikan tiga pembacaan terakhir dan dipakai untuk menghitung kecepatan perubahan glokusa darah.• Capacity bilangan asli yang merepresentasikan kapasitas resevoir insulin pada pompa . SPESIFIKASI FORMAL 33
  34. 34. SPESIFIKASI FORMAL 34
  35. 35. • Alarm! Output ini merepresentasikan alarm pada mesin yang memberi sinyal kondisi epsepsi• Punp! Ini merupakan bilangan asli yang mereplesentasikan sinyal kontrol yang dikirimkan kerakitan pompa fisik. Ini merupakan nilai output.• Display1! Display2! Nilai-nilai output dengan tipe string ini merepresentasikan dua display test pada pompa insulin. Satu display ( display 1) dipakai untuk menampilkn pesan test, yang lainnya(display 2) dipakai untuk menunjukkan dosis insulin yang diberikan SPESIFIKASI FORMAL 35
  36. 36. Penekanan masalah yang harusdiselesaikan merupakan suatukeuntungan utama dari peggunaanspesifikasi formal. Dengan spesifikasiinformal, konflik ini lebih mudahterlewatkan dan harus ditangani padatahap berikutnya dari prosespengembangan. SPESIFIKASI FORMAL 36
  37. 37. SPESIFIKASI FORMAL 37

×