Anda di halaman 1dari 6

Nama : Nadiya Safitri

NPM : 19316014
Kelas : TK19B
Latar Belakang 

Prinsip pengembangan sebuah perangkat lunak terbagi menjadi dua yaitu untuk tujuan
pendidikan dan untuk tujuan industri (Mills, 1980). Terdapat perbedaan yang mendasar dari
kedua prinsip tersebut jika dilihat dari segi pengelaman, level usia, kemampuan maupun latar
belakang. Khusus untuk tujuan pendidikan perangkat lunak sudah seharusnya seorang
pengembang memiliki kemampuan yang meliputi semua tahapan (Subhiyakto, Kamalrudin,
Sidek, & S. Ahmad, 2014). 

Dalam dunia pendidikan perangkat lunak terdapat beberapa tahapan pengembangan yang lebih
dikenal dengan istilah SDLC (Software Development Life Cycle), yang mencakup tahap
perencanaan, analisis, perancangan, dan implementasi. Lebih fokus pada tahap analisis, ketika
seorang pengembang melakukan proses analisis, maka dilakukan tahapan pemodelan
menggunakan berbagai macam diagram. Pemodelan kebutuhan perangkat lunak yang di lakukan
terbagi menjadi dua jenis, yakni pemodelan terstruktur dan pemodelan berorientasi objek.
Perbedaan mendasar dari pemodelan tersebut dapat dilihat dari perangkat lunak yang dibangun.

 Pemodelan terstruktur, digunakan untuk perangkat lunak yang menggunakan modul -modul,
sedangkan pemodelan berorientasiobjek didasarkan pada class dan objek yang ada pada sebuah
perangkat lunak. Jika pada pemodelan terstruktur menggunakan DFD (Data Flow Diagram)
untuk menggambarkan prosesnya dan ERD (Entity Relationship Diagram) untuk
menggambarkan relasi datanya, maka untuk pemodelan berorientasi objek menggunakan
pemodelan dengan UML (Unified Modeling Language). UML telah menjadi standar pemodelan
berorientasi objek (He, 2000). Dalam UML terdapat beberapa diagram, yang familiar
diantaranya adalah use case diagram, class diagram, activity diagram, sequence diagram.
Sedangkan untuk melakukan pemodelan itu sendiri, pengembang biasanya memerlukan alat
bantu berupa aplikasi pemodelan seperti Rational Rose, StarUML, ArgoUML, Enterprise
Architect, dan berbagai alat pemodelan lainnya.

Tahapan / Fase – Fase dalam SDLC


1.   Perencanaan Sistem (Systems Planning)

Lebih menekankan pada aspek studi kelayakan pengembangan sistem (feasibility study).
Aktivitas-aktivitas yang ada meliputi :

 Pembentukan dan konsolidasi tim pengembang.


 Mendefinisikan tujuan dan ruang lingkup pengembangan.
 Mengidentifikasi apakah masalah-masalah yang ada bisa diselesaikan melalui
pengembangan sistem.
 Menentukan dan evaluasi strategi yang akan digunakan dalam pengembangan
sistem.
Nama : Nadiya Safitri
NPM : 19316014
Kelas : TK19B
 Penentuan prioritas teknologi dan pemilihan aplikasi.

2.      Analisis Sistem (Systems Analysis)

Pada tahap ini, sistem akan dianalisis bagaimana akan dijalankan nantinya. Hasil analisis
berupa kelebihan dan kekurangan sistem, fungsi sistem, hingga pembaharuan yang dapat
diterapkan. Bagian ini termasuk dalam bagian perencanaan. Bagian lain yang termasuk
dalam perencanaan ialah alokasi sumber daya, perencanaan kapasitas, penjadwalan
proyek, estimasi biaya, dan penetapan. Dengan demikian, hasil dari tahap perencanaan
ialah rencana proyek, jadwal, estimasi biaya, dan ketentuan. Idealnya manajer proyek dan
pengembang dapat bekerja maksimal pada tahap ini.

Analisa sistem adalah tahap di mana dilakukan beberapa aktivitas berikut:

 Melakukan studi literatur untuk menemukan suatu kasus yang bisa


ditangani oleh sistem.
 Brainstorming dalam tim pengembang mengenai kasus mana yang paling
tepat dimodelkan dengan sistem.
 Mengklasifikasikan masalah, peluang, dan solusi yang mungkin diterapkan
untuk kasus tersebut.
 Analisa kebutuhan pada sistem dan membuat Batasan-batasan sistem.
 Mendefinisikan kebutuhan sistem.

3.      Perancangan Sistem (Systems Design)

Tahapan ini akan menghasilkan prototype dan beberapa output lain meliputi dokumen
berisi desain, pola, dan komponen yang diperlukan untuk mewujudkan proyek tersebut.
Setelah spesifikasi, kemudian dilakukan perancangan sistem sebagai tahapan
kelanjutannya. Tahap ini ialah tahap di mana seluruh hasil analisis dan pembahasan
tentang spesifikasi sistem diterapkan menjadi rancangan atau cetak biru sebuah sistem.
Tahap ini disebut sebagai cetak biru, di mana sistem sudah siap untuk dikembangkan
mulai dari implementasi, analisis sistem, hingga tenaga pendukung sistem yang akan
dikembangkan.

Pada tahap ini, features dan operasi-operasi pada sistem dideskripsikan secara detail.
Aktivitas-aktivitas yang dilakukan adalah:

 Menganalisa interaksi obyek dan fungsi pada sistem.


 Menganalisa data dan membuat skema database.
 Merancang user interface.

Implementasi Sistem (Systems Implementation)


Nama : Nadiya Safitri
NPM : 19316014
Kelas : TK19B
Tahap berikutnya adalah implementasi yaitu mengimplementasikan rancangan dari tahap-tahap
sebelumnya dan melakukan uji coba. Dalam implementasi, dilakukan aktivitas-aktivitas sebagai
berikut:

 Pembuatan database sesuai skema rancangan.


 Pembuatan aplikasi berdasarkan desain sistem.
 Pengujian dan perbaikan aplikasi (debugging).

Pemeliharaan Sistem (Systems Maintenance)

Dilakukan oleh admin yang ditunjuk untuk menjaga sistem tetap mampu beroperasi secara benar
melalui kemampuan sistem dalam mengadaptasikan diri sesuai dengan kebutuhan. 

Manfaat:

1. Agar seseorang dapat mengembangkan perangkat lunak yang bermanfaat bagi user

Tujuan dan juga fungsi yang pertama adalah agar seseorang yang mempelajari materi  ini
mampu mengembangkan sebuah perangkat lunak yang berguna dan juga bermanfaat bagi
usernya. Sebuah perangkat lunak tentu saja tidak akan digunakan oleh user apabila tidak
memiliki fungsi yang spesifik.

Karena itu dengan mempelajari materi ini akan membuat seseorang menjadi lebih paham
mengenai pengembangan perangkat lunak yang fungsional. Contohnya, perangkat lunak
jaringan komputer yang digunakan dalam mengkoneksikan komputer pada internet.

2. Agar seseorang mampu mengembangkan perangkat lunak yang sudah ada menjadi
lebih baik lagi

Perangkat lunak yang sudah ada terkadang membutuhkan pembaruan, karena fungsinya
yang mungkin sudah berkurang. Karena itu, dengan mempelajari materi ini seseorang
akan mampu mengembangkan perangkat lunak yang sudah ada sebelumnya agar
kemudian menjadi sebuah sistem perangkat lunak yang dapat berguna dan menjadi lebih
baik lagi di kalangan user.

3. Menciptakan sebuah perangkat lunak yang ramah dan user friendly

Sistem perangkat lunak yang user friendly adalah sebuah sistem yang didambakan oleh
setiap user. Paling tidak, sebauh sistem perangkat lunak yang user friendly membutuhkan
tampilan atau interface yang menarik, fungsionalitas, hingga kemudahan dalam
penggunaannya.

Mereka yang mempelajari sistem rekayasa perangkat lunak ini tentu saja paham betul
dengan hal ini, sehingga dapat membantu mereka mengembangkan sebuah sistem
Nama : Nadiya Safitri
NPM : 19316014
Kelas : TK19B
perangkat lunak yang user friendly, dan pastinya mudah untuk digunakan oleh banyak
kalangan user.

4. Agar sebuah sistem perangkat lunak bisa diintegrasikan dengan peralatan


mekanikal yang ada, sehingga menjadi lebih bermanfaat

Beberapa peralatan mekanikal, seperti robotic membutuhkan integrasi dengan perangkat


lunak agar bisa bekerja dengan baik dan juga optimal. Mereka yang mempelajari
mengenai rekayasa peangkat lunak tentu saja sudah sangat paham dengan hal ini. Dengan
kemampuan yang dipelajari dalam rekayasa perangkat lunak, maka sebuah sistem
perangkat lunak dapat diintegrasikan ke dalam sebuah peralatan mekanikal, sehingga
dapat mendukung kegiatan operasional dari peralatan tersebut.

5. Agar seseorang mampu untuk melakukan perawatan dan maintanence dari


perangkat lunak yang sudah ada

Funsi dari mereka yang mempelajari rekayasa perangkat lunak tidak hanya terpaku pada
pembuatan dan juga pengembangan dari sistem perangkat lunak yang ada, namun juga
berada pada level maintenance atau perawatan dari sebuah perangkat lunak yang ada.
Setiap perangkat lunak tentu saja membutuhkan maintenance, terutam aketika perangkat
lunak tersebut mengalami suatu gangguan atau kendala. Karena itu, pembelajaran
mengenai rekayasa perangkat lunak sangatlah dibutuhkan, untuk kepentingan perawatan
dan juga maintenance dari perangkat lunak tersebut.

Kasus Kegagalan Perangkat Lunak

Akan tetapi banyak juga terjadi kegagalan suatu perangkat lunak bahkan menimbulkan
kerusakan dan kematian, seperti pada kasus-kasus berikut

 Pada tahun 1988 kapal perang USS Vincennes menempak jatuh pesawat komersil Airbus
320 yang disebabkan oleh output program pelacakan yang ditampilkan tidak jelas.
 Kesalahan diagnosa pada perangkat lunak medis yang menyebabkan kematian.
 Sistem peringatan radar kapal yang mengidentifikasi roket Excocet sebagai teman yang
mengakibatkan kapal The British Destroyer tenggelam.
 Therac 25 merupakan perangkat terapi radiasi medis yang bekerja dengan sistem
terkomputerisasi. Pada tahun 1985 hingga 1987 terdapat 6 kali kecelakaan akibat
overdosis radiasi yang dihasilkan oleh alat tersebut hingga mengakibatkan kematian dan
luka serius. Sistem keamanan dari Therac25 ini lebih mengandalkan perangkat lunak
bukan pada perangkat keras sementara pengujian keamanan yang dilakukan lebih ke arah
perangkat keras dan tidak ke perangkat lunak sehingga mengakibatkan kesalahan
perangkat lunak terutama system engneering.
 Pada tahun 2003, dimana listrik mati di amerika timur dan sebagian kanada selama lebih
dari sehari sebenarnya listrik sudah dapat menyala dalam dua jam namun dikarenakan
fungsi alarm dalam software manajemen listrik tidak bekerja.
Nama : Nadiya Safitri
NPM : 19316014
Kelas : TK19B
 Pada tahun 1962, roket milik eropa terpaksa diledakan setelah tiga menit lepas landas
karena komputer pengendali mengatakan bahwa roket dalam keadaan tidak terkendali,
oleh karena itu untuk menghindari resiko yang lebih besar maka roket tersebut diledakan
secara paka. Padahal sebetulnya roket tersebut baik-baik saja. Kesalahan komputer dalam
memberikan informasi diakibatkan kesalahan program perangkat lunak yang digunakan.
Diketahui kesalahan program  disebabkan programmer lupa memasukan tanda bar di atas
simbol tertentu unuk menunjukan nilai rata-rata.
 Pada tahun 1996, roket Arienne 5 keluar jalur dan meledak hanya 40 detik setelah
diluncurkan. Penyebabnya dimana terjadi overflow saat mengkonversi sebuah nilai
floating 64 bt yang berkaitan dengan kecepatan horisontal roket 16 bit. Angkanya lebih
besar 32,767 nilai integer yang bia diimpan di 16 bit sehingga mengakibatkan konveri
gagal.
 Pada tahun 1991, militer Amerika gagal dalam mengantisipasi roket Irak sehingga
menghantam barak tentara. Hal ini disebabkan pada kesalahan perhitungan waktu sejak
booting yang berakibat pada kesalahan aritmetik komputer sehingga waktu yang terukur
di alat lebih lama dibandingkan dengan kenyataanya.

Penyebab Kegagalan Perangkat Lunak

Dari beberapa kasus tersebut dan penyebab kegagalan sebuah perangkat lunak disebabkan oleh
beberapa faktor dan hal, diantaranya

 Analisa sistem yang kurang baik merupakan penyebab kegagalan yang sering terjadi,
dimana perangkat lunak umumnya tidak bisa memenuhi fungsi dan tugasnya. Salah satu
penyebabnya dimana pengguna kurang terbuka dalam menyatakan kebutuhan sehingga
menyulitkan pengembang perangkat lunak untuk menterjemahkan dalam suatu model.
 Perencanaan yang Buruk termasuk penjadwalan pekerjaan tidak sempurma. Pimpinan
proyek termasuk manajer menganggap tidak perlu adanya perencanaan yang matang atau
rencana dibuat sembali proyek jalan. Perencaan jadwal kerja yang buruk bisa
mengakibatkan tidak ada target yang harus dicapai pada waktu tertentu sehingga waktu
yang dibutuhkan untuk pengembnagnan perangkat lunak menjadi molor dari deadline
yang ditetapkan.
 Perencanaan finansial yang buruk sehingga mengakibatkan ketidakmampuan
memprediksi harga dan perubahan.
 Arsitektur perangkat lunak kurang bagus, arsitektur perangkat lunak harus mempunyai
kemampuan beradaptasi dengan rencana jangka panjang maupun perubahan-perubahan
yang dibutuhkan.
 Terlambat mengetahui tanda-tanda kegagalan perangkat lunak, sinyak kegagalan
terkadang teah mucul dari awal hanya saj tidak satupun yang memahaminya atau tidak
diperbaiki, sehingga ketika tanda-tanda tersebut semakin jelas dan membesar, proyek
sulit diselamatkan lagi dan membutuhkan waktu yang lebih banyak lagi.
 Kegagalan komunikasi dan konflik antar stakeholder, kegagalan komunikasi bisa terjadi
baik antar pengembang perangkat lunak ataupun antar stakeholder.
Nama : Nadiya Safitri
NPM : 19316014
Kelas : TK19B
    Alamat web Program studi, Fakultas,
Universitas : http://ti.ftik.teknokrat.ac.id, http://ftik.teknokrat.ac.id, www.teknokrat.ac.id
  Nama Mahasiswa : NADIYA SAFITRI 
  NPM : 19316014
 Kelas : Tk19B

Anda mungkin juga menyukai