Jumat, 15 April 2016

PENGENALAN REKAYASA PERANGKAT LUNAK

PENGENALAN REKAYASA PERANGKAT LUNAK

PENDAHULUAN
Rekayasa perangkat lunak telah berkembang sejak pertama kali ddiciptakan pada tahun 1940-an hingga kini. Focus utama pengembangannya adalah untuk mengembangkan praktek dan teknologi untuk meningkatkan produktivitas para praktisi pengembang perangkat luank dan kualitas aplikasi yang dapat digunakan oleh pemakai. 

Sejarah Software Engineering 
Istilah software engineering digunakan pertama kali pada akhir 1950-an dan awal 1960-an. Saat itu, masih terdapat perdebatan tajam mengenai aspek engineering dari pengembangan perangkat lunak. Pada tahun 1968 dan 1969, komite sains NATO mensponsori dua konferensi tentang rekayasa perangkat lunak, yang memberikan dampak kuat terhadap pengembangan rekayasa perangkat lunak. Banyak yang menganggap dua konferensi inilah yang menandai awal resmi profesi rekayasa perangkat lunak.Pada tahun 1960-an hingga 1980-an, banyak masalah yang ditemukan para praktisi pengembangan perangkat lunak. Banyak project yang gagal, hingga masa ini disebut sebagai krisis perangkat lunak. Kasus kegagalan pengembangan perangkat lunak terjadi mulai dari project yang melebihi anggaran, hingga kasusu yang mengakibatkan kerusakan fisik dan kematian. Salah satu kasus yang terkenal antara lain meledaknya roket Ariane akibat kegagalan perangkat lunak. Selama bertahun-tahun, para peneliti memfokuskan usahanay untuk menemukan teknik jitu untuk memecahkan masalah krisi perangkat lunak. Berbagai teknik, metode, alat, proses diciptakan dan diklaim sebagai senjata pamungkas untuk memecahkan kasus ini. Mulai dari pemrograman terstruktur, pemrograman berorientasi objek, pernagkat pembantu pengembangan perangkat lunak (CASE tools), berbagai standar, UML hingga metode formal diagung-agungkan sebagai senjaat pamungkas untuk menghasilkan software yang benar, sesuai anggaran dan tepat waktu. Pada tahun 1987, Fred Brooks menulis artikel No Silver Bullet, yang berproposisi bahwa tidak ada satu teknologi atau praktek yang sanggup mencapai 10 kali lipat perbaikan dalam produktivitas pengembanan perngkat lunak dalam tempo 10 tahun.Sebagian berpendapat, no silver bullet berarti profesi rekayasa perangkat lunak dianggap telah gagal. Namun sebagian yang lain justru beranggapan, hal ini menandakan bahwa bidang profesi rekayasa perangkat lunak telah cukup matang, karena dalam bidang profesi lainnya pun, tidak ada teknik pamungkas yang dapat digunakan dalam berbagai kondisi.

Pengertian Dasar
Istilah Reakayasa Perangkat Lunak (RPL) secara umum disepakati sebagai terjemahan dari istilah Software engineering. Istilah Software Engineering mulai dipopulerkan pada tahun 1968 pada software engineering Conference yang diselenggarakan oleh NATO. Sebagian orang mengartikan RPL hanya sebatas pada bagaimana membuat program komputer. Padahal ada perbedaan yang mendasar antara perangkat lunak (software) dan program komputer.Perangkat lunak adalah seluruh perintah yang digunakan untuk memproses informasi. Perangkat lunak dapat berupa program atau prosedur. Program adalah kumpulan perintah yang dimengerti oleh komputer sedangkan prosedur adalah perintah yang dibutuhkan oleh pengguna dalam memproses informasi (O’Brien, 1999).Pengertian RPL sendiri adalah suatu disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal yaitu analisa kebutuhan pengguna, menentukan spesifikasi dari kebutuhan pengguna, disain, pengkodean, pengujian sampai pemeliharaan sistem setelah digunakan. Dari pengertian ini jelaslah bahwa RPL tidak hanya berhubungan dengan cara pembuatan program komputer. Pernyataan ”semua aspek produksi” pada pengertian di atas, mempunyai arti semnua hal yang berhubungan dengan proses produksi seperti manajemen proyek, penentuan personil, anggaran biaya, metode, jadwal, kualitas sampai dengan pelatihan pengguna merupakan bagian dari RPL.

Referensi
http://studyrelaxx.blogspot.co.id/

1. Konsep Dasar Rekayasa Perangkat Lunak

1. Apa itu perangkat lunak?

Perangkat lunak merupakan program komputer yang berfungsi menghubungkan antara pengguna dan komputer yang digunakan. dapat dibilang perangkat lunak merupakan sebagai media penerjemah perintah yang diberikan oleh pengguna kepada komputer untuk selanjutnya diproses melalui perangkat keras komputer tersebut.Perangkat lunak umumnya digunakan untuk mengontrol perangkat keras yang biasa disebut sebagai device driver, melakukan proses penghitungan, berinteraksi dengan perangkat lunak yang lebih mendasar lainnya, seperti sistem operasi dan bahasa pemrograman.

Secara umum ada tiga jenis perangkat lunak yang diketahui hingga saat ini yaitu sistem operasi yang merupakan sebuah penghubung antara pengguna dari komputer dengan perangkat keras komputer. Kedua yaitu perangkat lunak bahasa pemrograman seperti java. Dan yang ketiga yaitu perangkat lunak aplikasi yang merupakan penrangkat yang digunakan untuk membantu dan memudahkan pekerjaan seseorang misalnya saja Microsoft Excel, Word, dan Power Point

2. Apa itu Rekayasa Perangkat Lunak?

Rekayasa atau teknik merupakan penerapan ilmu dan teknologi untuk menyelesaikan permasalahan manusia. Hal ni diselesaikan lewat pengetahuan, matematika, dan pengalaman praktis yang diterapkan untuk mendesain objek atau proses yang berguna. Para praktisi teknik professional disebut perekayasa.
            
Rekayasa perangkat lunak atau Software engineering dalam bahasa inggris merupakan bidang ilmu yang mempelajari tentang segala aspek perangkat lunak, seperti  cara-cara pengembangan, pemeliharaan , pembuatan, serta manajemen kualitas perangkat lunak.
     
Rekayasa perangkat lunak jugamerupakan disiplin rekayasa dengan perangkat lunak yang dikembangkan. Biasanya proses melibatkan penemuan pada keinginan klien, menyusunnya didalam daftar kebutuhan, merangcang arsitektur yang mampu mendukung semua kebutuhan, perancangan, pengodean, pengujian, dan pengintegrasian bagian yang terpisah, menguju keseluruhan, penyebaran, dan pemeliharaan perangkat lunak.  

3. Apa perbedaan Rekayasa Perangkat Lunak dengan Ilmu Komputer?

Perbedaan antara rekayasa perangkat lunak dengan ilmu koputer sudah terlihat dari Bahasa Inggrisnya rekayasa perangkat lunak dalam Bahasa Inggris disebut sebagai software engineering , sedangkan ilmu komputer dalam bahasa inggris disebut science.  Dari segi ilmu yang dipelajari rekayasa perangkat lunak merupakan bidang ilmu yang mempelajari tentang perangkat lunak, sedangkan ilmu komputer mempelajari tentang komputasi, perangkat keras, serta beragam topic yang berkaitan dengan komputer.serta ilmu komputer lebih menekankan pada pemrograman komputer sedangkan rekayasa perangkat lunak tidak. Selain itu rekayasa perangkat lunak lebih mengedepankan prakteknya, sedangkan ilmu komputer lebih mengedepankan teori.


4. Apa perbedaan rekayasa perangkat lunak dengan  rekayasa sistem?
            
Perbedaan antara rekayasa perangkat lunak dengan rekayasa sistem adalah apabila rekayasa sistem itu merupakan sebuah kumpulan komponen, konsep, serta alat bantu untuk merancang dan menginstalasi sebuah sistem perangkat lunak, sedangkan rekayasa perangkat lunak itu merupakan ilmu yang mempelajari tentang segala aspek perangkat lunak, seperti  cara-cara pengembangan, pemeliharaan , pembuatan, serta manajemen kualitas perangkat lunak. Jadi dapat disimpulkan bahwa rekayasa perangkat lunak merupakan bagian dari rekayasa sistem karena RPL ilmu yang mempelajari tentang pembuatan perangkat lunak sedangkan rekayasa sistem merupakan kumpulan komponen, konsep, serta alat bantu untuk merancang dan menginstalasi perangkat lunak.

  
5. Apa yang dimaksud dengan proses perangkat lunak?
            
Proses perangkat lunak merupakan proses bagaimana sebuah perangkat lunak itu dapat terbentuk yang dilakukan oleh perekayasa perangkat lunak, proses proses tersebut diantaranya adalah :

A. Proses spesifikasi perangkat lunak. Pada proses ini fungsi,kemampuan operasi perangkat lunak yang akan dibuat harus diketahui terlebih dahulu.

B.Proses pengembangan perangkat lunak. Setelah diketahui fungsi  serta kemampuan perangkat lunak yang akan dibuat selanjutnya perangkat lunak yang telah memenuhi spesifikasi diproduksi.

C. Proses validasi perangkat lunak. Pada proses validasi ini perangkat lunak yang telah diproduksi akan divalidasi sebagai bukti perangkat lunak yang diproduksi berguna sesuai kebutuhan yang diperlukan.

D. Evolusi perangkat lunak. Dengan berkembangnya jaman perangkat lunak yang sudah diproduksipun haruslah berevolusi agar tetap dapat berguna untuk memenuhi kebutuhan pelanggan.  

6. Apakah model  proses perangkat lunak?
            
Model proses perangkat lunak merupakan cara untuk memproses sebuah perangkat lunak dari nol menjadi sebuah perangkat lunak yang siap untuk digunakan. Berikut merupakan beberapa contoh model proses perangkat lunak yang biasa digunakan

A. Waterfall Model atau Model Air Terjun

Model air terjun ini merupakan model klasik yang bersifat sistematis dalam membuat suatu perangkat lunak dan juga paling sering digunakan. 

Pada fase analisis fungsi,kemampuan operasi perangkat lunak yang akan dibuat harus diketahui terlebih dahulu. Kemudian apabila analisi telah selesai dilakukan maka didesainlah perangkat lunak yang akan dibuat. Setelah desain selesai lalu desain tersebut diterjemahkan kedalam kode-kode dengan bahasa pemrograman yang diinginkan, misalnya saja C++. Setelah kode selesai dibuat diadakanlah proses pengetesan terhadap perangkat lunak yang baru dibuat agar diketahui apakah perangkat yang dibuat bisa berjalan dengan benar atau tidak.



2. Model Spiral

Model spiral ini dikembangkan oleh Boehm pada tahun 1988 berdasarkan pada pengalamannya dengan berbagai perbaikan atas model air terjun yang diaplikasikan pada proyek pemerintah, khususnya perangkat lunak yang besar. Model ini dititikberatkan pada pembuatan prototype dan manajemen resiko yang sangat fleksibel jika dibandingkan dengan model air terjun. Kebanyakan aplikasi komprehensif dari model ini ada pada pengembangan TRW-Software Productivity System yang dijabarkan oleh Boehm. Konsep spiral dan focus manajemen risiko telah memperolah pengakuan di industry rekayasa perangkat lunak dan manajemen proyek pada tahun-tahun terakhir.
      
Keuntungan apabila menggunakan model spiral diantaranya :
A. Jangkauan atas pilihan mengakomodasi fitur yang baik untuk proses model perangkat lunak yang sudah ada.
B. Fokus awalnya ada pada pilihan yang melibatkan penggunaan ulang perangkat lunak yang ada. Pilihan ini mendukung karena identifikasi awa; dengan evaluasi dari alternative-alternatif adalah  kunci di setiap siklus spiral.
C. Model spiral juga menyediakan mekanisme untuk tujuan kualtias dan perangkat lunak gabungan kepengembangan produk perangkat lunak.
D. Model spiral mempunyai focus untuk mengeliminasi kesalahn
E. Model spiral menyediakan pendekatan terpisah untuk pengembangan dan pemasangan perangkat lunak.
F. Model spiral menyediakan kerangka kerja aktif untuk pengembangan sistem perangkat keras dan perangkat lunak yagn terintegrasi.
      
Sedangkan kerugian apabila menggunakan model spiral diantaranya :
A. Kebanyakan perangkat lunak yang menggunakan model spiral menitikberatkan pada control, titik periksa, yang merupakan keunggulan dari model air terjun.
B. Karena model spiral ini bersifat fleksibel serta dinamis maka langkah spiral ini harus diteliti lebih lanjut untuk mendapatkan konsistensi, penjajakan, dan control yang diinginkan. Penelitian dan control sangat penting , khususnya untuk area analisis resiko dan manajemen.

7. Berapa biaya Rekayasa Perangkat Lunak?
            
Biaya untuk rekayasa perangkat lunak bervariasi tergantung pada jenis sistem yang akan dibuat ,atribut perangkat serta kinerja dan kehandalan perangkat yang akan dibuat, contohnya saja sistem yang berskala internasional tentunya memerlukan biaya yang lebih mahal apabila dibandingkan dengan sistem yang berskala nasional. Tabel dibawah ini menjelaskan perkiraan pengeluaran rekayasa perangkat lunak
   

Akurasi Manajemen Proyek (dari PMBOK edisi 3, PMI, 2004)
Akurasi pengembangan perangkat lunak(dari rapid development, McConnell, 1996)
Konseptual
30% kebawah sampai 50% keatas
75% kebawah hingga 300% keatas
Konsep Produk Awal
Persiapan
20% kebawah hingga 30% keatas
50% kebawah hingga 100% keatas
Definisi produk yang disetujui
Kepastian
15% kebawah hingga 20% keatas
33% kebawah hingga 50% keatas
Spesifikasi Kebutuhan
Kontrol
10% kebawah hingga 15% keatas
20% kebawah hingga 25% keatas
Spesifikasi rancangan proyek

8. Apa saja metode-metode RPL?
            
Metode-metode dalam rekayasa perangkat lunak merupakan cara yang dilakukan untuk mengembangkan perangkat lunak yang meliputi deskripsi model sistem, aturan, rekomendasi, panduan proses, dan bimbingan. Deskripsi model sistem merupakan model sistem yang akan digunakan contohnya model waterfall. Aturan merupakan batasan yang diberikan kepada model sistem yang telah ditentukan, misalnya setiap entitas pada model sistem diharuskan memiliki nama entitas yang berbeda antara satu entitas dengan entitas lainnya. Rekomendasi berupa saran yang diberikan agar dapat membentuk perancangan yang baik dan sesuai fungsinya. Panduan proses merupakan aktifitas yang bisa diikuti untuk mengembangkan model sistem. Proses bimbingan yaitu serangkaian kegiatan yang akan diikutin untuk mengembangkan model sistem.
  
9. Apa yang dimaksud dengan CASE(Computer Aided Software Engineering)?
            
Yang dimaksud dengan CASE(Computer Aided Software Engineering) adalah serangkaian aplikasi dan metode untuk perangkat lunak yang otomatis dapat memberikan dukungan untuk kegiatan proses perangkat lunak. Ada dua jenis CASE yaitu upper-CASE yaitu alat untuk mendukung kegiatan proses awal persyaratan dan lower-CASE yaitu alat yang mendukung kegiatan yang selanjutnya seperti pemrograman, pengujian , debugging.

10. Apakah atribut perangkat lunak yang baik?
Atribut perangkat lunak yang baik diantaranya :
A. Maintainability yaitu perangkat lunak harus bisa di pelihara demi memenuhi kebutuhan pelanggan yang semakin lama menginginkan kemudahan.
B. Dependability, yaitu perangkat lunak harus dapat diandalkan dan dipercaya dan tidak mengecewakan penggunanya.
C. Acceptability, yaitu perangkat lunak yang sudah diproduksi harus diterima sepenuhnya oleh pengguna yang memesannya. Ini berarti perangkat harus dapat dapat digunakan dengan mudah oleh pengguna.
D. Usability , perangkat lunak yang harus dapat digunakan sesuai dengan fungsi awal yang telah ditentukan oleh penggunanya.
E. Efisien, yaitu perangkat lunak haruslah efisien baik dalam penggungannya maupun sumber daya yang digunakan.


11. Apa tantangan kunci yang dihadapi Rekayasa Perangkat Lunak?
Tantangan kunci yang dihadapi rekayasa perangkat lunak diantaranya :
A. Tantangan pengiriman, yaitu tantangan untuk mempercepat waktu pengiriman perangkat lunak tanpa mengurangi kualitas sistemnya.
B. Tantangan pemeliharaan, yaitu tantangan dalam melakukan pemeliharaan dan peng-updatean perangkat lunak agar biaya yang digunakan dapat di minimalisir sesedikit mungkin.   
C. Tantangan heterogenitas , yaitu tantangan dalam pengembangan untuk membangun perangkat lunak yang dapat diandalkan dan flexible untuk menghadapi heterogenitas yang ada.
D. Adanya killer application yang bisa lebih dikostumisasi, interaktif, dinamis, dan penuh gaya
E. User power an authority, dimana pengguna bisnis dan pengguna individu adalah pihak yang lebih kuat, berpengalaman dan selektif.
F. Adanya market share dimana pesaing menjadi lebih agresif, dan inovatif.

Referensi
http://okaampas.blogspot.co.id/

2. Tanggung Jawab Profesional dan Etika

        Secara umum para profesional yang bergerak dalam bidang apapun memiliki kode etik dan tanggungjawab dalam menjalankan aktivitas atau pekerjaannya masing-masing. Setiap bidang tentu saja memiliki keunikan sesuai dengan karakteristik pekerjaannya. Hal ini juga berlaku pula dalam dunia teknologi informasi khususnya dalam dunia komputasi, rekayasa perangkat lunak maupun sistem informasi. Seorang Profesional komputasi pada prinsipnya memiliki kewajiban etis bagi klien, atasan, profesional lainnya, dan masyarakat dalam memenuhi tanggung jawab profesiona. Kewajiban-kewajiban tersebut dituangkan dalam kode etik, yang dapat digunakan untuk membuat keputusan tentang masalah etika dalam dunia komputasi atau teknologi informasi.
       Profesional berasal dari kata PROFESI yaitu suatu yang melekat pada seseorang yang memberikan jasa atau keterampilan yang dimilikinya bagi orang lain, maka profesional merupakan sebutan pelakunya. Dalam hal kaitannya dengan Profesional komputasi termasuk didalamnya desainer hardware, software engineer, database administrator, analis sistem, dan ilmuwan komputer
       Kode etik adalah sistem norma, nilai dan aturan profesional tertulis yang secara tegas menyatakan apa yangbenar dan baik dan apa yang tidak benar dan tidak baik bagi profesional.Tujuan kode etik agar profesional memberikan jasa sebaik-baiknya kepada pemakai atau kliennya.Adanya kode etik akan melindungi perbuatan yang tidak profesional.Kode etik disusun oleh organisasi profesi sehingga masing-masing profesi memiliki kode etik tersendiri.Ketaatan tenaga profesional terhadap kode etik merupakan ketaatan naluriah yang telah bersatu dengan pikiran, jiwa dan perilaku tenaga profesional

Referensi
http://slideplayer.info/user/6404548/


3. Siklus Hidup Perangkat Lunak (SWDLC/Software Development Life Cycle)

SDLC (Systems Development Life Cycle, Siklus Hidup Pengembangan Sistem) atau Systems Life Cycle (Siklus Hidup Sistem), dalam rekayasa sistem dan rekayasa perangkat lunak, adalah proses pembuatan dan pengubahan sistem serta model dan metodologi yang digunakan untuk mengembangkan sistem-sistem tersebut. Konsep ini umumnya merujuk pada sistem komputer atau informasi. SDLC juga merupakan pola yang diambil untuk mengembangkan sistem perangkat lunak, yang terdiri dari tahap-tahap: rencana(planning),analisis (analysis), desain (design), implementasi (implementation), uji coba (testing) dan pengelolaan (maintenance).[1] Dalam rekayasa perangkat lunak angsyat Ä, konsep SDLC mendasari berbagai jenis metodologi pengembangan perangkat lunak. Metodologi-metodologi ini membentuk suatu kerangka kerja untuk perencanaan dan pengendalian pembuatan sistem informasi, yaitu proses pengembangan perangkat lunak. Terdapat 3 jenis metode siklus hidup sistem yang paling banyak digunakan, yakni: siklus hidup sistem tradisional(traditional system life cycle), siklus hidup menggunakan prototyping (life cycle using prototyping), dan siklus hidup sistem orientasi objek (object-oriented system life cycle).
Adapun kegunaan utama dari SDLC adalah mengakomodasi beberapa kebutuhan. Kebutuhan-kebutuhan itu biasanya berasal dari kebutuhan pengguna akhir dan juga pengadaan perbaikan sejumlah masalah yang terkait dengan pengembangan perangkat lunak. Kesemua itu dirangkum pada proses SDLC yang dapat berupa penambahan fitur baru baik itu secara modular maupun dengan proses instalasi baru. Dari proses SDLC juga berapa lama umur sebuah perangkat lunak dapat diperkirakan untuk dipergunakan yang dapat diukur atau disesuaikan dengan kebijakan dukungan dari pengembang perangkat lunak terkait.
Sejarah SDLC
Siklus hidup sistem (SLC) adalah metodologi yang digunakan untuk menggambarkan proses untuk membangun sistem informasi , dimaksudkan untuk mengembangkan sistem informasi dalam cara yang sangat disengaja, terstruktur dan teratur, mengulangi setiap tahap siklus hidup . Pengembangan sistem siklus hidup, menurut Elliott & Strachan & Radford (2004), “berasal pada tahun 1960, untuk mengembangkan skala besar fungsional sistem bisnis di zaman skala besar konglomerat bisnis . Sistem informasi kegiatan berkisar berat pengolahan data dan angka-angka rutinitas “.
Beberapa kerangka kerja pengembangan sistem telah sebagian didasarkan pada SDLC, seperti analisis sistem terstruktur dan metode desain (SSADM) diproduksi untuk pemerintah Inggris Kantor Pemerintah Commerce pada 1980-an. Sejak saat itu, menurut Elliott (2004), “pendekatan siklus kehidupan tradisional untuk pengembangan sistem telah semakin digantikan
dengan alternatif pendekatan dan kerangka kerja, yang berusaha mengatasi beberapa kekurangan yang melekat pada SDLC tradisional”.
SDLC adalah proses yang digunakan oleh analis sistem untuk mengembangkan sistem informasi , termasuk persyaratan, validasi kepemilikan (stakeholder), pelatihan, dan pengguna. Setiap SDLC harus menghasilkan sistem berkualitas tinggi yang memenuhi atau melebihi harapan pelanggan, mencapai selesai dalam waktu dan perkiraan biaya, bekerja secara efektif dan efisien di saat ini dan direncanakan Teknologi Informasi infrastruktur , dan murah untuk mempertahankan dan biaya-efektif untuk meningkatkan. sistem komputer yang kompleks dan sering (terutama dengan munculnya baru-baru arsitektur berorientasi layanan ) link beberapa sistem tradisional berpotensi disediakan oleh vendor perangkat lunak yang berbeda. Untuk mengelola tingkat kompleksitas, sejumlah model SDLC atau metodologi telah diciptakan, seperti ” air terjun “;” spiral “;” Agile pengembangan perangkat lunak “;” prototipe cepat “;” incremental “; dan” sinkronisasi dan menstabilkan “.
Model SDLC dapat dijelaskan sepanjang spektrum gesit untuk iteratif untuk berurut. metodologi Agile , seperti XP dan scrum , fokus pada proses ringan yang memungkinkan untuk perubahan yang cepat di sepanjang siklus pengembangan. Iteratif metodologi, seperti kesatuan proses rasional dan dinamis pengembangan sistem metode , fokus pada lingkup proyek terbatas dan memperluas atau memperbaiki produk oleh beberapa iterasi. Sequential atau besar-desain-up-depan (BDUF) model, seperti Air Terjun , fokus pada perencanaan lengkap dan benar untuk membimbing proyek-proyek besar dan risiko untuk hasil yang sukses dan dapat diprediks. Model-model lain, seperti Pembangunan Anamorphic , cenderung fokus pada bentuk pembangunan yang dipandu oleh ruang lingkup proyek dan iterasi pengembangan fitur adaptif.
Dalam manajemen proyek proyek dapat didefinisikan baik dengan siklus hidup proyek (PLC) dan SDLC, selama kegiatan yang sedikit berbeda terjadi. Menurut Taylor (2004) “siklus hidup proyek mencakup semua kegiatan proyek , sedangkan siklus hidup pengembangan sistem berfokus pada produk menyadari persyaratan “.
Tahapan SDLC
SDLC terdiri dari beberapa tahapan-tahapan berdasarkan analisa kebutuhan yang ada . Dimulai dari analisa kebutuhan perangkat lunak akan dibuat terlebih dahulu desain dari kebutuhan tersebut untuk mempermudah dalam pengerjaannya. Kemudian segala kebutuhan tersebut di implementasikan dengan dua tahap yaitu tahap analisa dan tahap evaluasi (User Acceptance Test). Setelah melakukan implementasi, maka proses tersebut akan dikembalikan kembali ke dalam tahap desain untuk pengembangan kembali perangkat lunak ke versi yang terbaru.
Tahap – tahap SDLC dalam pembangunan sistem informasi Web :
1) Plaining
Plaining (perencanaan) adalah feasibility dan wawancara , observasi, Quesener. Jika pada tahap Feasibility hasilnya baik maka langsung ketahap investigasi dan diberi form kepada client untuk
mencatat kebutuhan client. Dalam sistem investigasi, dapat berupa wawancara, kuosiener atau observation. Dalam tahap ini hal yang pertama dilakukan adalah memberikan form ke user yang digunakan untuk mengetahui permintaan user.
2) Analisa
a. Analisa TeknologiMemerlukan data penyimpanan secara informasi produk, Informasi Berita digunakan database seeprti Mysql, MSAccess.. Menganalisis teknologi apa yang digunakan pemilik desain Web seperti menggunakan desain grafis maka memerlukan teknologi seperti Adobe Photoshop, Macromedia Flash, Dreamweaver.
b. Analisa informasi. Mengenai informasi data yang akan menjadi data tetap dan data dinamis, kategori informasi data tetap adalah : profile perusahaan, visi dan misi, sejarah perusahaan, latar belakang perusahaan. Informasi dinamis adalah informasi yang selalu berubah dalam setiap periodik dapat setiap hari atau setiap jam. Informasi dinamis dalam sistem ini adalah :
1) Informasi persediaan ( stock ) produk
2) Informasi Harga Produk dan diskon
3) Informasi Artikel, tips dan trik
4) Informasi dari masing keunggulan Produk atau produk yang sedang trend
3) Desain
a. Desain Informasi. Dalam tahap ini dimodelkan informasi link dari setiap halaman, jika dalam sistem tersebut terdapat database maka digunakan tahap development dan database disain..
b. Desain Grafis. Dalam tahap ini disesuaikan dari warna, layout, gambar dan graphic.
c. Database Application
d. Model Development Database Design PHP Library Development. Tahap untuk memodelkan seluruh peruses yang ada,seperti peruses penyimpanan data,update artikel, dan menampilkan data dari database.
4) Implementasi
a. Penulisan Program dan Instalasi. Merupakan tahap penulisan program yang telah dianalisis dan diesain semua maka perogeram yang digunakan adalah PHP dan database yang digunakan MySql
b. Desain Review. Dalam tahap ini tidak hanya menguji desain yang digunakan namun menguji semua sistem yang telah diterapkan seperti tidak ada lokasi lingk, image yang salah, pengujian sistem seperti penyimpanan data, update artikel dan lain-lain.
c. Pemilihan Sumber daya Hardware dan Software. Dalam tahap ini software dan hardware digunakan untuk Web server.
d. Pengujian Web dan Dokumen Web. Menguji Web dengan berbagai teknologi browser yang ada, serta pemeriksaan dokumen Web.
Siklus hidup pengembangan sistem mempunyai beberapa tahapan, yaitu :
1) Analisis sistem, merupakan tahap awal dari SDLC, merupakan orang yang dididik khusus untuk mengembangkan sistem secara profesional.
2) Perancangan sistem memiliki dua tujuan utama, yaitu memberikan perancangan sistem logika atau perancangan sistem secara umum (general system design), dan memberikan perancangan sistem secara terinci (detail system design).
3) Implimentasi system, proses mengganti atau meninggalkan sistem yang lama dengan sistem baru.
4) Operasi dan perawatan beberapa kelebihan dan kekurangan. Kelebihannya yaitu menyediakan tahapan yang dapat digunakan sebagai pedoman mengembangkan sistem, dan akan memberikan hasil sistem yang lebih baik. Kemudian kekurangnnya, yaitu hanya menyediakan tahapan-tahapan saja, hasil dari metode ini sangat tergantung ari hasil di tahap, analisis, membuthkan waktu yang lama, membutuhkan biaya yang relatif lebih besar, dan hasilnya tidak luwes untuk dimodifikasi.
Supaya pengembangan sistem dapat bekerja dengan efisien dan efektif, maka metodologi pengembangaan sistem perlu diketahui.
Metodologi pengembangan sistem yang populer dan banyak digunakan adalah metodologi pengembangan sistem terstruktur, yang memberikan cara top down dan cara dekomposisi dan beberapa abit pengembangan sistem.
Model SDLC atau Sekuensial Linier sering disebut juga Model Air Terjun. Model ini mengusulkan sebuah pendekatan perkembangan perangkat lunak yang sistematik dan sekunsial yang dimulai pada tingkat dan kemajuan sistem pada seluruh analisis, desain, kode, pengujian, dan pemeliharaan.
Model ini disusun bertingkat, setiap tahap dalam model ini dilakukan berurutan, satu sebelum yang lainnya. Model ini biasanya digunakan untuk membuat sebuah software dalam skala besar dan yang akan dipakai dalam waktu yang lama. Sangat cocok untuk pengembangan sistem yang besar.
1. Kelebihan
v Mudah diaplikasikan.
v Memberikan template tentang metode analisis, desain, pengkodean, pengujian, dan pemeliharaan.
2. Kekurangan
v Jarang sekali proyek riil mengikuti aliran sekuensial yang dianjurkan model karena model ini bisa melakukan itersi tidak langsung.
v Pelanggan sulit untuk menyatakan kebutuhan secara eksplisit sehingga sulit untuk megakomodasi ketidakpastian pada saat awal proyek.
v Pelanggan harus bersikap sabar karena harus menunggu sampai akhir proyrk dilalui. Sebuah kesalahan jika tidak diketahui dari awal akan menjadi masalah besar karenaharus mengulang dari awal.
v Pengembang sering malakukan penundaan yang tidak perlu karena anggota tim proyek harus menunggu tim lain untuk melengkapi tugas karena memiliki ketergantungan hal ini menyebabkan penggunaan waktu tidak efesien.

Referensi
https://joulisinolungan.wordpress.com

Tidak ada komentar:

Posting Komentar