Rekayasa Piranti Lunak (SL201): Perbedaan revisi

Dari widuri
Lompat ke: navigasi, cari
[revisi tidak terperiksa][revisi tidak terperiksa]
(PERTEMUAN 6)
(PERTEMUAN 14)
 
(18 revisi antara oleh pengguna yang sama tidak ditampilkan)
Baris 54: Baris 54:
  
 
=== '''PERTEMUAN 1''' ===
 
=== '''PERTEMUAN 1''' ===
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>1. Pentingnya Rekayasa Perangkat Lunak dan Perangkat Lunak</b></p></div>
+
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>Pentingnya Rekayasa Perangkat Lunak dan Perangkat Lunak</b></p></div>
  
 
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >Semua negara maju ekonominya bergantung pada perangkat lunak (PL). Makin banyak sistem yang dikendalikan oleh PL. RPL berkaitan dengan teori, metode dan alat untuk pembangunan PL secara profesional. Pengeluaran dana untuk PL di negara maju sangat besar. Harga PL seringlebih mendominasi harga sistem komputer. Harga PL pada PC sering lebih mahal dari pada harga perangkat kerasnya. Biaya pemeliharaan PL lebih mahal dibanding biaya pembuatannya. RPL berkaitan dengan biaya efektif pembuatan PL.</p></div>
 
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >Semua negara maju ekonominya bergantung pada perangkat lunak (PL). Makin banyak sistem yang dikendalikan oleh PL. RPL berkaitan dengan teori, metode dan alat untuk pembangunan PL secara profesional. Pengeluaran dana untuk PL di negara maju sangat besar. Harga PL seringlebih mendominasi harga sistem komputer. Harga PL pada PC sering lebih mahal dari pada harga perangkat kerasnya. Biaya pemeliharaan PL lebih mahal dibanding biaya pembuatannya. RPL berkaitan dengan biaya efektif pembuatan PL.</p></div>
Baris 62: Baris 62:
  
 
----
 
----
 +
 
=== '''PERTEMUAN 2''' ===
 
=== '''PERTEMUAN 2''' ===
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>1. SOFTWARE PROCESS MODEL I</b></p></div>
+
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>SOFTWARE PROCESS MODEL I</b></p></div>
  
 
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >'''Linear Sequential Model / Waterfall Model'''<br>Model ini adalah model klasik yang bersifat sistematis, berurutan dalam membangun software. Berikut ini ada dua gambaran dari waterfall model. Sekalipun keduanya menggunakan nama-nama fase yang berbeda, namun sama dalam intinya.</p></div>
 
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >'''Linear Sequential Model / Waterfall Model'''<br>Model ini adalah model klasik yang bersifat sistematis, berurutan dalam membangun software. Berikut ini ada dua gambaran dari waterfall model. Sekalipun keduanya menggunakan nama-nama fase yang berbeda, namun sama dalam intinya.</p></div>
Baris 75: Baris 76:
  
 
----
 
----
 +
 
=== '''PERTEMUAN 3''' ===
 
=== '''PERTEMUAN 3''' ===
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>1. Software Process (Lanjutan)</b></p></div>
+
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>Software Process (Lanjutan)</b></p></div>
  
 
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >'''Prototyping Model'''Kadang-kadang klien hanya memberikan beberapa kebutuhan umum software tanpa detil input, proses atau detil output.<br>Di lain waktu mungkin dimanati mpembangun (developer) tidak yakin terhadap efisiensi dari algoritma yang digunakan, tingkat adaptasi terhadap sistem operasi atau rancangan form user interface.<br>Ketika situasi seperti ini terjadi model prototyping sangat membantu proses pembangunan software.</p></div>
 
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >'''Prototyping Model'''Kadang-kadang klien hanya memberikan beberapa kebutuhan umum software tanpa detil input, proses atau detil output.<br>Di lain waktu mungkin dimanati mpembangun (developer) tidak yakin terhadap efisiensi dari algoritma yang digunakan, tingkat adaptasi terhadap sistem operasi atau rancangan form user interface.<br>Ketika situasi seperti ini terjadi model prototyping sangat membantu proses pembangunan software.</p></div>
Baris 84: Baris 86:
  
 
----
 
----
 +
 
=== '''PERTEMUAN 4''' ===
 
=== '''PERTEMUAN 4''' ===
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>1. Manajemen Proyek Perangkat Lunak</b></p></div>
+
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>Manajemen Proyek Perangkat Lunak</b></p></div>
  
 
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >Manajemen proyek perangkat lunak merupakan bagian yang penting dalam pembangunan perangkat lunak. Sekalipun tidak bersifat teknis seperti pengkodean, hal-hal dalam manajemen proyek PL ini mampu menentukan apakah proyek akan berjalan dengan baik sehingga menghasilkan produk yang baik. Hal-hal yang berkaitan dengan manajemen adalah pengelolaan personel dan koordinasi tim, proses, pengukuran proyek termasuk menentukan harga dari PL, penjadwalan dan sebagainya. Dalam pembahasan berikut, hanya sebagian kecil dari manajemen yang akan dibahas untuk memberi gambaran tentang hal-hal manajemen yang berlaku dan diterapkan dalam pembangunan PL.</p></div>
 
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >Manajemen proyek perangkat lunak merupakan bagian yang penting dalam pembangunan perangkat lunak. Sekalipun tidak bersifat teknis seperti pengkodean, hal-hal dalam manajemen proyek PL ini mampu menentukan apakah proyek akan berjalan dengan baik sehingga menghasilkan produk yang baik. Hal-hal yang berkaitan dengan manajemen adalah pengelolaan personel dan koordinasi tim, proses, pengukuran proyek termasuk menentukan harga dari PL, penjadwalan dan sebagainya. Dalam pembahasan berikut, hanya sebagian kecil dari manajemen yang akan dibahas untuk memberi gambaran tentang hal-hal manajemen yang berlaku dan diterapkan dalam pembangunan PL.</p></div>
Baris 94: Baris 97:
  
 
=== '''PERTEMUAN 5''' ===
 
=== '''PERTEMUAN 5''' ===
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>1. Software Quality Assurance</b></p></div>
+
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>Software Quality Assurance</b></p></div>
 
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >Software Quality Assurance (SQA) meliputi pendekatan manajemen kualitas, teknologi software engineering yang efektif, pertemuan peninjauan teknis selama proses software berlangsung, strategi pengujian bertingkat, mengendalikan dokumentasi software dan perubahan yang terjadi, prosedur untuk memastikan kesesuaian dengan standar pembangunan software (jika ada standar yang digunakan) mekanisme pelaporan dan mengukuran.</p></div>
 
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >Software Quality Assurance (SQA) meliputi pendekatan manajemen kualitas, teknologi software engineering yang efektif, pertemuan peninjauan teknis selama proses software berlangsung, strategi pengujian bertingkat, mengendalikan dokumentasi software dan perubahan yang terjadi, prosedur untuk memastikan kesesuaian dengan standar pembangunan software (jika ada standar yang digunakan) mekanisme pelaporan dan mengukuran.</p></div>
  
Baris 104: Baris 107:
  
 
----
 
----
 +
 
=== '''PERTEMUAN 6''' ===
 
=== '''PERTEMUAN 6''' ===
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>1. Software Requirement</b></p></div>
+
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>Software Requirement</b></p></div>
  
 
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >Requirement tidak hanya ditulis oleh pembangun, tapi sebelumnya justru ditulis oleh klien yang memesan software. Klien menuliskan requirement dalam bentuk yang masih abstrak tentang. kebutuhannya. Kemudian requirement tersebut diserahkan kepada tim pembangun. Saat sudah ada persetujuan pembangun pun kemudian menuliskan kemampuan sistem yang bisa dipahami oleh klien, ini pund isebut requirement.</p></div>
 
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >Requirement tidak hanya ditulis oleh pembangun, tapi sebelumnya justru ditulis oleh klien yang memesan software. Klien menuliskan requirement dalam bentuk yang masih abstrak tentang. kebutuhannya. Kemudian requirement tersebut diserahkan kepada tim pembangun. Saat sudah ada persetujuan pembangun pun kemudian menuliskan kemampuan sistem yang bisa dipahami oleh klien, ini pund isebut requirement.</p></div>
Baris 111: Baris 115:
 
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Requirement adalah gambaran dari layanan (services) dan batasan bagi sistem yang akan dibangun.</p><div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Atau requirement adalah pernyataan/gambaran pelayanan yang disediakan oleh sistem, batasan-batasan dari sistem dan bisa juga berupa definisi matematis fungsi-fungsisi stem. Requirement berfungsi ganda yaitu:</p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Menjadi dasar penawaran suatu kontrak –> harus terbuka untuk masukan</p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Menjadi dasar kontrak –> harus didefinisikan secara detil</p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Proses menemukan, menganalisis, mendokumentasikan dan pengujian layanan-layanan dan batasan tersebut disebut Requirement Engineering.</p></div>
 
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Requirement adalah gambaran dari layanan (services) dan batasan bagi sistem yang akan dibangun.</p><div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Atau requirement adalah pernyataan/gambaran pelayanan yang disediakan oleh sistem, batasan-batasan dari sistem dan bisa juga berupa definisi matematis fungsi-fungsisi stem. Requirement berfungsi ganda yaitu:</p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Menjadi dasar penawaran suatu kontrak –> harus terbuka untuk masukan</p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Menjadi dasar kontrak –> harus didefinisikan secara detil</p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Proses menemukan, menganalisis, mendokumentasikan dan pengujian layanan-layanan dan batasan tersebut disebut Requirement Engineering.</p></div>
  
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>2. Pengumpulan requirement</b></p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Interviews : Memberi informasi yang terbaik,mahal</p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Questionnaires: Bagus jika banyak orang terlibat dan tersebar, respon cenderung kurang baik</p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Observation: Akurat jika dilakukan dengan baik, mahal</p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Searching :Informasi terbatas, cenderung tidak menampilkan hal-hal yang mungkin jadi masalah</p></div>
+
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>Pengumpulan requirement</b></p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Interviews : Memberi informasi yang terbaik,mahal</p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Questionnaires: Bagus jika banyak orang terlibat dan tersebar, respon cenderung kurang baik</p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Observation: Akurat jika dilakukan dengan baik, mahal</p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >• Searching :Informasi terbatas, cenderung tidak menampilkan hal-hal yang mungkin jadi masalah</p></div>
  
  
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>3. Beberapa macam requirement</b></p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >'''User requirement (kebutuhan pengguna)'''<br><br>Pernyataan tentang layanan yang disediakan sistem dan tentang batasan-batasan operasionalnya. Pernyataan ini dapat dilengkapi dengan gambar/diagram yang dapat dimengerti dengan mudah.<br><br>'''System requirement (kebutuhan sistem)'''<br><br>Sekumpulan layanan/kemampuan sistem dan batasan-batasannya yang ditulis secara detil. System requirement document sering disebut functional specification (spesifikasi fungsional), harus menjelaskan dengan tepat dan detil.<br><br>Ini bisa berlaku sebagai kontrak antara klien dan pembangun.<br><br>'''Software design specification (spesifikasi rancangan PL)'''<br><br>Gambaran abstrak dari rancangan software yang menjadi dasar bagi perancangan dan implementasi yang lebih detil.<br><br>'''Beberapa macam requirement'''<br><br>Ketiga jenis requirement tersebut diperlukan dalam pembangunan software karena masing-masing memberi pengertian kepihak yang berbeda kepentingan. Pembaca dari ketiga requirement tersebut bisa dijelaskan dengan gambar berikut :<br><br>'''Jenis Requirement dan pembacanya'''</p></div>
+
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>Beberapa macam requirement</b></p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >'''User requirement (kebutuhan pengguna)'''<br><br>Pernyataan tentang layanan yang disediakan sistem dan tentang batasan-batasan operasionalnya. Pernyataan ini dapat dilengkapi dengan gambar/diagram yang dapat dimengerti dengan mudah.<br><br>'''System requirement (kebutuhan sistem)'''<br><br>Sekumpulan layanan/kemampuan sistem dan batasan-batasannya yang ditulis secara detil. System requirement document sering disebut functional specification (spesifikasi fungsional), harus menjelaskan dengan tepat dan detil.<br><br>Ini bisa berlaku sebagai kontrak antara klien dan pembangun.<br><br>'''Software design specification (spesifikasi rancangan PL)'''<br><br>Gambaran abstrak dari rancangan software yang menjadi dasar bagi perancangan dan implementasi yang lebih detil.<br><br>'''Beberapa macam requirement'''<br><br>Ketiga jenis requirement tersebut diperlukan dalam pembangunan software karena masing-masing memberi pengertian kepihak yang berbeda kepentingan. Pembaca dari ketiga requirement tersebut bisa dijelaskan dengan gambar berikut :<br><br>'''Jenis Requirement dan pembacanya'''</p></div>
  
 
<div align="center"><img width="250" height="150" style="margin:0px"  src="http://sl801.ilearning.me/wp-content/uploads/sites/1227/2014/07/jenis-requirement.png"/></div>
 
<div align="center"><img width="250" height="150" style="margin:0px"  src="http://sl801.ilearning.me/wp-content/uploads/sites/1227/2014/07/jenis-requirement.png"/></div>
Baris 125: Baris 129:
  
 
=== '''PERTEMUAN 7''' ===
 
=== '''PERTEMUAN 7''' ===
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>1. </b></p></div>
+
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>Konsep Desain Software</b></p></div>
 +
 
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>Analisis dan Desain Model</b></p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >Setelah kebutuhan dikumpulkan, analisis terhadap kebutuhan dilakukan dengan menggunakan beberapa alat (tools) seperti :<br>DFD (Data Flow Diagram)<br>ERD (Entity Relationship Diagram)<br>STD (State Transition Diagram).</p></div>
 +
 
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>Data Dictionary</b></p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >menjadi bekal dasa runtuk menganalisis kebutuhan.<br>Berisi gambaran dari semua objek data yang diperlukan dan dihasilkan oleh software nantinya.<br>Diagram-diagram tersebut mempunyai karakteristik masing-masing.<br>DFD memberi gambaran bagaimana data berubah sejalan dengan alirannya dalam sistem dan menggambarkan fungsi-fungsi yang mengubah data-data tadi.<br>ERD menggambarkan relasi antara objek data.<br>STD menggambarkan bagaimana kerja sistem melalui kondisi (state) dan kejadian yang menyebabkan kondisi berubah.<br>STD juga menggambarkan aksi yang dilakukan karena kejadian tertentu.</p></div>
 +
 
 +
<div align="center"><img width="250" height="150" style="margin:0px" src="http://sl801.ilearning.me/wp-content/uploads/sites/1227/2014/07/Picture1.png"/></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><span class="plainlinks">[http://sl801.ilearning.me/?p=51 READ MORE]</span></p></div>
 +
 
 +
 
 +
 
 
{{pagebreak}}
 
{{pagebreak}}
  
Baris 131: Baris 144:
  
 
=== '''PERTEMUAN 8''' ===
 
=== '''PERTEMUAN 8''' ===
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>1. </b></p></div>
+
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>User Interface Design (UID)</b></p></div>
 +
 
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >'''Pengantar'''<br>
 +
<br>Tujuan dari UID adalah merancang interface yang efektif untuk sistem perangkat lunak. Efektif artinya siap digunakan, dan hasilnya sesuai dg kebutuhan. Kebutuhan disini adalah kebutuhan penggunanya.<br><br>Pengguna sering menilai sistem dari interface, bukan dari fungsinya melainkan dari user interfacenya. Jika desain user interfacenya yang buruk, maka itu sering jadi alasan untuk tidak menggunakan software. Selain itu interface yang buruk sebabkan pengguna membuat kesalahan fatal.<br><br>Saat ini interface yang banyak digunakan dalam software adalah GUI (Graphical User Interface). GUI memberikan keuntungan seperti:</p></div>
 +
 
 +
<ol>
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">gampang dipelajari oleh pengguna yang pengalaman dalam menggunakan komputer cukup minim</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">berpindah dari satu layar ke layar yang lain tanpa kehilangan informasi dimungkinkan</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">akses penuh pada layar dengan segera untuk beberapa macam tugas/keperluan</p></li></ol><br><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >Beberapa karakteristik dari GUI dan penjelasannya dapat dilihat pada Tabel 1.</p></div>
 +
 
 +
<p style="text-align: center;"><em>Tabel 1: Karakteristik dari GUI</em></p>
 +
 
 +
<div align="center"><img width="250" height="150" style="margin:0px" src="http://sl801.ilearning.me/wp-content/uploads/sites/1227/2014/07/1.jpg"/></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><span class="plainlinks">[http://sl801.ilearning.me/?p=60 READ MORE]</span></p></div>
 
{{pagebreak}}
 
{{pagebreak}}
 +
  
 
----
 
----
  
 
=== '''PERTEMUAN 9''' ===
 
=== '''PERTEMUAN 9''' ===
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>1. </b></p></div>
+
<div style="font-size: 12pt;font-family: 'times new roman';text-align: CENTER"><p style="line-height: 2" ><b>REAL TIME DATABASE<BR><BR>MANAJEMEN DATA TERDISTRIBUSI</b></p></div>
 +
 
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >'''Pendahuluan'''<br><br>Konsep DDTMS (Distributed Data Transaction Managemen system) : Sekumpulan modul-modul software dimana pengaturan semua distribusi data (file dan database) dan menggabungkan beberapa transaksi yang berhubungan dan tersebar pada banyak komputer.<br><br>Tantangan Disain dan implementasi dari DDTMS :</p></div>
 +
<ol>
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Bagaimana cara mengakses datasecara langsung dlm jaringan.</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Bagaimana cara mengupdate dan menangani data di jaringan.</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Bagaimana cara menjaga kebersamaan dan ketetapan data.</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Bagaimana menyusun transaksi dan meningkatkan respon.</p></li></ol>
 +
 
 +
 
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >'''SISTEM SENTRALISASI'''<br>
 +
<br>Data Base Management system (DBMS) adalah : Paket software yang menangani akses data dan memanipulasi database oleh banyak pengguna.</p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >'''Secara spesifik DBMS mengelola:'''</p></div><ol><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Menangani representasi logis dari data.</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Menangani akses kedata oleh banyak pengguna.</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Menerapkan pengamanan dan kontrol database.
 +
</p></li></ol>
 +
 
 +
 
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><span class="plainlinks">[http://sl801.ilearning.me/?p=69 READ MORE]</span></p></div>
 +
 
 +
 
 +
 
 
{{pagebreak}}
 
{{pagebreak}}
  
Baris 143: Baris 182:
  
 
=== '''PERTEMUAN 10''' ===
 
=== '''PERTEMUAN 10''' ===
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>1. </b></p></div>
+
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>Rekayasa Software Client/Server</b></p></div>
 +
 
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >'''Struktur sistem C/S'''<br><br>Dalam struktur C/S komputer yang berada di atas komputer lain disebut server dan komputer-komputer pada level di bawahnya disebut client. Client meminta (request) layanan yang disediakan oleh server. Pada kenyataannya ada beberapa jenis implementasi struktur C/S:</p></div>
 +
 
 +
<ol>
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2"> File server : client minta record tertentu dari file, dan server mengirimkan record-record ini ke client lewat jaringan</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Database server : client mengirim SQL (structured Query Language) ke server lewat jaringan. Server melakukan proses, mendapatkan informasi, dan kemudian mengirimkan hasi ke client</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Transaction server: Client kirim request yang meminta remote procedure di server. Remote procedure ini berupa satu set SQL statement (atau bisa juga suatu fungsi). Transaksi terjadi saat hasil permintaan dikerjakan oleh remote procedure dan kemudian hasilnya dikirimkan kembali ke client.</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Groupware server : server menyediakan berbagai aplikasi yang memungkinkan komunikasi antar client (dan pengguna yang memakainya) dengan menggunakan teks, image, bulletin boards, video, dan cara lain.<br><br>Gambar 1 memberi gambaran server dan client yang terhubung dalam suatu jaringan dan beberapa layanan yang disediakan server berdasar jenis implementasi struktur C/S di atas.</p></li></ol>
 +
 
 +
 
 +
<div align="center"><img width="250" height="150" style="margin:0px" src="http://sl801.ilearning.me/wp-content/uploads/sites/1227/2014/07/Untitled1.png"/></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><span class="plainlinks">[http://sl801.ilearning.me/?p=70 READ MORE]</span></p></div>
 
{{pagebreak}}
 
{{pagebreak}}
  
 
----
 
----
 +
 
=== '''PERTEMUAN 11''' ===
 
=== '''PERTEMUAN 11''' ===
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>1. </b></p></div>
+
<div style="font-size: 12pt;font-family: 'times new roman';text-align: center"><p style="line-height: 2" ><b>Rekayasa Web</b></p></div>
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >'''Pengantar'''<br><br>Rekayasa web adalah proses yang diunakan untuk menciptakan aplikasi web yang berkualitas tinggi. Rekayasa web mengadaptasi rekayasa perangkat lunak dalam hal konsep dasar yang menekankan pada aktifitas teknis dan manajemen. Namun demikian adaptasi tidak secara utuh, tapi dengan perubahan dan penyesuaian.<br>Rekayasa web gabungan antara web publishing (suatu konsep yang berasal dari printed publishing) dan aktifitas rekayasa perangkat lunak. Dikatakan demikian karena desain sebuah aplikasi web menekankan pada desain grafis, desain informasi, teori hypertext, desain sistem dan pemrograman.<br>
 +
<br>Ciri dan sifat WebApp (Web Application)<br>Aplikasi web berbeda dari software lain karena hal-hal dibawah ini:</p></div>
 +
 
 +
<ol>
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2"> Network intensive. Sifat dasar dari WebApp (aplikasi web) adalah aplikasi ini ditujukan untuk berada di jaringan dan memenuhi kebutuhan komunitas yang berbeda.</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Content-Driven. Sebagian besar fungsi dari WebApp adalah untuk menyajikan informasi dalam bentuk teks, grafik, audio dan video ke end user.</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Continuous evolution. Selalu berkembang secara terus menerus.</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Document-oriented. Halaman-halaman situs yang statis akan tetap ada sekalipun sudah ada pemrograman web dengan java atau yang lain.</p></li></ol>
 +
 
 +
 
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >Selain itu WebApp memiliki karakteristik seperti berikut ini :</p></div><ol><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Immediacy. Diperlukan segera untuk memenuhi ditayangkan, dipasarkan dalam waktu singkat.</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Security. Untuk melindungi isi yang sensitif dan menyediakan pengiriman data yang aman, keamanan suatu WebApp harus diterapkan pada seluruh infrastruktur yang mendukung WebApp dan termasuk dalam WebApp sendiri.</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Aesthetics. Daya tarik utama WebApp adalah tampilan dan keindahan. Jika WebApp digunakan untuk memasarkan suatu produk maka sisi aestetika harus diperhatikan sebagaimana sisi teknis.<br><br>Faktor-faktor yang menentukan kualitas suatu web digambarkan pada gambar 1.
 +
</p></li></ol>
 +
<br>
 +
<div align="center"><img width="250" height="150" style="margin:0px" src="http://sl801.ilearning.me/wp-content/uploads/sites/1227/2014/07/Untitled3.png"/></div>
 +
<p style="text-align: center;"><em>Gambar 1 :Faktor kualitas aplikasi web</em></p><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><span class="plainlinks">[http://sl801.ilearning.me/?p=71 READ MORE]</span></p></div>
 
{{pagebreak}}
 
{{pagebreak}}
  
 
----
 
----
 +
 
=== '''PERTEMUAN 12''' ===
 
=== '''PERTEMUAN 12''' ===
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>1. </b></p></div>
+
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>REVIEW RANCANGAN DETIL</b></p></div>
 +
<ol><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Internal walkthrough</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Structured walkthrough</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Inspeksi rancangan</p></li></ol>
 +
 
 +
 
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>KLASIFIKASI BAHASA</b></p></div><ol><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Generasi Bahasa Program</p></li>
 +
 
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >-  generasi 1</p></div><br><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >    Kriteria ⇒</p></div><br><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >    Contoh ⇒</p></div><br><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >-  generasi 2</p></div><br><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >    Kriteria ⇒</p></div><br><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >    Contoh ⇒</p></div><br><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >-    generasi 3</p></div><br><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >      Kriteria ⇒</p></div><br><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >    Contoh ⇒</p></div>
 +
<br><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >-    generasi 4</p></div><br><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >      Kriteria ⇒</p></div><br><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >      Contoh ⇒</p></div>
 +
 
 +
 
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Karakteristik Bahasa Program</p></li><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" > -      Segi Psikologi</p></div><br><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" > -      Segi Teknis
 +
</p></div>
 +
 
 +
 
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Evaluasi pemilihan Bahasa program</p></li>
 +
 
 +
 
 +
 
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Struktur Program </p></li></ol>
 +
 
 +
 
 +
 
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >-      Tipe data</p></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >'''TIPE DATA'''<br><br>¨  Pada dasarnya tipe data pada bahasa C ada 5, dan ditambah      4 tipe modifier yaitu : </p></div>
 +
 
 +
 
 +
 
 +
<div align="center"><img width="350" height="150" style="margin:0px" src="https://lh6.googleusercontent.com/-2UBoeTP6S-8/U99A8qmcXzI/AAAAAAAAExY/Hkhk1wmXwec/w621-h240-no/henny4.png"/></div><div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><span class="plainlinks">[http://sl801.ilearning.me/?p=72 READ MORE]</span></p></div>
 +
 
 
{{pagebreak}}
 
{{pagebreak}}
  
 
----
 
----
 +
 
=== '''PERTEMUAN 13''' ===
 
=== '''PERTEMUAN 13''' ===
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>1. </b></p></div>
+
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>ANALISA DAN DESAIN (Lanjutan)</b></p></div>
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >'''OUTLINE SYSTEM DESIGN( OSD)'''<br><br>Sasaran yang ingin dibahas :</p></div><ol><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Membedakan antara “cara dan “apa” yang harus dikerjakan.</p></li><li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Apa yang dimaksud dengan OSD.</p></li></ol>
 +
 
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >Isi OSD :<br><br>B.1. Taxonomy perangkat keras<br><br>B.2. Alat taxonomy.<br><br>B.3. Taxonomy perangkat lunak.<br><br>Ad.B.1. → sebuah katalog komputer mengenai jenis, perangkat tambahan berikut perangkat lunaknya.<br><br>Ad.B.2.  →  sebuah katalog mengenai lingkungan pengembangan yang dibutuhkan untuk mengembangkan perangkat lunak yang tepat (programming support environment/PSE).<br><br>Ad.B.3. → sebuah katalog mengenai persyaratan kebutuhan yang tercerminpada spesifikasi fungsional.</p></div>
 +
 
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><span class="plainlinks">[http://sl801.ilearning.me/?p=73 READ MORE]</span></p></div>
 +
 
 
{{pagebreak}}
 
{{pagebreak}}
  
 
----
 
----
 +
 
=== '''PERTEMUAN 14''' ===
 
=== '''PERTEMUAN 14''' ===
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>1. </b></p></div>
+
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><b>SOFTWARE MANAGEMENT (Lanjutan)</b></p></div>
 +
 
 +
 
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" >USAHA ESTIMASI DAN SKALA WAKTU.Sasaran yang ingin dicapai :<br>-      Kualitas ekonomis keberhasilan penyelesaiaan tugas SE.<br><br>-      Menyusun target yang mungkin harus dicapai.<br><br>-      Mengurangi kesalahan yang terjadi pada saat proses pembuatan SE.<br><br>-      Membuat perencanaan kegiatan yang lebih baik.<br><br>'''DEFINISI'''<br>Tahap definisi estimasi meliputi 3 bagian siklus hidup :</p></div>
 +
 
 +
<ol>
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Tahap spesifikasi dan feasibility<br>
 +
-    Spesifikasi fungsional dan outline system design (OSD).<br>
 +
-    Disebut sebagai ‘tahap 1’ siklus hidup.</p></li>
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Aktivitas pengembangan software.<br>
 +
-    Termasuk validitas dan sertifikasi software.<br>
 +
-    Disebut sebagai ‘tahap 2’ siklus hidup</p></li>
 +
<li style="font-size: 12pt;font-family: 'times new roman';text-align: justify;text-indent: 0.0in"><p style="line-height: 2">Tahap perawatan software.<br>
 +
- Dimulai sejak sistem dioperasikan dan berakhir saat sistem dicabut dari  pengoperasian.<br>
 +
-    Disebut sebagai ‘tahap 3’ siklus hidup</p></li></ol>
 +
 
 +
<div style="font-size: 12pt;font-family: 'times new roman';text-align: justify"><p style="line-height: 2" ><span class="plainlinks">[http://sl801.ilearning.me/?p=74 READ MORE]</span></p></div>
 
{{pagebreak}}
 
{{pagebreak}}
  
 
[[Category:Materi Kuliah]]
 
[[Category:Materi Kuliah]]

Revisi terkini pada 4 Agustus 2014 08.46

BAB I

PENDAHULUAN

Rekayasa perangkat lunak (RPL, atau dalam bahasa Inggris: Software Engineering atau SE) adalah satu bidang profesi yang mendalami cara-cara pengembangan perangkat lunak termasuk pembuatan, pemeliharaan, manajemen organisasi pengembanganan perangkat lunak dan manajemen kualitas.
IEEE Computer Society mendefinisikan rekayasa perangkat lunak sebagai penerapan suatu pendekatan yang sistematis, disiplin dan terkuantifikasi atas pengembangan, penggunaan dan pemeliharaan perangkat lunak, serta studi atas pendekatan-pendekatan ini, yaitu penerapan pendekatan engineering atas perangkat lunak.
rekayasa perangkat lunak adalah pengubahan perangkat lunak itu sendiri guna mengembangkan, memelihara, dan membangun kembali dengan menggunakan prinsip reakayasa untuk menghasilkan perangkat lunak yang dapat bekerja lebih efisien dan efektif untuk pengguna.
kriteria yang dapat digunakan sebagai acuan dalam merekayasa perangkat lunak:
1. dapat terus dirawat dan dipelihara(maintainability)
2. dapat mengikuti perkembangan teknologi(dependability)
3. dapat mengikuti keinginan pengguna(robust)
4. efektif dan efisien dalam menggunakan energi dan penggunaannya
5. dapat memenuhi kebutuhan yang diinginkan(usability)


SILABUS

TUJUAN

Agar mahasiswa mampu adaptable terhadap suatu perubahan dan fleksibel. Dalam arti, jika terjadi perubahan, maka perubahan tersebut bisa diminimalisasi dan diisolir. Perubahan tidak merembet kemana-mana. Yang jelas, software akan sering berubah, seiring dengan perkembangan Zaman dan requirement-requirement baru.

BAB II

LANDASAN TEORI

SATUAN ACARA PENGAJARAN

Kode  : SL801

Mata Kuliah  : Rekayasa Piranti Lunak

Beban Kredit  : SKS

Jenjang  : S1

Jurusan  : SI/TI/MI

Waktu Tatap Muka  : 2 X 50 Menit

Waktu Tugas Mandiri : 2 ( 2 X 50 Menit )

Metode Kuliah  : Tatap muka,Tugas,Presentasi

Alat  : RME, Multimedia Projector, Komputer dan Whiteboard

Evaluasi  : Kehadiran, Tugas, UTS, UAS

Dosen  :

TIU  : Mahasiswa dapat memahami jenis-jenis komputer, sistem kerja komputer, perangkat komputer, arus informasi menggunakan komputer, informasi dalam dunia maya perkembangan hardware dan software terkini, serta prospek pengembangan komputer di masa mendatang.

TIK  : Mahasiswa dapat memahami jenis-jenis komputer, sistem kerja komputer, perangkat komputer, arus informasi menggunakan komputer, informasi dalam dunia maya perkembangan hardware dan software terkini, serta prospek pengembangan komputer di masa mendatang.


DAFTAR PUSTAKA

?Sumber Utama :


BAB III

PEMBAHASAN MATERI

Rekayasa Piranti Lunak

PERTEMUAN 1

Pentingnya Rekayasa Perangkat Lunak dan Perangkat Lunak

Semua negara maju ekonominya bergantung pada perangkat lunak (PL). Makin banyak sistem yang dikendalikan oleh PL. RPL berkaitan dengan teori, metode dan alat untuk pembangunan PL secara profesional. Pengeluaran dana untuk PL di negara maju sangat besar. Harga PL seringlebih mendominasi harga sistem komputer. Harga PL pada PC sering lebih mahal dari pada harga perangkat kerasnya. Biaya pemeliharaan PL lebih mahal dibanding biaya pembuatannya. RPL berkaitan dengan biaya efektif pembuatan PL.

READ MORE


PERTEMUAN 2

SOFTWARE PROCESS MODEL I

Linear Sequential Model / Waterfall Model
Model ini adalah model klasik yang bersifat sistematis, berurutan dalam membangun software. Berikut ini ada dua gambaran dari waterfall model. Sekalipun keduanya menggunakan nama-nama fase yang berbeda, namun sama dalam intinya.

  1. Fase-fase dalam Waterfall Model menurut referensi Pressman:

READ MORE


PERTEMUAN 3

Software Process (Lanjutan)

Prototyping ModelKadang-kadang klien hanya memberikan beberapa kebutuhan umum software tanpa detil input, proses atau detil output.
Di lain waktu mungkin dimanati mpembangun (developer) tidak yakin terhadap efisiensi dari algoritma yang digunakan, tingkat adaptasi terhadap sistem operasi atau rancangan form user interface.
Ketika situasi seperti ini terjadi model prototyping sangat membantu proses pembangunan software.

READ MORE


PERTEMUAN 4

Manajemen Proyek Perangkat Lunak

Manajemen proyek perangkat lunak merupakan bagian yang penting dalam pembangunan perangkat lunak. Sekalipun tidak bersifat teknis seperti pengkodean, hal-hal dalam manajemen proyek PL ini mampu menentukan apakah proyek akan berjalan dengan baik sehingga menghasilkan produk yang baik. Hal-hal yang berkaitan dengan manajemen adalah pengelolaan personel dan koordinasi tim, proses, pengukuran proyek termasuk menentukan harga dari PL, penjadwalan dan sebagainya. Dalam pembahasan berikut, hanya sebagian kecil dari manajemen yang akan dibahas untuk memberi gambaran tentang hal-hal manajemen yang berlaku dan diterapkan dalam pembangunan PL.

READ MORE


PERTEMUAN 5

Software Quality Assurance

Software Quality Assurance (SQA) meliputi pendekatan manajemen kualitas, teknologi software engineering yang efektif, pertemuan peninjauan teknis selama proses software berlangsung, strategi pengujian bertingkat, mengendalikan dokumentasi software dan perubahan yang terjadi, prosedur untuk memastikan kesesuaian dengan standar pembangunan software (jika ada standar yang digunakan) mekanisme pelaporan dan mengukuran.

READ MORE



PERTEMUAN 6

Software Requirement

Requirement tidak hanya ditulis oleh pembangun, tapi sebelumnya justru ditulis oleh klien yang memesan software. Klien menuliskan requirement dalam bentuk yang masih abstrak tentang. kebutuhannya. Kemudian requirement tersebut diserahkan kepada tim pembangun. Saat sudah ada persetujuan pembangun pun kemudian menuliskan kemampuan sistem yang bisa dipahami oleh klien, ini pund isebut requirement.

• Requirement adalah gambaran dari layanan (services) dan batasan bagi sistem yang akan dibangun.

• Atau requirement adalah pernyataan/gambaran pelayanan yang disediakan oleh sistem, batasan-batasan dari sistem dan bisa juga berupa definisi matematis fungsi-fungsisi stem. Requirement berfungsi ganda yaitu:

• Menjadi dasar penawaran suatu kontrak –> harus terbuka untuk masukan

• Menjadi dasar kontrak –> harus didefinisikan secara detil

• Proses menemukan, menganalisis, mendokumentasikan dan pengujian layanan-layanan dan batasan tersebut disebut Requirement Engineering.

Pengumpulan requirement

• Interviews : Memberi informasi yang terbaik,mahal

• Questionnaires: Bagus jika banyak orang terlibat dan tersebar, respon cenderung kurang baik

• Observation: Akurat jika dilakukan dengan baik, mahal

• Searching :Informasi terbatas, cenderung tidak menampilkan hal-hal yang mungkin jadi masalah


Beberapa macam requirement

User requirement (kebutuhan pengguna)

Pernyataan tentang layanan yang disediakan sistem dan tentang batasan-batasan operasionalnya. Pernyataan ini dapat dilengkapi dengan gambar/diagram yang dapat dimengerti dengan mudah.

System requirement (kebutuhan sistem)

Sekumpulan layanan/kemampuan sistem dan batasan-batasannya yang ditulis secara detil. System requirement document sering disebut functional specification (spesifikasi fungsional), harus menjelaskan dengan tepat dan detil.

Ini bisa berlaku sebagai kontrak antara klien dan pembangun.

Software design specification (spesifikasi rancangan PL)

Gambaran abstrak dari rancangan software yang menjadi dasar bagi perancangan dan implementasi yang lebih detil.

Beberapa macam requirement

Ketiga jenis requirement tersebut diperlukan dalam pembangunan software karena masing-masing memberi pengertian kepihak yang berbeda kepentingan. Pembaca dari ketiga requirement tersebut bisa dijelaskan dengan gambar berikut :

Jenis Requirement dan pembacanya



PERTEMUAN 7

Konsep Desain Software

Analisis dan Desain Model

Setelah kebutuhan dikumpulkan, analisis terhadap kebutuhan dilakukan dengan menggunakan beberapa alat (tools) seperti :
DFD (Data Flow Diagram)
ERD (Entity Relationship Diagram)
STD (State Transition Diagram).

Data Dictionary

menjadi bekal dasa runtuk menganalisis kebutuhan.
Berisi gambaran dari semua objek data yang diperlukan dan dihasilkan oleh software nantinya.
Diagram-diagram tersebut mempunyai karakteristik masing-masing.
DFD memberi gambaran bagaimana data berubah sejalan dengan alirannya dalam sistem dan menggambarkan fungsi-fungsi yang mengubah data-data tadi.
ERD menggambarkan relasi antara objek data.
STD menggambarkan bagaimana kerja sistem melalui kondisi (state) dan kejadian yang menyebabkan kondisi berubah.
STD juga menggambarkan aksi yang dilakukan karena kejadian tertentu.



PERTEMUAN 8

User Interface Design (UID)

Pengantar

Tujuan dari UID adalah merancang interface yang efektif untuk sistem perangkat lunak. Efektif artinya siap digunakan, dan hasilnya sesuai dg kebutuhan. Kebutuhan disini adalah kebutuhan penggunanya.

Pengguna sering menilai sistem dari interface, bukan dari fungsinya melainkan dari user interfacenya. Jika desain user interfacenya yang buruk, maka itu sering jadi alasan untuk tidak menggunakan software. Selain itu interface yang buruk sebabkan pengguna membuat kesalahan fatal.

Saat ini interface yang banyak digunakan dalam software adalah GUI (Graphical User Interface). GUI memberikan keuntungan seperti:

  1. gampang dipelajari oleh pengguna yang pengalaman dalam menggunakan komputer cukup minim

  2. berpindah dari satu layar ke layar yang lain tanpa kehilangan informasi dimungkinkan

  3. akses penuh pada layar dengan segera untuk beberapa macam tugas/keperluan


Beberapa karakteristik dari GUI dan penjelasannya dapat dilihat pada Tabel 1.

Tabel 1: Karakteristik dari GUI



PERTEMUAN 9

REAL TIME DATABASE

MANAJEMEN DATA TERDISTRIBUSI

Pendahuluan

Konsep DDTMS (Distributed Data Transaction Managemen system) : Sekumpulan modul-modul software dimana pengaturan semua distribusi data (file dan database) dan menggabungkan beberapa transaksi yang berhubungan dan tersebar pada banyak komputer.

Tantangan Disain dan implementasi dari DDTMS :

  1. Bagaimana cara mengakses datasecara langsung dlm jaringan.

  2. Bagaimana cara mengupdate dan menangani data di jaringan.

  3. Bagaimana cara menjaga kebersamaan dan ketetapan data.

  4. Bagaimana menyusun transaksi dan meningkatkan respon.


SISTEM SENTRALISASI

Data Base Management system (DBMS) adalah : Paket software yang menangani akses data dan memanipulasi database oleh banyak pengguna.

Secara spesifik DBMS mengelola:

  1. Menangani representasi logis dari data.

  2. Menangani akses kedata oleh banyak pengguna.

  3. Menerapkan pengamanan dan kontrol database.




PERTEMUAN 10

Rekayasa Software Client/Server

Struktur sistem C/S

Dalam struktur C/S komputer yang berada di atas komputer lain disebut server dan komputer-komputer pada level di bawahnya disebut client. Client meminta (request) layanan yang disediakan oleh server. Pada kenyataannya ada beberapa jenis implementasi struktur C/S:

  1. File server : client minta record tertentu dari file, dan server mengirimkan record-record ini ke client lewat jaringan

  2. Database server : client mengirim SQL (structured Query Language) ke server lewat jaringan. Server melakukan proses, mendapatkan informasi, dan kemudian mengirimkan hasi ke client

  3. Transaction server: Client kirim request yang meminta remote procedure di server. Remote procedure ini berupa satu set SQL statement (atau bisa juga suatu fungsi). Transaksi terjadi saat hasil permintaan dikerjakan oleh remote procedure dan kemudian hasilnya dikirimkan kembali ke client.

  4. Groupware server : server menyediakan berbagai aplikasi yang memungkinkan komunikasi antar client (dan pengguna yang memakainya) dengan menggunakan teks, image, bulletin boards, video, dan cara lain.

    Gambar 1 memberi gambaran server dan client yang terhubung dalam suatu jaringan dan beberapa layanan yang disediakan server berdasar jenis implementasi struktur C/S di atas.



PERTEMUAN 11

Rekayasa Web

Pengantar

Rekayasa web adalah proses yang diunakan untuk menciptakan aplikasi web yang berkualitas tinggi. Rekayasa web mengadaptasi rekayasa perangkat lunak dalam hal konsep dasar yang menekankan pada aktifitas teknis dan manajemen. Namun demikian adaptasi tidak secara utuh, tapi dengan perubahan dan penyesuaian.
Rekayasa web gabungan antara web publishing (suatu konsep yang berasal dari printed publishing) dan aktifitas rekayasa perangkat lunak. Dikatakan demikian karena desain sebuah aplikasi web menekankan pada desain grafis, desain informasi, teori hypertext, desain sistem dan pemrograman.

Ciri dan sifat WebApp (Web Application)
Aplikasi web berbeda dari software lain karena hal-hal dibawah ini:

  1. Network intensive. Sifat dasar dari WebApp (aplikasi web) adalah aplikasi ini ditujukan untuk berada di jaringan dan memenuhi kebutuhan komunitas yang berbeda.

  2. Content-Driven. Sebagian besar fungsi dari WebApp adalah untuk menyajikan informasi dalam bentuk teks, grafik, audio dan video ke end user.

  3. Continuous evolution. Selalu berkembang secara terus menerus.

  4. Document-oriented. Halaman-halaman situs yang statis akan tetap ada sekalipun sudah ada pemrograman web dengan java atau yang lain.


Selain itu WebApp memiliki karakteristik seperti berikut ini :

  1. Immediacy. Diperlukan segera untuk memenuhi ditayangkan, dipasarkan dalam waktu singkat.

  2. Security. Untuk melindungi isi yang sensitif dan menyediakan pengiriman data yang aman, keamanan suatu WebApp harus diterapkan pada seluruh infrastruktur yang mendukung WebApp dan termasuk dalam WebApp sendiri.

  3. Aesthetics. Daya tarik utama WebApp adalah tampilan dan keindahan. Jika WebApp digunakan untuk memasarkan suatu produk maka sisi aestetika harus diperhatikan sebagaimana sisi teknis.

    Faktor-faktor yang menentukan kualitas suatu web digambarkan pada gambar 1.


Gambar 1 :Faktor kualitas aplikasi web


PERTEMUAN 12

REVIEW RANCANGAN DETIL

  1. Internal walkthrough

  2. Structured walkthrough

  3. Inspeksi rancangan


KLASIFIKASI BAHASA

  1. Generasi Bahasa Program

  2. - generasi 1


    Kriteria ⇒


    Contoh ⇒


    - generasi 2


    Kriteria ⇒


    Contoh ⇒


    - generasi 3


    Kriteria ⇒


    Contoh ⇒


    - generasi 4


    Kriteria ⇒


    Contoh ⇒


  3. Karakteristik Bahasa Program

  4. - Segi Psikologi


    - Segi Teknis


  5. Evaluasi pemilihan Bahasa program


  6. Struktur Program


- Tipe data

TIPE DATA

¨ Pada dasarnya tipe data pada bahasa C ada 5, dan ditambah 4 tipe modifier yaitu :



PERTEMUAN 13

ANALISA DAN DESAIN (Lanjutan)

OUTLINE SYSTEM DESIGN( OSD)

Sasaran yang ingin dibahas :

  1. Membedakan antara “cara dan “apa” yang harus dikerjakan.

  2. Apa yang dimaksud dengan OSD.

Isi OSD :

B.1. Taxonomy perangkat keras

B.2. Alat taxonomy.

B.3. Taxonomy perangkat lunak.

Ad.B.1. → sebuah katalog komputer mengenai jenis, perangkat tambahan berikut perangkat lunaknya.

Ad.B.2. → sebuah katalog mengenai lingkungan pengembangan yang dibutuhkan untuk mengembangkan perangkat lunak yang tepat (programming support environment/PSE).

Ad.B.3. → sebuah katalog mengenai persyaratan kebutuhan yang tercerminpada spesifikasi fungsional.


PERTEMUAN 14

SOFTWARE MANAGEMENT (Lanjutan)


USAHA ESTIMASI DAN SKALA WAKTU.Sasaran yang ingin dicapai :
- Kualitas ekonomis keberhasilan penyelesaiaan tugas SE.

- Menyusun target yang mungkin harus dicapai.

- Mengurangi kesalahan yang terjadi pada saat proses pembuatan SE.

- Membuat perencanaan kegiatan yang lebih baik.

DEFINISI
Tahap definisi estimasi meliputi 3 bagian siklus hidup :

  1. Tahap spesifikasi dan feasibility
    - Spesifikasi fungsional dan outline system design (OSD).
    - Disebut sebagai ‘tahap 1’ siklus hidup.

  2. Aktivitas pengembangan software.
    - Termasuk validitas dan sertifikasi software.
    - Disebut sebagai ‘tahap 2’ siklus hidup

  3. Tahap perawatan software.
    - Dimulai sejak sistem dioperasikan dan berakhir saat sistem dicabut dari pengoperasian.
    - Disebut sebagai ‘tahap 3’ siklus hidup

Contributors

Admin, Yessi Frecilia