1 Requirement Elicitation dan Pembuatan Program Dalam Penelitian Teknologi Informasi Abas Sunarya, Sudaryono, Sugeng Santoso Dosen Tetap Perguruan Tinggi Raharja Tangerang Banten Abstrak Abstraksi. Requirement adalah sifat-sifat dari sistem atau product yang akan dikembangkan sesuai dengan keinginan customer. Adapun spesifikasi software requirement yang baik dan sangat relevan untuk dilakukan sebelum melakukan penelitian dalam bidang teknologi informasi adalah sebagai berikut: (1) Unambiguous (tidak ambigu). (2) Complete (lengkap). (3) Consistent (konsisten). (4) Modifiable (dapat diubah). (5) Traceable (dapat dilacak). (6) Dapat digunakan selama pengoperasian dan maintenance. Elisitasi merupakan rancangan yang dibuat berdasarkan sistem yang baru yang diinginkan oleh pihak manajemen terkait dan disanggupi oleh peneliti untuk dieksekusi. Elisitasi didapat melalui metode wawancara dan dilakukan melalui tiga tahap, yaitu elisitasi tahap satu, dua, dan tahap tiga. Oleh karena itu yang dimaksud requirements elicitation adalah proses dalam menemukan/mendapatkan kebutuhan-kebutuhan sistem melalui komunikasi dengan customer, system users dan pihak lainnya yang berhubungan pada sistem yang akan dikembangkan. Berdasarkan elisitasi tersebut, maka langkah selanjutnya adalah pembuatan program. Beberapa persiapan yang secara umum harus dilakukan adalah pengumpulan data dan bahan pendukung, mempelajari perangkat lunak yang digunakan untuk membuat sistem, membuat rancangan atau flowchart. Sedangkan pada tahapan pembuatan sistem adalah tahap analisis sistem, tahap desain sistem, desain basis data, desain proses, desain struktur menu, desain user interface, desain teknologi dan arsitektur sistem. Petunjuk dalam desain sistem adalah Logical database design yang Anda buat tidak boleh menyimpang dari conceptual database design yang sudah Anda buat sebelumnya. Sebelum membuat program (tahap implementasi sistem) sebaiknya membuat list atau daftar terlebih dahulu tentang apa saja kemampuan sistem informasi yang Anda buat. Adapun langkah-langkah teknik membuat program adalah: membuat antarmuka, mengerjakan proses, mempercantik tampilan, dan membuat analisis. Kata Kunci: Requirement, Requirements Elicitation, Flowchart, Logical Database Design, User Interface. Pendahuluan Penelitian adalah upaya untuk mengembangkan pengetahuan, mengembangkan dan menguji teori. McMillan dan Schumacher mengutip pendapat Walberg (1986), ada lima langkah pengembangan pengetahuan melalui penelitian, yaitu: (1) mengidentifikasi masalah penelitian, (2) melakukan studi empiris, (3) melakukan replikasi atau pengulangan, (4) menyatukan atau sintesis dan mereview, (5) menggunakan dan mengevalusi oleh pelaksana. Ketika data terkumpul, bukti-bukti empiris sekarang sudah diperoleh untuk kemudian mendukung atau menolak hipotesis-hipotesis yang dirumuskan sebelumnya. Data empiris ini dijadikan dasar dalam penarikan kesimpulan. Segala sesuatunya begitu terkontrol sedemikian rupa sehingga setiap pengamat dalam penyelidikan itu begitu yakin akan hasilnya (Sukardi, 2003). Tujuan akhir suatu ilmu adalah mengembangkan dan menguji teori. Suatu teori dapat menjelaskan dan meramalkan fenomena-fenomena alamiah. Dari perilaku atau kegiatan-kegitan terlepas yang dilakukan oleh siswa atau guru umpamanya, peneliti dapat memberikan penjelasan umum tentang hubungan di antara perilaku atau kegiatan pembelajaran. Dari penjelasanpenjelasan umum tersebut terbentuk prinsip-prinsip dasar, dalil, konstruk, proposisi, yang kesemuanya akan membentuk teori. Mengenai teori ini Fred N. Kerlinger (1986) bahwa “…..a theory as a set of interrelated constructs and propositions that specify relations among variables 2 to explain and predict phenomena”. Dalamn rumusan Kerlinger tersebut ada tiga hal penting dalam suatu teori, yaitu: (1) suatu teori dibangun oleh seperangkat proposisi dan konstruk, (2) teori menegaskan hubungan di antara sejumlah variabel, (3) teori menjelaskan dan memprediksi fenomena-fenomena. Pencarian ilmiah (scientific inquiry) adalah suatu kegiatan untuk menemukan pengetahuan dengan menggunakan metode-metode yang diorganisasikan secara sistematis, dalam mengumpulkan, menganalisis, dan menginterprestasikan data. Pengertian ilmiah berbeda dengan ilmu. Ilmu merupakan struktur atau batang tubuh pengetahuan yang telah tersusun, sedang ilmiah adalah cara mengembangkan pengetahuan. Metode ilmiah merupakah suatu cara pengkajian yang berisi proses dengan langkah-langkah tertentu. McMillan dan Scumacher (2001) membaginya atas empat langkah, yaitu: (1) Define a problem, (2) State the hypothesis to be tested, (3) Collect and analyze data, and (4) Interprete the results and draw conclusions about the problem. Hampir sama dengan McMillan dan Shumacher, John Dewey membagi langkah-langkah pencarian ilmiah yang disebutnya sebagai “reflective thingking”, atas lima langkah, yaitu: (1) Mengidentifikasi masalah, (2) Merumuskan dan membatasi masalah, (3) Menyusun hipotesis, (4) Mengumpulkan dan menganalisis data, (5) Menguji hipotesis dan menarik kesimpulan. Empat langkah pencarian ilmiah dari McMillan dan Schumacher, dan lima langkah berpikir reflektif dari John Dewey, seringkali dijadikan sebagai dasar dari langkah-langkah utama penelitian. Konsep Requirement Requirement adalah sifat-sifat dari sistem atau product yang akan dikembangkan sesuai dengan keinginan customer. Adapun spesifikasi software requirement yang baik dan sangat relevan untuk dilakukan sebelum melakukan penelitian dalam bidang teknologi informasi adalah sebagai berikut: (1) Unambiguous (tidak ambigu). (2) Complete (lengkap). (3) Consistent (konsisten). (4) Modifiable (dapat diubah). (5) Traceable (dapat dilacak). (6) Dapat digunakan selama pengoperasian dan maintenance. Requirement diklasifikasikan menjadi dua sebagai berikut: Functional Requirements Menjelaskan interaksi antara sistem dan lingkungannya yang terpisah dari implementasi. Sistem adalah sekumpulan unsur atau elemen yang saling berkaitan dan saling mempengaruhi dalam melakukan kegiatan bersama untuk mencapai suatu tujuan. Dari Wikipedia Indonesia (2008) : Pengertian sistem diambil dari asal mula sistem yang berasal dari bahasa Latin (systēma) dan bahasa Yunani (sustēma) yang memiliki pengertian bahwa sebuah sistem merupakan suatu kesatuan yang di dalamnya terdiri dari komponen atau elemen yang berhubungan satu dengan lainnya berfungsi untuk memudahkan aliran informasi, materi atau energi. Istilah ini sering dipergunakan untuk menggambarkan suatu set entitas yang berinteraksi. Salah satu pengertian sistem secara umum, sistem adalah proses. Kita menggunakan kata sistem diseluruh bagian untuk mendeskripsikan ide atau konstruksi. Dalam semua model sistem yang tertua maupun yang paling sederhana, sistem adalah proses. Sedangkan Filsuf Stoa (2008) mendefinisikan sistem sebagai berikut: Sistem merupakan gabungan dari keseluruhan langit dan bumi yang saling bekerja sama membentuk suatu keseluruhan dan apabila salah satu unsur tersebut hilang atau tidak berfungsi, maka gabungan keseluruhan tersebut tidak dapat lagi kita sebut sebagai suatu sistem. Nonfunctional Requirements Aspek-aspek pengguna yang dapat dilihat mengenai sistem yang tidak secara langsung berhubungan dengan functional behavior (fungsi prilaku). Response time harus kurang dari 1 3 detik dan the accuracy must be within a second. Dipaksakan oleh client atau lingkungan dimana sistem akan beroperasi. Point-point yang harus diingat: 1. Penting untuk diketahui dengan siapa Anda berbicara 2. Pengguna yang berbeda akan memiliki perspektif yang berbeda pula pada sistem 3. Informasi yang dikumpulkan dapat dihargai, didorong oleh kepentingan pribadi/ politik 4. Pengguna dapat mengisi apa yang mereka tidak ketahui di dalam khalayan. 5. User mungkin tidak tahu apa yang mereka inginkan. Elisitasi Elisitasi merupakan rancangan yang dibuat berdasarkan sistem yang baru yang diinginkan oleh pihak manajemen terkait dan disanggupi oleh penulis untuk dieksekusi. Elisitasi didapat melalui metode wawancara dan dilakukan melalui tiga tahap, yaitu sebagai berikut (Hidayati, 2007) : a. Elisitasi Tahap I. Pada tahap ini elisitasi berisi seluruh rancangan sistem baru yang diusulkan oleh pihak manajemen terkait melalui proses wawancara. b. Elisitasi Tahap II. Pada tahap ini elisitasi merupakan hasil pengklasifikasian dari elisitasi tahap I berdasarkan metode MDI. Metode MDI ini bertujuan untuk memisahkan antara rancangan sistem yang penting dan harus ada pada sistem baru dengan rancangan yang disanggupi oleh penulis untuk dieksekusi. Berikut penjelasan mengenai Metode MDI (Mandatory Desirable Inessential): a) M pada MDI itu artinya Mandatory (Penting). Maksudnya requirement tersebut harus ada dan tidak boleh dihilangkan pada saat membuat sistem baru. b) D pada MDI itu artinya Desirable. Maksudnya requirement tersebut tidak terlalu penting dan boleh dihilangkan. Tetapi jika requirement tersebut digunakan dalam pembentukan sistem, akan membuat sistem tersebut lebih perfect. c) I pada MDI itu artinya Inessential. Maksudnya bahwa requirement tersebut bukanlah bagian dari sistem yang dibahas dan merupakan bagian dari luar sistem. c. Elisitasi Tahap III. Pada tahap ini elisitasi merupakan hasil penyusutan dari elisitasi tahap II dengan cara mengeliminasi semua requirement yang optionnya I pada metode MDI. Selanjutnya semua requirement yang tersisa diklasifikasikan kembali melalui metode TOE, yaitu sebagai berikut : a) T artinya Tehnikal, maksudnya bagaimana tata cara / tehnik pembuatan requirement tersebut dalam sistem yang diusulkan? b) O artinya Operasional, maksudnya bagaimana tata cara penggunaan requirement tersebut dalam sistem yang akan dikembangkan ? c) E artinya Ekonomi, maksudnya berapakah biaya yang diperlukan guna membangun requirement tersebut didalam sistem? Metode TOE tersebut dibagi kembali menjadi beberapa option, yaitu : a) High (H) : Sulit untuk dikerjakan, karena tehnik pembuatan dan pemakaiannya sulit serta biayanya mahal. Sehingga requirement tersebut harus dieliminasi. b) Middle (M) : Mampu untuk dikerjakan c) Low (L) : Mudah untuk dikerjakan d. Final draft elisitasi, merupakan hasil akhir yang dicapai dari suatu proses elisitasi yang dapat digunakan sebagai dasar pembuatan suatu sistem yang akan dikembangkan. 4 Requirements Elicitation Requirements elicitation adalah proses dalam menemukan/mendapatkan kebutuhankebutuhan sistem melalui komunikasi dengan customer, system users dan pihak lainnya yang berhubungan pada sistem yang akan dikembangkan. Requirements elicitation juga didefinisikan sebagai proses mengidentifikasikan kebutuhan-kebutuhan dan menjembatani perbedaan diantara kelompok-kelompok yang terlibat untuk tujuan menggambarkan dan menyaring kebutuhankebutuhan untuk menemukan batasan dari kelompok-kelompok tersebut. Requirements Elicitation Planning: (1) Mengidentifikasikan stakeholder, (2) Mengevaluasi risk project, (3) Menentukan teknik requirement elicitation yang paling sesuai untuk masing-masing stakeholder dan project secara keseluruhan, (4) Mendasarkan detail implementasi pada masing-masing teknik yang dipilih. Sedangkan Requirements Elicitation Problems terdiri dari: 1. Problems of Scope (Lingkup Masalah), dimana informasi requirement yang diberikan terlalu sedikit atau terlalu banyak, misalnya: (1) batasan sistem tidak digambarkan dengan baik, dan (2) pemberian informasi desain yang tidak berguna. 2. Problems of Understanding, baik di dalam maupun di antara kelompok seperti user and developer, misalnya: (1) Pengguna tidak secara lengkap apa yang menjadi kebutuhan developer, (2) users yang kurang mampu memahami kemampuan dan keterbatasan komputer, (3) analyst kurang memiliki kemampuan tentang domain, (4) user dan analyst berbicara dengan “bahasa” yang berbeda, (5) ease of omitting “obvious” information, (6) konfik dilihat dari berbagai pengguna, (7) persyaratan yang sering samar-samar, misalnya, "user friendly" dan “kuat”. 3. Problems of Volatility, yaitu perubahan dasar dari requirements, misalnya: requirement meningkat seiring waktu Contoh-contoh Requirement Elicitation Berikut adalah contoh-contoh dalam penelitian yang telah dilakukan oleh mahasiswa dalam menyelesaikan skripsi mereka, sebagai bahan kajian untuk penelitian selanjutnya. Contoh1. Requirement Elicitation Tahap 1 dan Tahap 2 M Functional Informasi Strategis Saya ingin sistem dapat menampilkan : 1 Terintegrasi dengan baik 2 Menampilkan Master Menu Home 3 Menampilkan Master Menu Profile 4 Menampilkan Master Menu Informasi 5 Menampilkan Master Menu GuestBook 6 Menampilkan Master Menu Dokumentasi 7 Menampilkan Master Menu Pendaftaran 8 Menampilkan Menu Daftar 9 Menampilkan Menu Test dan Hasil Test 10 Menampilkan fasilitas login untuk Admin 11 Menampilkan Menu Admin 12 Menampilkan Menu Home Untuk Admin 13 Menampilkan Menu Manajemen User Untuk Admin D √ √ √ √ √ √ √ √ √ √ √ √ √ I 5 14 15 16 17 18 19 20 21 22 23 24 √ √ √ Menampilkan Menu Manajemen Modul Untuk Admin Menampilkan Menu Edit Berita Untuk Admin Menampilkan Menu Edit Kurikulum Untuk Admin Menampilkan Menu Guest Untuk Admin Menampilkan Menu Dokumentasi Untuk Admin Menampilkan Menu Edit Ekstrakulikuler Untuk Admin Menampilkan Menu Pendaftaran Untuk Admin Menampilkan Menu Edit Profil Untuk Admin Menampilkan Menu Edit Soal Untuk Admin Menampilkan Menu Logout Untuk Admin Menampilkan Alamat Sekolah √ √ √ √ √ √ √ √ Requirement Elicitation Tahap 3 Feasibility Risk ANALISA KEBUTUHAN Saya ingin sistem dapat : 1 Terintegrasi dengan baik 2 Menampilkan Menu Home 3 Menampilkan Menu Profile 4 Menampilkan Menu Informasi 5 Menampilkan Menu GuestBook 6 Menampilkan Menu Dokumentasi 7 Menampilkan Menu Pendaftaran 8 Menampilkan Menu Daftar 9 Menampilkan Menu Test dan Hasil Test 10 Menampilkan fasilitas login untuk Admin 11 Menampilkan Menu Admin 12 Menampilkan Menu Home Untuk Admin 13 Menampilkan Menu Manajemen User Untuk Admin 14 Menampilkan Menu Manajemen Modul Untuk Admin 15 Menampilkan Menu Berita Untuk Admin 16 Menampilkan Menu Kurikulum Untuk Admin 17 Menampilkan Menu Guest Untuk Admin 18 Menampilkan Menu Dokumentasi Untuk Admin 19 Menampilkan Menu Ekstrakulikuler Untuk Admin 20 21 22 23 24 Menampilkan Menu Pendaftaran Untuk Admin Menampilkan Menu Edit Profil Untuk Admin Menampilkan Menu Edit Soal Untuk Admin Menampilkan Menu Logout Untuk Admin Menampilkan Alamat Sekolah L T M H L O M H √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ L E M H 6 Requirement Elicitation Final – Draf Functional Analisa Kebutuhan Saya ingin sistem dapat : 1 Terintegrasi dengan baik 2 Menampilkan Master Menu Home 3 Menampilkan Master Menu Profile 4 Menampilkan Master Menu Informasi 5 Menampilkan Master Menu GuestBook 6 Menampilkan Master Menu Dokumentasi 7 Menampilkan Master Menu Pendaftaran 8 Menampilkan Menu Daftar 9 Menampilkan Menu Test dan Hasil Test 10 Menampilkan fasilitas login untuk Admin 11 Menampilkan Menu Admin 12 Menampilkan Menu Home Untuk Admin 13 Menampilkan Menu Manajemen User Untuk Admin 14 Menampilkan Menu Manajemen Modul Untuk Admin 15 Menampilkan Menu Berita Untuk Admin 16 Menampilkan Menu Kurikulum Untuk Admin 17 Menampilkan Menu Guest Untuk Admin 18 Menampilkan Menu Dokumentasi Untuk Admin 19 Menampilkan Menu Ekstrakulikuler Untuk Admin 20 Menampilkan Menu Pendaftaran Untuk Admin 21 Menampilkan Menu Profil Untuk Admin 22 Menampilkan Menu Soal Untuk Admin 23 Menampilkan Menu Logout Untuk Admin 24 Menampilkan Alamat Sekolah NonFunctional ANALISA KEBUTUHAN Saya ingin sistem dapat : 1 Tampilan sistem user friendly (mudah dipahami oleh user) dan menarik Terdapat tombol pengunjung situs yang ingin melihat atau menilai tampilan yang telah 2 tersedia di menu utama seperti text box komentar Contoh 2 berikut adalah hasil elisitasi tahap 1, 2, 3, dan Final Draf yang dilakukan oleh Siti Julaeha, sebagai berikut: 1. Elisitasi Tahap I Functional ANALISA KEBUTUHAN Saya ingin sistem dapat : 1. Menyediakan Fasilitas mengganti password buat user 2. Menampilkan keberadaan mahasiswa, apakah ada di kampus atau tidak 3. Bisa menampilkan news yang berkaitan dengan kampus 4. Login dengan menggunkan swipecard 7 5. 6. 7. 8. 9. 10. Penambahan waktu session pada sis kajur Menampilkan informasi dosen yang di ampuh Kenyamanan navigasi Menampilkan foto mahasiswa yang sedang berkonsultasi Terdapat design tampilan yang menarik Menampilkan Index Mutu Dosen (IMD) Terdapat search engine untuk mencari data mahasiswa dengan kata kunci nama 11. mahasiswa 12. Terdapat search engine untuk mencari data mahasiswa berdasarkan status 13. Terdapat search engine untuk mencari data mahasiswa berdasarkan jurusan 14. Terdapat data 10 IPK terbaik mahasiswa 15. Terdapat data 10 IPK terendah mahasiswa 16. Terdapat data 10 IMM terbaik mahasiswa 17. Terdapat data 10 IMM terendah mahasiswa 18. Terdapat data 10 IPS terbaik mahasiswa 19. Terdapat data 10 IPS terendah mahasiswa 20. Menampilkan pesan masa studi mahasiswa 21. Update data pribadi customer dengan log Terdapat search Mahasiswa menggunakan swipecard untuk mencari data mahasiswa 22. berdasarkan status Terdapat search Mahasiswa menggunakan swipecard untuk mencari data mahasiswa 23. berdasarkan jurusan 24. Terdapat data mahasiswa layak KKP 25. Terdapat data mahasiswa layak TA 26. Terdapat data mahasiswa layak Skripsi Terdapat Foto kajur pada saat pengiriman email konsultasi mahasiswa secara 27. otomatis 28. Menampilkan pesan sks ( sudah atau belum melakukan pembayaran) 29. Menampilkan data dosen pembimbing KKP 30. Menampilkan data dosen pembimbing TA 31. Menampilkan data dosen pembimbing skripsi 32. Menampilkan web personal dari masing-masing kajur 33. Search mahasiswa menggunakan swipecard 34. Menampilkan pesan berhak atau tidaknya mengikuti UTS 35. Menampilkan pesan berhak atau tidaknya mengikuti UAS 36. Menampilkan hasil konsultasi permahasiswa secara keseluruhan 37 Hasil konsultasi dapat di print 38. Terdapat pilihan subject (kategori) di menu konsultasi 39. Menampilkan data 10 nilai terbaik mahasiswa KKP 40. Menampilkan data 10 nilai terendah mahasiswa KKP 41. Menampilkan data 10 nilai terbaik mahasiswa TA/Skripsi 42. Menampilkan pesan registrasi (keterangan tanggal dan waktu bayar) 43. Mahasiswa dapat menggunakan webcame ketika konsultasi dengan konselor 44. Mahasiswa dapat berkonsultasi di luar kampus dengan SIS Kajur Online 45. Menampilkan jumlah mahasiswa cuti seluruhnya Non Functional ANALISA KEBUTUHAN Saya ingin sistem dapat : 1. Sistem User Friendly 8 2. 3. User name dan password kepala jurusan hanya dapat diedit, didelete, dan ditambah oleh secret chamber Hanya admin yang dapat mengakses menu secret chamber 2. Elisitasi Tahap II M Functional ANALISA KEBUTUHAN Saya ingin sistem dapat : 1. Menyediakan Fasilitas mengganti password buat user 2. Menampilkan keberadaan mahasisiwa, apakah ada di kelas atau tidak 3. Bisa menampilkan news yang berkaitan dengan kampus 4. Login dengan menggunkan swipecard 5. Penambahan waktu session pada sis kajur 6. Menampilkan informasi dosen yang di ampuh 7. Kenyamanan navigasi 8. Menampilkan foto mahasiswa yang sedang berkonsultasi 9. Terdapat design tampilan yang menarik 10. Menampilkan Index Mutu Dosen (IMD) 11. Terdapat fasilitas swipecard untuk mahasiswa 12. Terdapat search engine untuk mencari data mahasiswa berdasarkan status 14. Terdapat data 10 IPK terbaik mahasiswa 15. Terdapat data 10 IPK terendah mahasiswa 16. Terdapat data 10 IMM terbaik mahasiswa 17. Terdapat data 10 IMM terendah mahasiswa 18. Terdapat data 10 IPS terbaik mahasiswa 19. Terdapat data 10 IPS terendah mahasiswa 20. Menampilkan pesan masa studi mahasiswa 21. Update data pribadi customer dengan log Terdapat search mahasiswa menggunakan swipecard untuk mencari data 22. mahasiswa berdasarkan status Terdapat search mahasiswa menggunakan swipecard untuk mencari data 23. mahasiswa berdasarkan jurusan 24. Terdapat data mahasiswa layak KKP 25. Terdapat data mahasiswa layak TA 26. Terdapat data mahasiswa layak Skripsi Terdapat Foto kajur pada saat pengiriman email konsultasi mahasiswa 27. secara otomatis 28. Menampilkan pesan sks ( sudah atau belum melakukan pembayaran) 29. Menampilkan data dosen pembimbing KKP 30. Menampilkan data dosen pembimbing TA 31. Menampilkan data dosen pembimbing skripsi 32. Menampilkan web personal dari masing-masing kajur 33. Menampilkan pesan berhak atau tidaknya mengikuti UTS 34. Menampilkan pesan berhak atau tidaknya mengikuti UAS 35. Menampilkan hasil konsultasi permahasiswa secara keseluruhan 36. Hasil konsultasi dapat di print 38. Terdapat pilihan subject (kategori) di menu konsultasi 39. Menampilkan data 10 nilai terbaik mahasiswa KKP D I 9 40. 41. 42. 43. Menampilkan data 10 nilai terendah mahasiswa KKP Menampilkan data 10 nilai terbaik mahasiswa TA/Skripsi Menampilkan data 10 nilai terendah mahasiswa TA/Skripsi Menampilkan pesan registrasi (keterangan tanggal dan waktu bayar) Mahasiswa dapat menggunakan webcame ketika konsultasi dengan 44. conselor 45. Mahasiswa dapat berkonsultasi di luar kampus dengan SIS Kajur Online Non Functional ANALISA KEBUTHAN Saya ingin sistem dapat : 1. Sistem User Friendly 2. User name dan password kepala jurusan hanya dapat diedit, didelete, dan ataupun ditambah melalui secret chamber 3. Hanya admin yang dapat mengakses menu secret chamber 3. Elisitasi Tahap III L Functional ANALISA KEBUTUHAN Saya ingin sistem dapat : Menampilkan keberadaan mahasiswa apakah ada di 1. kelas atau tidak 2. Login dengan menggunakan swipecard 3. User dapat mengaturb sendiri timeoutnya 4. Terdapat design tampilan yang menarik 5. Menampilkan web pribadi dari masing – masing kajur 6. Update biodata 8. Terdapat Data Pelatihan Rec 9. Terdapat fasilitas swipecard untuk mahasiswa 10. Kenyamanan navigasi 11. Terdapat data 10 IPK terbaik mahasiswa 12. Terdapat data 10 IPK terendah mahasiswa 13. Terdapat data 10 IMM terbaik mahasiswa 14. Terdapat data 10 IMM terendah mahasiswa 15. Terdapat data 10 IPS terbaik mahasiswa 16. Terdapat data 10 IPS terendah mahasiswa 17. Bisa Menampilkan history konsultasi Terdapat Foto kajur pada saat pengiriman email 18. konsultasi mahasiswa secara otomatis Menampilkan pesan registrasi (sudah atau belum 19. melakukan pembayaran) Menampilkan pesan sks ( sudah atau belum melakukan 20. pembayaran) 21. Menampilkan pesan berhak atau tidaknya mengikuti UTS 22. Menampilkan pesan berhak atau tidaknya mengikuti UAS 23. Hasil konsultasi dapat di print 24. Terdapat subject (kategori) di menu konsultasi T M H L O M H L E M H 10 Terdapat jumlah mutu konsultasi kepala jurusan seluruhnya pada secret chamber Database konsultasi mahasiswa hanya dapat diedit 26. melalui secret chamber Database konsultasi mahasiswa hanya dapat dihapus 27. melalui secret chamber 29. Menampilkan jumlah mahasiswa aktif seluruhnya 30. Menampilkan jumlah mahasiswa tidak aktif seluruhnya 31. Menampilkan jumlah mahasiswa cuti seluruhnya Non Functional ANALISA KEBUTUHAN Saya ingin sistem dapat : 1. Sistem User Friendly User name dan password kepala jurusan hanya dapat 2. diedit, didelete, dan ataupun ditambah melalui secret chamber Hanya admin yang dapat mengakses menu secret 3. chamber 25. Keterangan : T : Technical L : Low O: Operational M: Middle E: H: Economic High Pembuatan Program Setelah proposal umumnya berupa pembuatan perangkat lunak Anda diterima, biasanya adalah persiapan pembuatan program. Pada prinsipnya proposal adalah “kontrak” tentang apa yang harus Anda kerjakan. Sebagai contoh, diproposal yang sudah disetujui, Anda mengusulkan judul “Sistem Informasi Pemesanan Kamar Hotel Berbasis Web”. Pembimbing tidak mungkin akan mengubah hal-hal inti pada proposal, seperti mengganti pemesanan kamar hotel dengan pemesanan tiket pesawat atau bahkan meminta mengganti dengan judul lain karena judul tersebut sudah ada, terlalu mudah, atau alasan lain. Tetapi jika memang hal tersebut terjadi, Anda bisa mengkonsultasikannya pada ketua jurusan atau koordinator mata kuliah skripsi untuk mencari pemecahannya. Namun ada kemungkinan bahwa pembimbing meminta Anda menambahkan beberapa hal yang tidak tertulis diproposal seperti: sistem informasinya harus memiliki fasilitas pembayaran dengan kartu kredit, sistem harus mampu mengatasi pembatalan atau perubahan pemesanan, program dapat menampilkan fasilitas kamar, dan lain-lain. Semua perubahan tersebut pasti berkaitan erat dengan proposal semula. Persiapan Umum Pembuatan Program Sebelum program benar-benar diimplementasikan, ada beberapa persiapan yang secara umum harus Anda lakukan: a. Pengumpulan Data dan Bahan Pendukung Biasanya ketika mahasiswa membuat proposal, mahasiswa belum memiliki bahan pendukung dan data yang lengkap karena proposalnya belum tentu diterima. Tetapi setelah proposal diterima, berarti Anda harus melengkapi bahan pendukungnya, seperti buku atau jurnal referensi, data lapangan, dan lain-lain. Carilah tambahan buku atau jurnal referensi yang relevan. Carilah referensi yang memuat langkah penyelesaian manualnya serta kasus-kasus khusus yang 11 mungkin terjadi agar lebih meyakinkan Anda bahwa langkah penyelesaian yang Anda ketahui selama ini sudah benar. Sebagai contoh, jika Anda membuat tugas akhir tentang program linier, pelajari apa ciri masalah yang tidak memiliki penyelesaian dan memiliki banyak penyelesaian. Anda tidak akan pernah bisa mulai membuat program jika Anda belum menguasai cara perhitungan manualnya. Ini berlaku bagi tugas akhir yang melibatkan komputasi dan iterasi di dalamnya. Jika mungkin, carilah juga hasil penelitian sejenis yang telah dilakukan orang lain untuk membuat bahan perbandingan. Jika tugas akhir Anda berupa studi kasus suatu tempat, kumpulkan semua jenis data secara lengkap dan menyeluruh dan pelajari proses atau sistem yang terjadi di tempat tersebut. Sebagai contoh, jika di dalam tugas akhir Anda membuat sistem informasi inventori, carilah data tentang jenis barang apa saja yang disimpan, bagaimana cara pengelompokannya, bagaimana prosedur atau alur barang masuk atau keluar terutama jika ada beberapa gudang yang menyimpan barang yang sama, siapa orang yang bertanggung jawab, bagaimana cara atau aturan yang berlaku saat ini, dan lain-lain. b. Mempelajari Perangkat Lunak yang Dipakai untuk Membuat Sistem Ada kalanya perangkat lunak yang akan dipakai dalam pembuatan tugas akhir merupakan perangkat lunak yang baru bagi Anda. Ini berarti Anda harus mempelajarinya sendiri. Jika Anda terbiasa dengan belajar autodidak, hal itu tidak terlalu menjadi masalah. Tetapi kalau Anda harus mengikuti kursus, carilah kursus dan paket yang sesuai dengan kebutuhan Anda. Carilah informasi tentang materi apa saja yang diajarkan dalam kursus tersebut, berapa biayanya, kapan dimulai, berapa lama kursus dilaksanakan, berapa frekuensi pertemuannya, dan lain-lain. Carilah dan bandingkanlah beberapa tempat kursus sebelum Anda membuat keputusan. Dalam mempelajari perangkat lunak Anda tidak perlu mempelajari semua kemampuannya secara mendalam. Anda cukup mempelajari fasilitas yang berhubungan langsung dengan tugas akhir Anda. Sebagai contoh, jika tugas akhir Anda berhubungan dengan citra, cukup pelajari bagaimana cara melakukan komputasi sederhana, membuka dan menyimpan citra, memproses dan memanipulasi piksel, dan lain-lain. Jika tugas akhir Anda melibatkan banyak perhitungan matematika atau iterasi, pelajari cara melakukan komputasi, meggunakan fungsifungsi khusus, memproses matriks, dan mungkin membuat grafik. c. Membuat Rancangan atau Flowchart Jika tugas akhir Anda berupa komputasi dan Anda sudah menguasai cara mengerjakannya secara manual barangkali pembuatan flowchart tidaklah begitu sulit. Tetapi jika tugas akhir Anda harus memuat perancangan basis data (apalagi yang cukup luas) maka Anda membutuhkan kehati-hatian dalam merancangnya. Tunjukkan dan konsultasikan pada pembimbing Anda sebelum Anda menuliskannya dalam program. Persiapan Pembuatan Tugas Akhir Sistem Informasi Khusus untuk topik tugas akhir yang termasuk dalam kategori Sistem Informasi (Sistem Informasi Berbasis Web, Multi User, Client Server, dan lain-lain) sebelum memasuki tahap pembuatan program (implementasi sistem) Anda harus melalui 2 tahap, yaitu: (1) tahap analisa sistem, (2) tahap desain sistem. Jangan sekali-kali membuat program sebelum tahap analisa dan desain sistem selesai dilakukan. Konsultasikan dan mintalah persetujuan dosen pembimbing tentang hasil analisa dan desain sistem yang anda buat sebelum memasuki tahap pembuatan program. Kesalahan yang sering dibuat mahasiswa adalah langsung membuat program terlebih dulu sebelum hasil analisa dan desain disetujui dosen pembimbing. Bahkan yang lebih parah lagi adalah langsung membuat program terlebih dahulu tanpa melalui tahap analisa dan desain sistem 12 yang benar. Bila hal ini terjadi maka akan banyak kerugian yang ditanggung pihak mahasiswa. Sebagai contoh: seorang mahasiswa harus merombak program akibat analisa dan desain sistem yang salah (misalnya setelah program selesai dibuat dan didemokan ke dosen pembimbing, baru diketahui bahwa desain basis data yang dibuat masih banyak kesalahan) maka akibatnya mahasiswa tersebut selain harus membetulkan desain basis datanya juga harus membetulkan program yang dibuat. Dengan ini berarti mahasiswa tersebut akan banyak membuang banyak waktu, tenaga, dan biaya yang sebenarnya tidak perlu dilakukan. Hal tersebut di atas dapat diibaratkan seseorang yang akan membangun rumah. Sebelum rumah dibangun, pemilik rumah akan melihat terlebih dahulu bagaimana sketsa atau rancangan rumah yang akan dibuat, jika dia belum setuju maka sketsa atau rancangan rumah tersebut akan diubah. Jika sudah terdapat persetujuan, barulah rumah tersebut mulai dibangun. Kebalikannya jika pemilik rumah belum pernah melihat sketsa atau rancangan rumah dan rumah tersebut sudah selesai dibangun dan kemudian ternyata pemilik rumah tidak menyetujui, maka akibatnya rumah tersebut akan dirombak yang tentunya akan membuang waktu, tenaga, dan biaya. Apa yang harus dilakukan dalam tahap analisa dan desain sistem? Berikut ini diberikan tips dan penjelasan langkah apa yang sebaiknya Anda lakukan pada tahap analisa sistem maupun desain sistem. 1. Tahap Analisa Sistem Yang perlu dilakukan pada tahap ini adalah sebagai berikut: (1) pelajari sistem yang sudah ada, (2) ambil data-data pendukung yang dibutuhkan, (3) ketahui keinginan atau harapan user (pengguna sistem informasi) pada sistem yang baru (define user requirement). Pada tahap ini, Anda dihadapkan pada kondisi-kondisi sebagai berikut: Banyak data-data yang dihasilkan perusahaan, mana yang harus dipilih? Banyak orang yang terlibat dalam sistem, mana yang harus ditemui? Petunjuk atau tips untuk analisa sistem: a. Membuat perjanjian terlebih dahulu dengan pihak perusahaan, organisasi, atau instansi dimana Anda mengambil studi kasus untuk menentukan kapan Anda dapat berkunjung. Perjanjian dibuat dengan tujuan tercapai waktu yang paling nyaman bagi kedua belah pihak. Hal ini dapat terjadi berulang kali, jadi tidak hanya sekali saja Anda berkunjung. b. Data mana yang harus Anda pilih? Pada saat mengambil data-data pendukung, mengambil beberapa sampel saja untuk tiap jenis data, tidak perlu semua data diambil. Namun jenis data yang diambil harus lengkap dan menyeluruh sehingga dapat mewakili seluruh sistem. Sebagai contoh, topik tugas akhir Anda tentang sistem informasi personalia berbasis multi user, dengan studi kasus pada perusahaan rokok PT. ABC. Jumlah karyawan yang dimiliki seluruhnya ada sekitar 5000 karyawan. Pada saat analisa sistem, carilah jenis data apa saja yang ada dilapangan, misalnya ditemui data karyawan, data apartemen, data karir, dan lain-lain. Untuk data karyawan misalnya ada 4 jenis lagi yaitu karyawan tetap, karyawan kontrak, karyawan lepas atau freelance, dan karyawan pensiun. Dengan demikian Anda harus mengambil sampel untuk data apartemen, data karir, dan data karyawan. Untuk karyawan tetap dengan jumlah 1200 record misalnya, cukup diambil sampel 5 sampai dengan 10 record saja, demikian pula untuk karyawan kontrak, karyawan lepas atau freelance, dan karyawan pensiun masing-masing hanya perlu diambil 5 sampai 10 record saja. Yang penting untuk tiap jenis data anda harus mengambil semua field yang ada karena tiap jenis data mungkin memiliki jumlah dan jenis field yang berbeda. Contoh: karyawan tetap memliki 10 field, sedangkan karyawan lepas hanya 6 field. Lakukan hal yang sama untuk jenis data yang lain, misalnya data apartemen, cukup ambil beberapa sampel saja. 13 c. Banyak orang yang terlibat dalam sistem, siapa yang harus Anda temui? Sedapat mungkin melibatkan orang kunci pada seluruh level yang terlibat dengan sistem informasi. Ambil sampel (orang) yang dapat mewakili setiap level dan departemen. d. Menentukan teknik pengumpulan data yang paling cocok sesuai dengan kondisi di lapangan. Ada beberapa teknik pengumpulan data yang dapat digunakan pada tahap analisa sistem yaitu: wawancara (interviewing), daftar pertanyaan (questionnaire), dan pengamatan (observation). Alat yang dapat digunakan untuk menggambarkan hasil analisa sistem (sistem yang diusulkan) antara lain: (1) procedure diagram untuk menggambarkan prosedur dalam sistem, (2) data flow diagram dilengkapi dengan Data Dictionary untuk menggambarkan aliran data, (3) use case diagram untuk menggambarkan interaksi antara pengguna dengan sistem, (4) entity relationship diagram untuk menggambarkan pemodelan data atau desain basis data secara konseptual (conceptual database design). Petunjuk atau tips tentang penggunaan alat untuk menggambarkan hasil analisa sistem (sistem yang diusulkan): (1) menggunakan notasi standar dan sudah dikenal secara umum seperti Data Flow Diagram, ER Diagram, dan lain-lain, (2) jangan mencampur adukan notasi yang satu dengan yang lain. Misalnya lambang atau notasi yang seharusnya digunakan di Data Flow Diagram jangan digunakan di Procedure Diagram, (3) jangan membuat notasi sendiri. 2. Tahap Desain Sistem Setelah Anda memahami sistem yang lama, mengetahui user, dan selesai membuat usulan sistem yang baru, maka Anda dapat masuk ke tahap desain sistem. Berdasarkan hasil analisa sistem, membuat desain yang sesuai untuk Anda: a. Desain Basis Data. Tahap ini berkaitan erat dengan pemodelan data (conceptual database design) yang sudah Anda buat dengan menggunakan ER Diagram pada tahap analisa sistem. Pada tahap ini, lanjutkan dengan membuat desain basis data secara logis maupun secara fisik. Pada desain basis data secara logis (logical database design): (1) membuat relasi antar tabel yang satu dengan tabel yang lainnya, (2) menentukan tiap tabel terdiri dari field apa saja. Pada desain basis data secara fisik (physical database design): (1) menentukan tipe dan panjang setiap field pada masingmasing tabel, (2) menentukan letak dimana secara fisik tiap tabel akan ditempatkan dalam sistem informasi yang Anda buat. b. Desain Proses. Membuat flowchart untuk proses sistem secara menyeluruh. c. Desain Struktur Menu. Membuat daftar menu program yang Anda buat, kemudian menyusun menu-menu tersebut diurut secara hirarkis mulai dari menu utama, submenu, sampai sub submenu. Anda dapat menggunakan bagan berjenjang untuk desain struktur menu. d. Desain User Interface. Membuat desain tampilan antarmuka pemakai (user interface) mulai dari halaman pertama sampai terakhir dari perangkat lunak yang Anda buat. e. Desain Teknologi dan Arsitektur Sistem. Menentukan arsitektur sistem dan teknologi yang paling cocok untuk sistem informasi yang Anda buat. Beberapa jenis arsitektur yang biasa digunakan dalam pengembangan sistem informasi adalah: (1). sistem pemakai tunggal (single user), (2) sistem banyak pemakai (multi user), (3) sistem terpusat (centralized system), (3) sistem terdistribusi (distributed system), dan (4) sistem client serve. Untuk memperjelas gambarlah desain arsitektur sistem yang Anda pilih. 14 Petunjuk atau tips untuk desain sistem: a. Logical database design yang Anda buat tidak boleh menyimpang dari conceptual database design yang sudah Anda buat sebelumnya. Pada prinsipnya logical database design adalah translasi atau terjemahan dari conceptual database design. Demikian pula physical database design tidak boleh menyimpang dari logical database design yang sudah anda buat. Setelah physical database design selesai dibuat: (1) Cobalah hasil desain basis data dengan menggunakan DBMS (Data Base Management System) yang Anda pilih misalnya Oracle, My SQL, SQL Server, dan lain-lain. (2) Memasukan sampel sekitar 5 record untuk setiap recordnya. (3) Melakukan query untuk menguji apakah relasi antar tabel dalam basis data Anda sudah benar. (4) Jika ada query yang masih salah periksa apakah ada yang relasi antar tabel yang salah atau perintah query yang salah. (5) Jika masih ada relasi antar tabel yang salah dibetulkan pada tahap ini. b. Sebelum membuat program (tahap implementasi sistem) sebaiknya: (1) Membuat list atau daftar terlebih dahulu tentang apa saja kemampuan sistem informasi yang Anda buat misalnya, untuk sistem informasi inventory Anda menemukan 30 list kemampuan program sebagai berikut: (a) Menampilkan stok barang apa saja yang telah mencapai stok minimum. (b) Menampilkan barang berdasarkan jenis barang. (c) Mengurutkan stok barang berdasarkan tanggal kadaluarsa, dan seterusnya. (2) Membuat query untuk masingmasing list atau daftar tersebut. Terdapat 2 tujuan yang ingin dicapai yaitu: (a) Untuk mengecek apakah desain basis data secara keseluruhan sudah benar, dan (b) Untuk memudahkan dalam pembuatan program, karena dalam sistem informasi, program sebenarnya hanyalah kumpulan query. Jadi jika semua query untuk masing-masing list atau daftar sudah dapat berjalan dengan baik maka pembuatan program sebenarnya hanyalah tinggal memindahkan query-query tersebut ke dalam program. Dengan cara tersebut anda dapat menghindari merombak program yang salah akibat kesalahan dalam merancang basis data. Dengan demikian pembuatan program dapat dilakukan dengan lebih cepat dan lebih lancar. Teknik Membuat Program Setelah semua persiapan pembuatan program sudah Anda laksanakan, langkah berikutnya adalah implementasi rancangan yang Anda buat dalam sebuah program. Beberapa langkah yang perlu Anda lakukan adalah: a. Membuat Antarmuka. Jika tugas akhir Anda melibatkan banyak perhitungan dan iterasi dalam prosesnya, barangkali antarmukanya tidak begitu banyak sehingga biasanya tidak banyak revisi yang diberikan pembimbing. Selain masukan dan hasil akhirnya mungkin hanya diperlukan tampilan proses iterasi atau grafik. Akan tetapi untuk tugas akhir yang berhubungan dengan basis data biasanya Anda harus membuat banyak form, mulai dari form setup data, form untuk memasukan data, query, laporan, dan lain-lain. b. Mengerjakan Proses Setelah Anda membuat form masukan dan keluaran, langkah berikutnya adalah membuat prosesnya. Ada beberapa hal yang perlu diperhatikan sewaktu pembuatannya: 1. Mengerjakan dulu bagian yang inti, yaitu kasus yang normal terjadi. Asumsikan bahwa tidak ada kesalahan data masukan. Kasus-kasus khusus atau ada kesalahan pemasukan data baru dibuat setelah kasus normal berjalan dengan baik. Kesalahan yang sering dibuat mahasiswa adalah membuat semua program secara lengkap baru di run. Apabila terjadi kesalahan sewaktu di run, proses debugging menjadi sulit karena programnya sudah demikian panjang. 15 Sebaiknya sering-seringlah run program setelah suatu proses kecil atau prosedur selesai dibuat agar mudah dilacak jika terjadi kesalahan. 2. Membagi semua proses dalam beberapa prosedur. Sebelum menggabungkan beberapa prosedur, pastikan bahwa masing-masing prosedur sudah benar. Sebagai contoh jika dalam prosesnya membutuhkan pengurutan data, buatlah dulu prosedur untuk mengurutkan data. Pastikan bahwa prosedur pengurutan data sudah berjalan dengan benar sebelum menggabungkannya dengan prosedur lain. 3. Memberi nama prosedur dan nama variabel yang representatif. Penggunaan nama yang tidak representatif akan menyebabkan debugging menjadi sulit. 4. Setelah program utama bisa berjalan, cocokanlah keluaran program dengan hasil perhitungan manual. Berilah masukan yang sederhana dan mudah dihitung untuk mempermudahkan pencocokan. Agar lebih yakin, cobalah beberapa kali dengan masukan yang berbeda-beda. Apabila dicoba dengan berbagai masukan ternyata keluaran tetap benar, Anda bisa yakin bahwa program sudah berjalan sebagaimana yang diharapkan. Sebagai contoh, jika tugas akhir Anda adalah “Perbandingan Beberapa Algortima Untuk Menghitung Invers Matriks”, cobalah dulu menguji keluaran program dengan masukan matriks 2x2 yang inversnya mudah dihitung. Setelah dicoba beberapa kali ternyata tetap benar, cobalah untuk matriks 3x3 dan seterusnya. Setelah kasus normal berjalan dengan benar, berikutnya adalah waktu untuk mencoba kasus-kasus khusus. Pada kasus invers matriks, cobalah dengan matriks 2x2 yang tidak memilki invers dan perhatikan bagaimana program bereaksi. 5. Meneliti kapan Anda harus menggunakan perintah if, for, atau while. Jangan sampai program menjadi salah karena Anda salah dalam memilih perintahnya. Misalkan untuk mencari sebuah data dalam array. Anda harus menggunakan perintah while (dan tidak boleh perintah for) karena proses harus segera dihentikan segera setelah data ditemukan. c. Mempercantik Tampilan Jika semua proses sudah berjalan dengan baik dan benar, saatnya tiba untuk mempercantik tampilan program. Penggunaan variasi warna, background, dan lain-lain akan menambah daya tarik program Anda. d. Membuat Analisis Jika tugas akhir Anda menuntut Anda untuk manganalisis algoritma (misalnya Anda harus menentukan mana di antara 2 algoritma yang Anda implementasikan yang lebih cepat), langkah terakhir adalah melakukan analisis terhadap program. Cobalah menjalankan program untuk beberapa data berbeda. Kalau perlu menggunakan data random dan catat hasilnya. Mengusahakan agar data yang Anda pakai sebagai uji coba akan menghasilkan kesimpulan yang semakin konvergen. Sebagai contoh Anda membuat tugas akhir berjudul: Penyelesaian Masalah TSP Dengan Algoritma Genetika. Anda harus menganalisa beberapa probabilitas mutasi yang paling baik. Untuk itu ambilah suatu data TSP secara random dan jalankan program dengan suatu parameter tertentu (probabilitas possover, mutasi, dan lain-lain) dan mencatat hasilnya. Mengulangi lagi dengan menggunakan data TSP dan semua parameter yang sama tetapi dengan mengganti besarnya probabilitas mutasi. Selama proses pembuatan program, kapan Anda berkonsultasi dengan pembimbing? Pada prinsipnya Anda berkonsultasi dengan pembimbing jika Anda membutuhkan pendapat, alternatif cara, atau menghadapi masalah serius dalam program Anda. Jangan konsultasi jika program Anda sering hang jika dijalankan karena pembimbingpun juga tidak bisa menjawabnya. Selain konsultasi rutin, ada beberapa keadaan dimana Anda harus bertemu dengan pembimbing Anda: 16 a. Perancangan selesai. Sebelum mulai membuat program tanyakan dulu ke pembimbing apakah rancangan yang anda buat sudah benar dan memenuhi kriteria. b. Program sudah selesai dibuat. Temuilah pembimbing untuk menunjukan hasil program yang Anda buat. Ini sangat diperlukan karena program yang menurut Anda sudah sempurna mungkin masih menyimpan beberapa kekurangan yang tidak dapat Anda temukan sebelumnya. Dosen pembimbing yang berpengalaman akan mampu melihat kekurangan dan kelemahan program Anda. Lebih baik Anda menrima kritik dan banyak selama revisi bimbingan daripada baru ketahuan waktu sidang tugas akhir. Sebaiknya jangan menunjukan program sebelum benar-benar selesai. Umumnya demo program hanya berlangsung 1-2 kali saja. Kalau Anda sering meminta pembimbing melihat program Anda yang baru separo jadi, lama-lama pembimbing akan merasa bosan dan menganggap Anda tidak serius dalam membuat program. c. Ada masalah serius. Misalnya ketika membuat analisis Anda sudah mencoba berkali-kali tetapi tetap gagal memperoleh kesimpulan. Jika hal tersebut terjadi, tunjukkan hasilnya dan meminta pendapatnya. Dengan pengalamannya, mungkin dosen pembimbing dapat membantu Anda mencari jalan keluarnya, misalnya dalam kasus TSP, mungkin ia akan meminta Anda untuk mencoba menambah jumlah datanya karena kalau datanya terlalu sedikit, perbedaan hasil tidak terlalu kelihatan. Kesimpulan Requirement adalah sifat-sifat dari sistem atau product yang akan dikembangkan sesuai dengan keinginan customer. Adapun spesifikasi software requirement yang baik dan sangat relevan untuk dilakukan sebelum melakukan penelitian dalam bidang teknologi informasi adalah sebagai berikut: (1) Unambiguous (tidak ambigu). (2) Complete (lengkap). (3) Consistent (konsisten). (4) Modifiable (dapat diubah). (5) Traceable (dapat dilacak). (6) Dapat digunakan selama pengoperasian dan maintenance. Elisitasi didapat melalui metode wawancara dan dilakukan melalui tiga tahap, yaitu elisitasi tahap satu, dua, dan tahap tiga. Oleh karena itu yang dimaksud requirements elicitation adalah proses dalam menemukan/mendapatkan kebutuhankebutuhan sistem melalui komunikasi dengan customer, system users dan pihak lainnya yang berhubungan pada sistem yang akan dikembangkan. Berdasarkan elisitasi tersebut, maka langkah selanjutnya adalah pembuatan program. Beberapa persiapan yang secara umum harus dilakukan adalah pengumpulan data dan bahan pendukung, mempelajari perangkat lunak yang digunakan untuk membuat sistem, membuat rancangan atau flowchart. Sedangkan pada tahapan pembuatan sistem adalah tahap analisis sistem, tahap desain sistem, desain basis data, desain proses, desain struktur menu, desain user interface, desain teknologi dan arsitektur sistem. Petunjuk dalam desain sistem adalah Logical database design yang Anda buat tidak boleh menyimpang dari conceptual database design yang sudah Anda buat sebelumnya. Sebelum membuat program (tahap implementasi sistem) sebaiknya membuat list atau daftar terlebih dahulu tentang apa saja kemampuan sistem informasi yang Anda buat. Adapun langkah-langkah teknik membuat program adalah: membuat antarmuka, mengerjakan proses, mempercantik tampilan, dan membuat analisis. Daftar Pustaka Arikunto, S. 2010. Prosedur Penelitian: Suatu Pendekatan Praktek. Jakarta: Rineka Cipta. Berndtsson, M. Jorgen, H. Bjorn, O. 2008. Thesis Projects: A Guide for Student in Computer Science and Information Systems. London: Springer. 17 Donald Ary, Jacobs L.C, Razavieh, A. 2004. Pengantar Penelitian dalam Pendidikan. Terj. Arief Furchan. Yogyakarta: Pustaka Pelajar. Gay, L. R., & Diehl, P. L. 1996. Research Methods for Business and Management. Singapore: Simon & Schuster Ltd. Galliers, R.D. 1992. Information System Research: Issues, Methods, and Practical Guidelines. Oxford: Blackwell Scientific Publications. Gay, L. R. 2002. Educational Research : Competencies for Analysis and Application, Third Edition, Toronto: Merrill Publishing Company. Hermawan, A. 2006. Penelitian Bisnis Paradigma Kuantitatif, Jakarta: Grafindo. Howard, K. and Sharp, J.A. 2003. The Management of a Student Research Project. Aldershot: Gower. Maria Polina, A. & Jong Jek Siang. 2005. Kiat Jitu Menyusun Skripsi Jurusan Informatika atau Komputer. Yogyakarta: Penerbit Andi. Sutabri, Tata. 2012. Analisis Sistem Informasi. Yogyakarta: Penerbit Andi.