Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Software Requirements
Software Requirements - adopted & adapted from I. Sommerville, 2004
2
Software Requirements - adopted & adapted from I. Sommerville, 2004
Tujuan Memperkenalkan konsep kebutuhan sistem dan user Menjelaskan kebutuhan fungsional dan non fungsional Menjelaskan bagaimana kebutuhan perangkat lunak di organisasikan pada dokumentasi perangkat lunak Software Requirements - adopted & adapted from I. Sommerville, 2004
3
Software Requirements - adopted & adapted from I. Sommerville, 2004
Topik Functional and non-functional requirements User requirements System requirements Interface specification The software requirements document Software Requirements - adopted & adapted from I. Sommerville, 2004
4
Software Requirements - adopted & adapted from I. Sommerville, 2004
Rekayasa Kebutuhan Proses memberikan layanan mengenai apa yang dibutuhkan customer dari sebuah sistem dan semua kendalanya ketika dioperasikan dan dikembangkan Kebutuhan adalah deskripsi dari layanan sistem dan kendalanya yang dihasilkan selama proses rekayasa kebutuhan Software Requirements - adopted & adapted from I. Sommerville, 2004
5
Software Requirements - adopted & adapted from I. Sommerville, 2004
Apa itu kebutuhan ? Abstraksi High-level dari sebuah layanan dan kendala atau batasan sistem sampai dengan kebutuhan fungsional matematis Kebutuhan yang tidak dapat dihindari melayani fungsi sebagai berikut : dasar Bid contract ( Open interpretation ) Dasar dari isi kontrak itu sendiri ( detail ) Statement diatas dapat disebut requirement Software Requirements - adopted & adapted from I. Sommerville, 2004
6
Requirements abstraction (Davis)
Software Requirements - adopted & adapted from I. Sommerville, 2004
7
Software Requirements - adopted & adapted from I. Sommerville, 2004
Tipe dari Requirement User requirements Persyaratan pengguna adalah pernyataan, biasanya dalam bahasa natural (mis. Bahasa Inggris, Indonesia, dsb.) dan dapat ditambahkan diagram, tentang layanan yang diharapkan untuk disediakan oleh sistem dan tentang batasan operasi sistem tersebut System requirements Persyaratan sistem menjelaskan fungsi-fungsi sistem, layanan-layanan sistem, dan batasan operasional sistem secara rinci. Dokumen persyaratan sistem (kadang-kadang disebut dengan spesifikasi fungsional) seharusnya tepat dan teliti. Dia semestinya mendefinisikan secara pasti apa yang akan diimplementasikan. Dia bisa menjadi bagian dari kontrak antara pembeli sistem dan pengembang sistem. Software Requirements - adopted & adapted from I. Sommerville, 2004
8
Software Requirements - adopted & adapted from I. Sommerville, 2004
Pembaca Requirements Software Requirements - adopted & adapted from I. Sommerville, 2004
9
Definisi dan spesifikasi
Software Requirements - adopted & adapted from I. Sommerville, 2004
10
Requirement fungsional dan non fungsional
Persyaratan Fungsional pernyataan-pernyataan tentang layanan yang harus disediakan sistem, bagaimana seharusnya sistem bereaksi terhadap masukan tertentu, dan bagaimana seharusnya sistem berperilaku dalam situasi-situasi tertentu. Pada beberapa kasus, pernyataan fungsional dapat juga menyatakan secara eksplisit apa yang tidak seharusnya dikerjakan oleh sistem. Persyaratan Non-fungsional Ini adalah batasan-batasan (constraints) pada layanan atau fungsi yang disediakan oleh sistem. Mereke meliputi batasan waktu (timing constraints), batasan pada proses pengembangan dan standar yang digunakan. Persyaratan non-fungsional sering berlaku pada sistem secara keseluruhan. Mereka tidak biasanya hanya berlaku pada fitur atau layanan tertentu secara individu. Persyaratan Domain Ini adalah persyaratan yang berasal dari domain aplikasi dari sistem dan mencerminkan karakteristik dan batasan-batasan domain tersebut. Ketika dijabarkan, persyaratan domain dapat berupa persyaratan fungsional ataupun persyaratan non-fungsional. Software Requirements - adopted & adapted from I. Sommerville, 2004
11
Software Requirements - adopted & adapted from I. Sommerville, 2004
Kebutuhan fungsional Menjelaskan fungsionalitas atau layanan sistem Tergantung dari tipe software,user yang diharapkan dan tipe dari sistem dimana software akan digunakan Fungsional user requirement dapat berupa statement high level tapi fungsional sistem requirement harus dijabarkan layanan dari sistem tersebut secara detail Software Requirements - adopted & adapted from I. Sommerville, 2004
12
The LIBSYS system ( user requirement)
Sistem perpustakaan yang menyediakan interface ke beberapa database artikel pada perpustakaan lain. User dapat melakukan pencarian, download dan cetak artikel tersebut untuk belajar personal Software Requirements - adopted & adapted from I. Sommerville, 2004
13
Contoh system functional requirements
User harus bisa melakukan search pada beberapa kelompok database atau memilih salah satu nya. Sistem harus menyediakan “appropriate viewers” untuk user ketika membaca document pada media penyimpan document Setiap order harus dialokasikan sebuah Unique identifier ( ORDER_ID) dimana user akan mampu untuk mengkopi ke account media penyimpanan user Software Requirements - adopted & adapted from I. Sommerville, 2004
14
Ketidak tepatan requirement
Masalah muncul ketika kebutuhan tidak dijabarkan secara tepat Kebutuhan yang bersifat ambigu di interprestasikan berbeda antara pengembang dan pengguna Lihat kata pada slide 13 =‘appropriate viewers’ Keinginan user- Viewer untuk beberapa macam dokumen Interprestasi Developer – hanya menyediakan text viewer yang menunjukkan isi dari dokument Software Requirements - adopted & adapted from I. Sommerville, 2004
15
Kelengkapan dan konsistensi requirement
Pada prinsipnya, spesifikasi persyaratan fungsional seharusnya lengkap dan konsisten. Kelengkapan (completeness) berarti seluruh layanan yang dibutuhkan pengguna harus didefinisikan. Konsistensi (consistency) bermakna persyaratan-persyaratan tidak boleh memiliki definisi-definisi yang kontradiktif. Pengaruh banyaknya stakeholders dapat menyebabkan permasalahan ini muncul Dalam kenyataan, untuk projek berukuran besar dan kompleks, tidak mungkin kelengkapan dan konsistensi tercapai sepeuhnya Salah satu penyebabnya adalah kesalahan dalam menulis persyaratan untuk projek besar dan kompleks mudah sekali terjadi. Sebab lainnya adalah pemangku kepentingan (stakeholders) yang berbeda dapat memiliki kebutuhan yang berbeda, atau bahkan bertentangan satu sama lain Software Requirements - adopted & adapted from I. Sommerville, 2004
16
Non-functional requirements
Persyaratan non-ungsional adalah persyaratan yang tidak secara langsung terkait dengan fungsi-fungsi tertentu yang dimiliki oleh sistem. Persyaratan ini mendefinisikan properti dan batasan sistem, misalnya reliability, waktu respon, dan persyaratan kapasitas penyimpanan. Persyaratan proses juga dapat dispesifikasikan untuk mengharuskan sistem CASE, bahasa pemrograman, atau metode pengembangan tertentu. Persyaratan non-fungsional bisa lebih kritis daripada persyaratan fungsional. Sebagai contoh, persyaratan keselamatan (safety) tertentu pada sistem control pesawat terbang. Jika persyaratan ini tidak dipenuhi, sistem tidak dapat atau tidak boleh digunakan. Software Requirements - adopted & adapted from I. Sommerville, 2004
17
Klasifikasi Non-functional
Product requirements Requirement yang menspesifikasikan perilaku produk harus berjalan dengan syarat tertentu e.g kecepatan exekusi, reliabily dsb Organisational requirements Requirement yang memiliki konsekuensi terhadap aturan dan prosedur organsasi .e.g SOP, implementasi , dsb External requirements Requirement yang muncul karena faktor dari external sistem dan proses pengembangannya e.g Sistem harus beroperasi sesuai hukum ,dsb Software Requirements - adopted & adapted from I. Sommerville, 2004
18
Tipe Non-functional requirement
Software Requirements - adopted & adapted from I. Sommerville, 2004
19
Contoh Non-functional requirements
Product requirement Interface user pada LIBSYS harus dapat diimplemntasikan dengan HTLM tanpa frames atau java Applets Organisational requirement Proses pengembangan sistem dan dokumen yang harus memenuhi proses dan pengembangan yang didefiniskan pada External requirement Sistem harus tidak membuka seluruh informasi personal tentang customers selain nama dan nomor referensi untuk operator sistem Software Requirements - adopted & adapted from I. Sommerville, 2004
20
Goals dan requirements
Nong-functional requirement mungkin akan sangat sulit untuk dinyatakan secara tepat dan requirement yang tidak tepat akan sangat sulit untuk di verifikasi Goal Maksud dari user secara umum ex: kemudahan penggunaan Verifiable non-functional requirement Pernyataan yang menggunakan pengukuran tertentu yang dapat di tes secara obyektif Goals sangat membantu pengembang ketika user menyampaikan maksud dari sistem user Software Requirements - adopted & adapted from I. Sommerville, 2004
21
Software Requirements - adopted & adapted from I. Sommerville, 2004
Contoh A system goal Sistem harus mudah untuk digunakan dengan metode/penguna yang sudah umum dan di organsiasikan sehingga kesalahan pengguna dapat diminimalisasikan A verifiable non-functional requirement Pengguna yang sudah umum harus mampu untuk menggunakan semua fungsi sistem setelah menempu 2 jam pelatihan. Setelah pelatihan, jumlah rata-rata kesalahan yang dialami user harus tidak lebih dari 2 kesalahan per hari Software Requirements - adopted & adapted from I. Sommerville, 2004
22
Software Requirements - adopted & adapted from I. Sommerville, 2004
Pengukuran kebutuhan Software Requirements - adopted & adapted from I. Sommerville, 2004
23
Interaksi requirement
Konflik antara perbedaan requirement non-fungsional pada sebuah sistem yang kompleks Spacecraft system Untuk mengurangi beban, jumlah dari chips harus diminimalisasikan Untuk mengurangi konsumsi daya, chips yang hemat daya harus digunakan Menggunakan low power chips artinya harus memperbanyak jumlah chip . Mana requirement yang lebih kritikal ? Software Requirements - adopted & adapted from I. Sommerville, 2004
24
Software Requirements - adopted & adapted from I. Sommerville, 2004
Domain requirements Diturunkan dari aplikasi domain dan menyjelaskan karakteristik dan fitur yang merefleksikan domain Domain requirement akan menjadi fungsional requirement yang baru, kendala pada requirement yang existing atau mendefinisikan komputasi yang spesifik Jika domain requirement tidak dipenuhi, sistem mungkin tidak dapat bekerja Software Requirements - adopted & adapted from I. Sommerville, 2004
25
Library system domain requirements
Harus ada user interface standar pada semua database yang harus mengacu pada standar Z39.50 Karena ada aturan copyright, dokument harus dihapus segera setelah di ambil. Tergantung pada kebutuhan user, dokumen ini akan di cetak, yang akan mem- forward user untuk menggunakan network printer di LAN Software Requirements - adopted & adapted from I. Sommerville, 2004
26
Train protection system
Perlambatan kereta dihitung sebagai berikut : Dtrain = Dcontrol + Dgradient where Dgradient is 9.81ms2 * compensated gradient/alpha and where the values of 9.81ms2 /alpha are known for different types of train. Software Requirements - adopted & adapted from I. Sommerville, 2004
27
Masalah Domain requirements
Understandability Requirement di ekspresikan dengan bahasa domain tersebut berada Tidak dipahami oleh pengembang dari sistem Implicitness Domain spesialis memahami area tersebut secara detail sehingga tidak berpikir untuk membuat domain requirement lebih explicit Software Requirements - adopted & adapted from I. Sommerville, 2004
28
Software Requirements - adopted & adapted from I. Sommerville, 2004
User requirements Harus menjelaskan fungsional dan non fungsional requirement dengan cara tertentu yang membuat pengguna sistem paham meski tidak memiliki pengetahuan bidang tersebut secara detail User requirement didefinsikan menggunakan bahasa naturalm tabel, dan diagram yang mudah dipahami oleh semua Software Requirements - adopted & adapted from I. Sommerville, 2004
29
Problems with natural language
Ketidak jelasan Kejelasan sangat sulit tanpa harus membuat dokument sangat sulit untuk dipahami Requirements confusion Fungsional dan non fungsional requirement sering tercampur Software Requirements - adopted & adapted from I. Sommerville, 2004
30
Software Requirements - adopted & adapted from I. Sommerville, 2004
LIBSYS requirement 4..5 LIBSYS shall provide a financial accounting system that maintains records of all payments made by users of the system. System managers may configure this system so that regular users may receive discounted rates. Software Requirements - adopted & adapted from I. Sommerville, 2004
31
Editor grid requirement
2.6 Grid facilities To assist in the positioning of entities on a diagram, the user may turn on a grid in either centimetres or inches, via an option on the control panel. Initially, the grid is off. The grid may be turned on and off at any time during an editing session and can be toggled between inches and centimetres at any time. A grid option will be provided on the reduce-to-fit view but the number of grid lines shown will be reduced to avoid filling the smaller diagram with grid lines. Software Requirements - adopted & adapted from I. Sommerville, 2004
32
Software Requirements - adopted & adapted from I. Sommerville, 2004
Requirement problems Database requirement termasuk didalamnya konseptual dan informasi yang detail Menjelaskan konsep dari accountung system yang termasuk dalam libsys Juga termasuk didalamnya detail dari manager yang mampu mengkonfigurasi sistem yang harusnya tidak perlu pada level ini Grid requirement mixes three different kinds of requirement Conceptual functional requirement (the need for a grid); Non-functional requirement (grid units); Non-functional UI requirement (grid switching). Software Requirements - adopted & adapted from I. Sommerville, 2004
33
Structured presentation
Software Requirements - adopted & adapted from I. Sommerville, 2004
34
Guidelines for writing requirements
Temukan format standar dan gunakan pada semua requirement Gunakan bahasa dengan konsisten. Gunakan ‘harus’ untuk requirement yang vital , sebaiknya untuk kebutuhan yang diinginkan Text highlite untuk indentifikasi bagian kunci dari requrement Hindari penggunakan jargon komputer Software Requirements - adopted & adapted from I. Sommerville, 2004
35
Software Requirements - adopted & adapted from I. Sommerville, 2004
System requirements Spesifikasi yang lebih detail dari fungsi dan layanan sistem, juga hambatan dari user requirement Dimaksudkan untuk menjadi dasar desain sistem Mungkin Tergabung dalam kontrak Sistem requirement mungkin dapat di ilustrasikan menggunakan sistem model Software Requirements - adopted & adapted from I. Sommerville, 2004
36
Requirements and design
Prinsipnya, requirement harus menjabarkan apa yang sistem harus lakukan dan desain harus menjelaskan bagaimana sistem tersebut bekerja Prakteknya, requirement dan desain tidak dapat dipisahkan Arsitektur sistem didesain berdasar struktur dari requirement Penggunakan desain spesifik mungkin diambil dari requirement domain Software Requirements - adopted & adapted from I. Sommerville, 2004
37
Problems with NL specification
Ambiguity The readers and writers of the requirement must interpret the same words in the same way. NL is naturally ambiguous so this is very difficult. Over-flexibility The same thing may be said in a number of different ways in the specification. Lack of modularisation NL structures are inadequate to structure system requirements. Software Requirements - adopted & adapted from I. Sommerville, 2004
38
Alternatives to NL specification
Software Requirements - adopted & adapted from I. Sommerville, 2004
39
Structured language specifications
Kebebeasan penulis requirement dibatasi oleh template yang ditetapkan pada requirement Semua requirement dituliskan dengan menggunakan standard Terminologi yang digunakan dibatasi Software Requirements - adopted & adapted from I. Sommerville, 2004
40
Form-based specifications
Mendefinisikan fungsi atau entitas Deskripsi input dan darimana mereka berasal Deskripsi output dan kemana output tersebut pergi Efek samping ( jika ada ) pada fungsi Software Requirements - adopted & adapted from I. Sommerville, 2004
41
Form-based node specification
Software Requirements - adopted & adapted from I. Sommerville, 2004
42
Tabular specification
Sebagai suplement dari NL Berguna ketika kita mendefinisikan jumlah dari alternatif yang mungkin ada sebuah action Software Requirements - adopted & adapted from I. Sommerville, 2004
43
Tabular specification
Software Requirements - adopted & adapted from I. Sommerville, 2004
44
Software Requirements - adopted & adapted from I. Sommerville, 2004
Graphical models Berguna ketika kita ingin menunjukkan tingkat berubahan dari beberapa actions Software Requirements - adopted & adapted from I. Sommerville, 2004
45
Software Requirements - adopted & adapted from I. Sommerville, 2004
Sequence diagrams Menunjukkan urutan dari event yang berjalan selama user berinteraksi dengan sistme Membaca dari atas keb awah untuk melihat urutan dari actions Cash withdrawal dari mesin ATM Validate card; Handle request; Complete transaction. Software Requirements - adopted & adapted from I. Sommerville, 2004
46
Sequence diagram of ATM withdrawal
Software Requirements - adopted & adapted from I. Sommerville, 2004
47
IEEE requirements standard
Defines a generic structure for a requirements document that must be instantiated for each specific system. Introduction. General description. Specific requirements. Appendices. Index. Software Requirements - adopted & adapted from I. Sommerville, 2004
48
Software Requirements - adopted & adapted from I. Sommerville, 2004
Key points Requirements set out what the system should do and define constraints on its operation and implementation. Functional requirements set out services the system should provide. Non-functional requirements constrain the system being developed or the development process. User requirements are high-level statements of what the system should do. User requirements should be written using natural language, tables and diagrams. Software Requirements - adopted & adapted from I. Sommerville, 2004
49
Software Requirements - adopted & adapted from I. Sommerville, 2004
Key points System requirements are intended to communicate the functions that the system should provide. A software requirements document is an agreed statement of the system requirements. The IEEE standard is a useful starting point for defining more detailed specific requirements standards. Software Requirements - adopted & adapted from I. Sommerville, 2004
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.