SlideShare a Scribd company logo
1 of 37
Analisis & Perancangan Sistem
Week 9 & 10
Rekayasa Perangkat Lunak
Pengertian
Analisis sistem didefinisikan sebagai bagaimana memahami dan
menspesifikasi dengan detail apa yang harus dilakukan oleh sistem.
Sementara sistem desain diartikan sebagai menjelaskan dengan detail
bagaimana bagian-bagian dari sistem informasi diimplementasikan.
Dengan demikian, analisis dan desain sistem informasi (ANSI) bisa
didefinisikan sebagai : Proses organisasional kompleks di mana sistem
informasi berbasis komputer diimplementasikan. Atau bisa diringkas
sebagai berikut :
Analysis : mendefinisikan masalah.
 From requirements to specification.
Design : memecahkan masalah.
 From specification to implementation.
2
Pengertian
Ada pertanyaan kunci, mengapa urutan tahapan-tahapan dalam ANSI menjadi
sangat penting. Ada beberapa alasan spesifik.
1. Kesuksesan suatu sistem informasi tergantung pada analisis dan
perancangan yang baik. Tahapan analisis akan menentukan masalah apa yang
harus diselesaikan pada organisasi atau perusahaan. Kesalahan dalam tahap
ini akan mengakibatkan masalah tetap ada walaupun sistem informasi telah
diimplementasikan. Sementara tahapan desain akan sangat menentukan
seperti apa sistem akan berfungsi. Walaupun pada tahapan analisis masalah
utama sudah terpetakan dengan bernar, kesalahan desain akan
mengakibatkan kegagalan penyelesaian masalah oleh sistem komputer.
Dengan demikian, dua langkah ini adalah langkah yang sangat menentukan
untuk pengembangan sistem.
2. Metode ANSI merupakan metode yang cukup lama dipakai untuk
membangun perangkat lunak konvensional. Dengan demikian, kesahihan
langkah-langkah baku yang ada sudah teruji. Metode ini juga telah digunakan
secara luas di berbagai industri (teknologi yang telah teruji).
3
Pengertian
3. ANSI menawarkan profesi baru sebagai seorang analis. Di bagian
sebelumnya, telah kita bahas bahwa stakeholder yang bertanggung jawab
pada pelaksanaan seluruh tahapan ANSI adalah seorang analis. Dengan
perkembangan industri sistem informasi maka sistem analis merupakan
bagian dari karir dalam dunia IT, menawarkan banyak kesenangan dan
tantangan, serta gaji yang tidak rendah. Dan permintaan akan keahlian sistem
analis dari tahun ke tahun juga semakin meningkat. Sistem analis adalah
profesi yang menantang karena menggabungkan banyak keahlian seperti
keahlian analisis, teknis, interpersonal, dan manajerial. Hal ini bisa dilihat dari
tanggung jawab seorang analis berdasarkan pendekatan ANSI, yang meliputi :
a.Bagaimana membangun sistem informasi.
b.Bagaimana menganalisis kebutuhan dari sistem informasi.
c.Bagaimana merancang sebuah sistem informasi berbasis komputer.
d.Bagaimana memecahkan masalah dalam organisasi melalui system
informasi.
4
Metodologi Pengembangan Sistem
Beberapa ahli membagi proses-proses pengembangan sistem ke dalam
sejumlah urutan yang berbeda-beda. Tetapi semuanya akan mengacu
pada proses-proses standar berikut:
a. Analisis
b. Desain -> SDD (Software Design Description)
c. Implementasi
d. Pemeliharaan
Pada perkembangannya, proses-proses standar tadi dituangkan dalam
satu metode yang dikenal dengan nama Systems Development Life
Cycle (SDLC) yang merupakan metodologi umum dalam
pengembangan system yang menandai kemajuan usaha analisis dan
desain.
5
Metodologi Pengembangan Sistem
Systems Development Life Cycle (SDLC) meliputi fase-fase sebagai
berikut:
1. Identifikasi dan seleksi proyek
2. Inisiasi dan perencanaan proyek
3. Analisis
4. Desain
– Desain logical
– Desain fisikal
5. Implementasi
6. Pemeliharaan
6
Identifikasi dan Seleksi Proyek
Merupakan langkah pertama dalam SDLC keseluruhan informasi yang
dibutuhkan oleh sistem: identifikasi, analisis, prioritas, dan susun ulang.
Dalam tahapan ini ada beberapa hal yang harus dilakukan, di antaranya:
1. Mengidentifikasi proyek-proyek yang potensial. Potensi dari proyek yang
dimaksud adalah seberapa besar keuntungan yang bisa diper-oleh, durasi
waktu yang tersedia apakah cukup untuk menyelesaikan proyek, dan apakah
sumber daya yang dimiliki mampu untuk menyelesaikan proyek.
2. Melakukan klasifikasi dan meranking proyek. Jika pada saat yang
bersamaan ada beberapa proyek yang harus dikerjakan sekaligus maka perlu
dibuat klasifikasi dan ranking proyek, dari proyek yang paling layak untuk
dikerjakan sampai proyek yang dirasa tidak menguntungkan jika dikerjakan.
3. Memilih proyek untuk dikembangkan. Jika klasifikasi dan ranking telah
ditetapkan maka selanjutnya adalah menentukan proyek yang harus
dikerjakan.
7
Identifikasi dan Seleksi Proyek
Adapun sumber daya yang terlibat adalah pengguna, analis sistem, dan
manajer yang mengoordinasi proyek. Aktivitas yang biasa dilakukan
pada tahap ini meliputi mewawancarai manajemen pengguna,
merangkum pengetahuan yang didapatkan, dan mengestimasi cakupan
proyek dan mendokumentasi kan hasilnya. Tahapan ini akan
menghasilkan laporan kelayakan yang berisi definisi masalah dan
rangkuman tujuan yang ingin dicapai dari proyek yang dipilih.
8
Inisiasi dan Perencanaan Proyek
Dalam tahapan ini, proyek SI yang potensial dijelaskan dan argumentasi
untuk melanjutkan proyek dikemukakan. Rencana kerja yang matang juga
disusun untuk menjalankan tahapan-tahapan lainnya. Pada tahap ini
ditentukan secara detail rencana kerja yang harus dikerjakan, durasi yang
diperlukan masing-masing tahap, sumber daya manusia, perangkat lunak,
perangkat keras, maupun finansial diestimasi. Biasanya hal-hal tadi
dituangkan dalam jadwal pelaksanaan proyek. Pembuatan perencanaan
ini bukan langkah mudah karena untuk mengestimasi beban kerja dan
durasi dari masing-masing tahap dibutuhkan pengalaman yang cukup
banyak.
Kesalahan pada tahap ini akan mengakibatkan keuntungan yang diperoleh
tidak maksimal, bahkan bisa rugi. Pada tahapan ini peran manajer sistem
informasi yang berpengalaman sangat dibutuhkan.
9
Tahapan Analisis
Fase ketiga dalam SDLC adalah tahapan analisis. Tahapan analisis adalah
tahapan di mana sistem yang sedang berjalan dipelajari dan sistem
pengganti diusulkan. Dalam tahapan ini dideskripsikan sistem yang sedang
berjalan, masalah, dan kesempatan didefinisikan, dan rekomendasi umum
untuk bagaimana memperbaiki, meningkatkan atau mengganti sistem
yang sedang berjalan diusulkan. Tujuan utama dari fase analisis adalah
untuk memahami dan mendokumentasikan kebutuhan bisnis (business
need) dan persyaratan proses dari sistem baru. Ada enam aktivitas utama
dalam fase ini:
1. Pengumpulan informasi -> teknik elistasi
Langkah awal pada tahapan analisis adalah mengumpulkan informasi
tentang bagaimana proses-proses bisnis yang ada pada sistem lama
berjalan. Kemudian ditentukan pada titik-titik mana saja proses bisnis
yang mengalami masalah yang bisa diselesaikan dengan sistem informasi.
Kelemahan-kelemahan dari sistem lama diidentifikasi dan diperbaiki
dengan sistem baru.
10
Tahapan Analisis
2. Mendefinisikan sistem requirement
Dari informasi kelemahan sistem yang didapat, analis sistem kemudian
mendefinisikan apa saja sebenarnya yang dibutuhkan oleh sistem lama untuk
mengatasi masalahnya. Inilah yang disebut sebagai system requirement
(kebutuhan sistem). Seringkali kebutuhan ini akan mengubah total
keseluruhan proses bisnis pada sistem lama, tetapi kadang-kadang hanya
perubahan penambahan beberapa prosedur baru.
3. Memprioritaskan kebutuhan
Dalam beberapa kasus, kebutuhan yang diperoleh sangat lengkap dan rumit.
Ketersediaan waktu dan sumber daya lain untuk menyelesaikan keseluruhan
requirement bisa saja tidak mencukupi. Pada kondisi seperti ini maka analis
akan memprioritaskan kebutuhan-kebutuhan yang dianggap kritis untuk
diprioritaskan.
11
Tahapan Analisis
4. Menyusun dan mengevaluasi alternative
Satu hal yang tidak boleh dilupakan analis adalah rencana kedua. Setelah
menyusun dan memprioritaskan kebutuhan, analis harus menyiapkan
alternatif jika seandainya susunan kebutuhan nantinya akan ditolak oleh klien.
5. Mengulas kebutuhan dengan pihak manajemen
Langkah terakhir adalah mengulas kebutuhan yang sudah ada dengan pihak
klien, karena pihak klien lah yang paling tahu kebutuhan sistem mereka.
12
Tahapan Desain
Tahapan desain adalah tahapan mengubah kebutuhan yang masih
berupa konsep menjadi spesifikasi sistem yang riil. Tahapan desain
sistem dapat dibagi menjadi 2 tahap, yaitu
1. Desain logis (logical design) dan
2. Tahapan desain fisik (physical design).
13
Desain Logis
Desain logis design adalah bagian dari fase desain dalam SDLC di mana semua
fitur-fitur fungsional dari sistem dipilih dari tahapan analisis dideskripsikan
terpisah dari platform komputer yang nanti digunakan Hasil dari tahapan ini
adalah:
a. Deskripsi fungsional mengenai data dan proses yang ada dalam sistem
baru.
b. Deskripsi yang detail dari spesifikasi sistem, meliputi :
⮚Input (data apa saja yang menjadi input).
⮚Output (informasi apa saja yang menjadi output).
⮚Process (prosedur apa saja yang harus dieksekusi untuk mengubah input
menjadi output).
Tahapan desain logis biasanya menghasilkan beberapa dokumen, di antaranya
dokumen model data, dokumen model proses, rancangan tabel, hierarki antar
modul, sampai desain antar muka dari sistem yang akan dibuat.
14
Desain Fisik
Pada bagian ini, spesifikasi logis diubah ke dalam detail teknologi di mana
pemrograman dan pengembangan sistem bisa diselesaikan. Pada tahapan
inilah aktifitas coding dilakukan Adapun output dari sistem ini adalah:
a. Deskripsi teknis, mengenai pilihan teknologi perangkat lunak dan perangkat
keras yang digunakan.
b. Deskripsi yang detail dari spesifikasi sistem meliputi:
⮚Modul-modul program
⮚File-file
⮚Sistem Jaringan
⮚Sistem perangkat lunak
15
Desain Fisik
Pada tahapan desain, ada beberapa aktivitas utama yang dilakukan,
yaitu:
a. Merancang dan mengintegrasikan jaringan.
b. Merancang arsitektur aplikasi
c. Mendesain antar muka pengguna.
d. Mendesain sistem antar muka.
e. Mendesain dan mengintegrasikan database.
f. Membuat prototype untuk detail dari desain.
g. Mendesain dan mengintegrasikan kendalí sistem
16
Implementasi
Pada tahapan kelima SDLC ini terdapat beberapa hal yang perlu
dilakukan, yaitu:
1. Testing, yaitu menguji hasil kode program yang telah dihasilkan dari
tahapan desain fisik. Tujuan pengujian ada dua. Dari sisi pengembang
sistem, harus dijamin kode program yang dibuat bebas dari kesalahan
sintaks maupun logika. Dari sisi pengguna, program yang dihasilkan
harus mampu menyelesaikan masalah yang ada pada klien dan sistem
baru harus mudah dijalankan dan dipahami oleh pengguna akhir.
2. Instalasi. Setelah program lulus ujicoba, maka perangkat lunak dan
perangkat keras akan diinstal pada organisasi atau perusahaan klien
dan secara resmi mulai digunakan untuk menggantikan sistem lama.
Output dari tahapan ini adalah: source code yang error free, prosedur
pelatihan, dan buku panduan.
17
Pemeliharaan
Langkah terakhir dari SDLC di mana pada tahapan ini sistem secara
sistematis diperbaiki dan ditingkatkan. Hasil dari tahapan ini adalah
versi baru dari perangkat lunak yang telah dibuat. Perbaikan yang
dilakukan tingkatannya bisa sangat variatif, mulai dari memperbaiki
program yang crash hingga berfungsi kembali sampai pada
penambahan modul-modul program yang baru sebagai jawaban atas
perubahan kebutuhan pengguna.
18
Kelemahan dari SDLC Tradisional
Hampir sama seperti semua standar industri lain, system development life
cycle punya kelebihan maupun kelemahan. Kelebihannya adalah langkah-
langkah yang sekuensial memungkinkan pengembang system focus pada 1
langkah terlebih dahulu, baru setelah selesai berpindah ke langkah
berikutnya. Untuk pemula pendekatan ini sangat bermanfaat. Tetapi ada
beberapa kelemahan sebagai akibat dari langkah-langkah sekuensial ini, di
antaranya:
1. Terlalu boros, baik dari segi biaya maupun waktu, saat terjadi perubahan
ketika sistem sudalh dikembangkan. Hal ini disebabkan perubahan pada satu
tahap akan berakibat pada tahap berikutnya. Dengan demikian, SDLC harus
dilaksanakan dengan asumsi setiap tahap tidak boleh salah.
2. SDLC merupakan metode dengan pendekatan terstruktur yang
mensyaratkan mengikuti semua langkah yang ada. Jika pengembang
menginginkan proses pembuatan lebih cepat dengan meniadakan satu atau
beberapa langkah maka hasilnya justru sistem yang dibangun akan gagal.
19
Pendekatan Pengembangan Sistem
Hampir sama seperti semua standar industri lain, system development life
cycle punya kelebihan maupun kelemahan. Kelebihannya adalah langkah-
langkah yang sekuensial memungkinkan pengembang system focus pada 1
langkah terlebih dahulu, baru setelah selesai berpindah ke langkah
berikutnya. Untuk pemula pendekatan ini sangat bermanfaat. Tetapi ada
beberapa kelemahan sebagai akibat dari langkah-langkah sekuensial ini, di
antaranya:
1. Terlalu boros, baik dari segi biaya maupun waktu, saat terjadi perubahan
ketika sistem sudalh dikembangkan. Hal ini disebabkan perubahan pada satu
tahap akan berakibat pada tahap berikutnya. Dengan demikian, SDLC harus
dilaksanakan dengan asumsi setiap tahap tidak boleh salah.
2. SDLC merupakan metode dengan pendekatan terstruktur yang
mensyaratkan mengikuti semua langkah yang ada. Jika pengembang
menginginkan proses pembuatan lebih cepat dengan meniadakan satu atau
beberapa langkah maka hasilnya justru sistem yang dibangun akan gagal.
20
Pendekatan Pengembangan Sistem
Pressman membagi tahapan SDLC dalam 4 tahap seperti gambar
berikut:
21
Pendekatan Pengembangan Sistem
SDLC dengan model seperti ini memiliki beberapa kelemahan, yaitu:
1. Terjadinya pembagian proyek menjadi tahap-tahap yang tidak fleksibel,
karena komitmen harus dilakukan pada tahap awal proses.
2. Dapat mengakibatkan sulitnya merespons perubahan kebutuhan
pengguna.
3. Model SDLC harus digunakan hanya ketika persyaratan dipahami
dengan baik.
Beberapa metode kemudian dikembangkan untuk melengkapi kelemahan-
kelemahan yang ada dalam metode SDLC. Ada beberapa metode yang
akan kita bahas pada bab ini, yaitu metode pengembangan sistem
evolusioner, metode pengembangan re-usable, metode prototyping, dan
metode pengembangan berorientasi objek.
22
Metode Pengembangan Evolusioner
Metode pengembangan evolusioner berdasarkan pada ide untuk
mengembangkan implementasi awal, kemudian memperlihatkan sistem awal
itu kepada pengguna untuk dikomentari, dan memperbaikinya versi demi
versi sampai sistem yang memenuhi persyaratan diperoleh. Pada metode ini
tidak ada kegiatan spesifikasi, pengembangan, dan validasi yang terpisah.
Kegiatan-kegiatan ini dilakukan pada saat yang bersamaan dengan umpan
balik yang cepat untuk masing-masing kegiatan.
23
Metode Pengembangan Evolusioner
Pengembangan sistem secara evolusioner sendiri memiliki dua variasi Yang
pertama adalah pengembangan eksplotari. Tujuan proses ini adalah bekerja
dengan pelanggan untuk menyelidiki persyaratan mereka dan mengirimkan
sistem akhir. Harusnya diawali dengan kebutuhan yang sudah dimengerti.
Pendekatan ini biasa digunakan untuk mengembangkan sistem berdasar
pesanan dari klien (custom product). Variasi kedua adalah prototipe yang
dapat dibuang (throw-away-prototype). Metode ini berkonsentrasi pada
eksperimen, dengan persyaratan pelanggan yang tidak dipahami dengan baik,
cocok untuk pengembangan perangkat lunak jenis produk generik.
Ada beberapa kelebihan metode evolusioner jika dibandingkan dengan
SDLC. Metode evolusioner lebih efektif dari pendekatan SDLC dalam
menghasilkan sistem yang memenuhi kebutuhan langsung dari pelanggan.
Karena untuk menghasilkan sistem informasi tidak harus menempuh
keseluruhan tahap SDLC. Keuntungan kedua, sementara pengguna mendapat
pemahaman yang lebih baik dari masalah mereka, sistem perangkat lunak
dapat merefleksikannya.
24
Metode Pengembangan Evolusioner
Adapun kelemahan dari sistem ini antara lain, kurangnya visibilitas
proses. Di samping itu, ika sistem dikembangkan dengan cepat,
tidaklah efektif dari segi biaya jika dihasilkan dokumen yang
merefleksikan setiap versi sistem. Kedua, sistem seringkali memiliki
struktur yang buruk. Hal ini disebabkan perubahan yang terus-
menerus pada program malah cenderung merusak struktur perangkat
lunak. Tentu saja ini mengakibatkan penyesuaian perubahan menjadi
kian sulit dan mahal. Ketiga metode ini membutuhkan kemampuan
pengembangan perangkat lunak dengan SDM yang sudah
berpengalaman.
25
Metode Pengembangan Berorientasi
Pemakaian Ulang (Re-Usable)
Metode ini berpegang pada ide awal sebagai berikut. Untuk beberapa proses
bisnis, permintaan dari satu klien dengan klien yang lain bisa jadi hampir
sama. Dengan demikian, jika sudah memiliki satu sistem informasi, akan
dikembangkan sistem informasi untuk klien yang lain dengan proses bisnis
yang hampir sama. Kita bisa memanfaatkan perangkat lunak yang sudah ada
untuk membuat perangkat lunak yang baru. Tahapan pada metode ini dapat
dilihat pada gambar berikut:
26
Metode Pengembangan Berorientasi
Pemakaian Ulang (Re-Usable)
Ada empat fase utama dalam pengembangan re-usable:
1. Analisis komponen. Dalam fase ini, spesifikasi persyaratan telah diketahui,
komponen-komponen untuk implementasi spesifikasi tersebut akan dicari.
Biasanya, tidak ada kesesuaian yang tepat dan komponen yang dapat dipakai
hanya memberikan sebagian dari fungsionalitas yang dibutuhkan.
2. Modifikasi persyaratan. Persyaratan dianalisis menggunakan informasi
tentang komponen yang didapat, kemudian dimodifikasi untuk merefleksikan
komponen yang ada. Jika modifikasi tidak mungkin dilakukan, maka kegiatan
analisis komponen bisa diulang untuk mencari solusi alternatif.
3. Perancangan sistem dengan pemakaian ulang. Kerangka kerja sistem
dirancang atau kerangka kerja yang telah ada dipakai ulang.
4. Pengembangan dan integrasi. Perangkat lunak yang tidak dapat dibeli akan
dikembangkan dan komponen kemudian diintegrasikan untuk membantu
sistem.
27
Prototyping
Prototyping adalah proses iteratif dalam pengembangan sistem di
mana kebutuhan diubah ke dalam sistem yang bekerja (working
system) yang secara terus menerus diperbaiki melalui kerjasama
antara pengguna dan analis. Prototype juga bisa dibangun melalui
beberapa tool pengembangan untuk menyederhanakan proses.
Prototyping merupakan bentuk dari Rapid Application Development
(RAD). RAD memiliki beberapa kelemahan, di antaranya:
a. RAD mungkin mengesampingkan prinsip-prinsip rekayasa perangkat
lunak.
b. Menghasilkan inkonsistensi pada modul-modul sistem.
c. Tidak cocok dengan standar.
d. Kekurangan prinsip reusability komponen.
28
Metode Prototyping
29
Prototype Methodology
30
1. Analis bekerja dengan tim untuk mengidentifikasi kebutuhan awal untuk
sistem.
2. Analis kemudian membangun prototype. Ketika sebuah prototype telah
selesai. Pengguna bekerja dengan prototype itu dan menyampaikan pada
analis apa yang mereka sukai dan yang tidak mereka sukai.
3. Analis kemudian menggunakan feedback ini untuk memperbaiki
prototype.
4. Versi baru diberikan kembali ke pengguna.
5. Ulangi langkah-langkah tersebut sampai pengguna merasa puas.
Keuntungan Prototype :
1. Prototype melibatkan pengguna dalam analisis dan desain.
2. Punya kemampuan menangkap kebutuhan secara konkret daripada
secara abstrak.
3. Untuk digunakan secara standalone.
4. Digunakan untuk memperluas SDLC.
Object Oriented Analysis and Design
(OOAD)
31
Pendekatan yang terakhir adalah pendekatan berbasis objek. Seiring
dengan berkembangnya trend pemrograman berbasis objek maka
analisis dan desain sistem juga bisa menggunakan konsep objek.
Pendekatan baru untuk pengembangan sistem ini sering disebut
sebagai pendekatan ketiga, setelah pendekatan yang berorientasi data
dan berorientasi proses. OOAD adalah metode pengembangan sistem
yang lebih menekankan objek dibandingkan dengan data atau proses.
Ada beberapa ciri khas dari pendekatan ini, yaitu object, inheritance,
dan object class.
Object adalah struktur yang mengenkapsulasi atribut dan metode yang
beroperasi berdasarkan atribut-atribut tadi. Object adalah abstraksi
dari benda nyata di mana data dan proses diletakkan bersama untuk
memodel kan struktur dan perilaku dari objek dunia nyata.
Object Oriented Analysis and Design
(OOAD)
32
Object class adalah sekumpulan objek yang berbagi struktur yang
sama dan perilaku yang sama.
Inheritance, merupakan properti yang muncul ketika tipe entitas atau
object class disusun secara hierarki dan setiap tipe entitas atau object
class menerima atau mewarisi atribut dan metode dari pendahulunya.
Karena pembahasan tentang OOAD sangat luas dan dalam maka
pembaca dipersilahkan merujuk pada buku-buku OOAD untuk
mendapatkan informasi yang mendalam dan komprehensif.
Teknologi Pengembangan Sistem
33
Object class adalah sekumpulan objek yang berbagi struktur yang
sama dan perilaku yang sama.
Inheritance, merupakan properti yang muncul ketika tipe entitas atau
object class disusun secara hierarki dan setiap tipe entitas atau object
class menerima atau mewarisi atribut dan metode dari pendahulunya.
Karena pembahasan tentang OOAD sangat luas dan dalam maka
pembaca dipersilahkan merujuk pada buku-buku OOAD untuk
mendapatkan informasi yang mendalam dan komprehensif.
Teknologi Pengembangan Sistem
34
Pada perkembangannya desain sistem banyak didukung oleh penggunaan
perangkat lunak dan teknologi baru. Tujuan penggunaan perangkat lunak
untuk analisis memiliki beberapa tujuan:
a.Meningkatkan produktivitas.
b.Berkomunikasi lebih efektif dengan pengguna.
c.Mengintegrasikan pekerjaan yang telah dilaksanakan dari awal
pengembangan sampai akhir.
Tool semacam ini dikategorikan dalam jenis CASE (Computer Aided
Software Engineering). CASE adalah perangkat lunak yang digunakan
untuk mengotomasi atau mendukung penggambaran dan analisis dari
model sistem dan menyediakan translasi dari model sistem ke sistem
aplikasi. Ada beberapa tool yang sering digunakan, misalnya Microsoft
Project dan Rational Rose. Microsoft Project sangat berguna untuk
penjadwalan proyek sedangkan Rational Rose sangat membantu untuk
tahapan proses model maupun data model.
Teknologi Pengembangan Sistem
35
Teknologi Pengembangan Sistem
36
Tugas
• Buatlah slide presentasi anda terkait dengan
topik Perancangan Perangkat Lunak
• Disubmit by sipady dikerjakan perkelompok

More Related Content

Similar to Analisis Perancangan Sistem.pptx

Perancangan sistem informasi m
Perancangan sistem informasi mPerancangan sistem informasi m
Perancangan sistem informasi mFathoni Yunior
 
Tugas sim, ahmad nawawi, putra yunarto mihadi, pengembangan implementasi, 2018
Tugas sim, ahmad nawawi, putra yunarto mihadi, pengembangan implementasi, 2018Tugas sim, ahmad nawawi, putra yunarto mihadi, pengembangan implementasi, 2018
Tugas sim, ahmad nawawi, putra yunarto mihadi, pengembangan implementasi, 2018AhmadNawawi22
 
Tugas sim, yenni nalam, yananto mihadi, pengembangan sistem informasi,, 2018
Tugas sim, yenni nalam, yananto mihadi, pengembangan sistem informasi,, 2018Tugas sim, yenni nalam, yananto mihadi, pengembangan sistem informasi,, 2018
Tugas sim, yenni nalam, yananto mihadi, pengembangan sistem informasi,, 2018ynsinaga
 
Tugas sim, pratiwi rosantry,yananto mihadi putra,se, m.si, pengembangan siste...
Tugas sim, pratiwi rosantry,yananto mihadi putra,se, m.si, pengembangan siste...Tugas sim, pratiwi rosantry,yananto mihadi putra,se, m.si, pengembangan siste...
Tugas sim, pratiwi rosantry,yananto mihadi putra,se, m.si, pengembangan siste...Pratiwi Rosantry
 
SIM, 6, Afifah Khoiriyah, Hapzi Ali, Tahap dan Metode Pengembangan Sistem Inf...
SIM, 6, Afifah Khoiriyah, Hapzi Ali, Tahap dan Metode Pengembangan Sistem Inf...SIM, 6, Afifah Khoiriyah, Hapzi Ali, Tahap dan Metode Pengembangan Sistem Inf...
SIM, 6, Afifah Khoiriyah, Hapzi Ali, Tahap dan Metode Pengembangan Sistem Inf...Afifahkhoiriyah
 
Sim, ika kartika, hapzi ali, sistem manajemen database, universitas mercubuan...
Sim, ika kartika, hapzi ali, sistem manajemen database, universitas mercubuan...Sim, ika kartika, hapzi ali, sistem manajemen database, universitas mercubuan...
Sim, ika kartika, hapzi ali, sistem manajemen database, universitas mercubuan...ika kartika
 
Pengembangan sistem informasi
Pengembangan sistem informasiPengembangan sistem informasi
Pengembangan sistem informasiAlbertz Ace-Red
 
Tugas sim, an'nida fatra, yananto mihadi putra, pengembangan sistem informasi...
Tugas sim, an'nida fatra, yananto mihadi putra, pengembangan sistem informasi...Tugas sim, an'nida fatra, yananto mihadi putra, pengembangan sistem informasi...
Tugas sim, an'nida fatra, yananto mihadi putra, pengembangan sistem informasi...Annidafatra
 
Tugas sim, sarah farhani, yananto mihadi putra se, msi, pengembangan sistem i...
Tugas sim, sarah farhani, yananto mihadi putra se, msi, pengembangan sistem i...Tugas sim, sarah farhani, yananto mihadi putra se, msi, pengembangan sistem i...
Tugas sim, sarah farhani, yananto mihadi putra se, msi, pengembangan sistem i...SarahFarhani
 
SI & PI 4, Achmad Lukman Harun, Hapzi Ali, Infrasturktur TI dan Teknologi Bar...
SI & PI 4, Achmad Lukman Harun, Hapzi Ali, Infrasturktur TI dan Teknologi Bar...SI & PI 4, Achmad Lukman Harun, Hapzi Ali, Infrasturktur TI dan Teknologi Bar...
SI & PI 4, Achmad Lukman Harun, Hapzi Ali, Infrasturktur TI dan Teknologi Bar...Achmad Lukman Harun
 
Sim, 9, syirlla maulidina, hapzi ali, information in implementation, universi...
Sim, 9, syirlla maulidina, hapzi ali, information in implementation, universi...Sim, 9, syirlla maulidina, hapzi ali, information in implementation, universi...
Sim, 9, syirlla maulidina, hapzi ali, information in implementation, universi...SyirllaMaulidina
 
Sistem informasi-siklus hidup sistem
Sistem informasi-siklus hidup sistemSistem informasi-siklus hidup sistem
Sistem informasi-siklus hidup sistemNahot Frastian, M.Kom
 
Sistem informasi-siklus hidup sistem
Sistem informasi-siklus hidup sistemSistem informasi-siklus hidup sistem
Sistem informasi-siklus hidup sistemNahot Frastian, M.Kom
 
9,sim forum quiz,amelia diana angesti,hapzi ali,information in implementation...
9,sim forum quiz,amelia diana angesti,hapzi ali,information in implementation...9,sim forum quiz,amelia diana angesti,hapzi ali,information in implementation...
9,sim forum quiz,amelia diana angesti,hapzi ali,information in implementation...ameliaangesti
 
Pengembangan sistem informasi
Pengembangan sistem informasiPengembangan sistem informasi
Pengembangan sistem informasiRhara Apriliant
 
Sim, rina apriyani, prof. dr. hapzi ali, mm, cma, pengembangan sistem informa...
Sim, rina apriyani, prof. dr. hapzi ali, mm, cma, pengembangan sistem informa...Sim, rina apriyani, prof. dr. hapzi ali, mm, cma, pengembangan sistem informa...
Sim, rina apriyani, prof. dr. hapzi ali, mm, cma, pengembangan sistem informa...RinaApriyani97
 

Similar to Analisis Perancangan Sistem.pptx (20)

Perancangan sistem informasi m
Perancangan sistem informasi mPerancangan sistem informasi m
Perancangan sistem informasi m
 
Tugas sim, ahmad nawawi, putra yunarto mihadi, pengembangan implementasi, 2018
Tugas sim, ahmad nawawi, putra yunarto mihadi, pengembangan implementasi, 2018Tugas sim, ahmad nawawi, putra yunarto mihadi, pengembangan implementasi, 2018
Tugas sim, ahmad nawawi, putra yunarto mihadi, pengembangan implementasi, 2018
 
Apsi (modul 2)
Apsi  (modul 2)Apsi  (modul 2)
Apsi (modul 2)
 
Tugas sim, yenni nalam, yananto mihadi, pengembangan sistem informasi,, 2018
Tugas sim, yenni nalam, yananto mihadi, pengembangan sistem informasi,, 2018Tugas sim, yenni nalam, yananto mihadi, pengembangan sistem informasi,, 2018
Tugas sim, yenni nalam, yananto mihadi, pengembangan sistem informasi,, 2018
 
Tugas sim, pratiwi rosantry,yananto mihadi putra,se, m.si, pengembangan siste...
Tugas sim, pratiwi rosantry,yananto mihadi putra,se, m.si, pengembangan siste...Tugas sim, pratiwi rosantry,yananto mihadi putra,se, m.si, pengembangan siste...
Tugas sim, pratiwi rosantry,yananto mihadi putra,se, m.si, pengembangan siste...
 
SIM, 6, Afifah Khoiriyah, Hapzi Ali, Tahap dan Metode Pengembangan Sistem Inf...
SIM, 6, Afifah Khoiriyah, Hapzi Ali, Tahap dan Metode Pengembangan Sistem Inf...SIM, 6, Afifah Khoiriyah, Hapzi Ali, Tahap dan Metode Pengembangan Sistem Inf...
SIM, 6, Afifah Khoiriyah, Hapzi Ali, Tahap dan Metode Pengembangan Sistem Inf...
 
Sim, ika kartika, hapzi ali, sistem manajemen database, universitas mercubuan...
Sim, ika kartika, hapzi ali, sistem manajemen database, universitas mercubuan...Sim, ika kartika, hapzi ali, sistem manajemen database, universitas mercubuan...
Sim, ika kartika, hapzi ali, sistem manajemen database, universitas mercubuan...
 
Pengembangan sistem informasi
Pengembangan sistem informasiPengembangan sistem informasi
Pengembangan sistem informasi
 
Tugas sim, an'nida fatra, yananto mihadi putra, pengembangan sistem informasi...
Tugas sim, an'nida fatra, yananto mihadi putra, pengembangan sistem informasi...Tugas sim, an'nida fatra, yananto mihadi putra, pengembangan sistem informasi...
Tugas sim, an'nida fatra, yananto mihadi putra, pengembangan sistem informasi...
 
Tugas sim, sarah farhani, yananto mihadi putra se, msi, pengembangan sistem i...
Tugas sim, sarah farhani, yananto mihadi putra se, msi, pengembangan sistem i...Tugas sim, sarah farhani, yananto mihadi putra se, msi, pengembangan sistem i...
Tugas sim, sarah farhani, yananto mihadi putra se, msi, pengembangan sistem i...
 
SI & PI 4, Achmad Lukman Harun, Hapzi Ali, Infrasturktur TI dan Teknologi Bar...
SI & PI 4, Achmad Lukman Harun, Hapzi Ali, Infrasturktur TI dan Teknologi Bar...SI & PI 4, Achmad Lukman Harun, Hapzi Ali, Infrasturktur TI dan Teknologi Bar...
SI & PI 4, Achmad Lukman Harun, Hapzi Ali, Infrasturktur TI dan Teknologi Bar...
 
Sim, 9, syirlla maulidina, hapzi ali, information in implementation, universi...
Sim, 9, syirlla maulidina, hapzi ali, information in implementation, universi...Sim, 9, syirlla maulidina, hapzi ali, information in implementation, universi...
Sim, 9, syirlla maulidina, hapzi ali, information in implementation, universi...
 
Sistem informasi-siklus hidup sistem
Sistem informasi-siklus hidup sistemSistem informasi-siklus hidup sistem
Sistem informasi-siklus hidup sistem
 
Sistem informasi-siklus hidup sistem
Sistem informasi-siklus hidup sistemSistem informasi-siklus hidup sistem
Sistem informasi-siklus hidup sistem
 
Design Software
Design SoftwareDesign Software
Design Software
 
Forum 9
Forum 9Forum 9
Forum 9
 
9,sim forum quiz,amelia diana angesti,hapzi ali,information in implementation...
9,sim forum quiz,amelia diana angesti,hapzi ali,information in implementation...9,sim forum quiz,amelia diana angesti,hapzi ali,information in implementation...
9,sim forum quiz,amelia diana angesti,hapzi ali,information in implementation...
 
Pengembangan sistem informasi
Pengembangan sistem informasiPengembangan sistem informasi
Pengembangan sistem informasi
 
Sim, rina apriyani, prof. dr. hapzi ali, mm, cma, pengembangan sistem informa...
Sim, rina apriyani, prof. dr. hapzi ali, mm, cma, pengembangan sistem informa...Sim, rina apriyani, prof. dr. hapzi ali, mm, cma, pengembangan sistem informa...
Sim, rina apriyani, prof. dr. hapzi ali, mm, cma, pengembangan sistem informa...
 
Prak rpl
Prak rplPrak rpl
Prak rpl
 

Analisis Perancangan Sistem.pptx

  • 1. Analisis & Perancangan Sistem Week 9 & 10 Rekayasa Perangkat Lunak
  • 2. Pengertian Analisis sistem didefinisikan sebagai bagaimana memahami dan menspesifikasi dengan detail apa yang harus dilakukan oleh sistem. Sementara sistem desain diartikan sebagai menjelaskan dengan detail bagaimana bagian-bagian dari sistem informasi diimplementasikan. Dengan demikian, analisis dan desain sistem informasi (ANSI) bisa didefinisikan sebagai : Proses organisasional kompleks di mana sistem informasi berbasis komputer diimplementasikan. Atau bisa diringkas sebagai berikut : Analysis : mendefinisikan masalah.  From requirements to specification. Design : memecahkan masalah.  From specification to implementation. 2
  • 3. Pengertian Ada pertanyaan kunci, mengapa urutan tahapan-tahapan dalam ANSI menjadi sangat penting. Ada beberapa alasan spesifik. 1. Kesuksesan suatu sistem informasi tergantung pada analisis dan perancangan yang baik. Tahapan analisis akan menentukan masalah apa yang harus diselesaikan pada organisasi atau perusahaan. Kesalahan dalam tahap ini akan mengakibatkan masalah tetap ada walaupun sistem informasi telah diimplementasikan. Sementara tahapan desain akan sangat menentukan seperti apa sistem akan berfungsi. Walaupun pada tahapan analisis masalah utama sudah terpetakan dengan bernar, kesalahan desain akan mengakibatkan kegagalan penyelesaian masalah oleh sistem komputer. Dengan demikian, dua langkah ini adalah langkah yang sangat menentukan untuk pengembangan sistem. 2. Metode ANSI merupakan metode yang cukup lama dipakai untuk membangun perangkat lunak konvensional. Dengan demikian, kesahihan langkah-langkah baku yang ada sudah teruji. Metode ini juga telah digunakan secara luas di berbagai industri (teknologi yang telah teruji). 3
  • 4. Pengertian 3. ANSI menawarkan profesi baru sebagai seorang analis. Di bagian sebelumnya, telah kita bahas bahwa stakeholder yang bertanggung jawab pada pelaksanaan seluruh tahapan ANSI adalah seorang analis. Dengan perkembangan industri sistem informasi maka sistem analis merupakan bagian dari karir dalam dunia IT, menawarkan banyak kesenangan dan tantangan, serta gaji yang tidak rendah. Dan permintaan akan keahlian sistem analis dari tahun ke tahun juga semakin meningkat. Sistem analis adalah profesi yang menantang karena menggabungkan banyak keahlian seperti keahlian analisis, teknis, interpersonal, dan manajerial. Hal ini bisa dilihat dari tanggung jawab seorang analis berdasarkan pendekatan ANSI, yang meliputi : a.Bagaimana membangun sistem informasi. b.Bagaimana menganalisis kebutuhan dari sistem informasi. c.Bagaimana merancang sebuah sistem informasi berbasis komputer. d.Bagaimana memecahkan masalah dalam organisasi melalui system informasi. 4
  • 5. Metodologi Pengembangan Sistem Beberapa ahli membagi proses-proses pengembangan sistem ke dalam sejumlah urutan yang berbeda-beda. Tetapi semuanya akan mengacu pada proses-proses standar berikut: a. Analisis b. Desain -> SDD (Software Design Description) c. Implementasi d. Pemeliharaan Pada perkembangannya, proses-proses standar tadi dituangkan dalam satu metode yang dikenal dengan nama Systems Development Life Cycle (SDLC) yang merupakan metodologi umum dalam pengembangan system yang menandai kemajuan usaha analisis dan desain. 5
  • 6. Metodologi Pengembangan Sistem Systems Development Life Cycle (SDLC) meliputi fase-fase sebagai berikut: 1. Identifikasi dan seleksi proyek 2. Inisiasi dan perencanaan proyek 3. Analisis 4. Desain – Desain logical – Desain fisikal 5. Implementasi 6. Pemeliharaan 6
  • 7. Identifikasi dan Seleksi Proyek Merupakan langkah pertama dalam SDLC keseluruhan informasi yang dibutuhkan oleh sistem: identifikasi, analisis, prioritas, dan susun ulang. Dalam tahapan ini ada beberapa hal yang harus dilakukan, di antaranya: 1. Mengidentifikasi proyek-proyek yang potensial. Potensi dari proyek yang dimaksud adalah seberapa besar keuntungan yang bisa diper-oleh, durasi waktu yang tersedia apakah cukup untuk menyelesaikan proyek, dan apakah sumber daya yang dimiliki mampu untuk menyelesaikan proyek. 2. Melakukan klasifikasi dan meranking proyek. Jika pada saat yang bersamaan ada beberapa proyek yang harus dikerjakan sekaligus maka perlu dibuat klasifikasi dan ranking proyek, dari proyek yang paling layak untuk dikerjakan sampai proyek yang dirasa tidak menguntungkan jika dikerjakan. 3. Memilih proyek untuk dikembangkan. Jika klasifikasi dan ranking telah ditetapkan maka selanjutnya adalah menentukan proyek yang harus dikerjakan. 7
  • 8. Identifikasi dan Seleksi Proyek Adapun sumber daya yang terlibat adalah pengguna, analis sistem, dan manajer yang mengoordinasi proyek. Aktivitas yang biasa dilakukan pada tahap ini meliputi mewawancarai manajemen pengguna, merangkum pengetahuan yang didapatkan, dan mengestimasi cakupan proyek dan mendokumentasi kan hasilnya. Tahapan ini akan menghasilkan laporan kelayakan yang berisi definisi masalah dan rangkuman tujuan yang ingin dicapai dari proyek yang dipilih. 8
  • 9. Inisiasi dan Perencanaan Proyek Dalam tahapan ini, proyek SI yang potensial dijelaskan dan argumentasi untuk melanjutkan proyek dikemukakan. Rencana kerja yang matang juga disusun untuk menjalankan tahapan-tahapan lainnya. Pada tahap ini ditentukan secara detail rencana kerja yang harus dikerjakan, durasi yang diperlukan masing-masing tahap, sumber daya manusia, perangkat lunak, perangkat keras, maupun finansial diestimasi. Biasanya hal-hal tadi dituangkan dalam jadwal pelaksanaan proyek. Pembuatan perencanaan ini bukan langkah mudah karena untuk mengestimasi beban kerja dan durasi dari masing-masing tahap dibutuhkan pengalaman yang cukup banyak. Kesalahan pada tahap ini akan mengakibatkan keuntungan yang diperoleh tidak maksimal, bahkan bisa rugi. Pada tahapan ini peran manajer sistem informasi yang berpengalaman sangat dibutuhkan. 9
  • 10. Tahapan Analisis Fase ketiga dalam SDLC adalah tahapan analisis. Tahapan analisis adalah tahapan di mana sistem yang sedang berjalan dipelajari dan sistem pengganti diusulkan. Dalam tahapan ini dideskripsikan sistem yang sedang berjalan, masalah, dan kesempatan didefinisikan, dan rekomendasi umum untuk bagaimana memperbaiki, meningkatkan atau mengganti sistem yang sedang berjalan diusulkan. Tujuan utama dari fase analisis adalah untuk memahami dan mendokumentasikan kebutuhan bisnis (business need) dan persyaratan proses dari sistem baru. Ada enam aktivitas utama dalam fase ini: 1. Pengumpulan informasi -> teknik elistasi Langkah awal pada tahapan analisis adalah mengumpulkan informasi tentang bagaimana proses-proses bisnis yang ada pada sistem lama berjalan. Kemudian ditentukan pada titik-titik mana saja proses bisnis yang mengalami masalah yang bisa diselesaikan dengan sistem informasi. Kelemahan-kelemahan dari sistem lama diidentifikasi dan diperbaiki dengan sistem baru. 10
  • 11. Tahapan Analisis 2. Mendefinisikan sistem requirement Dari informasi kelemahan sistem yang didapat, analis sistem kemudian mendefinisikan apa saja sebenarnya yang dibutuhkan oleh sistem lama untuk mengatasi masalahnya. Inilah yang disebut sebagai system requirement (kebutuhan sistem). Seringkali kebutuhan ini akan mengubah total keseluruhan proses bisnis pada sistem lama, tetapi kadang-kadang hanya perubahan penambahan beberapa prosedur baru. 3. Memprioritaskan kebutuhan Dalam beberapa kasus, kebutuhan yang diperoleh sangat lengkap dan rumit. Ketersediaan waktu dan sumber daya lain untuk menyelesaikan keseluruhan requirement bisa saja tidak mencukupi. Pada kondisi seperti ini maka analis akan memprioritaskan kebutuhan-kebutuhan yang dianggap kritis untuk diprioritaskan. 11
  • 12. Tahapan Analisis 4. Menyusun dan mengevaluasi alternative Satu hal yang tidak boleh dilupakan analis adalah rencana kedua. Setelah menyusun dan memprioritaskan kebutuhan, analis harus menyiapkan alternatif jika seandainya susunan kebutuhan nantinya akan ditolak oleh klien. 5. Mengulas kebutuhan dengan pihak manajemen Langkah terakhir adalah mengulas kebutuhan yang sudah ada dengan pihak klien, karena pihak klien lah yang paling tahu kebutuhan sistem mereka. 12
  • 13. Tahapan Desain Tahapan desain adalah tahapan mengubah kebutuhan yang masih berupa konsep menjadi spesifikasi sistem yang riil. Tahapan desain sistem dapat dibagi menjadi 2 tahap, yaitu 1. Desain logis (logical design) dan 2. Tahapan desain fisik (physical design). 13
  • 14. Desain Logis Desain logis design adalah bagian dari fase desain dalam SDLC di mana semua fitur-fitur fungsional dari sistem dipilih dari tahapan analisis dideskripsikan terpisah dari platform komputer yang nanti digunakan Hasil dari tahapan ini adalah: a. Deskripsi fungsional mengenai data dan proses yang ada dalam sistem baru. b. Deskripsi yang detail dari spesifikasi sistem, meliputi : ⮚Input (data apa saja yang menjadi input). ⮚Output (informasi apa saja yang menjadi output). ⮚Process (prosedur apa saja yang harus dieksekusi untuk mengubah input menjadi output). Tahapan desain logis biasanya menghasilkan beberapa dokumen, di antaranya dokumen model data, dokumen model proses, rancangan tabel, hierarki antar modul, sampai desain antar muka dari sistem yang akan dibuat. 14
  • 15. Desain Fisik Pada bagian ini, spesifikasi logis diubah ke dalam detail teknologi di mana pemrograman dan pengembangan sistem bisa diselesaikan. Pada tahapan inilah aktifitas coding dilakukan Adapun output dari sistem ini adalah: a. Deskripsi teknis, mengenai pilihan teknologi perangkat lunak dan perangkat keras yang digunakan. b. Deskripsi yang detail dari spesifikasi sistem meliputi: ⮚Modul-modul program ⮚File-file ⮚Sistem Jaringan ⮚Sistem perangkat lunak 15
  • 16. Desain Fisik Pada tahapan desain, ada beberapa aktivitas utama yang dilakukan, yaitu: a. Merancang dan mengintegrasikan jaringan. b. Merancang arsitektur aplikasi c. Mendesain antar muka pengguna. d. Mendesain sistem antar muka. e. Mendesain dan mengintegrasikan database. f. Membuat prototype untuk detail dari desain. g. Mendesain dan mengintegrasikan kendalí sistem 16
  • 17. Implementasi Pada tahapan kelima SDLC ini terdapat beberapa hal yang perlu dilakukan, yaitu: 1. Testing, yaitu menguji hasil kode program yang telah dihasilkan dari tahapan desain fisik. Tujuan pengujian ada dua. Dari sisi pengembang sistem, harus dijamin kode program yang dibuat bebas dari kesalahan sintaks maupun logika. Dari sisi pengguna, program yang dihasilkan harus mampu menyelesaikan masalah yang ada pada klien dan sistem baru harus mudah dijalankan dan dipahami oleh pengguna akhir. 2. Instalasi. Setelah program lulus ujicoba, maka perangkat lunak dan perangkat keras akan diinstal pada organisasi atau perusahaan klien dan secara resmi mulai digunakan untuk menggantikan sistem lama. Output dari tahapan ini adalah: source code yang error free, prosedur pelatihan, dan buku panduan. 17
  • 18. Pemeliharaan Langkah terakhir dari SDLC di mana pada tahapan ini sistem secara sistematis diperbaiki dan ditingkatkan. Hasil dari tahapan ini adalah versi baru dari perangkat lunak yang telah dibuat. Perbaikan yang dilakukan tingkatannya bisa sangat variatif, mulai dari memperbaiki program yang crash hingga berfungsi kembali sampai pada penambahan modul-modul program yang baru sebagai jawaban atas perubahan kebutuhan pengguna. 18
  • 19. Kelemahan dari SDLC Tradisional Hampir sama seperti semua standar industri lain, system development life cycle punya kelebihan maupun kelemahan. Kelebihannya adalah langkah- langkah yang sekuensial memungkinkan pengembang system focus pada 1 langkah terlebih dahulu, baru setelah selesai berpindah ke langkah berikutnya. Untuk pemula pendekatan ini sangat bermanfaat. Tetapi ada beberapa kelemahan sebagai akibat dari langkah-langkah sekuensial ini, di antaranya: 1. Terlalu boros, baik dari segi biaya maupun waktu, saat terjadi perubahan ketika sistem sudalh dikembangkan. Hal ini disebabkan perubahan pada satu tahap akan berakibat pada tahap berikutnya. Dengan demikian, SDLC harus dilaksanakan dengan asumsi setiap tahap tidak boleh salah. 2. SDLC merupakan metode dengan pendekatan terstruktur yang mensyaratkan mengikuti semua langkah yang ada. Jika pengembang menginginkan proses pembuatan lebih cepat dengan meniadakan satu atau beberapa langkah maka hasilnya justru sistem yang dibangun akan gagal. 19
  • 20. Pendekatan Pengembangan Sistem Hampir sama seperti semua standar industri lain, system development life cycle punya kelebihan maupun kelemahan. Kelebihannya adalah langkah- langkah yang sekuensial memungkinkan pengembang system focus pada 1 langkah terlebih dahulu, baru setelah selesai berpindah ke langkah berikutnya. Untuk pemula pendekatan ini sangat bermanfaat. Tetapi ada beberapa kelemahan sebagai akibat dari langkah-langkah sekuensial ini, di antaranya: 1. Terlalu boros, baik dari segi biaya maupun waktu, saat terjadi perubahan ketika sistem sudalh dikembangkan. Hal ini disebabkan perubahan pada satu tahap akan berakibat pada tahap berikutnya. Dengan demikian, SDLC harus dilaksanakan dengan asumsi setiap tahap tidak boleh salah. 2. SDLC merupakan metode dengan pendekatan terstruktur yang mensyaratkan mengikuti semua langkah yang ada. Jika pengembang menginginkan proses pembuatan lebih cepat dengan meniadakan satu atau beberapa langkah maka hasilnya justru sistem yang dibangun akan gagal. 20
  • 21. Pendekatan Pengembangan Sistem Pressman membagi tahapan SDLC dalam 4 tahap seperti gambar berikut: 21
  • 22. Pendekatan Pengembangan Sistem SDLC dengan model seperti ini memiliki beberapa kelemahan, yaitu: 1. Terjadinya pembagian proyek menjadi tahap-tahap yang tidak fleksibel, karena komitmen harus dilakukan pada tahap awal proses. 2. Dapat mengakibatkan sulitnya merespons perubahan kebutuhan pengguna. 3. Model SDLC harus digunakan hanya ketika persyaratan dipahami dengan baik. Beberapa metode kemudian dikembangkan untuk melengkapi kelemahan- kelemahan yang ada dalam metode SDLC. Ada beberapa metode yang akan kita bahas pada bab ini, yaitu metode pengembangan sistem evolusioner, metode pengembangan re-usable, metode prototyping, dan metode pengembangan berorientasi objek. 22
  • 23. Metode Pengembangan Evolusioner Metode pengembangan evolusioner berdasarkan pada ide untuk mengembangkan implementasi awal, kemudian memperlihatkan sistem awal itu kepada pengguna untuk dikomentari, dan memperbaikinya versi demi versi sampai sistem yang memenuhi persyaratan diperoleh. Pada metode ini tidak ada kegiatan spesifikasi, pengembangan, dan validasi yang terpisah. Kegiatan-kegiatan ini dilakukan pada saat yang bersamaan dengan umpan balik yang cepat untuk masing-masing kegiatan. 23
  • 24. Metode Pengembangan Evolusioner Pengembangan sistem secara evolusioner sendiri memiliki dua variasi Yang pertama adalah pengembangan eksplotari. Tujuan proses ini adalah bekerja dengan pelanggan untuk menyelidiki persyaratan mereka dan mengirimkan sistem akhir. Harusnya diawali dengan kebutuhan yang sudah dimengerti. Pendekatan ini biasa digunakan untuk mengembangkan sistem berdasar pesanan dari klien (custom product). Variasi kedua adalah prototipe yang dapat dibuang (throw-away-prototype). Metode ini berkonsentrasi pada eksperimen, dengan persyaratan pelanggan yang tidak dipahami dengan baik, cocok untuk pengembangan perangkat lunak jenis produk generik. Ada beberapa kelebihan metode evolusioner jika dibandingkan dengan SDLC. Metode evolusioner lebih efektif dari pendekatan SDLC dalam menghasilkan sistem yang memenuhi kebutuhan langsung dari pelanggan. Karena untuk menghasilkan sistem informasi tidak harus menempuh keseluruhan tahap SDLC. Keuntungan kedua, sementara pengguna mendapat pemahaman yang lebih baik dari masalah mereka, sistem perangkat lunak dapat merefleksikannya. 24
  • 25. Metode Pengembangan Evolusioner Adapun kelemahan dari sistem ini antara lain, kurangnya visibilitas proses. Di samping itu, ika sistem dikembangkan dengan cepat, tidaklah efektif dari segi biaya jika dihasilkan dokumen yang merefleksikan setiap versi sistem. Kedua, sistem seringkali memiliki struktur yang buruk. Hal ini disebabkan perubahan yang terus- menerus pada program malah cenderung merusak struktur perangkat lunak. Tentu saja ini mengakibatkan penyesuaian perubahan menjadi kian sulit dan mahal. Ketiga metode ini membutuhkan kemampuan pengembangan perangkat lunak dengan SDM yang sudah berpengalaman. 25
  • 26. Metode Pengembangan Berorientasi Pemakaian Ulang (Re-Usable) Metode ini berpegang pada ide awal sebagai berikut. Untuk beberapa proses bisnis, permintaan dari satu klien dengan klien yang lain bisa jadi hampir sama. Dengan demikian, jika sudah memiliki satu sistem informasi, akan dikembangkan sistem informasi untuk klien yang lain dengan proses bisnis yang hampir sama. Kita bisa memanfaatkan perangkat lunak yang sudah ada untuk membuat perangkat lunak yang baru. Tahapan pada metode ini dapat dilihat pada gambar berikut: 26
  • 27. Metode Pengembangan Berorientasi Pemakaian Ulang (Re-Usable) Ada empat fase utama dalam pengembangan re-usable: 1. Analisis komponen. Dalam fase ini, spesifikasi persyaratan telah diketahui, komponen-komponen untuk implementasi spesifikasi tersebut akan dicari. Biasanya, tidak ada kesesuaian yang tepat dan komponen yang dapat dipakai hanya memberikan sebagian dari fungsionalitas yang dibutuhkan. 2. Modifikasi persyaratan. Persyaratan dianalisis menggunakan informasi tentang komponen yang didapat, kemudian dimodifikasi untuk merefleksikan komponen yang ada. Jika modifikasi tidak mungkin dilakukan, maka kegiatan analisis komponen bisa diulang untuk mencari solusi alternatif. 3. Perancangan sistem dengan pemakaian ulang. Kerangka kerja sistem dirancang atau kerangka kerja yang telah ada dipakai ulang. 4. Pengembangan dan integrasi. Perangkat lunak yang tidak dapat dibeli akan dikembangkan dan komponen kemudian diintegrasikan untuk membantu sistem. 27
  • 28. Prototyping Prototyping adalah proses iteratif dalam pengembangan sistem di mana kebutuhan diubah ke dalam sistem yang bekerja (working system) yang secara terus menerus diperbaiki melalui kerjasama antara pengguna dan analis. Prototype juga bisa dibangun melalui beberapa tool pengembangan untuk menyederhanakan proses. Prototyping merupakan bentuk dari Rapid Application Development (RAD). RAD memiliki beberapa kelemahan, di antaranya: a. RAD mungkin mengesampingkan prinsip-prinsip rekayasa perangkat lunak. b. Menghasilkan inkonsistensi pada modul-modul sistem. c. Tidak cocok dengan standar. d. Kekurangan prinsip reusability komponen. 28
  • 30. Prototype Methodology 30 1. Analis bekerja dengan tim untuk mengidentifikasi kebutuhan awal untuk sistem. 2. Analis kemudian membangun prototype. Ketika sebuah prototype telah selesai. Pengguna bekerja dengan prototype itu dan menyampaikan pada analis apa yang mereka sukai dan yang tidak mereka sukai. 3. Analis kemudian menggunakan feedback ini untuk memperbaiki prototype. 4. Versi baru diberikan kembali ke pengguna. 5. Ulangi langkah-langkah tersebut sampai pengguna merasa puas. Keuntungan Prototype : 1. Prototype melibatkan pengguna dalam analisis dan desain. 2. Punya kemampuan menangkap kebutuhan secara konkret daripada secara abstrak. 3. Untuk digunakan secara standalone. 4. Digunakan untuk memperluas SDLC.
  • 31. Object Oriented Analysis and Design (OOAD) 31 Pendekatan yang terakhir adalah pendekatan berbasis objek. Seiring dengan berkembangnya trend pemrograman berbasis objek maka analisis dan desain sistem juga bisa menggunakan konsep objek. Pendekatan baru untuk pengembangan sistem ini sering disebut sebagai pendekatan ketiga, setelah pendekatan yang berorientasi data dan berorientasi proses. OOAD adalah metode pengembangan sistem yang lebih menekankan objek dibandingkan dengan data atau proses. Ada beberapa ciri khas dari pendekatan ini, yaitu object, inheritance, dan object class. Object adalah struktur yang mengenkapsulasi atribut dan metode yang beroperasi berdasarkan atribut-atribut tadi. Object adalah abstraksi dari benda nyata di mana data dan proses diletakkan bersama untuk memodel kan struktur dan perilaku dari objek dunia nyata.
  • 32. Object Oriented Analysis and Design (OOAD) 32 Object class adalah sekumpulan objek yang berbagi struktur yang sama dan perilaku yang sama. Inheritance, merupakan properti yang muncul ketika tipe entitas atau object class disusun secara hierarki dan setiap tipe entitas atau object class menerima atau mewarisi atribut dan metode dari pendahulunya. Karena pembahasan tentang OOAD sangat luas dan dalam maka pembaca dipersilahkan merujuk pada buku-buku OOAD untuk mendapatkan informasi yang mendalam dan komprehensif.
  • 33. Teknologi Pengembangan Sistem 33 Object class adalah sekumpulan objek yang berbagi struktur yang sama dan perilaku yang sama. Inheritance, merupakan properti yang muncul ketika tipe entitas atau object class disusun secara hierarki dan setiap tipe entitas atau object class menerima atau mewarisi atribut dan metode dari pendahulunya. Karena pembahasan tentang OOAD sangat luas dan dalam maka pembaca dipersilahkan merujuk pada buku-buku OOAD untuk mendapatkan informasi yang mendalam dan komprehensif.
  • 34. Teknologi Pengembangan Sistem 34 Pada perkembangannya desain sistem banyak didukung oleh penggunaan perangkat lunak dan teknologi baru. Tujuan penggunaan perangkat lunak untuk analisis memiliki beberapa tujuan: a.Meningkatkan produktivitas. b.Berkomunikasi lebih efektif dengan pengguna. c.Mengintegrasikan pekerjaan yang telah dilaksanakan dari awal pengembangan sampai akhir. Tool semacam ini dikategorikan dalam jenis CASE (Computer Aided Software Engineering). CASE adalah perangkat lunak yang digunakan untuk mengotomasi atau mendukung penggambaran dan analisis dari model sistem dan menyediakan translasi dari model sistem ke sistem aplikasi. Ada beberapa tool yang sering digunakan, misalnya Microsoft Project dan Rational Rose. Microsoft Project sangat berguna untuk penjadwalan proyek sedangkan Rational Rose sangat membantu untuk tahapan proses model maupun data model.
  • 37. Tugas • Buatlah slide presentasi anda terkait dengan topik Perancangan Perangkat Lunak • Disubmit by sipady dikerjakan perkelompok