template dokumen analisis dan perancangan pl ti tel-u 2015 (object oriented)
TRANSCRIPT
DOKUMEN PEMBANGUNAN PERANGKAT LUNAK
Pendekatan berorientasi Objek
<Nama Perangkat Lunak>
untuk:
<Nama User>
Dipersiapkan oleh:
<Nomor Grup & Anggota>
Program Studi Teknik IndustriFakultas Rekayasa Industri
Telkom University
<Tahun>
Daftar Isi1 Bab 1 Pendahuluan................................................................................................................................... 4
1.1 Tujuan Penulisan Dokumen............................................................................................................... 41.2 Lingkup Masalah............................................................................................................................... 41.3 Aturan Penomoran............................................................................................................................. 41.4 Referensi........................................................................................................................................... 41.5 Deskripsi Umum Dokumen (Ikhtisar)................................................................................................4
2 Bab 2 Kebutuhan Perangkat Lunak...........................................................................................................42.1 Deskripsi Umum Sistem.................................................................................................................... 42.2 Fitur Utama Perangkat Lunak............................................................................................................4
2.2.1 Kebutuhan Fungsional............................................................................................................... 42.2.2 Kebutuhan Non Fungsional........................................................................................................ 4
2.3 Model Use Case................................................................................................................................ 42.3.1 Diagram Use Case..................................................................................................................... 42.3.2 Definisi Actor............................................................................................................................ 52.3.3 Definisi Use Case...................................................................................................................... 52.3.4 Skenario Use Case..................................................................................................................... 5
2.4 Spesifikasi Tambahan........................................................................................................................ 72.5 Glossary............................................................................................................................................ 7
3 Model Analisis.......................................................................................................................................... 83.1 Realisasi Use Case Tahap Analisis....................................................................................................83.2 Kelas Analisis................................................................................................................................... 8
3.2.1 Tanggung-Jawab dan Atribut.....................................................................................................93.2.2 Asosiasi dan Agregasi................................................................................................................ 93.2.3 Generalisasi............................................................................................................................... 93.2.4 Kebutuhan Khusus..................................................................................................................... 9
3.3 Paket Analisis................................................................................................................................... 93.3.1 Identifikasi Paket Analisis.........................................................................................................93.3.2 Identifikasi Kelas Analisis tiap Paket.......................................................................................10
3.4 Prototipe Antarmuka....................................................................................................................... 103.5 Deskripsi Arsitektur......................................................................................................................... 103.6 Pedoman Perancangan..................................................................................................................... 11
4 Model Perancangan................................................................................................................................. 124.1 Realisasi Use Case Tahap Perancangan...........................................................................................124.2 Kelas Perancangan.......................................................................................................................... 12
4.2.1 Operasi dan Atribut.................................................................................................................. 134.2.2 Asosiasi dan Agregasi.............................................................................................................. 134.2.3 Generalisasi............................................................................................................................. 134.2.4 Algoritma/Query...................................................................................................................... 134.2.5 Diagram Statechart.................................................................................................................. 144.2.6 Kebutuhan Khusus................................................................................................................... 14
4.3 Perancangan Subsistem................................................................................................................... 144.3.1 Subsistem Pendukung.............................................................................................................. 144.3.2 Subsistem Aplikasi.................................................................................................................. 144.3.3 Identifikasi Kelas Perancangan tiap Subsistem.........................................................................15
4.4 Perancangan Antarmuka.................................................................................................................. 164.5 Coding Standard dan Naming Convention.......................................................................................164.6 Deployment Diagram...................................................................................................................... 16
5 Implementasi.......................................................................................................................................... 185.1 Implementasi Komponen................................................................................................................. 185.2 Implementasi Subsistem.................................................................................................................. 185.3 Implementasi Antarmuka................................................................................................................ 19
6 Pengisian Bab VI Pengujian.................................................................................................................... 206.1 Rencana dan Prosedur Pengujian.....................................................................................................20
6.1.1 Rencana Pengujian................................................................................................................... 206.1.2 Prosedur Pengujian.................................................................................................................. 20
6.2 Kasus Uji........................................................................................................................................ 206.2.1 Pengujian Use Case <nama use case>......................................................................................20
6.3 Defect dan Status Perbaikan............................................................................................................216.4 Evaluasi Pengujian.......................................................................................................................... 21
7 Pengisian Lampiran................................................................................................................................ 21
Halaman 2/ dari 15 halaman
Halaman 3/ dari 15 halaman
1 Bab 1 Pendahuluan
1.1 Tujuan Penulisan Dokumen
Bagian ini diisi dengan uraian ringkas mengenai isi dokumen, tujuan pembuatan dokumen, dan target pembaca dokumen ini.
1.2 Lingkup Masalah
Bagian ini diisi dengan nama aplikasi dan deskripsinya secara jelas dan ringkas.
1.3 Aturan Penomoran
Bagian ini diisi dengan aturan penomoran yang digunakan dalam dokumen.
1.4 Referensi
Bagian ini diisi dengan daftar Buku, Panduan, atau Dokumentasi lain yang digunakan sebagai referensi dalam pembuatan dokumen dan dalam pengembangan perangkat lunak..
1.5 Deskripsi Umum Dokumen (Ikhtisar)
Bagian ini diisi dengan sistematika pembahasan dokumen ini.
2 Bab 2 Kebutuhan Perangkat Lunak
2.1 Deskripsi Umum Sistem
Bagian ini diisi dengan System Overview, dalam bentuk gambar dan narasi yang dapat memberikan gambaran tentang aplikasi dan konteksnya (harus jelas batasan dan keterkaitan antara sistem yang akan dibangun dengan sistem lain di luarnya). Deskripsi umum sistem perlu dilengkapi pula dengan pemodelan kasus yang dihadapi.
2.2 Fitur Utama Perangkat Lunak
Bagian ini diisi dengan fitur utama perangkat lunak, yang terdiri dari kebutuhan fungsional dan kebutuhan non fungsiona.
2.2.1 Kebutuhan Fungsional
2.2.2 Kebutuhan Non Fungsional
2.3 Model Use Case
2.3.1 Diagram Use Case
Bagian ini diisi dengan diagram use case versi awal dalam UML. Lengkapi dengan uraian yang menjelaskan diagram tersebut, serta prioritas pengembangan use case.
Bagian ini diisi dengan perbaikan diagram use case (lengkapi dengan extend, uses, dan lain-lain jika perlu) dan uraiannya. Apabila pada fase ini masih ada perbaikan, daftar perubahan harus dilengkapi.
Halaman 4/ dari 15 halaman
2.3.2 Definisi Actor
Bagian ini diisi dengan daftar actor dan deskripsi role untuk actor tersebut. Bisa dibuat dalam bentuk tabel berikut:
No Actor Deskripsi
Bagian ini diisi dengan daftar actor yang telah direvisi. Apabila pada fase ini masih ada perbaikan, daftar perubahan harus dilengkapi.
2.3.3 Definisi Use Case
Bagian ini diisi dengan daftar use case dan deskripsi singkat mengenai use case tersebut. Bisa dibuat dalam bentuk tabel berikut:
No Use Case Deskripsi Aktor Yang Terlibat
Bagian ini diisi dengan daftar use case yang telah direvisi. Apabila pada fase ini masih ada perbaikan, daftar perubahan harus dilengkapi.
2.3.4 Skenario Use Case
Bagian ini diisi dengan skenario (flow of event) untuk beberapa use case utama, yang menggambarkan urutan interaksi actor dengan use case tersebut, dari awal sampai akhir.
Contoh:
Nama Use Case: ……………Skenario:
Aksi Actor Reaksi SistemSkenario Normal1
23
4Skenario Alternatif1
23
4Skenario Lain ()
Halaman 5/ dari 15 halaman
2.4 Spesifikasi Tambahan
Bagian ini diisi dengan informasi tambahan mengenai setiap atau seluruh use case, terutama mengenai kebutuhan non fungsional. Apabila pada fase ini masih ada perbaikan, daftar perubahan harus dilengkapi.
2.5 Glossary
Bagian ini diisi dengan daftar istilah yang digunakan, terutama istilah yang spesifik terhadap domain problem. Apabila pada fase ini masih ada perbaikan, daftar perubahan harus dilengkapi.
Halaman 6/ dari 15 halaman
3 Model Analisis
3.1 Realisasi Use Case Tahap Analisis
Bagian ini diisi dengan diagram kelas analisis dan sequence diagram yang menggambarkan interaksi setiap objek dari kelas analisis yang terlibat di dalam use case tersebut. Diagram kelas dan sequence diagram dibuat untuk setiap use case. Lengkapi daftar perubahan sesuai dengan tambahan informasi yang dilakukan pada fase ini.
3.2 Kelas Analisis
Bagian ini diisi dengan daftar kelas analisis dalam tabel berikut:
No Nama Kelas Jenis
Untuk setiap kelas analisis, lakukan:
identifikasi tanggung-jawab (responsibility)
identifikasi atribut
identifikasi asosiasi dan agregasi antar kelas
identifikasi generalisasi
identifikasi kebutuhan khusus untuk realisasi kelas analisis
3.2.1 Tanggung-Jawab dan Atribut
Nama Kelas Daftar Tanggung-Jawab Daftar AtributKelas xxxx 1.
2.3.
1.2.3.
3.2.2 Asosiasi dan Agregasi
Bagian ini hanya diisi jika ada.
3.2.3 Generalisasi
Bagian ini hanya diisi jika ada.
3.2.4 Kebutuhan Khusus
Bagian ini hanya diisi jika ada.
Halaman 7/ dari 15 halaman
3.3 Paket Analisis
3.3.1 Identifikasi Paket Analisis
Bagian ini diisi dengan daftar paket analisis dengan mengacu pada diagram use case. Satu atau lebih use case dapat digabung kedalam satu paket.
Contoh:No
Nama Paket Use Case Terkait Keterangan
1. Paket xxx 1.2.3.
3.3.2 Identifikasi Kelas Analisis tiap Paket
Bagian ini diisi dengan hasil identifikasi kelas analisis untuk setiap paket analisis dengan mengacu pada skenario setiap use case.
Contoh:No
Nama Paket Nama Kelas Analisis Jenis Kelas(Boundary, Control, Entity)
1 Paket xxx 1.2.3.
3.4 Prototipe Antarmuka
Bagian ini diisi dengan perbaikan prototipe antarmuka perangkat lunak dan penjelasan singkat untuk pemakaiannya. Lengkapi daftar perubahan jika terjadi perubahan.
3.5 Deskripsi Arsitektur
Bagian ini diisi dengan gambaran umum arsitektur perangkat lunak. Dengan demikian, dapat diketahui pula batasan implementasi dari perangkat lunak yang akan dikembangkan.
3.6 Pedoman Perancangan
Bagian ini diisi dengan pedoman perancangan yang perlu dituliskan.
Halaman 8/ dari 15 halaman
4 Model Perancangan
4.1 Realisasi Use Case Tahap Perancangan
Bagian ini diisi dengan diagram kelas untuk setiap use case. Selanjutnya, untuk setiap use case dibuat sequence diagram yang menggambarkan interaksi setiap objek dari kelas perancangan yang terlibat di dalam use case tersebut. Sequence diagram perlu dibuat ulang apabila ada perubahan yang cukup besar dari diagram kelas analisis menjadi diagram kelas perancangan. Lengkapi daftar perubahan.
4.2 Kelas Perancangan
Bagian ini diisi dengan daftar kelas perancangan dalam tabel berikut:
No Nama Kelas Perancangan Nama Kelas Analisis (jika ada)
Untuk setiap kelas, lakukan:
identifikasi operasi (mengacu pada tanggung-jawab kelas), termasuk visibility-nya
identifikasi atribut, termasuk visibility-nya
identifikasi asosiasi dan agregasi antar kelas
identifikasi generalisasi
untuk operasi yang kompleks, sertakan algoritmanya
identifikasi kebutuhan khusus untuk implementasi kelas
4.2.1 Operasi dan Atribut
Bagian ini diisi dengan daftar operasi dan atribut Buat untuk setiap kelas.
Nama Kelas: ……..
Nama Operasi Visibility(private, public)
Keterangan
Diisi dengan signature operasi
Nama Atribut Visibility(private, public)
Tipe
Diisi dengan nama atribut Tuliskan tipenya sesuai dengan yang dikenal pada bahasa pemrograman yang digunakan
Halaman 9/ dari 15 halaman
4.2.2 Asosiasi dan Agregasi
Bagian ini hanya diisi jika ada.
4.2.3 Generalisasi
Bagian ini hanya diisi jika ada.
4.2.4 Algoritma/Query
Bagian ini hanya diisi untuk kerangka algoritma untuk proses-proses yang dianggap cukup penting. Implementasi skeleton code juga sudah dapat dilakukan untuk kelas-kelas yang terdefinisi pada bahasa pemrograman tertentu
Contoh:Nama Kelas :Nama Operasi :Algoritma : (Algo-xxx)
{Jika mengacu query tertentu, lengkapi tabel query di bawah}Query :No Query Query KeteranganQ-xxx Tuliskan fungsi dari querynya
4.2.5 Diagram Statechart
Bagian ini hanya diisi jika ada kelas yang kompleks. Perubahan status kelas tersebut harus digambarkan dalam bentuk diagram statechart.
4.2.6 Kebutuhan Khusus
Bagian ini hanya diisi jika ada.
4.3 Perancangan Subsistem
Bagian ini diisi dengan gambar subsistem pendukung dan subsistem aplikasi dalam bentuk lapisan aplikasi (application layer) serta gambar diagram package yang menggambarkan ketergantungan antar subsistem (berbeda dengan diagram package analisis yang hanya berisi paket analisis saja, tanpa subsistem pendukung).
4.3.1 Subsistem Pendukung
Identifikasi subsistem yang akan digunakan untuk PL ini, misalnya:
aplikasi lain yang akan dimanfaatkan
middleware dan software-system yang akan digunakan
Halaman 10/ dari 15 halaman
Bagian ini diisi dengan daftar subsistem pendukung dan alokasinya pada node yang telah teridentifikasi. Mis. dengan melengkapi tabel berikut:
No Subsistem Pendukung Alokasi Node
4.3.2 Subsistem Aplikasi
Bagian ini diisi dengan hasil identifikasi subsistem yang bersifat application-specific, dengan mengacu pada hasil identifikasi paket analisis dan diagram paket, termasuk apabila ada subsistem yang akan di-reuse (dari yang sudah ada sebelumnya). Sertakan pula alokasi subsistem tersebut pada node yang telah teridentifikasi. Boleh dibuat dalam bentuk tabel seperti berikut:
No
Nama Subsistem Paket Analisis terkait (jika ada) Alokasi Node
1. Subsistem xxx
4.3.3 Identifikasi Kelas Perancangan tiap Subsistem
Bagian ini diisi dengan identifikasi kelas perancangan untuk setiap subsistem di atas, dengan mengacu pada kelas analisis.
Contoh:No
Nama Subsistem Nama Kelas Perancangan Nama Kelas Analisis (jika ada)
1 Subsistem xxx 1.2.3.
4.4 Perancangan Antarmuka
Bagian ini diisi dengan hasil identifikasi rancangan antarmuka aplikasi disini. Apabila tidak ada perubahan dari prototipe antarmuka di bab sebelumnya, cukup diacu nomornya saja. Misalnya dengan melengkapi tabel berikut:
No Use Case Antarmuka Nama Kelas1 {diisi dengan nama use case yang
langsung berhubungan dengan actor, sehingga perlu dibuat antarmukanya}
{disi dengan no. layar atau no. gambar rancangan antarmuka}
{disi dengan nama kelas untuk implementasi antarmuka}
Selanjutnya, untuk setiap antarmuka/layar, tuliskan spesifikasi detilnya, misalnya seperti di bawah ini:
Antarmuka : {diisi dengan no. layar atau no gambar rancangan antarmuka}
Id_Objek Jenis Nama KeteranganDiisi dengan string yg tampil pd layar
Diisi dengan penjelasan reaksi sistem, misalnya membuka layar apa, link kemana. Jika menyangkut suatu kode yang cukup rumit, acu algoritma yang telah diuraikan di atas.
Halaman 11/ dari 15 halaman
Id_Objek Jenis Nama KeteranganButton1 Button OK Jika diklik, akan mengaktifkan Proses AlgoXXX.RTF1 RTF Box Isi Teks yang disimpan pada File xxxDB1 Data
controlDiasosiasikan ke QueryXYZ dengan mengacu query uang telah diuraikan di atas.
Jika objek dikaitkan ke File lain (misalnya file gambar, file teks), berikan nama file terkait dan deskripsi ringkas dalam kolom keterangan
4.5 Coding Standard dan Naming Convention
Bagian ini diisi dengan versi final dari coding standard dan naming convention. Lengkapi daftar perubahan jika terjadi perbaikan.
4.6 Deployment Diagram
Bagian ini diisi dengan deployment diagram versi final. Lengkapi daftar perubahan jika terjadi perbaikan.
Halaman 12/ dari 15 halaman
5 Implementasi
Bagian ini diisi dengan informasi tentang elemen dari perangkat lunak yang dikembangkan (executable files, configuration files, data files, dsb) serta perubahannya.
5.1 Implementasi Komponen
Bagian ini diisi dengan daftar kelas yang telah diimplementasikan. Misalnya dalam bentuk tabel berikut:
No Nama Kelas Nama File Fisik Nama File ExecutableMis. Account Mis. Account.java Mis. Account.class
5.2 Implementasi Subsistem
Bagian ini diisi dengan daftar subsistem yang telah diimplementasikan. Misalnya dalam bentuk tabel berikut:
No Nama Subsistem Nama File Fisik Nama KelasSubsistem xxxx 1
212
5.3 Implementasi Antarmuka
Bagian ini diisi dengan daftar implementasi antarmuka. Misalnya dalam bentuk tabel berikut:
No Antarmuka Nama File Fisik Nama File Executable
Halaman 13/ dari 15 halaman
6 Pengisian Bab VI Pengujian
6.1 Rencana dan Prosedur Pengujian
6.1.1 Rencana Pengujian
Bagian ini diisi dengan rencana pengujian, misalnya dalam bentuk tabel berikut:
No Use Case Pengujian Jenis Pengujian Identifikasi1 xxx 1. Skenario normal
2. Skenario xxx (acu no.skenario) 3. Skenario yyy
1. Black box dan White Box2. Black Box3.
U-1-xxxU-1-xxxU-1-xxx
U-2-xxx
Bagian ini diisi dengan tabel rencana pengujian versi final. Lengkapi daftar perubahan jika ada perbaikan.
6.1.2 Prosedur Pengujian
Bagian ini diisi dengan prosedur pengujian, misalnya persiapan pengujian, urutan pengujian yang harus dilakukan, dll
6.2 Kasus Uji
Bagian ini diisi dengan kasus uji untuk setiap use case dalam subbab. Contohnya adalah sebagai berikut:
6.2.1 Pengujian Use Case <nama use case>
Identifikasi Deskripsi Prosedur Pengujian
Masukan Keluaran yang Diharapkan
Kriteria Evaluasi Hasil
Hasil yang Didapat
Kesimpulan
U-1-01 Pengujian hasil pemasukan data pelanggan oleh operator
o Buka File data pelanggan
o Cari rekord dengan data modus pemasukan yang diinginkan
o Lihat tanggal lahir pelanggan
o Lihat kode pelanggan
o Bandingkan dengan rumus pembangkitan kode pelanggan
Kode modus pemasukan operator (01)
01<tgl_lahir>00101<tgl_lahir>00201<tgl_lahir>003dst
01<tgl_ lahir> <nomor terurut>
01<tgl_ lahir><no_ loncat
ditolak
U-1-02 Pengujian hasil pemasukan data pelanggan oleh pelanggan secara on-line
Kode modus pemasukan on-line(02)
02<tgl_lahir>00102<tgl_lahir>00202<tgl_lahir>003dst
02<tgl_ lahir> <nomor terurut>
02<tgl_ lahir><no_ terurut>
diterima
Bagian ini diisi dengan kasus uji versi final untuk seluruh use case. Lengkapi daftar perubahan jika ada perbaikan.
Halaman 14/ dari 15 halaman
6.3 Defect dan Status Perbaikan
Bagian ini diisi dengan defect yang ditemukan setelah melakukan pengujian dan status perbaikannya
6.4 Evaluasi Pengujian
Bagian ini diisi dengan uraian evaluasi hasil pengujian.
7 Pengisian Lampiran
Bagian lampiran diisi dengan daftar resiko, user manual dan training material dibuat pada dokumen terpisah. Lampirkan pula hasil pertemuan dengan user, maupun hasil review.
Halaman 15/ dari 15 halaman