MATERI REKAYASA PERANGKAT LUNAK

 

 

REKAYASA PERANGKAT LUNAK

BAB I
1.PERANGKAT LUNAK DAN PERKEMBANGANNYA
Perkembangan perangkat lunak dibagi dalam beberapa kelompok antara lain :
1. KELOMPOK PERTAMA
Kelompok pertama, tahun 1950-an dengan ciri-ciri :
  • Orientasi ke batch processing, artinya proses bertumpuk dimana pemrosesan dilakukan jika sejumlah data telah dikumpulkan dalam waktu yang telah ditentukan.
  •  Limited distributed, artinya pemrosesan data kebanyakan masih dilakukan secara terpusat.
  •  Custom software, artinya perangkat lunak yang dibuat untuk dikembangkan dan dijual kepada satu USER atau lebih.
2. KELOMPOK KE DUA
Kelompok ke dua, tahun 1960-an dengan ciri-ciri :
  • Multi user.
  • Real time.
  • Database.
  • Product software.
3. KELOMPOK KE TIGA
Kelompok ke tiga, tahun 1980-an dengan ciri-ciri :
  • Distributed system, artinya komputer yang digunakan dalam memproses data banyak dan mempunyai fungsi masing masing dan dapat saling berkomunikasi.
  • Biaya hardware murah dengan ditandai perkembangan komputer micro.
4. KELOMPOK KE EMPAT
Kelompok ke empat, tahun 1990-an dengan ciri-ciri :
  • Sistim pakar (Expert system).
  • Mesin Kecerdasan Buatan (Artificial Intellegence Machine).
  • Komputer paralel.
2. KARAKTERISTIK
Pembuatan suatu perangkat lunak berdasarkan logika sehingga berbeda – beda dengan lainnya.
  • Perangkat lunak dikembangkan bukan dibuat oleh pabrik tertentu dan tidak masal karena memerlukan perancangan yang baik.
  • Perangkat lunak tidak akan pernah usang karena selalu diperbaharui.
3. APLIKASI PERANGKAT LUNAK
Berikut ini beberapa aplikasi perangkat lunak antara lain :
1. System Software
Merupakan kumpulan program yang ditulis untuk menunjang pemakaian atau pembuatan suatu program.
2. Real Time Software
Merupakan program untuk mengukur, menganalisa, mengontrol proses pemasukan data dari lingkungan luar sampai menghasilkan laporan yang sesuai dengan keinginan.
3. Business Software
Perangkat lunak untuk aplikasi bisnis.
4. Engineering and Scientific Software
Perangkat lunak yang digunakan untuk bidang teknik dan perekayasaan.
5. Embedded Software
Perangkat lunak yang digunakan untuk mengontrol proses pabrik dan disimpan dalam ROM komputer.
6. Personal Computer Software
Perangkat lunak yang digunakan dalam aplikasi komputer mikro.
7. Artificial Intellegence Software
Perangkat lunak yang digunakan dalam bidang kecerdasan buatan.
4.SOFTWARE ENGINEERING
Sofware Engineering adalah orang yang mampu memilih alat bantu dalam perencanaan dan penerapan perangkat lunak, memiliki teknik menilai kualitas perangkat lunak yang dihasilkan, mampu mengkoordinasi, mengontrol dan mengatur pelaksanaan pekerjaan pembuatan perangkat lunak.
Tiga langkah kerja dari software engineering adalah :
  1. 1.      Metoda
  • Metoda yang digunakan untuk membuat atau mengembangkan perangkat lunak, mencakup :
  • Perencanaan proyek dan perkiraan.
  • Analisis keperluan sistim dan perangkat lunak.
  • Perancangan struktur data.
  • Arsitektur program.
  • Prosedur algoritma.
  • Coding.
  • Testing (Uji coba).
  • Pemeliharaan.
  1. 2.      Alat Bantu
Digunakan untuk mendukung pelaksanaaan pengembangan atau pembuatan perangkat lunak, berupa alat bantu manual dan alat bantu otomatis.
  1. 3.       Prosedur
Mendefinisikan urutan pengerjaan dari metoda dan alat yang digunakan dalam pemecahan atau pembuatan perangkat lunak.
5. SIKLUS KERJA SISTIM ENGINEERING
Berikut ini adalah tahapan dalam siklus kerja sistem engineering:
1. Sistem Enginering adalah Bagian terbesar dari pekerjaan proyek dengan menetapkan segala hal yang di butuhkan dalam pelaksanaan proyek.
2. Analisi adalah Tahap dimana sistim engineering menganalisis hal-hal yang di perlukan dalam pelaksanaan proyek.
3.Desain Tahap menterjemahkan data yang telah di analisis ke dalam bentuk yang di mengerti user.
4.Kode Tahap menterjemahkan data yang telah di rancang ke dalam bahasa program.
5.Testing Tahap uji coba terhadap program.
6.Pemeliharaan Tahap bila terjadi perubahan terhadap perangkat lunak akibat permintaan user

6. PROTOTIPE
Prototipe adalah proses pembuatan model dari perangkat lunak yang akan dibuat sehingga user dapat mengetahui hasil yang akan dibuat.
Tujuannya untuk mendefinisikan perangkat lunak yang akan dihasilkan tanpa menyertakan rincian pemasukan data, proses dan keluaran yang diperlukan:
  • ANALISIS
  • DESIGN
  • BUAT PROTOTIPE
  • EVALUASI & PERBAIKAN
  • HASIL

7. FASE PENGEMBANGAN PERANGKAT LUNAK
Fase pengembangan perangkat lunak terdiri dari :
  1. 1.      FASE DEFINISI
Fase Definisi, mendefinisikan informasi yang akan diproses, fungsi dan performansi yang diinginkan, menetapkan interface, merancang kendala dan batasan serta kriteria validasi yang diperlukan untuk menunjang keberhasilan sistim.
  1. 2.      FASE PENGEMBANGAN
Fase Pengembangan, menjabarkan struktur data dan arsitektur perangkat lunak, prosedur rinci untuk penerapan, proses penerjemahan ke dalam bahasa pemrograman dan uji coba yang dilakukan
  1. 3.      FASE PEMELIHARAAN
Fase Pemeliharaan, jika terjadi perubahan terhadap pembetulan, perbaikan terhadap lingkungan dan penambahan karena permintaan user.
8. PERTIMBANGAN SOFTWARE ENGINEERING
Sebagai seorang software engineering dalam merencanakan suatu pembuatan perangkat lunak atau pengembangan perangkat lunak ada beberapa hal yang harus di pertimbangkan, dimana pertimbangan tersebut meliputi :

1. PERTIMBANGAN PERANGKAT KERAS
Pada Pertimbangan Perangkat Keras yang harus diperhatikan adalah :
  1. 1.      Elemen Perangkat Keras
a)      Pemeliharaan elemen perangkat keras berdasarkan pada karakteristik :
b)      Komputer dipaketkan pada suatu blok yang bisa dikembangkan.
c)      Interface antar komponen standard.
d)      Tersedia beberapa alternatif.
e)      Unjuk kerja, biaya dan ketersediaannya relatif mudah ditentukan.
  1. 2.      Harga dan Kemampuannya
Penyesuian antara elemen yang akan digunakan dapat dipertimbangkan sesuai dengan kebutuhan dan kemampuannya.
  1. 3.      Rekayasa Perangkat Keras
Untuk komputer digital yang dikembangkan dari perancangan elektronik, proses perancangannya terdiri dari tiga fase antara lain :
Ø Perencanaan dan Spesifikasi.
Ø Perencanaan dan Implementasi Prototype.
Ø Distribusi Manufaktur dan pelayanan.

2. PERTIMBANGAN PERANGKAT LUNAK
Disusun dari 2 tipe yaitu aplikasi perangkat lunak dan sistim perangkat lunak.
3. PERTIMBANGAN MANUSIA
Menjabarkan jumlah tenaga kerja yang diperlukan dalam pelaksanaan pengembangan perangkat lunak serta tingkat keahlian yang diperlukan
9. TAHAP KERJA SISTIM ENGINEERING
Dalam memecahkan suatu permasalahan sistim engineering harus mengikuti tahap kerja yang harus dilakukan, antara lain sebagai berikut :
1. SYSTEM REQUEST
Merupakan permintaan pembuatan sistim baru atau memperbaiki sistim yang telah berjalan pada suatu perusahaan  
2. SYSTEM PLANNING (PERENCANAAN)
Merupakan tahap sistim engineering yang merencanakan alternatif pemecahan masalah yang ada
3. SOFTWARE REQUIREMENT (ANALISA)
Merupakan tahap sistim engineering untuk menganalisa permasalahan yang ada dengan menggunakan metoda yang telah ditentukan
  1. 4.      SOFTWARE DESIGN (PERANCANGAN)
Merupakan kegiatan menterjemahkan masalah yang sudah didefinisikan ke dalam bentuk yang dimengerti oleh pembuat program (programmer).
  1. 5.      PROGRAMMING LANGUAGE DAN CODING
Proses penterjemahan masalah ke dalam bahasa komputer yang telah ditentukan dan sesuai dengan aplikasi yang sedang dikerjakan.
  1. 6.      SOFTWARE TESTING (UJI COBA)
Uji coba terhadap progam yang telah dikerjakan.
  1. 7.      SOFTWARE MAINTENANCE (PEMELIHARAAN)
Pemeliharaan terhadap hasil pekerjaan yang telah selesai dikerjakan.
  1. 8.       DOKUMENTASI
Kumpulan dari catatan hasil kerja
BAB. II
PERENCANAAN TUJUAN PERANGKAT LUNAK
Topik di Materi ini Meliputi :
1. GAMBARAN UMUM
seorang pemimpin peroyek hendaknya menentukan terlebih dahulu gambaran sebuah peroyek yg akan dibuat agar nantinya tidak akan mengalami kesulitan. ada beberapa hal yg harus di perhatikan oleh pemimpin peroyek antara lain :
  • batasan dari pekerjaan yg akan di kerjakan
  • Sumber daya yang diperlukan.
  •  Tugas yang akan dikerjakan.
  •  Kendala dan batasan.
  • Biaya dan jadwal kerja.
2. KATEGORI UKURAN PROYEK
ukuran peroyek merupahan hal penting dalam menentukan sebuah organisasi pemecahan masalah dan tehnik serta alat bantu yang di pergunakan dalam pengerjaan peroyek di tentukan di sini:
  • Trivial Proyek.
  • Small Proyek.
  • Medium Proyek.
  • Large Proyek.
  • Very Large Proyek.
  • Extremely Large Proyek.
3. TUJUAN PERENCANAAN PROYEK
di sini menjelaskan tujuan proyek tersebut apa yg akan kita tuju kedepan yah Tujuan dari Perencanaan Proyek Perangkat Lunak adalah untuk menyediakan kerangka atau landasan yang memungkinkan manajer atau pimpinan proyek dapat membuat perkiraan tentang
sumber daya, biaya dan jadwal.4. SCOPE PERANGKAT LUNAK
Hal–hal yang dikembangkan pada Scope Perangkat Lunak adalah penentuan tujuan yang tidak
ambigiuous dan dapat dimengerti oleh level manajemen dan level teknik.
Semua pernyataan tentang scope perangkat lunak harus dinyatakan seperti :
  • Data kuantitatif di nyatakan secara eksplisit.
  • Batasan – batasan scope perangkat lunak.
Ada beberapa hal yang harus diperhatikan dari pengerjaan perangkat lunak antara lain adalah :
1. FUNCTION
Function merupakan fungsi dari perangkat lunak yang akan dibuat atau dikerjakan, harus
dievaluasi kembali sehingga mendapat fungsi dari perangkat lunak secara rinci. disini juga menjelaskan tentang biaya,jadwal dan kegiatan – kegiatan yang akan di kerjakan.
2. PERFORMANCE
Performance meliputi kendala dari pengerjaan perangkat lunak, keterbatasan memori dan
ketergantungan dari mesin-mesin tertentu. media pengerjaan yang mengunakan program dalam pengerjaan ya
3. INTERFACE
INTERFACE
Interface meliputi :
di sini Perangkat keras yang akan dipakai untuk mengerjakan perangkat lunak dan peralatan
sehinga secara tidak langsung mengontrol perangkat lunak,Perangkat lunak yang telah ada digabungkan dengan perangkat lunak yang baru senhinga pengerjaan ya lebih cepat,Pemakai yang akan menggunakan perangkat lunak melalui terminal atau Input/Output,
Prosedur pemakaian perangkat lunak.
4. REALIBILITY
Reliability merupakan keandalan perangkat lunak yang dihasilkan oleh kelompok tadi yg telah di rencanakan
5. PERENCANAAN SUMBER DAYA
Disini Perencanaan tentang perencanaan perangkat lunak adalah memperkirakan sumber daya yang diperlukan untuk menyelesaikan proyek dan dapat digambarkan dalam bentuk piramida.
terlihat dibawah ini :
Spesifikasi :
  • Requires skill
  • Availability
  • Duration
  • Start date
Spesifikasi:
  • Deskripsi
  • Availability
  • Duration
  • Delivery time
Tingkat bawah dari piramida diatas terlihat Perangkat Lunak dan Perangkat Keras yang
mempunyai spesifikasi yaitu :
Deskripsi Merupakan penjabaran tentang perangkat keras dan perangkat lunak yang
diperlukan dalam penerapannya.
Availability Keberadaan dari perangkat keras dan perangkat lunak yang diperlukan dalam
pekerjaan perangkat lunak.
Durasi Selang waktu dimana perangkat keras dan perangkat lunak akan dipakai
Secara ringkas Perencanaan Sumber Daya meliputi 3 kriteria yaitu :
  1. 1.      PERENCANAAN SUMBER DAYA MANUSIA
Manusia merupakan sumber daya yang paling utama dan sangat vital dalam pengembangan
atau pengerjaan perangkat lunak.
  1. 2.      PERENCANAAN SUMBER DAYA PERANGKAT KERAS
Sumber daya perangkat keras dapat dibedakan menjadi tiga kategori antara lain :
  1. a.      Development system, kategori ini merupakan perencanaan perangkat keras yang akan
dipergunakan dalam pengerjaan perangkat lunak.
  1. b.      Target machine,merupakan perangkat keras yang diperlukan dalam penerapannya.
  2. c.       Elemen perangkat keras, merupakan elemen tambahan yang diperlukan dalam pengoperasian perangkat lunak pada saat perangkat lunak dioperasikan oleh pemakai.
  1. 3.       PERENCANAAN SUMBER DAYA PERANGKAT LUNAK
Umumnya digunakan prinsip Bootstrappingyaitu menggunakan perangkat lunak yang
telah ada untuk mengembangkan dan membangun perangkat lunak yang baru.
6. PENGUKURAN KUALITAS PERANGKAT LUNAK

produktivitas metrik artinya mengukur pengembangan keluaran perangkat lunak dimana hal ini merupakan hal yang paling penting dari perangkat lunak.
Perangkat lunak metrik adalah teknik pengukuran yang ada dalam pengembangan perangkat lunak. Dalam mengukur produktivitas diperlukan data dari proyek pengembangan perangkat lunak yang telah dikerjakan sebelumnya Adapun tujuan dari pengukuran perangkat lunak adalah :
1. Untuk menyatakan kualitas produk.
2. Untuk menilai kualitas manusia yang terlibat dalam pembuatan produk tersebut.
3. Untuk menilai keuntungan pemakai metode dan alat bantu yang baru.
4. Sebagai dasar untuk melakukan perkiraan.
5. Untuk membantu penyesuaian pemakaian alat bantu yang baru atau pelatihan tambahan
Metoda pengukuran terdiri dari :
  1. Pengukuran Langsung
Yang dimaksud dengan Pengukuran Langsung (direct) adalah pengukuran yang dilakukan dimana langsung terlihat hasilnya.
Yang diukur dalam pengukuran langsung adalah :
o Biaya.
o Pengaruh.
o Line of Code (jumlah baris perintah dalam program).
o Kecepatan.
o Ukuran memori.
  • o Kesalahan.
  1. Pengukuran tidak Langsung
    1. Dalam Pengukuran Tidak Langsung (indirect), yang diukur adalah :
    2. Fungsi.
    3. Kualitas.
    4. Kekompleksan.
    5. Effisiensi.
    6. Keandalan.
    7. Pemeliharaan.
7. LINE OF CODE ( LOC )
Line Of Code dapat juga disebut Size Oriented Metric (jumlah baris perintah program yang telah ditulis),Size oriented metric digunakan untuk mengukur perangkat lunak dan proses pengembangannya,Rumus untuk menghitung produktivitas dan kualitas dari perangkat lunak yang telah dibuat adalah sebagai berikut :
Produktivitas = KLOC / EFFORT
Kualitas = Kesalahan / KLOC
Sedangkan untuk biaya dan dokumentasi ditinjau dari produktivitasnya,Perhatikan contoh tabel dibawah ini yang menunjukkan table size oriented metric dimana terdiri dari beberapa kategori proyek.
Ada lima faktor penting yang mempengaruhi produktivitas perangkat lunak antara lain adalah:
1. Manusia
Ukuran keahlian dari organisasi pengembangan.
2. Permasalahan
Kekompleksan permasalahan yang akan dikerjakan dan jumlah perubahan, kendala,
serta keperluan dalam perancangan.
3. Proses
Analisa dan perancangan atau teknik yang digunakan dalam pembahasan
pemrograman yang digunakan.


4. Produk
Keandalan dan performansi dari perangkat lunak dan perangkat keras yang digunakan.
5. Sumber daya
keberadaan alat-alat pengembangan, perangkat keras dan perangkat lunak yang ada.
8. PENGUMPULAN DATA METRIK
Ada beberapa hal yang perlu diperhatikan dalam pengumpulan data antara lain adalah :
  • Data harus akurat.
  • Sejumlah data proyek terdahulu harus sebanyak mungkin.
  • Kriteria pengukuran harus teratur dan konsisten.
  • Harus sesuai dengan proyek yang terdahulu untuk memperkirakan proyek yang baru.
9. PERKIRAAN PROYEK PERANGKAT LUNAK
Dalam Perkiraan Proyek Perangkat Lunak dapat ditransformasikan dengan mengikuti langkahlangkah,sistimatis yang dapat digunakan dalam memperkirakan sehingga resiko dapat diperkecil.Teknik perkiraan proyek perangkat lunak berusaha untuk menyediakan tingkat keandalan yang tinggi,Untuk dapat mencapai perkiraan biaya dan effort yang dapat diandalkan dapat digunakan pilihanpilihan sebagai berikut :
1. Memperkirakan waktu yang paling lama dari pengerjaan proyek.
2. Menggunakan teknik dekomposisi.
3. Mengembangkan model empiris untuk biaya dan effort dari perangkat lunak.
4. Menggunakan alat bantu yang telah tersedia.
Teknik dekomposisi adalah Teknik memecah-mecah atau membagi perkiraan proyek ke dalam bagian-bagian yang kecil, dalam pembagian ini berhubungan juga dengan tugas, biaya dan effort.
1. PERKIRAAN LOC
Data LOC digunakan dua cara selama perkiraan proyek perangkat lunak yaitu :
1. Variabel perkiraan yang digunakan untuk mengukur masing masing elemen dari
perangkat lunak.
2. Sebagai basis metrik yang dikumpulkan dari proyek terdahulu dan penggunaannya
digabungkan dengan variabel perkiraan untuk pengembangan proyeksi dan effort.
Berdasarkan data lampau, perencana dapat memperkirakan perkiraan waktu optimis, perkiraan waktu yang mendekati (most likely), perkiraan waktu pesimis dari nilai LOC atau FP masing-masing fungsi.
Jumlah rata-rata yang diharapkan LOC atau FP dapat dihitung dengan teknik perkiraan.
Nilai yang diharapkan adalah variabel perkiraan E dihitung dari rata-rata pertimbangan dari optimis (a), Most likely (m) dan pessimistic (b).
Dengan Rumus :
E = (a + 4m + b) / 6
close