PERBANDINGAN PENGEMBANGAN SISTEM INFORMASI DENGAN METODE SDLC ( System Development Life Cycle) 1
Tri Wahyu Artanto 1
Sistem Informasi, Fakultas Sistem Informasi, Universitas Bina Nusantara Jln. Kebon Jeruk Raya 27, Kemanggisan, Palmerah Jakarta Barat 11480 Email :
[email protected] [email protected] 1 ABSTRAK
Dalam makalah membahas perbandingan antara metode pengembangan system informasi System Development Life Cycle (SDLC) dan metode Object-Oriented (OO). Pengembangan metode SDLC mulai diperkenalkan sekitar tahun 1970 yang merupakan hasil turunan dari pemrograman terstruktur sedangkan metode OO sekarang merupakan metode yang popular yang banyak digunakan saat ini. Akah dibahas juga perbedaan apa yang membedakan antara kedua metode tersebut. Tidak ada jaminan penggunaan metode OO akan lebih baik daripada SDLC atau sebaliknya, maka makalah ini akan mengulas juga kelebihan dan kekurangan dari masingmasing metode
Kata Kunci: System Development Life Cycle (SDLC), Object Oriented (OO)
1
PENDAHULUAN
Makalah ini lebih menfokuskan tentang perbandingan dari metode SDLC dan OO. Perbandingan ini nantinya didasarkan pada proses yang ada dalam masing-masing metode. Metode SDLC atau disebut juga waterfall mode memberikan pendekatan yang sistematis dan berurutan dalam pengembangan system. Metode SDLC ini memungkinkan seorang analis untuk menyederhanakan masalah menjadi lebih kecil, pendefinisian secara jelas dan memanage berbagai hal yang mungkin. Metode SDLC merupakan metode terstruktur dengan membuat tahapan-tahapan , dimana setelah selesai satu tahapan baru masuk ke tahap selanjutnya . Metode ini disebut juga sebagai waterfall mode karena dalam tahap pengembangan tidak diperkenankan untuk kembali ke tahapan yang sudah dilakukan . Metode OO mulai popular digunakan seiring berkembangnya pemrograman berbasis object dimana pengembang memerlukan sebuah metodologi untuk membantu programmer dalam menggunakan pemrograman berorientasi obyek atau lebih dikenal dengan Object-Oriented Analysis and Design (OOAD). Metode OOAD melakukan pendekatan terhadap masalah dari perspektif obyek, tidak pada perspektif fungsional seperti pada pemrograman tersrtuktur dalam metode SDLC. Akhir-akhir ini penggunakan OOAD meningkat dibandingkan dengan pengunaan metode pengembangan software dengan metode SDLC. Sebagai metode baru dan sophisticated bahasa pemrograman berorientasi obyek diciptakan, hal tersebut untuk memenuhi
peningkatan kebutuhan akan pendekatan berorientasi obyek pada aplikasi bisnis. Dari kedua metode SDLC dan OO pada makalah ini akan diuraikan perbandingan untuk masing-masing metode pengembangan dalam segi perbedaan, kelebihan, dan kekurangan.
2
MODEL, ANALISIS, DESAIN, DAN IMPLEMENTASI
Dalam melakukan perbandingan terhadap metode SDLC dan OO diharapkan nantinya developer atau analis dapat menentukan metode yang paling baik digunakan dalam pengembangan system informasi. 2.1 System Development Life Cycle (SDLC) SDLC atau lebih dikenal sebagai metodologi terstruktur. Model rekayasa perangkat lunak yang diuraikan oleh Roger S. Pressman salah satunya adalah waterfall model. Model ini memberikan pendekatan-pendekatan sistematis dan berurutan bagi pengembangan perangkat lunak. Gambar dibawah ini merupakan proses pengembangan SDLC dengan metode waterfall
1
Gambar 1. SDLC dengan pendekatan waterfall Penjelasan dari tahap-tahap waterfall model adalah sebagai berikut : Sistem Enginering Tahap perencanaan adalah tahap awal pengembangan sistem yang mendefinisikan perkiraan kebutuhan – kebutuhan sumber daya seperti perangkat fisik, manusia, metode ( teknik dan operasi ), dan anggaran yang sifatnya masih umum ( belum detail/rinci ). Analysis adalah tahap penelitian atas sistem yang telah ada dengan tujuan untuk merancang sistem yang baru atau diperbarui. Design adalah tahap setelah analisa sistem yang menentukan proses dan data yang diperluhkan oleh sistem baru dengan tujuan untuk memenuhi kebutuhan kepada para pemakai, serta memberikan gambaran yang jelas dan rancang bangun yang lengkap kepada pemrogram komputer dan ahli teknik lain yang terlibat. Implementasi (Code dan Testing) adalah tahap di mana desain sistem dibentuk menjadi suatu kode (program) yang siap untuk dioperasikan dimana sebelumnya di lakukan testing terlebih dahulu. Maintenance adalah tahap yang dilakukan setelah tahap implementasi, yang meliputi pemakaian atau penggunaaan, audit sistem, penjagaaan, perbaikan, dan peningkatan sistem. Dalam segi software dan tools yang digunakan dalam SDLC sendiri mempunyai 2 cara, yaitu : a. DFD (Data Flow Diagram) Adalah suatu diagram yang menggunakan notasinotasi untuk menggambarkan arus dari data
system, yang penggunaannya sangat membantu untuk memahami sistem secara logika, tersruktur dan jelas. b. ERD (Entity Relational Diagram) Adalah Diagram ER merupakan gambaran data yang dimodelkan dalam suatu diagram yang dipergunakan untuk mendokumentasikan data dengan cara menentukan data apa saja yang terdapat dalam tiap entity dan bagaimana hubungan antara entity satu dengan lainnya. Komponen yang dipergunakan dalam diagram ER antara lain : i. Entity, yang termasuk di dalamnya adalah environmental elemen, resource , dan transaksi. ii. Relationship, hubungan antar entity. iii. Attribute , merupakan karakteristik dari suatu entity. Namun dalam beberapa pemodelan perangkat lunak seperti Power Designer , attribute dituliskan di dalam entity. 2.2 Object Oriented (OO) Dalam metode OO, Obyek adalah adalah suatu kombinasi antara data dan aspek lojik yang merepresentasikan suatu entitas dunia nyata. Contoh : mobil toyota kijang adalah suatu objek, maka yang menjadi data adalah warna, pembuat, harga, konsumsi bahan bakar, mekanisme pengereman, dll. Sedangkan yang menjadi aspek lojiknya adalah menampilkan jarak tempuh, berhenti, berjalan, belok. Dalam metode OO pasti selalu berhubungan dengan hal-hal di bawah ini : Kelas ada sistem berorientasi objek, kelas didefinisikan sebagai himpunan objek yang memiliki struktur umum dan perilaku umum yang sama [BAH99]. Sedangkan objek dapat dikatakan sebagai instansiasi suatu kelas. Sebagai contoh mobil adalah suatu kelas, maka mobil Toyota kijang, mobil Proton, dll adalah objek. Atribut Atribut merepresentasikan karakteristik atau keadaan objek. Pada contoh kasus di atas, sebuah mobil dapat memiliki atribut warna, harga, dan pembuat. Pada tataran implementasi, warna dapat direpresentasikan sebagai suatu string (domain nilainya misalnya : merah, biru, kuning, dll). Harga dapat berupa bilangan floating point atau bilangan integer. Sedangkan pembuat dapat bertipe struktur yang terdiri dari nama, identitas korporat, dll. Metode Metode adalah suatu fungsi atau prosedur yang didefinisikan untuk dapat mengakses keadaan internal suatu objek dari suatu kelas. Tiap fungsi 2
atau prosedur mendefinisikan dan mendeskripsikan perilaku khusus suatu objek. Sebagai contoh: kelas Pegawai memiliki metode Hitung Gaji. Metode sebenarnya merupakan antarmuka yang disediakan untuk dapat memanfaatkan perilaku objek tersebut. Sebagai contoh : jika diinginkan dilakukannya perhitungan gaji, maka message ‘Hitung Gaji” harus dikirimkan ke objek Pegawai. Metode Object-Oriented dapat dibagi ke dalam dua tahapan utama yaitu : a. Object-Oriented analysis Pekerjaan ini terpusat dalam pembangunan sebuah model OO dari domain permasalahan. Pada tahapan ini obyek yang diidentifikasi direpresentasikan sebagai entitas. b. Object-Oriented design Tahapan design terpusat terhadap pembuatan model OO yang siap untuk diimplementasikan , dan memenuhi kebutuhan system. Seorang analis dan programmer harus berfikir menggunakan terminologi obyek dibandingkan sebagai proses atau fungsi.
3
SKENARIO UJI COBA
Dalam tahap uji coba ini melakukan pendekatan pengembangan dengan kedua metode yang disajikan dalam bagan di bawah ini.
Dalam pengembangan sistem tersebut, perlu di perhatikan beberapa hal yang menyangkut, bagaimana dan apa yang dibutuhkan terlebih dahulu dalam mendesain sistem, yaitu bagaimana kita dapat mendefinisikan event, Usecase, dan event table terlebih dahulu sebelum memulai pengembangan sistem yang akan kita pilih, lalu bagaimana kita menentukan things sebagai dasar dari pengembangan sistem, baru kemudian memilih pendekatan pengembangan sistem mana yang akan kita gunakan. Penentuan Usecase, Things, event table dan event didasari oleh bagaimana proses bisnis suatu organisasi berlangsung, karena bagaimanapun juga pengembangan sistem didesain berdasarkan proses bisnis dari masing-masing organisasi yang ada. Untuk melakukan transformasi atas proses bisnis dari pendekatan konvensional ke pendekatan technology, maka perlu ada solusi Sistem Informasi (IS) dan Teknologi Informasi (IT). Terdapat berbagai alternatif solusi IS dan IT yang dapat digunakan dalam membantu pada proses bisnis. Berikut adalah tipe-tipe sistem yang digunakan dalam suatu organisasi (Satzinger et al. 2007) : 1.
2.
3.
4.
5. Gambar 2. Model pendekatan SDLC dan OO (Satzinger, 2007)
Transaction processing systems (TPS) merupakan sistem informasi yang menangkap dan mengumpulkan informasi tentang segala transaksi yang pada suatu organisasi. Management information systems (MIS) merupakan sistem informasi yang bertugas mengolah data yang dikumpulkan oleh TPS. Hasil yang diperoleh dari MIS adalah laporanlaporan yang berguna bagi manajemen untuk perencanaan dan kontrol bisnis, Decision support and knowledge – based systems (DSS/KBS) adalah sistem yang digunakan sebagai penunjang pengambilan keputusan. Sistem ini akan membantu user dalam mengambil keputusan yang cermat, namun pengambilan keputusan tetap pada pengguna sistem. Sistem akan membatu dalam membuat pilihan-pilihan keputusan dan akibatakibat yang akan ditimbulkan dari keputusan yang akan diambil. Sistem ini juga memungkinkan otomatisasi terhadap pengambilan keputusan yang sifatnya rutin. Enterprise applications system adalah sistem yang terintegrasi guna melakukan operasi terhadap data yang besar. Umumnya sistem ini merupakan kombinasi dari TPS, MIS dan DSS/KBS. Communication support systems merupakan sistem yang memfasilitasi komunikasi antara pelanggan dan produsen.
3
6.
4
Office support systems merupakan sistem yang memungkinkan pekerja pada suatu perusahaan untuk membuat dan membagi d okumen.
HASIL UJI COBA
Dari uraian pada model, analisis, desain serta uji joba di dapat beberapa hal yang menjadi kelebihan dan kekurangan dan kelebihan masingmasing metode. Di bawah ini disajikan dalam table kelebihan dan kekurangan tersebut. Table 1. Kelebihan dan kekurangan metode SDLC Kelebihan SDLC merupakan pendekatan visual yang membuat metode ini mudah di mengerti oleh pengguna/programer Milestone diperlihatkan dengan jelas yang memudahkan dalam manajemen proyek. Memungkinkan melukan validasi antara berbagai kebutuhan Cocok digunakan dalam project yang kecil dimana kebutuhan harus dimengerti dengan detail
Kekurangan Berorientasi pada proses sehingga mengabaikan kebutuhan nonfungsional tidak selalu memenuhi kebutuhana pengguna
Sedikit sekali manajemen langsung terkait dengan metode. Prinsip dasar merupakan pengembangan noniterative (waterfall), akan tetapi kebutuhan akan berubah pada setiap proses. Metode SDLC relatif Interaksi antara analisis simple dan mudah atau pengguna tidak dimengerti. komprehensif, karena system telah telah didefinisikan dari awal sehingga tidak adaptif terhadap perubahan kebutuhan baru
Table 2. Kelebihan dan Kekurangan metode Object-Oriented Kelebihan Dibandingkan dengan SDLC waktu pengembangan,level organisasi , ketangguhan, dan penggunakan kembali (reuse) kode program lebih tinggi.
Kekurangan Pada awal desain system mungkin akan sangat sederhana dan lebih focus kepada coding dibandingkan SDLC
Tidak ada pemisahan antara fase desain dan analisis , sehingga meningkatkan komunikasi antara antara user dan developer dari awal hingga akhir pembangunan system.
OO merupakan jenis metode yang baru yang sangat yang berbeda dengan SDLC. Konsekuensinya team developer butuh waktu yang lebih lama untuk berpindah ke OO
Analis dan programmer tidak di batasi dengan batasan implementasi system. Relasi obyek dengan entitas(obyek) umumnya dapat di mapping dengan baik seperti kondisi pada dunia nyata dan keterkaitan dalam system. Hal ini memudahkan dalam memahami desain (Sommervile,2000) Memungkinkan adanya perubahan dan kepercayaan diri yang tinggi terhadap kebenaran software yang membantu untuk mengurangi resiko pada pembangunan system kompleks.
Tidak menekankan kinerja team seperti pada SDLC
5
Metode OO menggunakan konsep reuse dimana merupakan keuntungan utama penggunaaan OO. Tapi tanpa prosedur yang emplisit terhadap reuse akan sangat sulit menerapkan dalam skala besar . Tidak mudah untuk mendefinisikan kelas dan obyek yang dibutuhkan oleh system
KESIMPULAN
Berdasarkan hasil uji coba telah dipaparkan beberapa kelebihan dan kekurangan metode SDLC dan OO. Dari hal tersebut developer dapat memilih metode mana yang akan digunakan. Menggunakan metode SDLC dalam proyek yang kecil akan sangat cocok sekali tetapi bila suatu proyek yang mempunyai kompleksitas tinggi lebih baik menggunakan metode Object-Oriented. Pemilihan metode pengembangan system informasi yang tepat akan lebih mempermudah team developer dalam pembuatan system tersebut. Jadi sangat penting sekali developer harus mengetahui berbagai metode yang ada. Jika suatu metode sudah ditetapkan ada baiknya metode tersebut digunakan sampai pengembangan system informasi selesai pada tahap terakhir. Misalkan terdapat perubahan metode ke depannya bisa saja dilakukan didasarkan pada keputusan matang dan peneletian terlebih dahulu.
4
6 [1]
[2]
[3]
DAFTAR PUSTAKA Whitten, Jeffery L., Bentley, Lonnie D., Dittman, Kevin C. 2007. Systems analysis and design methods..7th Edition.McGraw Hills. Supriyanto, 2008. Perbandingan Metode Terstruktur (Tradisional) dan Metode Object-Oriented (OO) Pada Analisis dan Design System,
. Edo.2011. Metode Pengembangan SDLC,
5