Foto ilustrasi PT Sumber Alfarian Trijaya Pengadilan Negeri Tangerang, pada dasarnya adalah sengketa yang terkait dengan perlindungan konsumen. Mustolih adalah seorang konsumen yang berbelanja di Alfamart, sebuah toko yang dikelola PT SAT. Sedangkan PT SAT adalah pelaku usaha di bidang ritel. Baik Mustolih maupun PT SAT, keduanya tunduk pada Undang-Undang Nomor 8 Tahun 1999 tentang Perlindungan Konsumen. Pertanyaan : Terkait kasus tersebut bahwa didalam perlindungan konsumen terdapat dua istilah hukum, yakni hukum konsumen ( consumer law ) dan hukum perlindungan konsumen ( consumer protection law protection law protection law ) merupakan bidang hukum baru dalam akademik dan praktik penegakan hukum di Indonesia (Shofie, 2011). Menurut analisis Anda, apakah sama hukum konsumen dengan hukum perlindungan konsumen jika keduanya tunduk pada Undang-Undang Nomor 8 Tahun 1999 tentang Perlindungan Konsumen dan mengapa dua bidang hukum tersebut sulit untuk dipisahkan! Berdasarkan
MODEL-MODEL PENGEMBANGAN
PERANGKAT LUNAK
BAB I
PENDAHULUAN
A. LATAR BELAKANG
Pengembangan
sistem informasi dalam kurun waktu kini sungguh sangat pesat. Di hampir setiap
perusahaan selalu melakukan perbaikan, inovasi, dan evaluasi terhadap sistem
informasi yang ada di dalam perusahaan tersebut, agar selalu mendukung
bisnis-bisnis yang mereka jalankan.Dengan memanfaatkan kemampuan dari sistem
informasi, diharapkan perkembangan bisnis semakin maju dan dapat menaikkan
pendapatan dari perusahaan.
Pengembangan perangkat lunak dapat diartikan sebagai
proses membuat suatu perangkat lunak baru untuk menggantikan perangkat lunak
lama secara keseluruhan atau memperbaiki perangkat lunak yang telah ada. Agar
lebih cepat dan tepat dalam mendeskripsikan solusi dan mengembangkan perangkat
lunak, juga hasilnya mudah dikembangkan dan dipelihara, maka pengembangan
perangkat lunak memerlukan suatu metodologi khusus.
Metodologi pengembangan perangkat lunak adalah suatu
proses pengorganisasian kumpulan metode dan konvensi notasi yang telah
didefinisikan untuk mengembangkan perangkat lunak. Secara prinsip bertujuan
untuk membantu menghasilkan perangkat lunak yang berkualitas (Jaidan Jauhari .pdf).
Berikut batu landasan yang menopang rekayasa perangkat lunak (Rogers S.
Pressman, 2002:28):
Metodologi pengembangan perangkat lunak (atau
disebut juga model proses atau paradigma rekayasa perangkat lunak) adalah suatu
strategi pengembangan yang memadukan proses, metode, dan perangkat (tools).
Metode-metode rekayasa perangkat lunak, memberikan
teknik untuk membangun perangkat lunak. Berkaitan dengan serangkaian tugas yang
luas yang menyangkut analisis kebutuhan, konstruksi program, desain, pengujian,
dan pemeliharaan (Rogers S. Pressman:2002).
Untuk menyelesaikan masalah di dalam pengembangan
perangkat lunak, tim perekayasa harus menggabungkan strategi pengembangan yang
melingkupi lapisan proses, metode, dan alat bantu. Model proses rekayasa
perangkat lunak dipilih berdasarkan sifat aplikasi dan proyeknya, metode dan
alat-alat bantu yang akan dipakai, dan control serta penyampaian yang
dibutuhkan.
B.
RUMUSAN
MASALAH
1. Model
Air Terjun (Waterrfall)
2. Model
Prototyping
3. Model
RAD (Rapid Application Development)
4. Model
System Development Life Cycle
(SDLC) (Spiral Model)
5. Model
Sprial
C.
TUJUAN
1. Agar
lebih memahami metode pengembangan perangkat lunak;
2. Bisa
membedakan karakteristik dari setiap model pengembangan perangkat lunak;
3. Bisa
membedakan kelebihan dan kekurangan dari setiap motede pengembangan perangkat
lunak.
BAB II
PEMBAHASAN METODE-METODE
PENGEMBANGAN PERANGKAT LUNAK
A. MODEL WATERFALL
Model
Waterfall merupakan salah satu metode dalam SDLC (System Development Life
Cycle) yang mempunyai ciri khas pengerjaan setiap fase dalam watefall harus
diselesaikan terlebih dahulu sebelum melanjutkan ke fase selanjutnya. Artinya
fokus terhadap masing-masing fase dapat dilakukan maksimal karena tidak adanya
pengerjaan yang sifatnya paralel.
1.
Fase dalam Metode
Waterfall
Tahapan tahapan dari metode waterfall adalah
sebagai berikut :
a. Perancangan Sistem (System Enginering)
Perancangan sistem sangat diperlukan, karena piranti lunak biasanya
merupakan bagian dari suatu sistem yang lebih besar. Pembuatan sebuah piranti
lunak dapat dimulai dengan melihat dan mencari apa yang dibutuhkan oleh sistem.
Dari kebutuhan sistem tersebut akan diterapkan kedalam piranti lunak yang
dibuat.
b. Analisa Kebutuhan Piranti Lunak (Software Requirement Analysis)
Merupakan proses pengumpulan kebutuhan piranti lunak. Untuk memahami dasar
dari program yang akan dibuat, seorang analisis harus mengetahui ruang lingkup
informasi, fungsi-fungsi yang dibutuhkan, kemampuan kinerja yang ingin
dihasilkan dan perancangan antarmuka pemakai piranti lunak tersebut.
c. Perancangan (Design)
Perancangan piranti lunak merupakan proses bertahap yang memfokuskan pada
empat bagian penting, yaitu: Struktur data, arsitektur piranti lunak, detil
prosedur, dan karakteristik antar muka pemakai.
d. Pengkodean (Coding)
Pengkodean piranti lunak merupakan proses penulisan bahasa program agar
piranti lunak tersebut dapat dijalankan oleh mesin.
e. Pengujian (Testing)
Proses ini akan menguji kode program yang telah dibuat dengan memfokuskan
pada bagian dalam piranti lunak. Tujuannya untuk memastikan bahwa semua
pernyataan telah diuji dan memastikan juga bahwa input yang digunakan akan
menghasilkan output yang sesuai.
Pada tahap ini pengujian ini dibagi menjadi dua bagian, pengujian internal dan pengujian eksternal. Pengujian internal bertujuan menggambarkan bahwa semua statement sudah dilakukan pengujian, sedangkan pengujian eksternal bertujuan untuk menemukan kesalahan serta memastikan output yang dihasilkan sesuai dengan yang diharapkan.
f. Pemeliharaan (Maintenance)
Proses ini dilakukan setelah piranti lunak telah digunakan oleh pemakai
atau konsumen. Perubahan akan dilakukan jika terdapat kesalahan, oleh karena
itu piranti lunak harus disesuaikan lagi untuk menampung perubahan kebutuhan
yang diinginkan konsumen.
2. Kapan Sebaiknya Model Water Fall Digunakan
Teori-teori
menyimpulkan beberapa hal, yaitu:
1. Ketika
semua persyaratan sudah dipahami dengan baik di awal pengembangan.
2. Definisi
produk stabil dan tidak ada perubahan saat pengembangan untuk alasan apapun
seperti perubahan eksternal, perubahan tujuan, perubahan anggaran atau
perubahan teknologi. Untuk itu, teknologi yang digunakan pun harus sudah
dipahami dengan baik.
3. Menghasilkan
produk baru, atau versi baru dari produk yang sudah ada. Sebenarnya, jika
menghasilkan versi baru maka sudah masuk incremental development, yang
setiap tahapnya sama dengan Waterfall kemudian diulang-ulang.
4. Porting produk
yang sudah ada ke dalam platform baru.
Dengan
demikian, Waterfall dianggap pendekatan yang lebih cocok digunakan untuk proyek
pembuatan sistem baru. Tetapi salah satu kelemahan paling dasar adalah
menyamakan pengembangan perangkat keras dengan perangkat lunak dengan
meniadakan perubahan saat pengembangan. Padahal, galat diketahui saat perangkat
lunak dijalankan, dan perubahan-perubahan akan sering terjadi.
3.
Contoh Penerapan Metode
Waterfall
Implementasi waterfall pada sistem pendaftaran
siswa online di SMA 1 Ranau
Tengah. Di SMA 1 Ranau Tengah, sebelumnya, pendaftaran/ registrasi dilakukan
secara tatap muka datang langsung ke lingkungan sekolah. Sistem akan dibuat
menggunakan bahasa pemrograman PHP, dengan basis data yang digunakan
adalah MySQL yang dilakukan di perangkat keras PC (personal computer) dengan
sistem operasi Microsoft Windows XP, Linux, dan lain sebagainya, yang digunakan
untuk mempermudah siswa – siswi yang ingin mendaftar pada suatu sekolah,
universitas, akademik tanpa harus ke suatu sekolah yang ingin kita masuki.
4.
Keuntungan Menggunakan
Metode Waterfall
Proses
menjadi lebih teratur, urutan proses pengerjaan menggunakan metode ini menjadi
lebih teratur dari satu tahap ke tahap yang selanjutnya. Dari sisi user juga
lebih menguntungkan karena dapat merencanakan dan menyiapkan seluruh kebutuhan
data dan proses yang akan diperlukan.
Jadwal
menjadi lebih menentu, jadwal setiap proses dapat ditentukan secara pasti.
Sehingga dapat dilihat jelas target penyelesaian pengembangan program. Dengan
adanya urutan yang pasti, dapat dilihat pula progress untuk setiap tahap secara
pasti.
5.
Kelemahan Menggunakan
Metode Waterfall
Sifatnya kaku, sehingga susah melakukan perubahan di tengah proses.
Jika terdapat kekuarangan proses atau prosedur dari tahan sebelumnya, maka
tahapan pengembangan harus dilakukan mulai dari awal. Hal ini akan memakan
waktu yang cukup lama. Karena jika proses sebelumnya belum selesai sampai
akhir, maka proses selanjutnya juga tidak dapat berjalan. Maka, jika terdapat
kekuarangan dalam permintaan user, proses pengembangan harus dimulai dari awal.
Membutuhkan daftar kebutuhan yang lengkap di awal, tapi jarang
konsumen bisa memberikan kebutuhan secara lengkap diawal. Untuk menghindari
pengulangan tahap dari awal, user harus memberikan seluruhh prosedur, data dan
laporan yang diinginkan mulai dari tahap awal pengembangan. Tetapi di banyak
kondisi, user sering melakukan permintaan si tahap pertengahan pengembangan
sistem. Dengan metode ini, maka development harus dilakukan mulai dari
tahap awal. Karena development disesuaikan dengan design hassil user pada
saat tahap awal pengembangan.
6.
Permasalahan Yang Ada Di Pengembangan
Waterfall
a.
Sebagai akibat dari biaya
pembuatan dan persetujuan dokumen, iterasi menjadi mahal dan melibatkan
pengerjaan ulang yang signifikan. Dengan demikian, setelah sejumlah iterasi
kecil, normal membekukan bagian dari pengembangan seperti spesifikasi.
Masalah-masalah dikesampingkan, diabaikan atau dihindari untuk pemecahan
kemudian. Pembekuan persyaratan dini ini bisa berarti bahwa sistem tidak dapat
melakukan seperti yang diinginkan user.
b.
Sistem memiliki struktur
yang buruk jika masalah perancangan dihindari dengan trik implementasi. Dengan
demikian pada fase akhir perangkat lunak digunakan, error dan penghapusan
persyaratan perangkat lunak yang asli akan ditemukan.
c.
Terjadinya pembagian
proyek menjadi tahap-tahap yang tidak fleksibel. Komitmen harus dilakukan pada
tahap awal proses dan akan sulit bagi perekayasa untuk menanggapi perubahan
persyaratan pelanggan.
B.
METODE
PROTOTYPING
Prototyping
merupakan salah satu metode pengembangan perangat lunak yang banyak digunakan. Dengan
metode prototyping ini pengembang dan pelanggan dapat saling berinteraksi selama
proses pembuatan sistem.
Sering
terjadi seorang pelanggan hanya mendefinisikan secara umum apa yang dikehendakinya tanpa
menyebutkan secara detal output apa saja yang dibutuhkan, pemrosesan dan
data-data apa saja yang dibutuhkan. Sebaliknya disisi pengembang kurang memperhatikan efesiensi
algoritma, kemampuan sistem operasi dan interface yang menghubungkan manusia
dan komputer.
Untuk
mengatasi ketidakserasian antara pelanggan dan pengembang, maka harus dibutuhakan kerjasama
yanga baik diantara keduanya sehingga pengembang akan mengetahui dengan benar
apa yang diinginkan pelanggan dengan tidak mengesampingkan segi-segi teknis dan
pelanggan akan mengetahui proses-proses dalm menyelasaikan system yang diinginkan. Dengan
demikian akan menghasilkan sistem sesuai dengan jadwal waktu penyelesaian yang telah
ditentukan.
Kunci
agar model prototype ini berhasil dengan baik adalah dengan mendefinisikan aturan-aturan main pada
saat awal, yaitu pelanggan dan pengembang harus setuju bahwa prototype dibangun
untuk mendefinisikan kebutuhan. Prototype akan dihilangkan sebagian atau seluruhnya dan
perangkat lunak aktual aktual direkayasa dengan kualitas dan implementasi yang sudah
ditentukan.
1.
Tahapan-Tahapan
Prototyping
Tahapan-tahapan
dalam Prototyping adalah sebagai berikut :
a. Pengumpulan
kebutuhan
Pelanggan
dan pengembang bersama-sama mendefinisikan format seluruh perangkat lunak,
mengidentifikasikan semua kebutuhan, dan garis besar sistem yang akan dibuat.
b. Membangun
prototyping
Membangun
prototyping dengan membuat perancangan sementara yang berfokus pada penyajian kepada
pelanggan (misalnya dengan membuat input dan format output).
c. Evaluasi
protoptyping
Evaluasi
ini dilakukan oleh pelanggan apakah prototyping yang sudah dibangun sudah sesuai dengan
keinginann pelanggan. Jika sudah sesuai maka langkah d akan diambil. Jika tidak prototyping
direvisi dengan mengulangu langkah a, b , dan c.
d. Mengkodekan
sistem
Dalam
tahap ini prototyping yang sudah di sepakati diterjemahkan ke dalam bahasa pemrograman yang sesuai.
e. Menguji
sistem
Setelah
sistem sudah menjadi suatu perangkat lunak yang siap pakai, harus dites dahulu sebelum
digunakan. Pengujian ini dilakukan dengan White Box, Black Box, Basis Path, pengujian
arsitektur dan lain-lain.
f. Evaluasi Sistem
Pelanggan
mengevaluasi apakah sistem yang sudah jadi sudah sesuai dengan yang diharapkan. Jika ya,
langkah g dilakukan jika tidak ulangi langkah d dan e.
g. Menggunakan Sistem
Perangkat
lunak yang telah diuji dan diterima pelanggan siap untuk digunakan.
2.
Kelebihan
Prototyping
Kelebihan
prototyping adalah :
1. Adanya
komunikasi yang baik antara pengembang dan pelanggan
2. Pengembang
dapat bekerja lebih baik dalam menentukan kebutuhan pelanggan
3. Pelanggan
berperan aktif dalam pengembangan system
4. Lebih
menghemat waktu dalam pengembangan system
5. Penerapan
menjadi lebih mudah karena pemakai mengetahui apa yang diharapkannya.
3.
Kekurangan
Prototyping
1. Pelanggan
kadang tidak melihat atau menyadari bahwa perangkat lunak yang ada belum
mencantumkan kualitas perangkat lunak secara keseluruhan dan juga
belummemikirkan kemampuan pemeliharaan untuk jangja waktu lama.
2. Pengembang
biasanya ingin cepat menyelesaikan proyek. Sehingga menggunakanalgoritma dan
bahasa pemrograman yang sederhana untuk membuat prototyping lebihcepat selesai
tanpa memikirkan lebih lanjut bahwa program tersebut hanya merupakancetak biru sistem
3. Hubungan
pelanggan dengan komputer yang disediakan mungkin tidak mencerminkan teknik
perancangan yang baik.
4.
Contoh Penggunaan Metode Prototyping
Pembuat mobil dapat mengembangkan sebuah purwarupa
yang dapat digunakan dalam lintasan pengujuan khusus dan kemudian ditampilkan
dalam showroom. Informasi yang diperoleh dari perlakuan seperti itu dapat
digunakan untuk meningkatkan desain sebelum implementasi/produksi dilakukan
secara massal.
C.
MODEL RAD (RAPID APPLICATION DEVELOPMENT)
Rapid Application Development
(RAD)
atau rapid
prototyping adalah model proses
pembangunan perangkat lunak yang tergolong dalam teknik incremental (bertingkat).
RAD
menekankan pada siklus pembangunan pendek, singkat, dan cepat. Waktu yang
singkat adalah batasan yang penting untuk model ini.
Rapid application development
menggunakan metode
iteratif (berulang) dalam mengembangkan sistem
dimana
working model (model bekerja) sistem dikonstruksikan di awal
tahap pengembangan dengan
tujuan menetapkan kebutuhan
(requirement)
user
dan
selanjutnya
disingkirkan. Working
model digunakan kadang-kadang saja sebagai basis desain dan implementasi sistem final.
1.
Tahapan Dalam Metode Rapid Application Development
a.
Bussines Modelling
Aliran informasi diantara
funsi-fungsi bisnis
dimodelkan dengan suatu cara untuk menjawab
pertanyaan-pertanyaan berikut: Informasi apa yg
mengendalikan
proses bisnis? Informasi apa yg dimunculkan? Siapa yg memunculkan? Ke mana informasi itu pergi?
Siapa yg
memprosesnya?
b.
Data Modelling
Aliran informasi yg di definisikan sebagai
bagian dari fase bussiness modelling di saring ke dalam serangkaian objek
data yg dibutuhkan untuk menopang bisnis tersebut.
Karakteristik (disebut atribut) masing-masing objek diidentifikasi dan hubungan antara objek-objek tersebut
didefinisikan.
c.
Prosess Modeling
Aliran informasi yg
didefinisikan di
dalam fase data modelling ditransformasikan untuk mencapai aliran informasi yg perlu bagi implementasi sebuah fungsi bisnis.
Gambaran pemrosesan digunakan untuk menambah, memodifikasi, menghapus, atau mendapatkan kembali sebuah objek
data.
d.
Aplication generation
RAD mengasumsikan pemakaian teknik generasi ke-empat. Selain menciptakan
perangkat lunak dengan menggunakan bahasa
pemrograman generasi ke-tiga yg
konvensional, RAD lebih banyak memproses kerja untuk memakai lagi komponen program yg
ada (pada saat memungkinkan) atau menciptakan komponen yg bisa
dipakai lagi (bila
perlu). Pada
semua
kasus, alat-alat bantu otomatis dipakai untuk
memfasilitasi konstruksi perangkat
lunak.
e.
Testing and turnover
Karena proses RAD menekankan pada pemakaian kembali, banyak komponen program telah diuji. Hal ini mengurangi keseluruhan waktu pengujian.
Tetapi komponen baru harus diuji dan semua interface harus dilatih secara penuh.
2. Kelebihan dari RAD (Rapid
Application
Development)
Kelebihan dari penggunaan RAD (Rapid
Application
Development)
:
a.
Membeli sistem yang baru memungkinkan
untuk lebih menghemat biaya ketimbang mengembangkan sendiri.
b.
Proses pengiriman menjadi lebih mudah,
hal ini dikarenakan proses pembuatan lebih banyak menggunakan potongan-potongan
script.
c.
Mudah untuk diamati karena menggunakan
model prototype, sehingga user lebih mengerti akan sistem yang dikembangkan.
d.
Lebih fleksibel karena pengembang
dapat melakukan proses desain ulang pada saat yang bersamaan.
e.
Bisa mengurangi penulisan kode yang
kompleks karena menggunakan wizard.
f.
Keterlibatan user semakin meningkat
karena merupakan bagian dari tim secara keseluruhan.
g.
Mampu meminimalkan kesalahan-kesalahan
dengan menggunakan alat-alat bantuan (CASE tools).
h.
Mempercepat waktu pengembangan sistem
secara keseluruhan karena cenderung mengabaikan kualitas.
i.
Tampilan yang lebih standar dan nyaman
dengan bantuan software-software pendukung.
3. Kelemahan Dari RAD
Kelemahan dari penggunaan RAD (Rapid
Application
Development)
:
a.
Dengan melakukan pembelian belum tentu
bisa menghemat biaya dibandingkan dengan mengembangkan sendiri.
b.
Membutuhkan biaya tersendiri untuk
membeli peralatan-peralatan penunjang seperti misalnya software dan hardware.
c.
Kesulitan melakukan pengukuran
mengenai kemajuan proses.
d.
Kurang efisien karena apabila
melakukan pengkodean dengan menggunakan tangan bisa lebih efisien.
e.
Ketelitian menjadi berkurang karena
tidak menggunakan metode yang formal dalam melakukan pengkodean.
f.
Lebih banyak terjadi kesalahan apabila
hanya mengutamakan kecepatan dibandingkan dengan biaya dan kualitas.
g.
Fasilitas-fasilitas banyak yang
dikurangi karena terbatasnya waktu yang tersedia.
h.
Sistem sulit diaplikasikan di tempat
yang lain.
i.
Fasilitas yang tidak perlu terkadang
harus disertakan, karena menggunakan komponen yang sudah jadi, sehingga hal ini
membuat biaya semakin meningkat.
4.
Contoh Penerapan
dalam Kehidupan
Model RAD mengadopsi model waterfall dan pembangunan dalam waktu singkat
yang dicapai dengan menerapkan :
1.
Component based construction
(pemrograman berbasis komponen bukan prosedural).
2.
Penekanan pada penggunaan ulang
(reuse) komponen perangkat lunak yang telah ada.
3.
Pembangkitan kode program
otomatis/semi otomatis.
4.
Multiple team (banyak tim), tiap tim
menyelesaikan satu tugas yang selevel tapi tidak sama. Banyaknya tim tergantung
dari area dan kompleksitasnya sistem yang dibangun.
Jika keutuhan yang diinginkan pada tahap analisis kebutuhan
telah lengkap dan jelas, maka waktu yang dibutuhkan untuk menyelesaikan secara
lengkap perangkat lunak yang dibuat adalah berkisar 60 sampai 90 hari.
Model RAD hampir sama dengan model waterfall, bedanya
siklus pengembangan yang ditempuh model ini sangat pendek dengan penerapan
teknik yang cepat.
Sistem dibagi-bagi menjadi beberapa modul dan dikerjakan
beberapa tim dalam waktu yang hampir bersamaan dalam waktu yang sudah
ditentukan. Model ini melibatkan banyak tim, dan setiap tim mengerjakan tugas
yang selevel, namun berbeda. Sesuai dengan pembagian modul sistem.
D.
METODE SDLC
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.
Tidak sesuai atau tidak terlalu disarankan untuk small scale project
karena:
II. Tidak
fleksibel
III. Sulit
untuk aplikasi dengan perubahan cara pengambilan keputusan yang cepat.
1.
TAHAPAN-TAHAPAN (SDLC)
a. Fase
Perencanaan Sistem
Dalam tahapan
ini dibentuk suatu struktur kerja strategis yang luas dan pandangan sistem
informasi baru yang jelas yang akan memenuhi kebutuhan-kebutuhan pemakai
informasi. Proyek sistem dievaluasi dan dipisahkan berdasarkan prioritasnya.
Proyek dengan prioritas tertinggi akan dipilih untuk pengembangan. Penyediaan
sumber daya baru dan penyediaan dana untuk pengembangan sistem.
Rencana kerja
yang matang juga disusun untuk menjalankan tahapan-tahapan lainnya. Hasil dari
tahapan ini adalah Langkah-langkah detail rencana kerja dan penugasan untuk
anggota tim.
- Fase Analisis Sistem
I. Dilakukan
proses penilaian, identifikasi dan evaluasi komponen dan hubungan timbal-balik
yang terkait dalam pengembangan system: definisi masalah, tujuan, kebutuhan,
prioritas dan kendala-kendala system, ditambah identifikasi biaya, keuntungan
dan estimasi jadwal untuk solusi yang berpotensi.
II. Fase
analisis sistem adalah fase profesional sistem melakukan kegiatan analisis
sistem.
III. Laporan
yang dihasilkan menyediakan suatu landasan untuk membentuk suatu tim proyek
sistem dan memulai fase analisis sistem.
IV. Tim
proyek sistem memperoleh pengertian yang lebih jelas tentang alasan untuk
mengembangkan suatu sistem baru.
V. Ruang
lingkup analisis sistem ditentukan pada fase ini. Profesional sistem mewawancarai
calon pemakai dan bekerja dengan pemakai yang bersangkutan untuk mencari
penyelesaian masalah dan menentukan kebutuhan pemakai.
VI. Beberapa
aspek sistem yang sedang dikembangkan mungkin tidak diketahui secara penuh pada
fase ini, jadi asumsi kritis dibuat untuk memungkinkan berlanjutnya siklus
hidup pengembangan sistem.
VII. Pada
akhir fase analisis sistem, laporan analisis sistem disiapkan. Laporan ini
berisi penemuan-penemuan dan rekomendasi. Bila laporan ini disetujui,tim proyek
sistem siap untuk memulai fase perancangan sistem secara umum. Bila laporan
tidak disetujui, tim proyek sistem harus menjalankan analisis tambahan sampai
semua peserta setuju.
- Fase Perancangan Sistem secara Umum
Dibentuk
alternatif-alternatif perancangan konseptual untuk pandangan pemakai.
Alternatif ini merupakan perluasan kebutuhan pemakai. Alternatif perancangan
konseptual memungkinkan manajer dan pemakai untuk memilih rancangan terbaik
yang cocok untuk kebutuhan mereka.
Pada
fase ini analis sistem mulai merancang proses dengan mengidentifikasikan
laporan-laporan dan output yang akan dihasilkan oleh sistem yang diusulkan.
Data masing-masing laporan ditentukan. Biasanya, perancang sistem membuat
sketsa form atau tampilan yang mereka harapkan bila sistem telah selesai dibentuk.
Sketsa ini dilakukan pada kertas atau pada tampilan komputer.
- Fase Evaluasi dan Seleksi Sistem
Akhir
fase perancangan sistem secara umum menyediakan point utama untuk keputusan
investasi. Oleh sebab itu dalam fase evaluasi dan seleksi sistem ini nilai
kualitas sistem dan biaya/keuntungan dari laporan dengan proyek system dinilai
secara hati-hati dan diuraikan dalam laporan evaluasi dan seleksi sistem.
Jika
tak satupun altenatif perancangan konseptual yang dihasilkan pada fase
perancangan sistem secara umum terbukti dapat dibenarkan, maka semua altenatif
akan dibuang. Biasanya, beberapa alternatif harus terbukti dapat dibenarkan,
dan salah satunya dengan nilai tertinggi dipilih untuk pekerjaan akhir. Bila
satu alternatif perancangan sudah dipilih, maka akan dibuatkan rekomendasi
untuk sistem ini dan dibuatkan jadwal untuk perancangan detailnya.
- Fase Perancangan Sistem secara Detail
Pada
fase ini semua komponen dirancang dan dijelaskan secara detail. Perencanaan
output (layout) dirancang untuk semua layar, form-form tertentu dan
laporan-laporan yang dicetak. Semua output direview dan disetujui oleh pemakai
dan didokumentasikan.
Berdasarkan
perancangan output dan input, proses-proses dirancang untuk mengubah input
menjadi output. Transaksi-transaksi dicatat dan dimasukkan secara online
atau batch. Macam-macam model dikembangkan untuk
mengubah data menjadi informasi. Prosedur ditulis untuk membimbing pemakai dan
pesonel operasi agar dapat bekerja dengan sistem yang sedang dikembangkan.
Database
dirancang untuk menyimpan dan mengakses data. Kendali-kendali yang dibutuhkan
untuk melindungi sistem baru dari macam-macam ancaman dan error ditentukan.
Pada
akhir fase ini, laporan rancangan sistem secara detail dihasilkan. Laporan ini
mungkin berisi beribu-ribu dokumen dengan semua spesifikasi untuk masing-masing
rancangan sistem yang terintegrasi menjadi satu kesatuan. Laporan ini dapat
juga dijadikan sebagai buku pedoman yang lengkap untuk merancang, membuat kode
dan menguji sistem; instalasi peralatan; pelatihan; dan tugas-tugas
implementasi lainnya.
- Fase Implementasi Sistem dan Pemeliharaan Sistem
I. Sistem
siap untuk dibuat dan diinstalasi.
II. Sejumlah
tugas harus dikoordinasi dan dilaksanakan untuk implementasi sistem baru.
III. laporan
implementasi yang dibuat pada fase ini ada dua bagian, yaitu:
-
Rencana implementasi dalam bentuk Gantt Chart atau Program and Evaluation Review Technique
(PERT) Chart
IV. Penjadwalan
proyek dan teknik manajemen. Bagian kedua adalah laporan yang menerangkan tugas
penting untuk melaksanakan implementasi sistem, seperti :
-
Pengembangan perangkat lunak
-
Persiapan lokasi peletakkan sistem
-
Instalasi peralatan yang digunakan
-
Pengujian Sistem
g. Kelebihan
dan Kekurangan
1. Kelebihan
-
Mudah diaplikasikan.
-
Memberikan template tentang metode
analisis, desain, pengkodean, pengujian, dan pemeliharaan.
2.
Kekurangan
-
Jarang sekali proyek riil mengikuti
aliran sekuensial yang dianjurkan model karena model ini bisa melakukan itersi
tidak langsung.
-
Pelanggan sulit untuk menyatakan kebutuhan
secara eksplisit sehingga sulit untuk megakomodasi ketidakpastian pada saat
awal proyek.
-
Pelanggan harus bersikap sabar karena
harus menunggu sampai akhir proyrk dilalui. Sebuah kesalahan jika tidak
diketahui dari awal akan menjadi masalah besar karena harus mengulang dari
awal.
-
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.
E.
METODE
SPIRAL
Model
spiral pada awalnya diusulkan oleh Boehm, adalah model proses perangkat lunak
evolusioner yang merangkai sifat iteratif dari prototype dengan cara kontrol
dan aspek sistematis model sequensial linier. Model iteratif ditandai dengan
tingkah laku yang memungkinkan pengembang mengembangkan versi perangkat lunak
yang lebih lengkap secara bertahap.
1.
Tahapan-tahapan Model Spiral
a. Komunikasi
Pelanggan
Yaitu
tugas-tugas untuk membangun komunikasi antara pelanggan dan kebutuhan-
kebutuhan yang diinginkan oleh pelanggan.
b. Perencanaan
Yaitu tugas-tugas untuk mendefinisikan sumber daya,
ketepatan waktu, dan proyek informasi lain yg berhubungan.
c. Analisis
Resiko
Yaitu tugas-tugas yang dibutuhkan untuk menaksir
resikomanajemen dan teknis.
d. Perekayasaan
Yaitu tugas yang dibutuhkan untuk membangun satu
atau lebih representasi dari apikasi tersebut.
e. Konstruksi
dan Peluncuran
Yaitu tugas-tugas yang dibutuhkan untuk
mengkonstruksi, menguji, memasang, dan memberi pelayanan kepada pemakai.
f. Evaluasi
Pelanggan
Yaitu
tugas-tugas untuk mendapatkan umpan balik dari pelanggan.
2. Kelebihan
dan Kekurangan
a. Kelebihan
I. Dapat
disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak
komputer.
II. Lebih
cocok untuk pengembangan sistem dan perangkat lunak skala besar
III. Pengembang
dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap
tingkat evolusi karena perangkat lunak terus bekerja selama proses
IV. Menggunakan
prototipe sebagai mekanisme pengurangan resiko dan pada setiap keadaan di dalam
evolusi produk.
V. Tetap
mengikuti langkah-langkah dalam siklus kehidupan klasik dan memasukkannya ke
dalam kerangka kerja iteratif .
VI. Membutuhkan
pertimbangan langsung terhadp resiko teknis sehingga mengurangi resiko sebelum
menjadi permaslahan yang serius.
b. Kekurangan
I. Sulit
untuk menyakinkan pelanggan bahwa pendekatan evolusioner ini bisa dikontrol.
II. Memerlukan
penaksiran resiko yang masuk akal dan akan menjadi masalah yang serius jika
resiko mayor tidak ditemukan dan diatur.
III. Butuh
waktu lama untuk menerapkan paradigma ini menuju kepastian yang absolute
DAFTAR PUSTAKA
Comments
Post a Comment