perubahan modul pada sistem yang sudah ada. Secara umum, alur pengembangan suatu sistem informasi mempunyai beberapa tahapan. Tahapan pengembangan sistem informasi
sering kali disebut dengan “System Development Life Cycle SDLC”. Dalam pengembangan sistem informasi terdapat dua hal utama yang harus
diperhatikan: a. Produk
Produk yang harus dihasilkan pada setiap tahap pengembangan sistem infromasi. Kesalahan dalam pembuatan produk dalam setiap tahap akan menyebabkan
kesalahan yang semakin besar pada produk akhir. b. Proses
Proses pengembangan sistem infromasi. Proses ini meliputi tahapan pengembangan mulai dari tahap feasibility sampai implementation. Jika proses tersebut tidak dilaksanan
sesuai dengan jadwal maka kemungkinan kegagalan proyek menjadi semakin besar. Prinsip prinsip yang digunakan dalam pengembangan sistem meliputi:
Sistem yang dikembangkan adalah untuk manajemen
Sistem yang dikembangkan adalah investasi modal yang besar
Sistem yang dikembangkan memerlukan orang yang terdidik
Tahapan kerja dan tugas-tugas yang harus dilakukan dalam proses
pengembangan sistem
Proses pengembangan sistem tidak harus urut
Jangan takut membatalkan proyek
Dokumentasi harus ada untuk pedoman dalam pengembangan sistem
2.3. Proses Desain Pengembangan Sistem
Proses desain sistem menggunakan metodologi pengembangan sistem. Metodologi pengembangan sistem adalah suatu proses pengembangan sistem yang formal dan presisi
yang mendefinisikan serangkaian aktivitas, metode, best practices dan tools yang terauyomasi bagi para pengembang dan manager proyek dalam rangka mengembangkan
dan merawat sebagai keseluruhan sistem informasi atau software. Penggunaan metodologi pengembangan sistem ini diperlukan untuk:
Menjamin adanya konsistensi proses
Dapat diterapkan dalam berbagai jenis proyek
Mengurangi resiko kesalahan dan pengambilan jalan pintas
Menuntut adanya dokumentasi yang konsisten bagi personal baru dalam tim
proyek.
Macam-mavam metodologi pengembangan sistem yang dapat digunakan: a. Metode System Development Life Cycle SDLC
System Development Life Cycle disingkat dengan SDLC. SDLC merupakan siklus pengembangan sistem. Pengembangan sistem teknik engineering system
development. SDLC berfungsi untuk menggambarkan tahapan-tahapan utama dan langkah-langkah dari setiap tahapan yang secara garis besar terbagi dalam empat
kegiatan utama, yaitu initiation, analysis, design dan implementation. Setiap kegiatan dalam SDLC dapat dijelaskan melalui tujuan purpose dan hasil kegiatannya
deliverable. SDLC didefinisikan oleh Departemen Kehakiman AS sebagai sebuah proses
pengembangan software yang digunakan oleh analyst system, untuk mengembangkan sebuah sistem informasi. SDLC mencakup kebutuhan
requirement, validasi, pelatihan, kepemilikan user ownership sebuah sistem informasi yang diperoleh melalui investigasi, analisis, desain, implementasi, dan
perawatan software. Software yang dikembangkan berdasarkan SDLC akan menghasilkan sistem dengan kualitas yang tinggi, memenuhi harapan
penggunanya, tepat dalam waktu dan biaya, bekerja dengan efektif dan efsien dalam infrastruktur teknologi informasi yang ada atau yang direncanakan, serta
murah dalam perawatan dan pengembangan lebih lanjut. Tahapan-tahapan dalam SDLC:
System initiation planning ialah perencanaan awal untuk sebuah proyek
guna mendefinisikan lingkup, tujuan, jadwal dan anggaran bisnis awal yang diperlukan untuk memecahkan masalah atau kesempatan yang
direpresentasikan oleh proyek. Lingkup proyek mendefinisikan area bisnis yang akan ditangani oleh proyek dan tujuan-tujuan yang akan dicapai.
Lingkup dan tujuan pada akhirnya berpengaruh pada komitmensumber
yaitu jadwal dan anggaran yang harus dibuat supaya berhasil menyelesaikan proyek.
System analysis ialah studi domain masalah bisnis untuk
merekomendasikan perbaikan dan menspesifikasikan persyaratan dan prioritas bisnis untuk solusi. Analisis system ditujukan untuk
menyediakan tim proyek dengan pemahaman yang lebih menyeluruh terhadap masalah-masalah dan kebutuhan-kebutuhan yang memicu proyek.
Area bisnis dipelajari dan dianalisis untuk memperoleh pemahaman yang lebih rinci mengenai apa yang bekerja, apa yang tidak bekerja dan apa
yang dibutuhkan.
System design ialah spesifikasi atau konstruksi solusi yang teknis dan berbasis komputer untuk persyaratan bisnis yang diidentifikasikan dalam
analisis sistem. Selama desain sistem, pada awalnya akan mengekspolarasi solusi teknis alternatif. Setelah alternatif solusi disetujui, fase desain
sistem mengembangkan cetak biru blueprint dan spesifikasi teknis yang dibutuhkan untuk mengimplementasikan database, program, antarmuka
pengguna dan jaringan yang dibutuhkan untuk sistem informasi.
System implementation ialah konstruksi, instalasi, pengujian dan pengiriman sistem ke dalam produksi artinya operasi sehari-hari.
Implementasi sistem mengontruksi sistem informasi baru dan menempatkannya ke dalam operasi, selanjutnya dilaksanakan pengujian.
b. Model Waterfall Model waterfall adalah suatu proses pengembangan perangkat lunak berurutan,
dimana kemajuan dipandang sebagai terus mengalir ke bawah seperti air terjun untuk membuat pembaruan sistem yang berjalan. Sering juga disebut model
Sequential Linier. Metode pengembangan sistem yang paling tua dan paling sederhana. Cocok untuk pengembangan perangkat lunak dengan spesifikasi yang
tidak berubah-ubah. Model ini menyediakan pendekatan alur hidup perangkat lunak secara sequential atau terurut dimulai dari analisa, desain, pengkodean, pengujian dan
tahap pendukung. Tahapan dalam Waterfall:
a. Tahap Komunikasi Pada tahap ini melakukan inisiasi projek yang akan dibangun dan
mengumpulkan atau menganalisis kebutuhan yang diperlukan dalam pengembangan sistem yang akan dibangun. Seluruh kebutuhan software harus
bisa didapatkan dalam fase ini, termasuk didalamnya kegunaan software yang diharapkan pengguna serta batasan software tersebut. Informasi ini biasanya
diperoleh melalui wawancara, survey atau diskusi. Informasi tersebut dianalisis untuk mendapatkan dokumentasi kebutuhan pengguna untuk dapat digunakan
pada tahap atau fase selanjutnya. b. Tahap Perencanaan
Pada tahap perencanaan meliputi estimating, scheduling dan tracking. Melakukan analisis perencanaan perkiraan segala kebutuhan yang diperlukan
dalam pengembangan sistem tersebut. Melakukan penjadwalan terkait segala kegiatan dan target yang harus dicapai pada proses pengembangan sistem.
Melakukan pengamatan dengan dokumentasi pada setiap kegiatan yang dilakukan dalam proses pengembangan sistem tersebut tanpa terkecuali dengan
maksud untuk menghindari kesalahan yang fatal akibta kurang memperhatikan aspek-aspek dalam proses pengembangan sistem.
c. Tahap Pemodelan Pada tahap pemodelan melakukan tahapan analisis dan desain. Melakukan
analisa terhadap semua aspek tanpa terkecuali, menganalisa kembali hal-hal yang telah dianalisa pada tahapan sebelumnya. Melengkapi segala kebutuhan
dan aspek dengan melakukan analisa secara menyeluruh. Kemudian melakukan desain, merancang sistem yang akan dikembangkan seperti apa. Pada tahap
desain, dapat membuat rancangan storyboard, algoritma yang menggambarkan apa yang akan dibuat dalam tahap selanjutnya coding dan bagaimana
tampilannya. d. Tahap Konstruksi
Pada tahap konstruksi, tahapan yang dilakukan adalah melakukan pengkodingan membuat kode program dan melakukan uji coba test. Melakukan pembuatan
software dengan pemrograman. Dapat dilakukan dengan membuat program tersebut kedalam modul- modul yang nantinya akan digabungkan dalam tahap
berikutnya. Kemudian, pada tahap uji coba akan dilakukan pemeriksaan terkait dengan kode program, algoritma dan logika kode program yang telah dibuat.
Sesuia atau tidaknya kode program, apakah layak atau tidaknya, terdapat bug atau tidaknya, yang bertujuan untuk memenuhi fungsi program seperti yang
diinginkan. e. Tahap Pengembangan
Tahap pengembangan ini meliputi tahap delivery, support dan feedback. Tahapan pengembangan ini berarti meliputi pemasaran program, kemudian
maintenance pemeliharaan dan memantau bagaimana feedback dari program yang telah dijalankan tersebut. Pemeliharaan dalam memperbaiki kesalahan
ketika program sudah dipasarkan dan muncul bug maka dilakukan tahap support yaitu melakukan perbaikan sistem. Kemudian dapat dilakukan peningkatan jasa
sistem sebagai feedback yang nantinya berperan sebagai kebutuhan baru sehingga kepuasan costumer menjadi meningkat.
c. Model Prototyping Prototyping adalah proses iterative dalam pengembangan sistem dimana equirement
diubah ke dalam sistem yang bekerja working system yang secara terus menerus diperbaiki melalui kerjasama antara user dan analis. Prototype juga bisa dibangun
melalui beberapa tool pengembangan untuk menyederhanakan proses.
Tahapan model prototyping adalah: a. Tahap komunikasi
Dimana pelanggan dan pengembang melakukan pertemuan untuk bersama-sama mendefinisikan format seluruh perangkat lunka, identifikasi semua kebutuhan
dan garis besar sistem yang akan dibuat. b. Tahap perencanaan cepat
Tahap ini dilakukan dengan membuat perancangan sementara yang berfokus pada penyajian kepada pelanggan dengan membuat format input dan output
program. c. Tahap pemodelan cepat
Tahap ini dilakukan dengan membuat perancangan sementara yang berfokus pada penyajian kepada pelanggan dengan membuat storyboard atau algoritma
tampilan atau mock up. d. Tahap konstruksi prototype
Tahap ini akan dilakukan evaluasi oleh pelanggan apakah prototyping yang sudah dibangun sesuai dengan keinginan pelanggan. Jik sudah sesuai
dilanjutkan ke tahap selanjutnya. Jika tidak maka mengulang kembali ke langkan 1, 2 dan 3.
e. Tahap delivery dan feedback development. Pada tahap ini melakukan pengkodean sistem protoyping yang sudah disepakati
dengan menerjemahkan ke dalam bahasa pemrograman yang sesuai, kemudian menguji sistem dengan white box,, black box, basis path, pengujian arsitektur,
dan lain-lain. Kemudian dilakukan evaluasi sistem kembali, jika sesuai maka
langsung pada tahap pemasaran system, jika tidak kembali pada langkan pekodean sistem.
d. Model Incremental Model incremental adalah model pengembangan sistem pada software engineering
berdasarkan requirement software yang dipecah menjadi beberapa fungsi atau bagian sehingga model pengembangannya secara bertahap. Dilain pihak ada yang
mengartikan mode incremental sebagai perbaikan dari model waterfall dan sebagai standar pendekatan topdown. Tahapan-tahapan model incremental adalah sebagai
berikut:
a. Tahap Analisis. Tahapan dimana menganalisis siapa yang akan menggunakan sistem ini,
kemudian bagaimana cara kerja sistem, dimana dan kapan sistem akan digunakan. Kemudian menganalisa segala kebutuhan apa saja yang
dibutuhkan untuk membuat sistem ini meliputi hardware-brainware yang dibutuhkan sesuai persyaratan, serta menganalisis segala permasalahan yang
akan terjadi beserta solusinya. b. Tahap Pemodelan desain
Tahapan dimana melakukan pennggambaran secara umum bagaimana sistem inforasi akan dibuat, bagaimana bentuk visual yang harus diberikan
pada sistem tersebut. Bagaimana hardware, software dan network infrastructure jaringan yang dapat digunakan. Seperti apa pemodelan
dokumen yang akan disimpan database serta definisi fungsinya. Proses iini befokus pada rancangan struktur data, arsitektur software, representasi
interface dan detail algoritma procedure c. Tahap Pembuatan Kode Program
Tahap ini dilakukan dengan pengerjaan kode program dari sistem yang akan dibuat beserta fasilitas-fasilitas yang akan diberikan kepada pengguna
sistem berdasarkan tingkatan dan batasannya. Pada tahap pembuata kode program juga dilakukan pemeriksaan untuk tiap-tiap komponen sistem agar
desain yang telah dikerjakan dapat berfungsi seperti yang diinginkan. d. Tahap Uji coba testing
Tahap pengujian testing dilakukan tahap uji coba dalam skala kompleks yang artinya uji coba dilakukan setelah seluh komponen sistem diletakkan
pada posisinya masing-masing. Tahap pengujian ini bertujuan untuk dapat melihat apakah sistem yang dibuat sudah sesuai dengan apa yang
direncanakan diinginkan atau belum sesuai. Jika sudah dapat diketahui tingkat keberhasilan dan kesesuaian dengan apa yang telah dirancang, maka
melanjutkan ke tahap development dan delivery jika sesuai, atau kembali ke tahap analisis untuk memperbaiki kekurangan sistem jika kurangtidak
sesuai. e. Model Rapid Application Development
Rapid application development adalaah mode proses pembangunan perangkat lunak yang tergolong dalam tenik incremental bertingkat. Rapid Application Development
RAD adalah penggabungan beberapa metode atau teknik terstruktur. RAD menggunakan metode prototyping dan teknik terstruktur lainnya untuk menentukan
kebutuhan user dan perancangan sistem informasi selain itu RAD menekankan siklus perkembangan dalam waktu yang singkat 60 sampai 90 hari dengan pendekatan
konstruksi berbasis komponen. RAD menekankan pada siklus pembangunan pendek, singkat dan cepat. Tahapan model Rapid Applucation Development adalah:
a. Tahap business modeling Pada tahap ini. Aliran informasi pada fungsi-fungsi bisnis dimodelkan untuk
mengetahui informasi apa yang mengendalikan proses bisnis, informasi apa yang hasilkan, siapa yang membuat informasi itu, kemana saja informasi
tersebut mengalir dan siapa saja yang mengolahnya. b. Tahap data modeling
Aliran informasi yang didefinisikan dari business modeling, disaring lagi agar bisa dijadikan bagian-bagian dari objek data yang dibutuhkan untuk
mendukung bisnis tersebut. Karakteristik atribut setiap objek ditentukan beserta relasi antar objeknya.
c. Tahap process modeling Objek-objek data yang didefinisikan sebelumnya diubah agar bisa
menghasilkan aliran informasi untuk diimplementasikan menjadi fungsi bisnis. Pengolahan deskripsi dibuat untuk menambah, merubah, menghapus
atau mengambil kembali objek data. d. Tahap application modeling
RAD bekerja dengan menggunakan fourth generation techniques 4GT. Sehingga pada tahap ini sangat jarang digunakan pemrograman konvensional
menggunakan bahasa pemrograman generasi ketiga third generation programming languages, tetapi lebih ditekankan pada reuse komponen-
komponen jika ada atau membuta komponen baru ada jika perlu. Dalam semua kasus, alat bantu untuk otomatisasi digunakan untuk memfasilitasi
pembuatan perangkat lunak. e. Tahap testing dan turnover
Karena menekankan pada penggunaan kembali komponen yang telah ada reuse, sebagian komponen-komponen tersebut sudah diuji sebelumnya.
Sehingga mengurangi waktu testing secara keseluruhan. Kecuali untuk komponen-komponen baru.
f. Model Spiral Model spiral adalah model proses software yang evolusioner yang merangkai sifat
interatif dari prototype dengan cara control dan aspek sistematis dari model sekuensial linier. Model ini berpotensi untuk pengembangan versi pertambahan
software secara cepat. Tahapan mode spiral adalah
a. Tahap komunikasi Pada tahap ini membangun komunikasi yang efektif di antara pengembang dan
pelanggan. b. Tahap perencanaan
Pada tahap ini menentukan sumber-sumber informasi, batas waktu dan informasi- informasi yang dapat menjelaskan proyek. tahap estimating, scheduling dan risk
analysis. Tahap perencanaan, memperkirakan sumber-sumber informasi yang dapat menunjang pengembangan proyek tersebut, melakukan penjadwalan dengan
batas waktunya, dan menganalisa resiko yang trejadi pada setiap kegiatan atau informasi yang dilakukan dan digunakan.
c. Tahap pemodelan Pada tahap ini melakukan analisis dan desain. Pada tahap analisis, menganalisa
secara keseluruhan baik dari analisa yang sudah dilakukan pada tahap sebelumnya. Menganalisa dari segi teknis maupun manajemen proyek tersebut.
Kemudian melakukan desain proyek baik dalam storyboard maupun algoritma. d. Tahap konstruksi
Pada tahap ini dilakukan pembangunan perangkat lunak yang dimaksud, dengan membuat kode program pemrograman, kemudian dilakukan pengujian uji
coba. e. Tahap pengembangan
Pada tahap ini dilakukan pemasaran yaitu dengan pemasangan perangkat lunak yang telah dibuat, dan diberikan fitur tamabhan untuk keberhasilan proyek.
2.4. Kelebihan dan Kekurangan Proses Desain