Proses Desain Pengembangan Sistem

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