<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>BLOG tentang Matakuliah Rekayasa Perangkat  Lunak ITS</title>
	<atom:link href="http://rpl07.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://rpl07.wordpress.com</link>
	<description>Referensi RPL Dari Arek-Arek ITS</description>
	<lastBuildDate>Fri, 25 Feb 2011 14:20:07 +0000</lastBuildDate>
	<language>id</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='rpl07.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>BLOG tentang Matakuliah Rekayasa Perangkat  Lunak ITS</title>
		<link>http://rpl07.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://rpl07.wordpress.com/osd.xml" title="BLOG tentang Matakuliah Rekayasa Perangkat  Lunak ITS" />
	<atom:link rel='hub' href='http://rpl07.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Pengukuran Perangkat Lunak Menggunakan Metrik Size-Oriented dan Metrik Function Oriented, oleh Arif M [5105 100 139]</title>
		<link>http://rpl07.wordpress.com/2007/06/21/pengukuran-perangkat-lunak-menggunakan-metrik-size-oriented-dan-metrik-function-oriented-oleh-arif-m-5105-100-139/</link>
		<comments>http://rpl07.wordpress.com/2007/06/21/pengukuran-perangkat-lunak-menggunakan-metrik-size-oriented-dan-metrik-function-oriented-oleh-arif-m-5105-100-139/#comments</comments>
		<pubDate>Thu, 21 Jun 2007 14:43:11 +0000</pubDate>
		<dc:creator>Handy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://rpl07.wordpress.com/2007/06/21/pengukuran-perangkat-lunak-menggunakan-metrik-size-oriented-dan-metrik-function-oriented-oleh-arif-m-5105-100-139/</guid>
		<description><![CDATA[PENGANTAR: Pengukuran adalah suatu hal pokok bagi disiplin perekayasaan(engineering), tidak terkecuali pada perekayasaan perangkat lunak atau software. Jangkauan luas pengukuran pada perangkat lunak komputer disebut metrik perangkat lunak. Tujuan diterapkannya pengukuran pada proses perangkat lunak adalah untuk mengembangkan perangkat lunak itu sendiri dengan dasar yang kontinu. Pengukuran software dalam konteks manajemen software difokuskan pada produktivitas [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=109&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>PENGANTAR:<br />
Pengukuran adalah suatu hal pokok bagi disiplin perekayasaan(engineering), tidak terkecuali pada perekayasaan perangkat lunak atau software. Jangkauan 	luas pengukuran pada perangkat lunak komputer disebut metrik perangkat lunak.<br />
Tujuan diterapkannya pengukuran pada proses perangkat lunak adalah untuk mengembangkan perangkat lunak itu sendiri dengan dasar yang kontinu.<br />
Pengukuran software dalam konteks manajemen software difokuskan pada produktivitas dan metrik kualitas (pengukuran output perkembangan software 	sebagai fungsi usaha dan waktu yang diaplikasikan serta pengukuran “kesesuaian pemakaian” dari produk kerja yang dihasilkan).<br />
<span id="more-109"></span><br />
1.	PENGUKURAN, METRIK, DAN INDIKATOR</p>
<p>Dalam konteks rekayasa perangkat lunak, mengukur (measure) mengindikasikan kuantitatif dari ukuran atribut sebuah proses atau produk. Pengukuran 	(measurement) adalah kegiatan menentukan sebuah measure (pengukuran). Dan definisi metriks menurut IEEE adalah “ukuran kuantitatif dari tingkat dimana 	sebuah system, komponen atau proses memiliki atribut tertentu”.<br />
Pengukuran telah ada jika suatu data-data tunggal telah dikumpulkan (misal: jumlah kesalahan yang ditemukan pada kajian sebuah modul tunggal). Metrik 	perangkat lunak menghubungkan pengukuran-pengukuran individu dengan banyak cara, misal rata-rata dari jumlah kesalahan yang ditemukan pada setiap 	kajian.</p>
<p>Rekayasa perangkat lunak mengumpulkan pengukuran dan mengembangkan metrik menjadi sebuah indikator, yaitu sebuah metrik atau kombinasi metrik yang 	memberikan pengetahuan dalam proses perangkat lunak, sebuah proyek perangkat lunak, atau produk itu sendiri. Fungsinya adalah memberi pengetahuan pada 	manajer proyek atau perekayasa perangkat lunak untuk menyesuaikan proses, proyek, dan produk agar menjadi lebih baik.</p>
<p>2.	PENGUKURAN PERANGKAT LUNAK</p>
<p>Pengukuran langsung dari produk berkaitan dengan deretan kode, kecepatan eksekusi, ukuran memori, dan cacat yang dilaporkan pada suatu periode tertentu. Sedangkan pengukuran tidak langsung dari produk adalah tentang fungsionalitas, kualitas, kompleksitas, efisiensi, realibilitas, kemampuan pemeliharaan, dsb.Dalam kenyataannya, pengukuran perangkat lunak secara objektif akan sulit dilakukan secara langsung karena ada pengaruh-pengaruh seperti individu dalam tim pengukuran, atau tingkat kompleksitas proyek.<br />
Tetapi jika pengukuran dinormalisasi, maka mungkin akan dapat didapatkan metrik perangkat lunak yang memungkinkan perbandingan dengan rata-rata organisasional yang lebih besar.</p>
<p>2.1	METRIK SIZE ORIENTED</p>
<p>Parameternya adalah ”ukuran” dari software yang dihasilkan. Dapat dilakukan jika ada record atau catatan dari organisasi. Perlu diperhatikan bahwa 		yang record yang diperlukan adalah keseluruhan aktivitas rekayasa perangkat lunak. Misalnya tabel dibawah ini adalah pengumpulan dari data-data 		record yang ada dari sebuah organisasi:</p>
<p><a TITLE="atoy1" HREF="http://rpl07.files.wordpress.com/2007/06/116.gif"><img ALT="atoy1" SRC="http://rpl07.files.wordpress.com/2007/06/116.gif?w=500" /></a></p>
<p>Dimana LOC (line of code) menunjukkan jumlah baris kode yang dibuat pada masing-masing proyek, misalnya pada kolom pertama, proyek aplha 		dibuat dengan 12100 baris kode dalam 365 halaman, dikembangakan dengan usaha 24 orang per bulan dengan biaya $168000. Lalu ditemukan 		kesalahan sebanyak 134 pada proyek sebelum direlease, 29 cacat setelah direlease pada pelanggan, dan ada 3 orang yang bekerja pada 			pengembangan proyek perangkat lunak alpha.</p>
<p>Untuk pengembangan dari metrik ini, dapat dibuat metrik size oriented baru yang sederhana untuk tiap proyek, misal: kesalahan per baris kode 			(dihitung ribuan), cacat per baris kode (ribuan), dokumentasi per baris kode (ribuan), kesalahan per usaha, baris kode per usaha, biaya per halaman 		dokumentasi, dsb.</p>
<p>Metrik ini tidak dapat diterima secara universal karena adanya kontroversi pada penggunaan baris kode sebagai titik ukur. Sebagian yang setuju pada 		pengukuran LOC menganggap bahwa LOC adalah suatu bukti real dari apa yang dilakukan oleh perekayasa perangkat lunak (dalam konteks ini 		membuktikan berapa banyak baris program yang ditulis oleh seorang programmer – comment yang ada).</p>
<p>Sedangkan sebagian yang tidak setuju bahwa LOC dijadikan suatu tolak ukur kebanyakan disebabkan alasan ambiguitas dari cara menghitung LOC 		itu sendiri. Dalam masa-masa awal bahasa pemrograman Assembly, hal ini tidak menjadi suatu masalah karena dalam 1 baris aktual program 			merupakan 1 baris instruksi, tetapi dalam bahasa pemrograman tingkat tinggi, dimana pada masing-masing bahasa, untuk menyelesaikan suatu 			masalah dengan algoritma yang sama pun LOC nya sudah berbeda-beda. Bahkan dalam satu bahasa pemrograman yang sama, untuk menyelesaikan 		masalah yang sama, LOC nya bisa berbeda jauh tergantung dari algoritma yang digunakan. Hal ini yang membuat banyak sekali kontroversi mengenai 		LOC sebagai tolak ukur dari sebuah software.</p>
<p>2.2	METRIK FUNCTION ORIENTED</p>
<p>Normalisasi dilakukan pada fungsionalitas pada aplikasi, tetapi untuk melakukan hal ini, fungsionalitas harus diukur dengan pengukuran langsung yang lain 	karena fungsionalitas tidak dapat diukur secara langsung. Maka pengukuran dapat dilakukan dengan pengukuran function point. Function point didapat dari 	penarikan hubungan empiris berdasarkan pengukuran domain informasi software dan perkiraan kompleksitas software.<br />
Domain informasi yang biasa digunakan ada 5 karakteristik, yaitu:<br />
·		jumlah input pemakai: setiap input pemakai yang memberikan data yang berorientasi pada aplikasi yang jelas pada perangkat lunak (harus dibedakan 	dari penelitian yang dihitung secara terpisah) misal: tipe transaksi.<br />
·	jumlah output pemakai: setiap output pemakai yang memberikan informasi yang berorientasi pada aplikasi kepada pemakai. Pada konteks ini output 	mengacu pada laporan, layar, tampilan kesalahan, dsb. Jenis data individual pada laporan tidak dihitung terpisah. misal: report type.<br />
·	jumlah penyelidikan pemakai: input online yang mengakibatkan munculnya beberapa respon perangkat lunak yang cepat dalam bentuk output online.<br />
·	jumlah file: setiap master logika (pengelompokan data logis yang menjadi suatu bagian dari sebuah database yang besar atau sebuah file terpisah).<br />
·	jumlah interface eksternal: semua interface yang dapat dibaca oleh mesin yang digunakan untuk memindahkan informasi ke sistem yang lain</p>
<p>Sekali data telah dikumpulkan, maka nilai kompleksitas dihubungkan dengan masing-masing penghitungan dengan tabel perhitungan sebagai berikut:<br />
Faktor pembobotan<br />
<a TITLE="atoy2" HREF="http://rpl07.files.wordpress.com/2007/06/210.gif"><img ALT="atoy2" SRC="http://rpl07.files.wordpress.com/2007/06/210.gif?w=500" /></a></p>
<p>Dalam hal ini faktor pembobotan setiap faktor sudah menjadi standar dan tidak dapat diubah-ubah, tetapi dalam penentuan kriteria suatu perangkat lunak pada salah satu parameter pengukuran adalah sederhana, rata-rata atau kompleks ditentukan oleh organisasi atau perkeyasa perangkat lunak yang melakukan penghitungan itu sendiri. Tetapi meskipun begitu perkiraan kompleksitas tetap bersifat subyektif.</p>
<p>Untuk menghitung function point (FP) dapat digunakan hubungan sbb:<br />
FP = jumlah total x [0,65 + 0,01 x Fi]<br />
dimana jumlah total adalah nilai yang kita dapatkan pada tabel perhitungan di atas.</p>
<p>Sedangkan Fi dapat dihitung dari perhitungan sebagai berikut:<br />
·	Pertama-tama kita diberi 14 buah karakteristik dari suatu perangkat sebagai berikut:<br />
1.		Data communications<br />
2.	Distributed functions<br />
3.	Performance<br />
4.	Heavily used configuration<br />
5.	Transaction rate<br />
6.	Online data entry<br />
7.	End-user efficiency<br />
8.	Online update<br />
9.	Complex processing<br />
10.	Reusability<br />
11.	Installation ease<br />
12.	Operational ease<br />
13.	Multiple sites<br />
14.	Facilitation of change<br />
Pada setiap karakteristik tersebut diberi bobot dari nilai 0 sampai 5 dengan asumsi nilai sebagai berikut:<br />
0.		Tidak berpengaruh<br />
1.	Insidental<br />
2.	Moderat<br />
3.	Rata-rata<br />
4.	Signifikan<br />
5.	Essential</p>
<p>Setelah setiap karakteristik diberi bobot masing-masing, lalu bobot-bobot dari setiap karakteristik ini dijumlahkan (jadi minimum 0 dan maksimal 70) dan kita 		akan mendapatkan nilai Fi. Setelah mendapatkan nilai Fi maka kita bisa menghitung nilai FP dengan rumus di yang sudah ada di atas.<br />
Setelah kita mendapatkan nilai FP, maka kita dapat menggunakannya dengan cara analog dengan LOC untuk menormalisasi pengukuran produktivitas, 			kualitas perangkat lunak, serta atribut-atribut yang lain seperti:</p>
<p>·	kesalahan per FP<br />
·	cacat per FP<br />
·	$ per FP<br />
·	halaman dokumentasi per FP<br />
·	FP per person-month<br />
·	dsb<br />
(dimana untuk mendapatkan data-data untuk kesalahan, cacat, dolar, dsb dapat diambil dari data-data pada tabel record pada metrik size-oriented).</p>
<p>Contoh:</p>
<p>Pada proyek alpha (tabel record metrik size oriented) sudah dihitung bahwa jumlah input pemakainya ada 18 buah, jumlah output pemakai: 6 buah, jumlah penyelidikan pemakai 22 buah, jumlah file 45 buah, jumlah interface eksternal 20 buah, dengan asumsi bahwa jumlah input pemakai rata-rata, jumlah output pemakai sederhana, jumlah penyelidikan pemakai rata-rata, jumlah file kompleks, jumlah interface eksternal sederhana. Semua karakteristik pada perangkat lunak ini moderat. Hitung $ per FP nya!</p>
<p>Jawab:</p>
<p>jumlah total = (18 x 4) + (6 x 4) + (22 x 4) + (45 x 15) + (20 x 6) = 979<br />
Fi = 14 x 2 = 28<br />
FP = 979 x (0,65 + (0,01 x 28)) = 910,47<br />
$ pada proyek alpha: 168000<br />
$ per FP = 168000 / 910,47 = $184,52</p>
<p>Hasil dari contoh kasus diatas masih berupa suatu angka mentah, untuk dapat dilihat apakah angka ini termasuk baik atau tidak harus diperbandingkan dengan perhitungan lain, misalnya $ per FP dari proyek beta atau gamma, atau proyek dari organisasi lain.</p>
<p>Sebenarnya banyak sekali metrik-metrik yang digunakan untuk mengukur perangkat lunak, misalnya metrik FP yang diperluas (biasanya diaplikasikan dalam dunia bisnis) tetapi belum sempat dibahas disini.</p>
<p>Penulis:<br />
Arief Martoyo<br />
5105100139</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/rpl07.wordpress.com/109/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/rpl07.wordpress.com/109/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rpl07.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rpl07.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rpl07.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rpl07.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rpl07.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rpl07.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rpl07.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rpl07.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rpl07.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rpl07.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rpl07.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rpl07.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rpl07.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rpl07.wordpress.com/109/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=109&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rpl07.wordpress.com/2007/06/21/pengukuran-perangkat-lunak-menggunakan-metrik-size-oriented-dan-metrik-function-oriented-oleh-arif-m-5105-100-139/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3d7a924083c1286987a08eef0e55d0fc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Handy</media:title>
		</media:content>
	</item>
		<item>
		<title>Software Quality Assurance, oleh Rachmat T R [5104 100 043]</title>
		<link>http://rpl07.wordpress.com/2007/06/21/software-quality-assurance-oleh-rachmat-t-r-5104-100-043/</link>
		<comments>http://rpl07.wordpress.com/2007/06/21/software-quality-assurance-oleh-rachmat-t-r-5104-100-043/#comments</comments>
		<pubDate>Thu, 21 Jun 2007 14:28:22 +0000</pubDate>
		<dc:creator>Handy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://rpl07.wordpress.com/2007/06/21/software-quality-assurance-oleh-rachmat-t-r-5104-100-043/</guid>
		<description><![CDATA[Pengertian Quality IEEE Glossary: keadaan dimana sebuah sistem, komponen, atau proses sesuai dg (1)permintaan yang spesifik (2) permintaan atau kebutuhan konsumen atau penguna ISO: fitur dan karakteristik dari produk atau jasa yang didalamnya tdr dari kecakapan utk kepuasan yang spesifik atau yang sesuai dengan permintaan Kriteria2 Quality terdiri: correctness efficiency flexibility integrity interoperability maintainability portability [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=106&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Pengertian Quality</p>
<p>IEEE Glossary: keadaan dimana sebuah sistem, komponen, atau proses sesuai dg (1)permintaan yang spesifik (2) permintaan atau kebutuhan konsumen atau penguna<br />
ISO: fitur dan karakteristik dari produk atau jasa yang didalamnya tdr dari kecakapan utk kepuasan yang spesifik atau yang sesuai dengan permintaan</p>
<p>Kriteria2 Quality terdiri:<br />
correctness<br />
efficiency<br />
flexibility<br />
integrity<br />
interoperability<br />
maintainability<br />
portability<br />
reliability<br />
reusability<br />
testability<br />
usability</p>
<p><span id="more-106"></span></p>
<p>Konsep SQA</p>
<p>Pengertian SQA: suatu aktivitas sistemik yang diaplikasikan dalam software           proses sehingga hasilnya menjadi lebih baik.<br />
SQA meliputi bagian2:<br />
(1) a quality management approach<br />
(2) effective software engineering technology<br />
(3) formal technical reviews<br />
(4) a multi-tiered testing strategy<br />
(5) document change control<br />
(6) software development standard and its control procedure<br />
(7) measurement and reporting mechanism</p>
<p>Contoh Software gagal</p>
<p>Taurus (London Stock Exchange)<br />
11 years late &amp; 13,200% over budget<br />
London Ambulance Service<br />
faults led to reversion to manual processes<br />
Ariane 5<br />
coding defect in module reused from Ariane 4<br />
AT&amp;T switching system<br />
coding defect in three-line “fix”</p>
<p>Prosentase  Software Project</p>
<p><a TITLE="rahmat1" HREF="http://rpl07.files.wordpress.com/2007/06/115.gif"><img ALT="rahmat1" SRC="http://rpl07.files.wordpress.com/2007/06/115.gif?w=500" /></a><br />
Hambatan dalam pengembangan Software</p>
<p>·	Masalah terlalu komplek dan susah</p>
<p>·	Solusi terlalu komplek dan susah dispesifikasi Permintaan dengan ketelitian yang sangat tinggi</p>
<p>·	progress susah untuk dipantau</p>
<p>·	Teknologi dan bisnis terlalu cepat untuk berubah</p>
<p>Langkah2 mewujudkan QA</p>
<p>·	Dengan mengadaptasi berbagai disiplin ilmu dan profesional</p>
<p>·	Quality Management System</p>
<p>§	Documented processes &amp; Best Practice</p>
<p>§	ISO 9001 &amp; TickIT registration</p>
<p>·	Continuous Improvement</p>
<p>§	New methods (e.g. DSDM, UML) &amp; tools</p>
<p>§	Better &amp; more focussed Training</p>
<p>Quality Manajemen System</p>
<p>·	Defesinikan alur kerja</p>
<p>focuses</p>
<p>flexible</p>
<p>broadly applicable</p>
<p>·	Procedures and guidelines</p>
<p>mandatory elements and recommendations</p>
<p>·	Mix of best practice &amp; common sense</p>
<p>Project Control</p>
<p>·	Inisiasi Project<br />
·	Akhir Project<br />
·	Estimasi<br />
·	Risks &amp; issues<br />
·	Project &amp; Quality plans<br />
·	Schedule plans<br />
·	Progress monitoring &amp; reporting</p>
<p>Quality Control</p>
<p>·	Perencanaan<br />
·	Quality Control Reviews<br />
·	Proses persetujuan<br />
·	Validation, Verification &amp; Testing</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/rpl07.wordpress.com/106/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/rpl07.wordpress.com/106/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rpl07.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rpl07.wordpress.com/106/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rpl07.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rpl07.wordpress.com/106/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rpl07.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rpl07.wordpress.com/106/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rpl07.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rpl07.wordpress.com/106/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rpl07.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rpl07.wordpress.com/106/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rpl07.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rpl07.wordpress.com/106/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rpl07.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rpl07.wordpress.com/106/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=106&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rpl07.wordpress.com/2007/06/21/software-quality-assurance-oleh-rachmat-t-r-5104-100-043/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3d7a924083c1286987a08eef0e55d0fc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Handy</media:title>
		</media:content>
	</item>
		<item>
		<title>Konsep dan Prinsip Desain, oleh Afwan B [5105 100 169]</title>
		<link>http://rpl07.wordpress.com/2007/06/21/konsep-dan-prinsip-desain-oleh-afwan-b-5105-100-169/</link>
		<comments>http://rpl07.wordpress.com/2007/06/21/konsep-dan-prinsip-desain-oleh-afwan-b-5105-100-169/#comments</comments>
		<pubDate>Thu, 21 Jun 2007 14:21:10 +0000</pubDate>
		<dc:creator>Handy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://rpl07.wordpress.com/2007/06/21/konsep-dan-prinsip-desain-oleh-afwan-b-5105-100-169/</guid>
		<description><![CDATA[Desain adalah langkah pertama dalam fase pengembangan bagi setiap produk atau sistem yang direkayasa. Desain dapat didefinisikan berbagai “proses aplikasi berbagai teknik dan prinsip bagi tujuan pendefinisian suatu perangkat, suatu proses atau sistem dalam detail yang memadai untuk memungkinkan realisasi fisiknya”[TAY59]. Tujuan desainer adalah untuk menghasilkan suatu model atau representasi dari entitas yang kemudian akan [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=105&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Desain adalah langkah pertama dalam fase pengembangan bagi setiap produk atau sistem yang direkayasa. Desain dapat didefinisikan berbagai “proses aplikasi berbagai teknik dan prinsip bagi tujuan pendefinisian suatu perangkat, suatu proses atau sistem dalam detail yang memadai untuk memungkinkan realisasi fisiknya”[TAY59]. Tujuan desainer adalah untuk menghasilkan suatu model atau representasi dari entitas yang kemudian akan dibangun.</p>
<p>Desain Perangkat Lunak Dan Rekayasa Perangkat Lunak</p>
<p>Desain perangkat lunak berada pada inti teknik dari proses rekayasa perangkat lunak dan diaplikasikan tanpa memperhatikan model proses perangkat lunak yang digunakan. Begitu persyaratan perangkat lunak telah mulai dianalisis dan ditentukan, maka desain perangkat lunak menjadi yang pertama dari tiga aktivitas teknik – desain, pembuatan kode dan pengujian – yang diperlukan untuk membangun dan menguji perangkat lunak. Persyaratan perangkat lunak, yang dimanifestasi oleh data, fungsional, dan model-model perilaku, mengisi langkah desain. Dengan menggunakan satu dari sejumlah metode desain, langkah desain menghasilkan<br />
a.		desain data<br />
b.	desain arsitektur<br />
c.	desain interface<br />
d.	desain prosedural<br />
<span id="more-105"></span><br />
Selama desain, kita dapat membuat keputusan yang akan mempengaruhi kesuksesan konstruksi perangkat lunak dan kemudahan maintenance-nya. Desain sangat penting karena dapat menentukan kualitas dari suatu perangkat lunak.<br />
Proses Desain</p>
<p>Desain perangkat lunak adalah suatu proses interaktif yang melaluinya persyaratan diterjemahkan ke dalam suatu “cetak biru” untuk membangun perangkat lunak. Cetak biru menggambarkan suatu pandangan menyeluruh perangkat lunak, yaitu  bahwa desain dihadirkan pada tingkat abstraksi yang tinggi (dapat secara lanngsung ditelusuri sampai data spesifik, fungsional, dan persyaratan behavioral)</p>
<p>1.	Desain dan kualitas perangkat lunak</p>
<p>McGlaughlin mengusulkan 3 karakteristik yang berfungsi sebagai pedoman bagi evaluasi suatu desain yang baik :<br />
a.	desain harus mengimplementasikan keseluruhan persyaratan eksplisit yang dibebankan dalam model analisis, dan harus mengakomodasikan semua persyaratan implisit yang diinginkan pelanggan.<br />
b.	Desain harus menjadi panduan yang dapat dibaca, dapat dipahami bagi mereka yang menghasilkan kode dan yang menguji serta  memelihara perangkat lunak.<br />
c.	Desain harus memberikan suatu gambaran lengkap mengenai perangkat lunak, yang menekankan data, dan domain perilaku dari perspektif implementasi.<br />
Kriteria teknis untuk desain yang baik :<br />
a.	Desain harus memperlihatkan suatu organisasi yang dengan baik menggunakan kontrol di antara elemen-elemen perangkat lunak.<br />
b.	Desain harus modular : yaitu bahwa perangkat lunak harus dipartisi secara logika ke dalam elemen-elemen yang melakukan fungsi dan subfungsi khusus.<br />
c.	Desain harus berisi data dan abstraksi prosedural.<br />
d.	Desain harus membawa ke arah modul (misal subrutin atau prosedur) yang memperlihatkan karakteristik fungsional independent.<br />
e.	Desain harus mengarah kepada interface yang mengurangi kompleksitas hubungan antara modul-modul dan dengan lingkunga eksternal.<br />
f.	Desain harus didapat dengan menggunakan metode berulang yang dikendalikan oleh informasi yang diperoleh selama analisis persyaratan perangkat lunak.</p>
<p>2.	Evolusi desain perangkat lunak</p>
<p>Merupakan suatu proses kontinu yang terus berlangsung selama tiga dekade. Kerja desain awal dikonsentrasikan pada kriteria untuk pengembangan program moduler dan metode-metode untuk menyaring arsitektur perangkat lunak dengan cara top-down. Aspek-aspek prosedural dari definisi desain yang tercakup dalam suatu filosofi disebut pemrograman terstruktur. Usaha selanjutnya mengusulkan metode-metode translasi aliran data atau struktur data ke dalam definisi desain. Pendekatan desain yang lebih baru mengusulkan suatu pendekatan orientasi obyek ke derivasi desain.</p>
<p>Banyak metode desain yang tumbuh dari kerja tersebut, sedang diaplikasi pada industri. Setiap metode tersebut mempunyai sejumlah karakteristik umum :<br />
a.	mekanisme penerjemahan suatu model analisis ke dalam representasi desain.<br />
b.	Notasi untuk merepresentasikan komponen-komponen fungsional dan interface-nya.<br />
c.	Heuristik bagi penyaringan dan partisi<br />
d.	Pedoman bagi penilaian kualitas</p>
<p>Prinsip desain</p>
<p>Desain perangkat lunak berupa model dan proses. Proses desain adalah serangkaian langkah iteratif yang memungkinkan desainer menggambarkan semua aspek perangkat lunak yang dibangun. Model desain adalah ekivalen rencana arsitek untuk sebuah “rumah”, yang dimulai dengan menyajikan totalitas dari hal yang akan dibangun. Prinsip desain dasar memungkinkan perekayasa perangkat lunak untuk mengendalikan proses desain.<br />
a.	Proses desain tidak boleh menderita karena “tunnel vision”<br />
b.	Desain harus dapat ditelusuri sampai model analisis.<br />
c.	Desain tidak boleh berulang.<br />
d.	Desain harus “meminimalkan kesenjangan intelektual” di antara perangkat lunak dan masalah yang ada di dunia nyata.<br />
e.	Desain harus mengungkap keseragaman dan integrasi.<br />
f.	Desain harus terstruktur untuk mengakomodasi perubahan.<br />
g.	Desain harus terstruktur untuk berdegradasi dengan baik, bahkan pada saat data dan event-event menyimpang, atau menghadapi kondisi operasi.<br />
h.	Desain bukanlah pengkodean, dan pengkodean bukanlah desain.<br />
i.	Desain harus dinilai kualitasnya pada saat desain dibuat, bukan setelah jadi.<br />
j.	Desain harus dikaji untuk meminimalkan kesalahan-kesalahan konseptual (semantik).</p>
<p>Konsep-konsep desain</p>
<p>1.	Abstraksi</p>
<p>Abstraksi memungkinkan desainer menentukan prosedur dan data, dan masih menekan detail tingkat rendah.<br />
Terdapat 3 macam bentuk abstraksi, yaitu :<br />
a.	Abstraksi prosedural.<br />
Merupakan urutan instruksi yang diberi nama yang mempunyai fungsi tertentu dan terbatas.<br />
b.	Abstraksi data.<br />
Kumpulan data yang bernama yang menggambarkan obyek data.<br />
c.	Abstraksi kontrol.<br />
Mengimplikasikan suatu mekanisme kontrol program tanpa menentukan detail-detail internal</p>
<p>2.	Penyaringan.</p>
<p>Penyaringan stepwise (dengan serangkaian langkah) adalah strategi desain top-down yang diusulkan oleh Wiklaus Wirth. Kajian dari konsep tersebut adalah<br />
“Pada setiap langkah (penyaringan), satu atau beberapa instruksi dari program yang diberikan didekomposisi ke dalam instruksi-instruksi yang lebih detail. Dekomposisi berurutan atau penyaringan spesifikasi berhenti bila semua instruksi diekspresikan dalam bentuk bahasa pemrograman atau komputer yang mendasar. Jika tugas-tugas disaring, maka data harus disaring juga, didekomposisi atau distruktur, dan adalah wajar untuk menyaring program dan spesifikasi data secara paralel” .</p>
<p>Abstraksi dan penyaringan adalah konsep kompementer. Kedua konsep tersebut membantu desainer dalam menciptakan suatu model desain lengkap jika desain berkembang.</p>
<p>3.	Modularitas</p>
<p>Modularitas merupakan atribut tunggal dari perangkat lunak yang memungkinkan sebuah program untuk dikelola secara intelektual.<br />
Meyer menyebutkan 5 kriteria yang memungkinkan kita untuk mengevaluasi suatu metode desain dengan merujuk pada kemampuannya untuk menentukan sistem modular yang efektif.<br />
a.	Dekomposisi modular.<br />
b.	Komposabilitas modular.<br />
c.	Kemampuan pemahaman modular.<br />
d.	Kontinuitas modular.<br />
e.	Proteksi modular.</p>
<p>4.	Arsitektur perangkat lunak</p>
<p>Arsitektur perangkat lunak mencakup “struktur keseluruhan perangkat lunak dan cara dimana struktur memberikan integrasi konseptual bagi suatu sistem”.</p>
<p>Shaw dan Garlan menjelaskan sekumpulan properti yang seharusnya ditetapkan sebagai bagian dari desain arsitektural :<br />
a.	Properti struktural.<br />
Menentukan komponen suatu sistem dan cara dimana komponen-komponen tersebut dikemas dan berinteraksi satu dengan yang lain.<br />
b.	Properti ekstra-fungsional.<br />
Menekankan pada bagaimana arsitektur desain memenuhi persyaratan kinerja, kapasitas, reliabilitas, keamanan, adaptibilitas, dan karakteristik sistem yang lain.<br />
c.	Keluarga dari sistem yang berhubungan.<br />
Desain harus memiliki kemampuan untuk memakai lagi blok bangunan arsitektural tersebut.</p>
<p>5.	Hirarki Kontrol<br />
Hirarki kontrol, disebut juga struktur program merepresentasikan organisasi komponen program serta mengimplikasikan suatu hirarki kontrol. Hirarki kontrol tidak mengimplikasikan aspek prosedural dari perangkat lunak, seperti urutan proses, kejadian/urutan dari keputusan, atau pengulangan operasi.</p>
<p>6.	Partisi struktural<br />
Struktur progam harus dipartisi baik secara horizontal maupun vertikal.<br />
Partisi horizontal menentukan cabang-cabang terpisah dari hirarki modular untuk setiap fungsi program mayor. Keuntungannya :<br />
a.	menghasilkan perangkat lunak yang lebih mudah diuji.<br />
b.	Membawa kepada perangkat lunak yang lebih mudah dipelihara.<br />
c.	Menghasilkan penyebaran efek samping yang lebih sedikit.<br />
d.	Menghasilkan suatu perangkat lunak yang lebih mudah untuk diperluas.<br />
Partisi vertikal menyatakan bahwa kontrol dan kerja harus didistribusikan secara top-down dalam arsitektur program.<br />
7.	Struktur data<br />
Struktur data adalah representasi dari hubungan logis antara elemen-elemen data individual.</p>
<p>8.	Prosedur perangkat lunak<br />
Prosedur perangkat lunak berfokus pada detail-detail pemrosesan dari masing-masing modul secara individual. Prosedur harus memberikan spesifikasi yang teliti terhadap pemrosesan, mencakup urutan event, poin-poin keputusan nyata, operasi repetitif, dan organisasi struktur data.</p>
<p>9.	Penyembunyian informasi<br />
Prinsip penyembunyian informasi menyatakan bahwa bahwa modul ditandai dengan keputusan desain tersembunyi dari semua desain lain.</p>
<p>Desain Modular Afektif<br />
1.	Independensi fungsional<br />
Merupakan hasil pertumbuhan langsung dari modularitas dan konsep abstraksi dan penyembunyian informasi.<br />
Independensi fungsional dicapai dengan mengembangkan modul dengan fungsi “single-minded” dan suatu “aversi” ke interaksi eksesif dengan modul yang lain.</p>
<p>2.	Kohesi<br />
Kohesi adalah suatu ekstensi natural dari konsep penyembunyian informasi.  Modul kohesi melakukan suatu tugas tunggal pada suatu prosedur perangkat lunak yang memerlukan sedikit interaksi dengan prosedur yang sedang dilakukan di bagian lain dari suatu program.</p>
<p>3.	Perangkaian<br />
Perangkaian adalah pengukuran interkoneksi  diantara modul-modul pada sebuah struktur progam. Perangkaian tergantung pada kompleksitas interface diantara modul-modul, titik dimana entri atau referensi dibuat untuk sebuah modul dan data yang dilewatkan pada interface tersebut.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/rpl07.wordpress.com/105/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/rpl07.wordpress.com/105/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rpl07.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rpl07.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rpl07.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rpl07.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rpl07.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rpl07.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rpl07.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rpl07.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rpl07.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rpl07.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rpl07.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rpl07.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rpl07.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rpl07.wordpress.com/105/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=105&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rpl07.wordpress.com/2007/06/21/konsep-dan-prinsip-desain-oleh-afwan-b-5105-100-169/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3d7a924083c1286987a08eef0e55d0fc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Handy</media:title>
		</media:content>
	</item>
		<item>
		<title>Strategi Pengujian Software, oleh Ardi F [5105 100 118]</title>
		<link>http://rpl07.wordpress.com/2007/06/21/strategi-pengujian-software-oleh-ardi-f-5105-100-118/</link>
		<comments>http://rpl07.wordpress.com/2007/06/21/strategi-pengujian-software-oleh-ardi-f-5105-100-118/#comments</comments>
		<pubDate>Thu, 21 Jun 2007 14:16:59 +0000</pubDate>
		<dc:creator>Handy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://rpl07.wordpress.com/2007/06/21/strategi-pengujian-software-oleh-ardi-f-5105-100-118/</guid>
		<description><![CDATA[Sebuah strategi, untuk pengujian software mengintegrasikan metode desain kasus pengujian software kedalam langkah-langkah terencanaan yang tersusun rapi sehingga menghasilkan konstruksi software yang sukses. Yang terpenting adalah strategi pengujian software menyediakan jalan bagi software developer, organisasi penjamin kualitas dan pelanggan karena jalan ini mendeskripsikan langkah-langkah yang akan dipakai sebagai bagian dari pengujian yaitu ketika langkah-langkah ini [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=99&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Sebuah strategi, untuk pengujian software mengintegrasikan metode desain kasus pengujian software kedalam langkah-langkah terencanaan yang tersusun rapi sehingga menghasilkan konstruksi software yang sukses. Yang terpenting adalah strategi pengujian software menyediakan jalan bagi software developer, organisasi penjamin kualitas dan pelanggan karena jalan ini mendeskripsikan langkah-langkah yang akan dipakai sebagai bagian dari pengujian yaitu ketika langkah-langkah ini direncanakan dan kemudian dijalankan lalu dapat diketahui berapa banyak usaha, waktu dan sumber daya yang akan diperlukan.  Oleh karena itu, strategi pengujian manapun harus menyertakan perencanaan pengujian, desain kasus pengujian, pelaksanaan pengujian dan koleksi serta evaluasi data resultan.</p>
<p><span id="more-99"></span><br />
Strategi pengujian software haruslah cukup fleksibel untuk mempromosikan kreatifitas dan customisasi yang diperlukan bagi pengujian semua system software berskala besar. Pada saat yang sama, strategi haruslah cukup kaku untuk mempromosikan perencanaan yang layak dan tracking manajemen sebagai jalannya proyek.<br />
Shooman[SHO83] :<br />
Dalam berbagai bentuk, pengujian atau testing adalah proses yang bersifat individu dan banyaknya jenis perbedaan dari variasi pengujian sebanyak perbedaan dalam pendekatan pengembangan. Dalam beberapa tahun, pertahanan kita menghadapi error dalam pemrograman  hanyalah desain yang hati-hati dan kecerdasan alami dari programmer. Sekarang kita berada pada masa dimana teknik desain modern [dan review dari teknik formal] membantu kita untuk menurunkan jumlah dari error yang terinisialisasi dan tidak dapat dipisahkan dari kode. Dengan cara yang sama, metode pengujian yang berbeda diawali untuk mengikat error kedalam beberapa pendekatan dan filosofi yang berbeda.<br />
Pendekatan dan filosofi inilah yang akan disebut strategi.<br />
Pendekatan strategi dalam pengujian software<br />
Pengujian atau testing adalah aktifitas yang dapat direncanakan kedepannya dan penyelenggaraannya secara sistematis. Karena alasan ini untuk pengujian software haruslah didefinisikan dalam proses rekayasa perangkat lunak atau software engineering.<br />
Sejumlah strategi pengujian software telah diusulkan dalam literatur. Semuanya menyediakan developer software dengan template untuk pengujian dan semuanya memiliki memiliki karakteristik umum:<br />
	Testing dimulai pada level modul dan bekerja keluar kearah integrasi pada sistem berbasiskan komputer<br />
	Teknik testing yang berbeda sesuai dengan poin-poin yang berbeda pada waktunya<br />
	Testing diadakan oleh software developer dan untuk proyek yang besar oleh group testing yang independent<br />
	Testing dan Debugging adalah aktivitas yang berbeda tetapi debugging harus diakomodasikan pada setiap strategi testing<br />
Sebuah strategi untuk pengujian software harus mengakomodasi pengujian tingkat rendah yang diperlukan untuk memverifikasi segmentasi source code yang kecil apakah telah dengan benar diimplementasikan sebaik pengujian pada pengujian tingkat tinggi yang memvalidasi fungsi system utama dalam menghadapi kebutuhan pelanggan. Sebuah strategi haruslah menyediakan petunjuk bagi praktisi dan manajer. Karena langkah-langkah dalam strategi pengujian terjadi pada saat tekanan deadline meningkat, kemajuan harus terukur dan permasalahan harus diketahui secepat mungkin.<br />
Verifikasi dan Validasi<br />
Pengujian Software adalah satu elemen dari sebuah topik broader yang sering diartikan sebagai<br />
è Verifikasi dan Validasi (V&amp;V)<br />
Verifikasi : menunjuk ke kumpulan aktifitas yang memastikan bahwa software mengimplementasi sebuah fungsi spesifik.<br />
Validasi : menunjuk ke sebuah kumpulan berbeda dari aktivitas yang memastikan bahwa software yang telah dibangun dapat di-trace terhadap kebutuhan customer.<br />
Boehm [BOE81]:<br />
Verifikasi: “Apakah kita membangun produk dengan baik?”<br />
Validasi: “Apakah kita membangun produk yang baik?”<br />
Defenisi V&amp;V meliputi banyak aktifitas SQA, termasuk review teknis formal, kualitas dan audit konfigurasi monitor performance, tipe yang berbeda dari pengujian software 	study feasibility dan simulasi.</p>
<p>Mendapatkan Kualitas Software</p>
<p><a TITLE="ardi1" HREF="http://rpl07.files.wordpress.com/2007/06/114.gif"><img ALT="ardi1" SRC="http://rpl07.files.wordpress.com/2007/06/114.gif?w=500" /></a><br />
[gambar 1]</p>
<p>	Metode software engineering menyediakan dasar dari mutu yang mana yang akan dipakai.<br />
	Metode Analysis, design and Construction berupa tindakan untuk meningkatkan kualitas dengan menyediakan  teknik yang seragam dan hasil yang sesuai dengan keinginan.<br />
	Metode Formal Technical Reviews menolong untuk memastikan kualitas kerja produk merupakan hasil konsekuensi dari setiap langkah software engineering.<br />
	Metode Measurement  diberlakukan pada setiap elemen dari konfigurasi software<br />
	Metode Standards and Procedures membantu untuk memastikan keseragaman dan formalitas dari SQA untuk menguatkan dasar “filosofi kualitas total”<br />
	MetodeTesting menyediakan cara terakhir dari tingkat kualitas mana yang dapat dicapai dan dengan praktis dapat mengetahui letak error.<br />
Organisasi Pengujian Software<br />
Obyektif pengujian: tidak menutup error(defects) pada software, termasuk error pada:<br />
- kebutuhan dari analisa kebutuhan<br />
- desain terdokumentasi dalam spesifikasi desain<br />
- coding (implementasi)<br />
- sumber sistem dan lingkungan sistem<br />
- masalah-masalah hardware dan interface-nya 	terhadap software<br />
Pengujian Software dapat dipertimbangkan secara psikologi dihancurkan(destructive).<br />
Siapa yang terlibat dalam pengujian software?<br />
- developer<br />
- tester (test engineer) di ITG<br />
- SQA group<br />
Organisasi pengujian software:<br />
- Individual tester dalam sebuah tim pengembang<br />
- Independent test group (ITG)</p>
<p>Sebuah Strategi Pengujian Software</p>
<p><a TITLE="ardi2" HREF="http://rpl07.files.wordpress.com/2007/06/29.gif"><img ALT="ardi2" SRC="http://rpl07.files.wordpress.com/2007/06/29.gif?w=500" /></a></p>
<p>Diagram diatas menunjukkan dua langkah yaitu proses rekayasa perangkat lunak(software engineering) dan proses strategi pengujian perangkat lunak. Untuk proses software engineering :<br />
	Software Engineering mendefinisikan peran dari software dan mengarahkan ke software requirement analysis, sebagai pusat kriteria informasi, fungsi, perilaku, performa, batasan dan validasi dari software yang dibangun.<br />
	Bergerak kedalam sepanjang spiral, hingga design dan terakhir proses koding (code).<br />
Untuk proses strategi pengujian perangkat lunak :<br />
	Dimulai dari Unit Testing yang dikonsentrasikan pada setiap unit software seperti yang diterapkan dalam source code<br />
	Kemudian bergerak keluar hingga ke integration testing dimana fokus pada desain dan konstruksi pada arsitektur software.<br />
	Kemudian bergerak lagi hingga ke validation testing dimana kebutuhan dibentuk sebagai bagian dari software requirement analysis yang divalidasi berdasarkan software yang dibentuk.<br />
	Terakhir pada system testing dimana software dan element system lainnya dites secara keseluruhan</p>
<p>Langkah-langkah Pengujian Software</p>
<p><a TITLE="ardi3" HREF="http://rpl07.files.wordpress.com/2007/06/36.gif"><img ALT="ardi3" SRC="http://rpl07.files.wordpress.com/2007/06/36.gif?w=500" /></a></p>
<p>Terdapat 4 langkah yaitu:<br />
	Unit testing-testing per unit yaitu mencoba alur yang spesifik pada struktur modul kontrol untuk memastikan pelengkapan secara penuh dan pendeteksian error secara maksimum<br />
	Integration testing –testing per penggabungan unit yaitu pengalamatan dari isu-isu yang diasosiasikan dengan masalah ganda pada verifikasi dan konstruksi program<br />
	High-order test yaitu terjadi ketika software telah selesai diintegrasikan atau dibangun menjadi satu –tidak terpisah-pisah<br />
	Validation test yaitu menyediakan jaminan akhir bahwa software memenuhi semua kebutuhan fungsional, kepribadian dan performa.<br />
Kriteria dari Testing yang telah selesai<br />
•	Dengan menggunakan model  statisitik dan  teori software reliability, model dari kegagalan software-yang tidak terdeteksi selama testing-sebagai fungsi dari waktu eksekusi dapat dikembangkan<br />
•	Sebuah versi dari model kegagalan yang disebut logarithmic Poisson execution-time model, memiliki bentuk</p>
<p>Fungsi diatas dapat disederhanakan menjadi<br />
Keterangan<br />
f(t)=jumlah kegagalan secara kumulatif yang diharapkan terjadi ketika software telah diuji dalam waktu tertentu, t.<br />
l0 = inisial intensitas kegagalan software(kegagalan per unit dalam satuan waktu) pada awal testing<br />
p = reduksi secara eksponensial pada intensitas kegagalan atas error yang tidak terdeteksi dan perbaikan yang dibuat<br />
Grafik intensitas kegagalan sebagai fungsi dari waktu eksekusi</p>
<p><a TITLE="ardi4" HREF="http://rpl07.files.wordpress.com/2007/06/46.gif"><img ALT="ardi4" SRC="http://rpl07.files.wordpress.com/2007/06/46.gif?w=500" /></a></p>
<p>Argumen Tom Gilb<br />
Yang menyatakan bahwa prosedur berikut harus digunakan jika ingin mengimplementasikan software testing strategy yang sukses<br />
1.	Menetapkan seluruh kebutuhan produk software dalam perhitungan sebelum memulai testing<br />
2.	Status obyek testing harus jelas<br />
3.	Memahami pengguna software dan mengembangkan sebuah profil untuk setiap kategori user<br />
4.	Mengembangkan rencana testing yang menekankan pada “rapid cycle testing”<br />
5.	Membangun software yang sempurna yang didesain untuk mengetes dirinya sendiri<br />
6.	Menggunakan tinjauan ulang yang formal sebagai filter sebelum pengujian<br />
7.	Melakukan tinjauan ulang secara formal untuk menilai strategi tes dan kasus tes itu sendiri<br />
8.	Mengembangkan pendekatan peningkatan yang berkelanjutan untuk proses testing</p>
<p>Test Unit (Test Level Komponen)<br />
Pengujian unit: Komponen individual yang diuji secara independen untuk memastikan kualitasnya. Fokusnya untuk tidak menutup error pada desain dan implementasi, meliputi:<br />
struktur data pada sebuah komponen<br />
logika program dan struktur program pada sebuah komponen<br />
interface komponen<br />
fungsi dan operasi dari sebuah component<br />
Penguji/tester unit: pengembang dari komponen.<br />
<a TITLE="ardi5" HREF="http://rpl07.files.wordpress.com/2007/06/54.gif"><img ALT="ardi5" SRC="http://rpl07.files.wordpress.com/2007/06/54.gif?w=500" /></a></p>
<p>Test Integrasi<br />
Test Integrasi: 	Sebuah group dari component dependent diuji bersama untuk memastikan kualitas dari unit integrasinya. Merupakan teknik sistematik untuk membangun struktur program pada saat melakukan testing untuk mencari error.  Secara obyektif untuk mengambil modul unit test dan membangun struktur program yang telah dirancang oleh desainnya<br />
Fokusnya untuk meng-uncover error pada:<br />
ü	   Desain dan konstruksi arsitektur software<br />
ü	   Fungsi-fungsi yang terintegrasi atau operasi pada level sub-system<br />
ü	   Interface dan interaksi diantaranya<br />
ü	   Integrasi resource dan/atau integrasi lingkungan<br />
Penguji integration:  pengembang dan/atau test engineer.<br />
Strategi  Pengujian Integrasi<br />
Pendekatan:</p>
<p>a) integrasi non-incremental<br />
b) integrasi incremental<br />
Integrasi non-incremental :<br />
- Big Band<br />
- menggabungkan (atau mengintegrasi) semua bagian dalam sekali.<br />
Keuntungan: 	- sederhana<br />
Kerugian:<br />
- sulit untuk men-debug, tidak mudah untuk mengisolasi  error<br />
- tidak mudah untuk memvalidasi hasil test<br />
- mustahil untuk membentuk sebuah sistem terintegrasi  impossible</p>
<p>Integrasi incremental:<br />
mengintegrasi sistem tahap demi tahap(atau bagian demi bagian) dalam sebuah pesanan yang didesain dengan 	baik.<br />
Tiga metode penting:<br />
a) Top-down<br />
b) bottom-up<br />
c) Sandwich<br />
- menggunakan top-down untuk modul upper-level dan 	bottom-up untuk modul low-level</p>
<p>Integrasi Top-down<br />
Ide:<br />
- Modul-modul diintegrasi dengan memindahkan downward melalui struktur kontrol. Modul subordinate ke modul kontrol utama digabung ke sistem dalam cara depth-first atau breadth-first.</p>
<p>Proses integrasi(lima langkah):<br />
1.	modul kontrol utama digunakan sebagai sebuah test driver, dan  stubs disubstitusi untuk semua modul secara langsung ke modul  kontrol utama.<br />
2.	stub subordinate digantikan sekali satu waktu dengan modul actual.<br />
3.	test terkonduksi sebagai tiap modul diintegrasi.<br />
4.	pada pelengkapan tiap kumpulan test, stub lainnya diganti dengan modul  real.<br />
5.	pengujian regresi dapat dikonduksi.<br />
Integration top-down pros dan cons :<br />
- biaya kostruksi stub<br />
- fungsi kontrol utama dapat diuji lebih cepat.</p>
<p>Integrasi Bottom-Up<br />
Ide:<br />
- Modul pada level terbawah diintegrasi pertama, kemudian dengan menggerakkan keatas melalui struktur kontrol.<br />
Proses integration(lima langkah):<br />
1.	Modul low-level dikombinasikan ke cluster yang menunjukkan sebuah sub-function software spesifik.<br />
2.	sebuah driver ditulis untuk meng-coordinate input dan output test case.<br />
3.	Test cluster diuji.<br />
4.	Driver dipindah dan cluster digabungkan bergerak ke atas dalam struktur program.<br />
Integrasi bottom-up pros dan cons:<br />
- tidak ada biaya stub<br />
- perlu pengujian driver<br />
- tidak ada sistem yang dapat dikontrol hingga langkah terakhir</p>
<p>Regression Testing<br />
Merupakan aktivitas yang membantu untuk memastikan sebuah perubahan (yang berkaitan dengan testing atau penjelasan lain) tidak menghasilkan perilaku yang tidak diharapkan atau error tambahan<br />
Regression tes terdiri dari 3 kelas, yaitu:<br />
	Sebuah Contoh yang mewakili tes yang akan menguji semua fungsi software<br />
	Tes tambahan yang berfokus pada fungsi software yang tampak yang akan berubah akibat perubahan lain<br />
	Tes yang berfokus pada komponen software yang telah berubah<br />
Validation testing<br />
Uji Validasi : Software yang berintegrasi diuji berdasarkan pada kebutuhan untuk memastikan bahwa kita memiliki produk yang benar.<br />
	Fokus-nya adalah untuk meng-uncover error pada:<br />
- Input/output sistem<br />
		- Informasi fungsi sistem dan data<br />
		- Interface sistem dengan bagian eksternal<br />
		- User interface<br />
		- Perilaku dan performance sistem<br />
Penguji validasi : uji engineer pada orang-orang ITG atau SQA.</p>
<p>Uji Sistem<br />
Uji sistem:  Sistem software diuji keseluruhan. Ini memverifikasi semua elemen secara langsung untuk memastikan bahwa semua fungsi dan performance sistem diterima dalam lingkungan target.<br />
Terbagi menjadi 4 bagian yaitu<br />
	Recovery Testing :  sistem tes yang menekan software untuk gagal dengan cara yang bervariasi dan memverifikasi perbaikan sendiri dengan baik<br />
	Security Testing :  usaha untuk memverifikasi mekanisme perlindungan yang dibuat dalam sistem apakah akan melindunginya dengan semestinya.<br />
	Stress Testing : didesain untuk menghadapi program dengan situasi abnormal.<br />
	Performance Testing : didesain untuk menguji performa software ketika bekerja dalam konteks pengintegraian sistem.<br />
	Pengujian instalasi : didesain untuk menguji prosedur instalasi dan software pendukungnya<br />
Area fokus adalah:<br />
	Fungsi dan performance sistem<br />
	Reliability(ketersediaan) dan recoverability   (kemampuan menutup/recovery test) sistem<br />
	Instalasi (uji instalasi) sistem<br />
	Perilaku pada kondisi tertentu (uji tekanan dan load) sistem<br />
	Operasi user (acceptance test/alpha test/) sistem<br />
	Integrasi dan kolaborasi hardware dan software<br />
	Integrasi software eksternal dan sistem<br />
Penguji sistem : uji engineer pada orang-orang ITG atau SQA.<br />
Saat sebuah sistem akan dikeluarkan sebagai sebuah produk software, suatu proses pengujian yang disebut pengujian beta sering digunakan.<br />
Rencana Uji<br />
Rencana uji berhubungan dengan mengeset standar untuk pengujian proses 	dibanding penggambaran pengujian produk.<br />
Test plan/rencana uji terdiri atas:<br />
- standar untuk proses pengujian<br />
- resource yang diperlukan (hardware, software dan engineer)<br />
- jadwal pengujian (pengujian task dan milestones)<br />
- uji item (apa yang harus diuji)<br />
- prosedur recording test<br />
(hasil test harus secara sistematis direkam)<br />
- constraint<br />
Test planning adalah sebuah dari suatu test manager.<br />
Sebuah test plan adalah output dari perencanaan.<br />
(Gambar berikut)</p>
<p><a TITLE="ardi6" HREF="http://rpl07.files.wordpress.com/2007/06/62.gif"><img ALT="ardi6" SRC="http://rpl07.files.wordpress.com/2007/06/62.gif?w=500" /></a></p>
<p>Debugging<br />
	Gejalanya mungkin sebagai hasil dari masalah pemilihan waktu dibanding masalah proses<br />
	Kemungkinan sulit secara akurat mereproduksi kondisi input<br />
	Gejalanya mungkin terjadi dalam waktu yang dekat berkelanjutan<br />
	Gejalanya mungkin berkaitan dengan penyebab yang didistribusikan melewati sejumlah task yang berjalan pada prosesor yang berbeda<br />
Terdapat 3 kategori pendekatan Debugging<br />
1.	Brute force : metode yang paling umum dan lebih efisien untuk mengisolasi penyebab dari error software<br />
2.	Backtracking : metode yang dapat berhasil pada program kecil<br />
3.	Cause elimination :  perwujudan dari induksi atau deduksi dan pengenalan dari konsep binary partitioning<br />
Test Issues pada Dunia Nyata<br />
Pengujian software sangat mahal.<br />
Bagaimana mendapat pengujian secara otomatis??????<br />
Kriteria pengujian, lingkup pengujian, pengujian adequate.<br />
Pengujian software lainnya:<br />
Pengujian GUI<br />
Pengujian Software Berorientasi Object<br />
Pengujian Komponen dan Pengujian Berbasis Komponen Software<br />
Pengujian Fitur spesifik Domain<br />
Pengujian Sistem Berbasis Web</p>
<p>The End<br />
Ard fachruz<br />
5105100118</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/rpl07.wordpress.com/99/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/rpl07.wordpress.com/99/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rpl07.wordpress.com/99/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rpl07.wordpress.com/99/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rpl07.wordpress.com/99/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rpl07.wordpress.com/99/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rpl07.wordpress.com/99/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rpl07.wordpress.com/99/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rpl07.wordpress.com/99/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rpl07.wordpress.com/99/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rpl07.wordpress.com/99/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rpl07.wordpress.com/99/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rpl07.wordpress.com/99/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rpl07.wordpress.com/99/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rpl07.wordpress.com/99/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rpl07.wordpress.com/99/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=99&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rpl07.wordpress.com/2007/06/21/strategi-pengujian-software-oleh-ardi-f-5105-100-118/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3d7a924083c1286987a08eef0e55d0fc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Handy</media:title>
		</media:content>
	</item>
		<item>
		<title>Model dan Proses, oleh Rona F [5105 100 083]</title>
		<link>http://rpl07.wordpress.com/2007/06/21/model-dan-proses-oleh-rona-f-5105-100-083/</link>
		<comments>http://rpl07.wordpress.com/2007/06/21/model-dan-proses-oleh-rona-f-5105-100-083/#comments</comments>
		<pubDate>Thu, 21 Jun 2007 13:54:28 +0000</pubDate>
		<dc:creator>Handy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://rpl07.wordpress.com/2007/06/21/model-dan-proses-oleh-rona-f-5105-100-083/</guid>
		<description><![CDATA[Pendahuluan Pemodelan dalam suatu rekayasa perangkat lunak merupakan suatu hal yang dilakukan di tahapan awal. Di dalam suatu rekayasa dalam perangkat lunak sebenarnya masih memungkinkan tanpa melakukan suatu pemodelan. Namun hal itu tidak dapat lagi dilakukan dalam suatu industri perangkat lunak. Pemodelan delam perangkat lunak merupakan suatu yang harus dikerjakan di bagian awal dari rekayasa, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=86&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Pendahuluan<br />
Pemodelan dalam suatu rekayasa perangkat lunak merupakan suatu hal yang dilakukan di tahapan awal. Di dalam suatu rekayasa dalam perangkat lunak sebenarnya masih memungkinkan tanpa melakukan suatu pemodelan. Namun hal itu tidak dapat lagi dilakukan dalam suatu industri perangkat lunak. Pemodelan delam perangkat lunak merupakan suatu yang harus dikerjakan di bagian awal dari rekayasa, dan pemodelan ini akan mempengaruhi perkerjaan-pekerjaan dalam rekayasa perangkat lunak tersebut.<br />
Di dalam suatu industri dikenal berbagai macam proses, demikian juga halnya dengan industri perangkat lunak. Perbedaan proses yang digunakan akan menguraikan aktivitas-aktivitas proses dalam cara-cara yang berlainan. Perusahaan yang berbeda menggunakan proses yang berbeda untuk menghasilkan produk yang sama. Tipe produk yang berbeda mungkin dihasilkan oleh sebuah perusahaan dengan menggunakan proses yang berbeda. Namun beberapa proses lebih cocok dari lainnya untuk beberapa tipe aplikasi. Jika proses yang salah digunakan akan mengurangi kualitas kegunaan produk yang dikembangkan.<br />
Modifikasi perangkat lunak biasanya lebih dari 60 % dari total biaya pembuatan perangkat lunak. Presentasi ini terus bertambah karena lebih banyak perangkat lunak dihasilkan dan dipelihara. Biaya yang beragam tergantung pada tipe sistem yang akan dikembangkan dan kebutuhan sistem seperti unjuk kerja dan kehandalan sistem. Distribusi biaya bergantung pada model pengembangan yang digunakan.<br />
Proses memiliki atribut dan karakteristik sbb :<br />
§	Understandability, yaitu sejauh mana proses secara eksplisit ditentukan dan bagaimana kemudahan definisi proses itu dimengerti.<br />
§	Visibility, yaitu apakah aktivitas-aktivitas proses mencapai titik akhir dalam hasil yang jelas sehingga kemajuan dari proses tersebut dapat terlihat nyata/jelas<br />
§	Supportability, yaitu sejauh mana aktivitas proses dapat didukung oleh CASE<br />
§	Acceptability, yaitu apakah proses yang telah ditentukan oleh insinyur dapat diterima dan digunakan dan mampu bertanggung jawab selama pembuatan produk perangkat lunak<br />
§	Reliability, yaitu apakah proses didesain sedikian rupa sehingga kesalahan proses dapat dihindari sebelum terjadi kesalahan pada produk.<br />
§	Robustness, yaitu dapatkah proses terus berjalan walaupun terjadi masalah yang tak diduga<br />
§	Maintainability, yaitu dapatkah proses berkembang untuk mengikuti kebutuhan atau perbaikan<br />
§	Rapidity, yaitu bagaimana kecepatan proses pengiriman sistem dapat secara lengkap memenuhi spesifikasi.<br />
<span id="more-86"></span><br />
Model-model proses<br />
Model proses perangkat lunak masih menjadi object penelitian, tapi sekarang ada banyak model umum atau paradigma yang berbeda dari pengembangan perangkat lunak, antara lain:<br />
·	Pendekatan Waterfall<br />
Berisi rangkaian aktivitas proses seperti yang telah diuraikan diatas dan disajikan dalam proses yang terpisah, seperti spesifikasi kebutuhan, implementasi desain perangkat lunak, uji coba dst. Setelah setiap langkah didefinisikan, langkah tersebut di sign off dan pengembangan dilanjutkan pada langkah berikutnya.<br />
·	Pengembangan secara evolusioner<br />
Pendekatan ini interleaves aktivitas spesifikasi, pengembangan dan validasi. Sistem awal dengan cepat dikembangkan dari kastamer untuk memproduksi sistem yang memenuhi kebutuhan kastamer. Kemudian sistem disampaikan. Sistem itu mungkin diimplementasikan kembali dengan pendekatan yang lebih terstruktur untuk menghasilkan sistem yang kuat dan maintable.<br />
·	Transformasi formal<br />
Pendekatan ini berdasarkan pembuatan spesifikasi sistem formal secara matematik dan transformasi spesifikasi dengan menggunakan metode matematik atau dengan suatu program. Transformasi ini adalah correctnesspreserving ini berarti bahwa kita dapat yakin program yang dikembangkan sesuai dengan spesifikasi.<br />
·	Penggabungan sistem dengan menggunakan komponen-komponen yang dapat digunakan kembali (reuse).<br />
Teknik ini menganggap bagian-bagian dari sistem sudah ada. Proses pengembangan sistem lebih berfokus pada penggabungan bagian-bagian daripada pengembangan tiap bagian.</p>
<p>Dua pertama dari pendekatan-pendekatan diatas yaitu waterfall dan pengembangan evolusioner, saat ini banyak digunakan dalam pengembangan sistem. Beberapa sistem sudah dibuat dengan menggunakan transformasi correctness preserving tapi ini masih menjadi penelitian.<br />
Metode penggunaan kembali (reuse) umum di jepang. Metode ini sekiranya akan diakui oleh Eropa dan Amerika Utara. Di US metode ini dimulai 1995 dengan anggaran 150 million dolars. Bagaimanapun juga reuse masih suatu penelitian, terlalu cepat untuk berkomentar tentang keefektifannya.<br />
Selain itu, saat ini juga ada model-model proses hasil pengembangan seperti Agile modelling, XP (Xtreeme Programming), RUP, dan MSF.<br />
a.	Waterfall/Linear Sequential 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.<br />
Fase-fase dalam Waterfall Model menurut referensi Pressman:<br />
<a TITLE="rona1" HREF="http://rpl07.files.wordpress.com/2007/06/112.gif"><img ALT="rona1" SRC="http://rpl07.files.wordpress.com/2007/06/112.gif?w=500" /></a></p>
<p>Fase-fase dalam Waterfall Model menurut referensi Sommerville:<br />
<a TITLE="rona2" HREF="http://rpl07.files.wordpress.com/2007/06/28.gif"><img ALT="rona2" SRC="http://rpl07.files.wordpress.com/2007/06/28.gif?w=500" /></a></p>
<p>Dimodelkan setelah siklus rekysa konvensional, model sekuensial linier melingkupi aktivitas – aktivitas sebagai berikut:<br />
1. Rekayasa dan pemodelan sistem/informasi<br />
Karena sistem merupakan bagian dari sebuah sistem yang lebihbesar, kerja dimulai dengan membangun syarat dari semua elemen sistem dan mengalokasikan beberapa subset dari kebutuhan ke software tersebut. Pandangan sistem ini penting ketika software harus berhubungan dengan elemen-elemen yang lain seperti software, manusia, dan database. Rekayasa dan anasisis sistem menyangkut pengumpulan kebutuhan pada tingkat sistem dengan sejumlah kecil analisis serta disain tingkat puncak. Rekayasa informasi mancakup juga pengumpulan kebutuhan pada tingkat bisnis strategis dan tingkat area bisnis.<br />
2. Analisis kebutuhan Software<br />
Proses pengumpulan kebutuhan diintensifkan dan difokuskan, khusunya pada software. Untuk memahami sifat program yang dibangun, analis harus memahami domain informasi, tingkah laku, unjuk kerja, dan interface yang diperlukan. Kebutuhan baik untuk sistem maupun software didokumentasikan dan dilihat lagi dengan pelanggan.<br />
3. Desain<br />
Desain software sebenarnya adalah proses multi langkah yang berfokus pada empat atribut sebuah program yang berbeda struktur data, arsitektur software, representasi interface, dan detail (algoritma) prosedural. Proses desain menterjemahkan syarat/kebutuhan ke dalam sebuah representasi software yang dapat diperkirakan demi kualitas sebelum dimulai pemunculan kode. Sebagaimana persyaratan, desain didokumentasikan dan menjadi bagian dari konfigurasi software.<br />
4. Generasi Kode<br />
Desain harus diterjemahkan kedalam bentuk mesin yang bisa dibaca. Langkah pembuatan kode melakukan tugas ini. Jika desain dilakukan dengan cara yang lengkap, pembuatan kode dapat diselesaikan secara mekanis.<br />
5. Pengujian<br />
Sekali program dibuat, pengujian program dimulai. Proses pengujian berfokus pada logika internal software, memastikan bahwa semua pernyataan sudah diuji, dan pada eksternal fungsional, yaitu mengarahkan pengujian untuk menemukan kesalahan – kesalahan dan memastikan bahwa input yang dibatasi akan memberikan hasil aktual yang sesuai dengan hasil yang dibutuhkan.<br />
6. Pemeliharaan<br />
Software akan mengalami perubahan setelah disampaikan kepada pelanggan (perkecualian yang mungkin adalah software yang dilekatkan). Perubahan akan terjadi karena kesalahan – kesalahan ditentukan, karena software harus disesuaikan untuk mengakomodasi perubahan – perubahan di dalam lingkungan eksternalnya (contohnya perubahan yang dibutuhkan sebagai akibat dari perangkat peripheral atau sistem operasi yang baru), atau karena pelanggan membutuhkan perkembangan fungsional atau unjuk kerja. Pemeliharaan software mengaplikasikan lagi setiap fase program sebelumnya dan tidak membuat yang baru lagi.</p>
<p>Masalah dengan waterfall :<br />
1.		Perubahan sulit dilakukan karena sifatnya yang kaku.<br />
2.	Karena sifat kakunya, model ini cocok ketika kebutuhan dikumpulkan secara lengkap sehingga perubahan bisa 	ditekan sekecil mungkin. Tapi pada kenyataannya jarang sekali konsumen/pengguna yang bisa memberikan 	kebutuhan secara lengkap, perubahan kebutuhan adalah sesuatu yang wajar terjadi.<br />
3.	Waterfall pada umumnya digunakan untuk rekayasa sistem yang besar dimana proyek dikerjakan di beberapa 	tempat berbeda, dan dibagi menjadi beberapa bagian sub-proyek.</p>
<p>b.	Evolutionary Software Process Models<br />
Bersifat iteratif/ mengandung perulangan. Hasil proses berupa produk yang makin lama makin lengkap sampai versi terlengkap dihasilkan sebagai produk akhir dari proses. Dua model dalam evolutionary software process model adalah:</p>
<p>1.	Incremental Model</p>
<p><a TITLE="rona3" HREF="http://rpl07.files.wordpress.com/2007/06/35.gif"><img ALT="rona3" SRC="http://rpl07.files.wordpress.com/2007/06/35.gif?w=500" /></a></p>
<p>Keterangan:<br />
1.	Kombinasikan elemet-element dari waterfall dengan sifat iterasi/perulangan.<br />
2.	Element-element dalam waterfall dikerjakan dengan hasil berupa produk dengan spesifikasi tertentu, kemudian proses dimulai dari fase pertama hingga akhir dan menghasilkan produk dengan spesifikasi yang lebih lengkap dari yang sebelumnya. Demikian seterusnya hingga semua spesifikasi memenuhi kebutuhan yang ditetapkan oleh pengguna.<br />
3.  Produk hasil increment pertama biasanya produk inti (core product), yaitu produk yang memenuhi kebutuhan dasar. Produk tersebut digunakan oleh pengguna atau menjalani review/pengecekan detil. Hasil review tersebut menjadi bekal untuk pembangunan pada increment berikutnya. Hal ini terus dikerjakan sampai produk yang komplit dihasilkan.<br />
4.  Model ini cocok jika jumlah anggota tim pengembang/pembangun PL tidak cukup.<br />
5.  Mampu mengakomodasi perubahan secara fleksibel.<br />
6.  Produk yang dihasilkan pada increment pertama bukanlah prototype, tapi produk yang sudah bisa berfungsi dengan spesifikasi dasar.</p>
<p>Masalah dengan Incremental model:<br />
1.	Cocok untuk proyek berukuran kecil (tidak lebih dari 200.000 baris coding)<br />
2.	Mungkin terjadi kesulitan untuk memetakan kebutuhan pengguna ke dalam rencana spesifikasi masing-masing hasil increment</p>
<p>2.	Spiral model</p>
<p><a TITLE="rona4" HREF="http://rpl07.files.wordpress.com/2007/06/45.gif"><img ALT="rona4" SRC="http://rpl07.files.wordpress.com/2007/06/45.gif?w=500" /></a></p>
<p>Proses digambarkan sebagai spiral. Setiap loop mewakili satu fase dari software process. Loop paling dalam berfokus pada kelayakan dari sistem, loop selanjutnya tentang definisi dari kebutuhan, loop berikutnya berkaitan dengan desain sistem dan seterusnya. Setiap Loop dibagi menjadi beberapa sektor :<br />
1.	Objective settings (menentukan tujuan): menentukan tujuan dari fase yang ditentukan. Batasan-batasan pada proses dan produk sudah diketahui. Perencanaan sudah disiapkan. Resiko dari proyek sudah diketahui. Alternatif strategi sudah disiapkan berdasarkan resiko-resiko yang diketahui, dan sudah direncanakan.<br />
2.	Risk assessment and reduction (Penanganan dan pengurangan resiko): setiap resiko dianalisis secara detil pada sektor ini. Langkahlangkah penanganan dilakukan, misalnya membuat prototype untuk mengetahui ketidakcocokan kebutuhan.<br />
3.	Development and Validation (Pembangunan dan pengujian): Setelah evaluasi resiko, maka model pengembangan sistem dipilih. Misalnya jika resiko user interface dominan, maka membuat prototype User Interface. Jika bagian keamanan yang bermasalah, maka menggunakan model formal dengan perhitungan matematis, dan jika masalahnya adalah integrasi sistem model waterfall lebih cocok.<br />
4.	Planning: Proyek dievaluasi atau ditinjau-ulang dan diputuskan untuk terus ke fase loop selanjutnya atau tidak. Jika melanjutkan ke fase berikutnya rencana untuk loop selanjutnya.</p>
<p>Pembagian sektor tidak bisa saja dikembangkan seperti pada pembagian sektor berikut pada model variasi spiral di bawah ini:</p>
<p><a TITLE="rona5" HREF="http://rpl07.files.wordpress.com/2007/06/53.gif"><img ALT="rona5" SRC="http://rpl07.files.wordpress.com/2007/06/53.gif?w=500" /></a></p>
<p>§	Customer communication: membangun komunikasi yang baik dengan pengguna/customer.<br />
§	Planning: mendefinisikan sesumber, batas waktu, informasi-informasi lain seputar proyek<br />
§	Risk analysis: identifikasi resiko managemen dan teknis<br />
§	Engineering: pembangunan contoh-contoh aplikasi, misalnya prototype<br />
§	Construction and release : pembangunan, test, install dan support.<br />
§	Customer evaluation: mendapatkan feedback dari pengguna beradasarkan evaluasi PL pada fase engineering dan fase instalasi.</p>
<p>Pada model spiral, resiko sangat dipertimbangkan. Resiko adalah sesuatu yang mungkin mengakibatkan kesalahan. Model spiral merupakan pendekatan yang realistik untuk PL berskala besar. Pengguna dan pembangun bisa memahami dengan baik software yang dibangun karena setiap kemajuan yang dicapai selama proses dapat diamati dengan baik.  Namun demikian, waktu yang cukup panjang mungkin bukan pilihan bagi pengguna, karena waktu yang lama sama dengan biaya yang lebih besar.</p>
<p>c.	Transformasi formal<br />
Metode ini berbasiskan pada transformasi spesifikasi secara matematik melalui representasi yang berbeda untuk suatu program yang dapat dieksekusi. Trasformasi menyatakan spesifikasi program<br />
Menggunakan pendekatan ‘Cleanroom’ untuk pengembangan PL.<br />
<a TITLE="rona6" HREF="http://rpl07.files.wordpress.com/2007/06/61.gif"><img ALT="rona6" SRC="http://rpl07.files.wordpress.com/2007/06/61.gif?w=500" /></a></p>
<p>Metode ini mempunyai keterbatasan dalam pemakaiannya. Keunggulannya adalah mengurangi jumlah kesalahan pada sistem sehingga penggunaan utamanya adalah pada sistem yang kritis. Hal ini menjadi efektif dari segi biaya.<br />
Pemakaian model pengembangan formal memerlukan tingkat kerahasian sebelum digunakan.<br />
Permasalahan dalam model pengembangan metode formal:<br />
• Memerlukan keahlian khusus dan pelatihan untuk mengaplikasikannya<br />
• Sulit menentukan beberapa aspek dari suatu sistem seperti<br />
user interface</p>
<p>c.	Pengembangan Menggunakan Konsep Re-use (Penggunaan Ulang)<br />
Metode ini didasarkan pada sistem yang telah tergabung dari<br />
sejumlah komponen yang ada atau sistem COTS (Commercial-off-the-shelf)<br />
Langkah-langkah proses:<br />
• 	Analisis komponen<br />
• 	Kebutuhan perubahan<br />
• 	System design dengan penggunaan ulang<br />
•	Pengembangan dan Development dan penggabungan<br />
Pendekatan ini menjadi penting tetapi tetap saja mempunyai keterbatasan dalam penggunaannya<br />
<a TITLE="rona7" HREF="http://rpl07.files.wordpress.com/2007/06/71.gif"><img ALT="rona7" SRC="http://rpl07.files.wordpress.com/2007/06/71.gif?w=500" /></a></p>
<p>MODEL RAPID APLICATION DEVELOPMENT</p>
<p>Rapin Aplication Development (RAD) adalah sebuah model proses perkembangan software sekuensial linier yang menekankan siklus perkembangan yang sangat pendek. Model RAD ini merupakan sebuah adaptasi “kecepatan tinggi” dari model sekuensial linier di mana perkembangan cepat dicapai dengan menggunakan pendekatan kontruksi berbasis komponen. Jika kebutuhan dipahami dengan baik, proses RAD memungkinkan tim pengembangan menciptakan “sistem fungsional yang utuh” dalam periode waktu yang sangat pendek (kira-kira 60 sampai 90 hari). Karena dipakai terutama pada aplikasi sistem konstruksi, pendekatan RAD melingkupi fase – fase sebagai berikut :</p>
<p>1. Bussiness modeling<br />
Aliran informasi di antara fungsi – fungsi bisnis dimodelkan dengan suatu cara untuk menjawab pertanyaan – 	pertanyaan berikut : informasi apa yang mengendalikan proses bisnis? Informasi apa yang di munculkan? Siapa yang 	memunculkanya? Ke mana informasi itu pergi? Siapa yang memprosesnya?</p>
<p>2. Data modeling<br />
Aliran informasi yang didefinisikan sebagai bagian dari fase bussiness modelling disaring ke dalam serangkaian objek 	data yang dibutuhkan untuk menopang bisnis tersebut. Karakteristik (disebut atribut) masing–masing objek 	diidentifikasi dan hubungan antara objek – objek tersebut didefinisikan.</p>
<p>3. Prosess modelling<br />
Aliran informasi yang didefinisikan di dalam fase data modeling<br />
ditransformasikan untuk mencapai aliran informasi yang perlu bagi implementasi sebuah fungsi bisnis. Gambaran 	pemrosesan diciptakan untuk menambah, memodifikasi, menghapus, atau mendapatkan kembali sebuah objek data.</p>
<p>4. Aplication generation<br />
RAD mengasumsikan pemakaian teknik generasi ke empat. Selain<br />
menciptakan perangkat lunak dengan menggunakan bahasa pemrograman generasi ketiga yang konvensional, RAD 	lebih banyak memproses kerja untuk memkai lagi komponen program yang ada ( pada saat memungkinkan) atau 	menciptakan komponen yang bisa dipakai lagi (bila perlu). Pada semua kasus, alat – alat bantu otomatis dipakai untuk 	memfasilitasi konstruksi perangkat lunak.</p>
<p>5. Testing and turnover<br />
Karena proses RAD menekankan pada pemakaian kembali, banyak<br />
komponen program telah diuji. Hal ini mengurangi keseluruhan waktu pengujian. Tetapi komponen baru harus di uji 	dan semua interface harus dilatih secara penuh.</p>
<p><a TITLE="rona8" HREF="http://rpl07.files.wordpress.com/2007/06/8.gif"><img ALT="rona8" SRC="http://rpl07.files.wordpress.com/2007/06/8.gif?w=500" /></a></p>
<p>Kekurangan model RAD adalah :<br />
1. Bagi proyek yang besar tetapi berskala, RAD memerlukan sumber daya manusia yang memadai untuk menciptakan jumlah tim RAD yang baik.<br />
2. RAD menuntut pengembangan dan pelanggan memiliki komitmen di dalam aktivitas rapid-fire yang diperlukan untuk melengkapi sebuah sistem, di dalam kerangka waktu yang sangat diperpendek. Jika komitmen tersebut tidak ada, proyek RAD akan gagal.</p>
<p>Prototyping Model<br />
<a TITLE="rona9" HREF="http://rpl07.files.wordpress.com/2007/06/91.gif"><img ALT="rona9" SRC="http://rpl07.files.wordpress.com/2007/06/91.gif?w=500" /></a></p>
<p>Kadang-kadang klien hanya memberikan beberapa kebutuhan umum software tanpa detil input, proses atau detil output. Di lain waktu mungkin dimana tim pembangun (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.<br />
Proses pada model prototyping yang digambarkan pada gambar 1, bisa dijelaskan sebagai berikut:<br />
·	pengumpulan kebutuhan: developer dan klien bertemu dan menentukan tujuan umum, kebutuhan yang diketahui dan gambaran bagian-bagian yang akan dibutuhkan berikutnya. Detil kebutuhan mungkin tidak dibicarakan disini, pada awal pengumpulan kebutuhan<br />
·	perancangan : perancangan dilakukan cepat dan rancangan mewakili semua aspek software yang diketahui, dan rancangan ini menjadi dasar pembuatan prototype.<br />
·	Evaluasi prototype: klien mengevaluasi prototype yang dibuat dan digunakan untuk memperjelas kebutuhan software.<br />
Perulangan ketiga proses ini terus berlangsung hingga semua kebutuhan terpenuhi. Prototype-prototype dibuat untuk memuaskan kebutuhan klien dan untuk memahami kebutuhan klien lebih baik. Prototype yang dibuat dapat dimanfaatkan kembali untuk membangun software lebih cepat, namun tidak semua prototype bisa dimanfaatkan. Sekalipun prototype memudahkan komunikasi antar developer dan klien, membuat klien mendapat gambaran awal dari prototype , membantu mendapatkan kebutuhan detil lebih baik namun demikian prototype juga menimbulkan masalah:<br />
1.	Dalam membuat prototype banyak hal yang diabaikan seperti efisiensi, kualitas, kemudahan dipelihara/dikembangkan, dan kecocokan dengan lingkungan yang sebenarnya. Jika klien merasa cocok dengan prototype yang disajikan dan berkeras terhadap produk tersebut, maka developer harus kerja keras untuk mewujudkan produk tersebut menjadi lebih baik, sesuai kualitas yang seharusnya.<br />
2.	Developer biasanya melakukan kompromi dalam beberapa hal karena harus membuat prototype dalam waktu singkat. Mungkin sistem operasi yang tidak sesuai, bahasa pemrograman yang berbeda, atau algoritma yang lebih sederhana.<br />
Agar model ini bisa berjalan dengan baik, perlu disepakati bersama oleh klien dan developer bahwa prototype yang dibangun merupakan alat untuk mendefinisikan kebutuhan software.</p>
<p>Component-based Development Model</p>
<p>Component-based development sangat berkaitan dengan teknologi berorientasi objek. Pada pemrograman berorientasi objek, banyak class yang dibangun dan menjadi komponen dalam suatu software. Class-class tersebut bersifat reusable artinya bisa digunakan kembali. Model ini bersifat iteratif atau berulang-ulang<br />
prosesnya.<br />
Secara umum proses yang terjadi dalam model ini adalah:<br />
1.	Identifikasi class-class yang akan digunakan kembali dengan menguji class tersebut dengan data yang akan dimanipulasi dengan aplikasi/software dan algoritma yang baru<br />
2.  Class yang dibuat pada proyek sebelumnya disimpan dalam class library, sehingga bisa langsung diambil dari library   yang sudah ada. Jika ternyata ada kebutuhan class baru, maka class baru dibuat dengan metode berorientasi objek.<br />
3.  Bangun software dengan class-class yang sudah ditentukan atau class baru yang dibuat, integrasikan.</p>
<p>Penggunaan kembali komponen software yang sudah ada menguntungkan dari segi:<br />
a.	Siklus waktu pengembangan software, karena mampu mengurangi waktu 70%<br />
b.	Biaya produksi berkurang sampai 84% arena pembangunan komponen berkurang<br />
Pembangunan software dengan menggunakan komponen yang sudah tersedia dapat menggunakan komponen COTS (Commercial off-the-shelf) – yang bisa didapatkan dengan membeli atau komponen yang sudah dibangun sebelumnya secara internal. Component-Based Software Engineering (CBSE) adalah proses yang menekankan perancangan dan pembangunan software dengan menggunakan komponen software yang sudah ada. CBSE terdiri dari dua bagian yang terjadi secara paralel yaitu software engineering (component-based development) dan domain engineering seperti yang digambarkan pada Gambar 2:<br />
1.	Domain engineering menciptakan model domain bagi aplikasi yang akan digunakan untuk menganalisis kebutuhan pengguna. Identifikasi, pembangunan, pengelompokan dan pengalokasikan komponen-komponen software supaya bisa digunakan pada sistem yang ada dan yang akan datang.<br />
2.  Software engineering (component-based development) melakukan analisis terhadap domain model yang sudah ditetapkan kemudian menentukan spesifikasi dan merancang berdasarkan model struktur dan spesifikasi sistem, kemudian melakukan pembangunan software dengan menggunakan komponen-komponen yang sudah ditetapkan berdasarkan analisis dan rancangan yang dihasilkan sebelumnya hingga akhirnya menghasilkan software.</p>
<p><a TITLE="rona10" HREF="http://rpl07.files.wordpress.com/2007/06/10.gif"><img ALT="rona10" SRC="http://rpl07.files.wordpress.com/2007/06/10.gif?w=500" /></a></p>
<p>Extreme Programming (XP) Model</p>
<p>Model proses ini diciptakan dan dikembangkan oleh Kent Beck. Model ini adalah model proses yang terbaru dalam dunia rekayasa perangkat lunak dan mencoba menjawab kesulitan dalam pengembangan software yang rumit dan sulit dalam implementasi.<br />
Menurut Kent Beck XP adalah : “A lightweight, efficient, low-risk, flexible,predictable, scientific and fun way to develop software”. Suatu model yang menekankan pada:<br />
- keterlibatan user secara langsung<br />
- pengujian<br />
- pay-as-you-go design</p>
<p>Adapun empat nilai penting dari XP<br />
1.	Communication/Komunikasi : komunikasi antara developer dan klien sering menjadi masalah. Karena itu komunikasi dalam XP dibangun dengan melakukan pemrograman berpasangan (pair programming). Developer didampingi oleh pihak klien dalam melakukan coding dan unit testing sehingga klien bisa terlibat langsung dalam pemrograman sambil berkomunikasi dengan developer. Selain itu perkiraan beban tugas juga diperhitungkan.<br />
2.  Simplicity/ sederhana: Menekankan pada kesederhanaan dalam pengkodean: “What is the simplest thing that could possibly work?” Lebih baik melakukan hal yang sederhana dan mengembangkannya besok jika diperlukan. Komunikasi yang lebih banyak mempermudah, dan rancangan yang sederhana mengurangi penjelasan.<br />
3.  Feedback / Masukan/Tanggapan: Setiap feed back ditanggapi dengan melakukan tes, unit test atau system integration dan jangan menunda karena biaya akan membengkak (uang, tenaga, waktu).<br />
4.  Courage / Berani: Banyak ide baru dan berani mencobanya, berani mengerjakan kembali dan setiap kali kesalahan ditemukan, langsung diperbaiki.</p>
<p><a TITLE="rona11" HREF="http://rpl07.files.wordpress.com/2007/06/113.gif"><img ALT="rona11" SRC="http://rpl07.files.wordpress.com/2007/06/113.gif?w=500" /></a></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/rpl07.wordpress.com/86/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/rpl07.wordpress.com/86/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rpl07.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rpl07.wordpress.com/86/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rpl07.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rpl07.wordpress.com/86/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rpl07.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rpl07.wordpress.com/86/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rpl07.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rpl07.wordpress.com/86/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rpl07.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rpl07.wordpress.com/86/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rpl07.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rpl07.wordpress.com/86/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rpl07.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rpl07.wordpress.com/86/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=86&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rpl07.wordpress.com/2007/06/21/model-dan-proses-oleh-rona-f-5105-100-083/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3d7a924083c1286987a08eef0e55d0fc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Handy</media:title>
		</media:content>
	</item>
		<item>
		<title>Proses Perangkat Lunak &amp; Metrik Proyek, oleh Dani K [5105 100 100]</title>
		<link>http://rpl07.wordpress.com/2007/06/21/proses-perangkat-lunak-metrik-proyek-oleh-dani-k-5105-100-100/</link>
		<comments>http://rpl07.wordpress.com/2007/06/21/proses-perangkat-lunak-metrik-proyek-oleh-dani-k-5105-100-100/#comments</comments>
		<pubDate>Thu, 21 Jun 2007 04:53:44 +0000</pubDate>
		<dc:creator>Handy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://rpl07.wordpress.com/2007/06/21/proses-perangkat-lunak-metrik-proyek-oleh-dani-k-5105-100-100/</guid>
		<description><![CDATA[A. PROSES PERANGKAT LUNAK Banyak cara yang bisa dilakukan untuk meningkatkan proses perangkat lunak. Tetapi, satu-satunya cara yang paling rasional untuk meningkatkan proses adalah dengan mengukur atribut tertentu dari proses, mengembangkan serangkaian metrik yang berarti berdasarkan atibut-atribut tersebut, dan kemudian metrik itu untuk memberikan indikator yang akan membawa kepada sebuah strategi pengembangan. Dalam gambar diatas, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=50&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A.	PROSES PERANGKAT LUNAK</p>
<p>Banyak cara yang bisa dilakukan untuk meningkatkan proses perangkat lunak. Tetapi, satu-satunya cara yang paling rasional 	untuk meningkatkan proses adalah dengan mengukur atribut tertentu dari proses, mengembangkan serangkaian metrik yang 	berarti berdasarkan atibut-atribut tersebut, dan kemudian metrik itu untuk memberikan indikator yang akan membawa kepada 	sebuah strategi pengembangan.</p>
<p><a href="http://rpl07.files.wordpress.com/2007/06/pl1.gif" title="pl1.gif"><img src="http://rpl07.files.wordpress.com/2007/06/pl1.gif?w=500" alt="pl1.gif" /></a></p>
<p>Dalam gambar diatas, proses berada ditengah-tengah sebuah segitiga yang menghubungkan tiga faktor yang sangat besar 	pengaruhnya terhadap kualitas perangkat lunak dan untuk kerja organisasional. Ketrampilan dan motivasi yang diperlihatkan 	manusia merupakan satu-satunya faktor yang paling berpengaruh pada kualitas dan untuk kerja tim. Teknologi yang menghuni 	proses juga berpengaruh. Segitiga proses yang berada dalam lingkaran yang menggambarkan kondisi lingkungan yang 	menyangkut lingkungan pengembangan, kondisi bisnis dan karakteristik pelanggan.</p>
<p>Mengukur realibilitas proyek perangkat lunak secara tidak langsung yaitu mengambl serangkaian metrik berdasarkan keluaran 	yang diambil oleh proses. Kelauaran menyangkut pengukuran kesalahan yang ditemukan sebelum pelepasan perangkat lunak, 	cacat yang disampaikan dan dilaprokan oleh pemakai akhir, produk kerja yang dikirim, usaha manusia yang dilakukan, waktu 	kalender yang digunakan, konfirmasi jadwal, serta pengukuran yang lain.</p>
<p>Metrik proses perangkat lunak dapat memberikan sumbangan yang berarti sebagai sesuatu kerja organisasi untuk 	meningkatkan keseluruhan level kematangan proses. Akan tetapi, seperti semua metrik, dapat digunkaan dengan salah, 	menimbulkan banyak masalah daripada yang mereka selesaikan.  Pada saat organisasi menjadi lebih nyaman dengan 	kumpulan dan manfaat metrik proses, derivasi dari indikator sederhana memberikan suatu cara kepada suatu pendekatan 	yang lebih teliti yang disebut statistical software process improvement (SPPI). Pada dasarnya SPPI menggunakan analisis 	kegagalan perangkat lunak untuk mengumpulkan informasi seputar semua kesalahan dan cacat yng terjadi pada sebuah 	aplikasi, sistem , atau produk dikembangkan atau dipakai.</p>
<p>B.	METRIK PROYEK</p>
<p>Metrik proses perangkat lunak digunakan untuk tujuan strategis. Pengukuran proyek perangkat lunak bersifat taktis, yaitu 	bahwa metrik proyek dan indikator yang berasal dari pengukuran digunakan oleh manajer proyek dan tim perangkat lunak 	untuk mengadaptasi aliran kerja proyek dan aktivitas teknis.</p>
<p>Aplikasi pertama dari metrik proyek pada sebagian besar proyek perangkat lunak terjadi selama perkiraan. Metrik yang 	dikumpulkan dari proyek yang terdahulu digunakan sebagai dasar untuk kerja perangkat lunak saat ini. Selagi sebuah proyek 	berjalan, pengukuran usaha dan waktu kalender yang digunakan dibandingkan dengan perkiraan awal. Manajer proyek 	menggunakan data tersebut untuk memeonitor dan mengkontrol kemajuan.</p>
<p>Pada saat kerja teknis dimulai, metrik proyek mulai memiliki arti. Nilai produksi yang disajikan dalam bentuk halaman 	dokumntasi, jam kajian, titik fungsi, dan deretan sumber yang disampaikan diukur, dan kesalahan selama masing-masing tugas 	kerja rekayasa perangkat lunak kemudian ditelusuri. Selagi perangkat lunak berjalan dari spesifikasi ke perancangan, metrik 	teknik dikumpulkan untuk memikirkan kualitas disain serta memberikan indikator yang akan mempengaruhi pendekatan yang 	akan diambil untuk memunculkan kode dan modul serta pengujian integrasi.</p>
<p>Metrik proyek mempunyai tujuan ganda. Pertama metrik tersebut digunakan untuk meminimalkan jadwal pengembangan 	dengan melakukan penyesuaian yang diperlukan untuk menghindari penundaan serta mengurangi masalah dan resiko potensial. 	Kedua, metrik proyek ini dipakai untuk memperkirakan kualitas produk pada basis yang berlaku dan, bila dibutuhkan, 	memodifikasi pendekatan teknis untuk meningkatakan kualitas.</p>
<p>Model yang lain dari metrik proyek mengusulkan bahwa setiap proyek seharusnya mengukur :<br />
a.	input (pengukuran sumber daya seperti manusia, lingkungan yang dibutuhkan untuk melakukan pekerjaan)<br />
b.	output (pengukuran kemampuan penyampaian atau produk kerja yang diciptakan selama proses rekayasa perangkat 	lunak)<br />
c.	hasil (pengukuran yang menunjukkan efektifitas kemampuan penyampaian)</p>
<p>Macam-macam Metrik:<br />
a.	Metrik Size-Oriented<br />
Ditarik dengan normalisasi kualitas dan atau pengukuran produktivitas 	dengan mempertimbangkan “ukuran” perangkat 		lunak yang 	dihasilkan.</p>
<p>b.	Metrik Function-Oriented<br />
Menggunakan sebuah pengukuran fungsionalis yang disampaikan oleh 	aplikasi sebagai suatu nilai normalisasi. Karena 		fungsionalitas tidak 	dapat diukur langsung, maka fungsionalitas harus ditarik secara tidak 	langsung dengan 			menggunakan pengukuran langsung yang lain.</p>
<p>c.	Metrik Function-Oriented Yang Diperluas<br />
Sama seperti Metrik Function point secara orisinil, hanya saja 	dilakukan penyempurnaan.</p>
<p>Faktor – faktor yang mempengaruhi Kualitas perangkat lunak<br />
Lebih dari dua dekade lalu, McCall dan Cavano menetapkan sekumpulan faktor kualitas yang merupakan langkah pertama 	dalam mengembangkan metrik-metrik untuk kualitas perangkat lunak dari 3 sudut pandang berbeda, antara lain:<br />
(1)	operasi produk<br />
(2)	revisi produk<br />
(3)	transisi produk</p>
<p>Mengukur Kualitas<br />
a.)	Cara Yang Benar. Program harus beroprasi dengan benar atau program itu memberikan sedikit saja nilai bagi 	pemakainya. Tingkat dimana perangkat lunak melakukan fungsi yang ditentukan.<br />
b.)	Maintanabilitas. Kemudahan dimana program itu dapat dikoreksi jika ditemukan kesalahan, diadaptasi jika lingkungan 	berubah, atau diperkuat jika pelanggan menginginkan perubahan kebutuhan.<br />
c.)	Integritas. Mengukur kemampuan sistem untuk menahan serangan terhadap sekuritasnya.<br />
d.)	Usabilitas. Usaha untuk mengukur userfriendliness dan dapat diukur dalam empat karakteristik:<br />
(1) 	keterampilan fisik dan atau intelektual untuk mempelajari sistem.<br />
(2) 	waktu yang diperlukan untuk menjadi cukup efisien dalam menggunakan sistem.<br />
(3) 	peningkatan bersih dalam produktifitas yang diukur ketika sistem digunakan oleh seseorang yang cukup 				efisien.<br />
(4) 	penilaian subyektif dari sikap pemakai terhadap sistem.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/rpl07.wordpress.com/50/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/rpl07.wordpress.com/50/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rpl07.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rpl07.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rpl07.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rpl07.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rpl07.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rpl07.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rpl07.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rpl07.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rpl07.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rpl07.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rpl07.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rpl07.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rpl07.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rpl07.wordpress.com/50/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=50&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rpl07.wordpress.com/2007/06/21/proses-perangkat-lunak-metrik-proyek-oleh-dani-k-5105-100-100/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3d7a924083c1286987a08eef0e55d0fc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Handy</media:title>
		</media:content>

		<media:content url="http://rpl07.files.wordpress.com/2007/06/pl1.gif" medium="image">
			<media:title type="html">pl1.gif</media:title>
		</media:content>
	</item>
		<item>
		<title>Perencanaan Proyek Perangkat Lunak, oleh Mizar [5105 100 067]</title>
		<link>http://rpl07.wordpress.com/2007/06/20/perencanaan-proyek-perangkat-lunak-oleh-mizar-5105-100-067/</link>
		<comments>http://rpl07.wordpress.com/2007/06/20/perencanaan-proyek-perangkat-lunak-oleh-mizar-5105-100-067/#comments</comments>
		<pubDate>Wed, 20 Jun 2007 17:19:23 +0000</pubDate>
		<dc:creator>Handy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://rpl07.wordpress.com/2007/06/20/perencanaan-proyek-perangkat-lunak-oleh-mizar-5105-100-067/</guid>
		<description><![CDATA[Pendahuluan Proses manajemen proyek perangkat lunak dimulai dengan beberapa aktivitas yang secara kolektif disebut dengan project planning (perencanaan proyek). Aktivitas ini dimulai dengan estimasi, yang merupakan gambaran dimana kita melihat masa depan serta menerima tingkat ketidakpastian sebagai bahan pembicaraan. Perencanaan proyek memberikan sebuah peta jalan bagi suksesnya rekayasa perangkat lunak. 5.1 OBSERVASI PADA ESTIMASI Estimasi [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=85&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Pendahuluan</p>
<p>Proses manajemen proyek perangkat lunak dimulai dengan beberapa aktivitas yang secara kolektif disebut dengan project planning (perencanaan proyek). Aktivitas ini dimulai dengan estimasi, yang merupakan gambaran dimana kita melihat masa depan serta menerima tingkat ketidakpastian sebagai bahan pembicaraan. Perencanaan proyek memberikan sebuah peta jalan bagi suksesnya rekayasa perangkat lunak.</p>
<p>5.1 OBSERVASI PADA ESTIMASI</p>
<p>Estimasi yang diperlukan dalam perancangan proyek perangkat lunak di antaranya adalah sumber daya, biaya, dan jadwal sebagai usaha dalam pengembangan perangkat lunak, mengakses informasi historis yang baik, dan keberanian untuk melakukan pengukuran kuantitatif bila hanya data kualitatif saja yang ada. Berikut adalah yang menimbulkan ketidakpastian dalam estimasi :</p>
<p>- Project complexity (kompleksitas proyek) berpengaruh kuat terhadap ketidakpastian yang inheren dalam perencanaan. Komplekitas ini merupakan pengukuran relatif yang dipengaruhi oleh kebiasaan dengan usaha yang dilakukan sebelumnya.<br />
- Project size (Ukuran proyek) Merupakan faktor penting yang dapat mempengaruhi akurasi estimasi. Bila ukuran bertambah maka ketergantungan di antara berbagai elemen perangkat lunak akan meningkat dengan cepat.<br />
- Structural uncertainty (Ketidakpastian struktural) Tingkat ketidakpastian strutural juga berpengaruh dalam risiko estimasi. Dengan melihat kembali, kita dapat mengingat lagi hal-hal yang terjadi dan dapat menghindari tempat-tempat dimana masalah muncul.</p>
<p>Risiko diukur melalui tingkat ketidakpastian pada estimasi kuantitatif yang dibuat untuk sumber daya, biaya, dan jadwal.Bila ruang lingkup proyek atau syarat proyek tidak dipahami dengan baik, maka risiko dan ketidakpastian menjadi sangat tinggi.<br />
Perencana perangkat lunak harus melengkapi fungsi, kinerja, dan definisi interface(yang diisikan ke dalam spesifikasi sistem). Pendekatan-pendekatan rekayasa perangkat lunak modern (seperti model proses evolusioner) memakai pandangan pengembangan yang interaktif. Dengan pandangan semacam ini dimungkinkan untuk melihat estimasi dan merevisinya bila customer mengubah kebutuhannya.</p>
<p>5.2 TUJUAN PERENCANAAN PROYEK</p>
<p>Tujuan perencanaan proyek perangkat lunak adalah untuk menyediakan sebuah kerangka kerja yang memungkinkan manajer membuat estimasi yang dapat dipertanggungjawabkan mengenai sumber daya, biaya dan jadwal. Tujuan perencanaan dicapai melalui suatu proses penemuan informasi yang menunjuk ke estimasi yang dapat dipertanggungjawabkan.<br />
5.3 RUANG LINGKUP PERANGKAT LUNAK</p>
<p>Penentuan ruang lingkup perangkat lunak merupakan aktivitas pertama dalam perencanaan proyek perangkat lunak. Ruang lingkup perangkat lunak menggabarkan fungsi, kinerja, batasan, interface dan reliabilitas. Fungsi yang digambarkan dalam statmen ruang lingkup dievaluasi dan disaring untuk memberikan awalan yang lebih detail pada saat estimasi dimulai. Pertimbangan kinerja melingkupi pemrosesan dan kebutuhan waktu respon. Batasan ini mengidentifikasi dari batas yang ditempatkan pada perangkat lunak oleh perangkat keras eksternal, memori, atau sistem informasi yang ada.</p>
<p><span id="more-85"></span></p>
<p>5.4 MENCARI INFORMASI YANG DIBUTUHKAN  UNTUK RUANG LINGKUP</p>
<p>Teknik yang banyak dipakai secara umum untuk menjembatani jurang komunikasi antara pelanggan dan pengembang serta untuk memulai proses komunikasi adalah dengan melakukan pertemuan atau wawancara pendahuluan. Gause &amp; weinberg mengusulkan bahwa analis harus memulai dengan mengajukan pertanyaan-pertanyaan bebas konteks, yaitu serangkaian pertanyaan yang akan membawa pada pemahaman mendasar terhadap masalah, orang yang menginginkan suatu solusi, sifat solusi yang diharapkan, dan efektivitas pertemuan itu. Beberapa pertanyaan bebas konteks pada pelanggan yang meliputi tujuan keseluruhan, serta keuntungan :<br />
o Siapa di belakang permintaan kerja ini?<br />
o Siapa yang akan memakai solusi ini?<br />
o Apakah yang akan menjadi keutungan ekonomi dari sebuah solusi yang sukses? o Adakah sumberdaya lain bagi solusi ini?</p>
<p>Beberapa contoh pertanyaan yang memungkinkan analis untuk memahami masalah lebih baik :<br />
o  Bagaimanakah anda menandai output yang baik yang akan dimunculkan oleh sebuah solui yang baik?<br />
o  Masalah apa yang akan dituju oleh solusi ini?<br />
o Dapatkah anda memperlihatkan atau menggambarkan lingkungan di mana solusi akan dipakai?<br />
o Adakah batasan atau isu kinerja khusus yang akan mempengaruhi cara pendekatan terhadap solusi?</p>
<p>Beberapa pertanyaan yang berfokus pada efektivitas pertemuan :<br />
o Apakah anda orang yang tepat untuk menjawab pertanyaan ini? Apakah anda resmi?<br />
o Apakah pertanyaan saya relevan dengan problem yang anda punyai?<br />
o Apakah saya terlalu banyak pertanyaan?<br />
o Apakah ada orang lain yang dapat menyedikan informasi tambahan?<br />
o Adakah sesuatu yang lain yang dapat saya tanyakan kepada anda?</p>
<p>Bagian Question dan Answer hanya akan digunakan untuk pertemuan pertama yang kemudian diganti dengan format pertemuan yang mengkombinasikan elemen-elemen penyelesaian masalah, negoisasi, dan spesifikasi. Sejumlah peneliti lepas mengembangkan pedekatan yang berorientasi pada tim terhadap pengumpulan kebutuhan yang dapat deiterapkan untuk membangun ruang lingkup sebuah proyek, yang disebut teknik spesifikasi aplikasi yang teraplikasi (FAST)</p>
<p>5.4 SUMBER DAYA</p>
<p>Mengestimasi sumber daya yang dibutuhkan untuk menyelesaikan usaha pengembangan perangkat lunak yang meliputi manusia, komponen perangkat lunak, dan peranti perangkat keras/perangkat lunak.<br />
Piramida di atas memperlihatkan sumber daya pengembangan sebagai sebuah piramid. Peranti perangkat keras dan perangkat lunak berada pada fondasi dari piramida di atas dan menyediakan infrastruktur untuk mendukung usaha pengembangan(lingkungan pengembang).<br />
Dalam tingkat yang lebih tinggi terdapat komponen perangkat lunak reuseable – blok bangungan perangkat lunak yang dapat mengurangi biaya pengembangan secara dramatis dan mempercepat penyampaian. Dan di puncak terdapat sumber daya utama yaitu manusia. Masing-masing sumber daya ditentukan dengan empat karakteristik :<br />
o Deskripsi sumber daya<br />
o Statemen ketersediaan<br />
o Waktu kronologis sumber daya diperlukan<br />
o Durasi waktu sumber daya diaplikasikan</p>
<p>5.4.1 Sumber daya manusia<br />
Perencanaan sumber daya manusia memulai dengan mengevaluasi ruang lingkup serta memilih kecakapan yang dibutuhkan untuk mnyelesaikan pengembangan. Baik posisi organisasi maupun specialty. Jumlah orang yang diperlukan untuk sebuah proyek perangkat lunak dapat ditentukan setelah estimasi usaha pengembangan dibuat.</p>
<p>5.4.2 Sumber daya perangkat lunak reusable<br />
Kreasi dan penggunaan kembali blok bangunan perangkat lunak yang seharusnya dikatalog menjadi referensi yang mudah, distandarisasi untuk aplikasi yang mudah, dan divalidasi untuk integrasi yang mudah. Ada empat kategori sumber daya perangkat lunak yang harus dipertimbngkan pada saat perencanaan berlangsung, yaitu :<br />
- Komponen off-the-self Perangkat lunak yang ada dapat diperoleh dari bagian ketiga atau telah dikembangkan secara internal untuk proyek sebelumnya.<br />
- Komponen full-experience Spesifikasi, kode, desain atau pengujian data yang sudah ada yang dikembangkan pada proyek yang lalu yang serupa dengan perangkat lunak yang akan dibangun pada proyek saat ini.<br />
- Komponen partial-experience Aplikasi, kode, desain, atau data pengujiaan yang ada pada proyek yang lalu yang dihubungkan dengan perangkat lunak yang dibangun untuk proyek saat ini, tetapi akan membutuhkan modifikasi substansial.<br />
- Komponen baru Komponen perangkat lunak yang harus dibangun oleh tim perangkat lunak khususnya adalah untuk kebutuhan proyek sekarang .<br />
Lebih baik mengkhususkan syarat sumber daya perangkat lunak dari awal. Dengan cara ini evaluasi teknis dari semua alternatif dapat dilakukan dan akuisisi secara berkala dapat terjadi.</p>
<p>5.4.3 Sumber daya lingkungan<br />
Lingkungan yang mendukung poyek perangkat lunak, yang disebut juga software engineering environment (SEE), menggabungkan perangkat lunak dan perangkat keras. Karena sebagian besar organisasi perangkat lunak memiliki konstituen ganda yang memerlukan akses ke SEE, maka perencana proyek harus menentukan jendela waktu yang dibutuhkan bagi perangkat keras dan perangkat lunak serta membuktikan bahwa sember-sumber daya tersebut dapat diperoleh.<br />
Pada saat sebuah sistem berbasis komputer akan direkayasa, tim perangkat lunak mungkin membutuhkan akses ke elemen perangkat keras yang sedang dikembangkan oleh tim rekayasa yang lain.</p>
<p>5.5 ESTIMASI PROYEK PERANGKAT LUNAK<br />
Biaya perangkat lunak terdiri dari presentase kecil pada biaya sistem berbasis komputer secara keseluruhan. Kesalahan estimasi biaya yang besar dapat memberikan perbedaan antara keuntungan dan kerugian. Estimasi proyek perangkat lunak dapat ditranformasi dari suatu seni yang misterius ke dalam langkah-langkah yang sistematis yang memberikan estimasi dengan risiko yang dapat diterima.<br />
Sejumlah pilihan untuk mencapai estimasi biaya dan usaha yang dapat dipertanggung jawabkan :<br />
1. Menunda etimasi sampai akhir proyek<br />
2. Mendasarkan etimasi pada proyek-proyek yang mirip yang sudah pernah dilakukan sebelumnya<br />
3. Menggunakan “teknik dekomposisi” yang relatif sederhana untuk melakukan estimasi biaya dan usaha proyek<br />
4. Menggunakan satu atau lebih model empiris bagi estimasi usaha dan biaya perangkat lunak.<br />
Model estimasi empiris dapat digunakan untuk melengkapi teknik dekomposisi serta menawarkan pendekatan estimasi yang secara potensial berharga. Model berbasis pengalaman(data hitoris) dan berbentuk :</p>
<p>d=f(vi)</p>
<p>di mana d adalah satu dari sejumlah harga estimasi(contoh : usaha, biaya,durasi proyek) dan vi adalah parameter independen yang dipilih (seperti LOC dan FP yang diestimasi). Peranti estimasi otomatis mengimplementasi satu atau lebih teknik dekomposisi atau model empiris. Masing-masing pilihan estimasi biaya perangkat lunak yang dapat dilakukan sama baiknya dengan data hitoris yang digunakan untuk menumbuhkan estimasi.</p>
<p>5.6 TEKNIK DEKOMPOSISI</p>
<p>Masalah yang dipecahkan sangat kompleks untuk dipertimbangkan sebagai satu kesatuan, karena itu kita mendekoposisi masalah, menandainya sebagai serangkaian masalah yang lebih kecil.</p>
<p>5.6.1 Software sizing<br />
Akurasi estimasi proyek perangkat lunak didasrkan pada sejumlah hal :<br />
1. Tingkat di mana perencana telah dengan tepat mengestimasi ukuran produk yang akan dibuat.<br />
2. Kemampuan untuk menerjemahkan estimasi ukuran ke dalam kerja manusia, waktu kalender, dan dolar<br />
3. Tingkat di mana rencana proyek mencerminkan kemampuan tim perangkat lunak<br />
4. Stabilitas syarat produk serta lingkungan yang mendukung usaha pengembangan perangkat lunak<br />
Dalam konteks perencanaan proyek, ukuran berarti keluran yang dapat dikuantitatifkan dari proyek perangkat lunak. Bila dilakukan pendekatan secara langung, ukuran dapat diukur dalam LOC. Tetapi bila dipilih pendekatan tidak langsung, ukuran dihadirkan dalam FP. Putnam dan Myres mengusulkan 4 pendekatan yang berbeda dalam masalah pengukuran :</p>
<p>1. Fuzzy-logic sizing<br />
Pendekatan yang menggunakan teknik reasoning aproksimasi yang merupakan dasar bagi fuzzy logic(logika kabur). Perencana harus mengidentifikasi tipe aplikasi, membuat besarnya dalam skala kuantitatif, dan menyaring besaran itu dalam bentuk oriinil.<br />
2. Function point sizing<br />
Perencanaan pengembangan estimasi karakteritik domain informasi<br />
3. Standart component sizing<br />
Perangkat lunak dibangun dari sejumlah komponen yang standar yang berbeda-beda yang umum bagi suatu era aplikasi tertentu.<br />
4. Change sizing<br />
Pendekatan ini digunakan bila proyek melingkupi pemakaian perangkat lunak yang ada harus dimodihikasi dengan banyak cara sebagai bagian dari sebuah proyek.</p>
<p>Dengan menggungakan suatu “rasio kerja” bagi masing-masing tipe perubahanm, maka ukuran perubahan dapat diperkirakan.</p>
<p>5.6.2 Perkiraan berdasarkan masalah<br />
Baris kode(LOC) dan titik fungsi (FP) digambarkan sebagai pengukuran dasar di mana metrik produktivitas dapat dihitung. Data LOC dan FP digunakan dalam dua cara :<br />
o Sebagai variabel untuk estimasi yang dipakai untuk mengukur masing-masing elemen perangkat lunak<br />
o Sebagai metrik baseline yang dikumpulkan dari proyek yang lalu dan dipakai dalam hubungannya dengan variabel estimasi untuk mengembangkan proyeksi kerja dan biaya.<br />
Expected value untuk variabel estimasi (ukuran), EV, dapat dihitung sebagai rata-rata terbobot dari estimasi optimistik (Sopt), paling sering(Sm), dan pesimistik (Spess). Contohnya :</p>
<p>EV=( Sopt +Sm +Spess)/6</p>
<p>Memberikan kepercayaan terbesar pada estimasi “yang paling mungkin” serta mengikuti distribui probabilitas beta. Sekali expected value untuk variabel estimasi ditentukan, data produktivitas LOC dan FP diaplikasikan. Setiap teknik estimasi, bagaimanapun canggihnya, masih harus tetap di cross check dengan pendekatan lainnya dan baru kemudian kaidah umum dan pengalaman dapat berlaku di sini.</p>
<p>5.7 MODEL PERKIRAAN EMPIRIS</p>
<p>Model perkiraan untuk perangkat lunak komputer menggunakan rumusan yang ditarik secara empiris untuk memprediksi usaha sebagai sebuah fungi LOC dan FP. Data empiris yang mendukung sebagaian besar model perkiraan ditarik dari sebuah sampel proyek yang terbatas.</p>
<p>5.7.1 Struktur model perkiraaan<br />
Model perkiraan tertentu ditarik dengan menggunakan analisis regresi terhadap data yang dikumpulkan dari proyek perangkat lunak sebelumnya. Struktur model ini berbentuk :</p>
<p>E = A+Bx(Ev)c</p>
<p>Dimana A, B, C adalah konstanta yang ditarik secara empiris, E adalah usaha dalam peron-month, dan EV adalah variabel perkiraan (baik dalam LOC maupun FP).</p>
<p>5.7.2 Model COCOMO<br />
Kependekan dari COnstructive COst MOdel (Model Biaya KOnstruktif). Hirarki model Boehm berbentuk sebagai berikut :<br />
Model1 : Model COCOMO dasar menghitung usaha pengembangan perangkat lunak (dan biaya) sebagai fungsi dari ukuran program yang diekspresikan dalam baris kode yang diestimasi,<br />
Model2 : Model COCOMO Intermediete menghitung usaha pengembangan perangkat lunak sebagai fungsi ukuran program dan serangkaian “pengendali biaya” yang menyangkut penilaian yang subyektif terhadap produk, perangkat keras personil, dan atribut proyek.<br />
Model3 : Model COCOMO advenced menghubungkan semua karakteristik versi intermediete dengan penilaian terhadap pengaruh pengendali biaya pada setiap langkah (analisis, perancangan, dll) dari proses rekayasa perangkat lunak. Persamaan COCOMO dasar berbentuk :</p>
<p>E = abKLOCbb D = cbEdb</p>
<p>Dimana E adalah usaha yang diaplikasikan dalam person-month, D adalah waktu pengembangan dalam bulan kronologis, dan KLOC adalah jumlah baris penyampaian kode yang diperkirakan untuk proyek tersebut. Koefisien ab dan cb dan eksponen bb dan db ada pada tabel Model cocomo dasar Proyek perangkat lunak<br />
ab       bb      cb       db<br />
Organik             2,4    1,05    2,5    0,38<br />
Semi-detached  3,0     1,12    2,5    0,35<br />
Embedded         3,6     1,20    2,5    0,32</p>
<p>5.7.2 Persamaan Perangkat Lunak<br />
Persamaan perangkat lunak adalah model yang multivariasi yang mengasumsikan distribusi khusus usaha sepanjang hidup proyek pengembangan perangkat lunak. Model estimasinya berbentuk :</p>
<p>E = [LOC x B0,333/P]3 x (1/t4)</p>
<p>Di mana E = Usaha dalam person-month atau person-year T = durasi proyek dalam bulan atau tahun B = “faktor skill khusus” yang meningkat secara pelan- pelan “pada saat kebutuhan akan integrasi, pengujian, jaminan kualitas, dokumentasi, manajemen skill tumbuh”. Untuk oprogram kecil (KLOC = 5 sampai 15)` B = 0,16. Untuk program yang lebih besar dari pada 70 KLOC, B=0,39. P = “parameter produktivitas” yang mencerminkan :<br />
- kematangan proses dan praktik manajemen secara keseluruhan<br />
- tingkat bahasa pemrograman yang digunakan &#8211; keadaan lingkungan perangkat lunak<br />
- skill dan pengalaman tin perangkat lunak<br />
- kompleksitas aplikasi</p>
<p>5.8 KEPUTUSAN MAKE-BUY</p>
<p>Manajer rekayasa perangkat lunak dihadapkan pada keputusan make-buy yang dapat dikompilasikan lebih jauh lagi oleh sejumlah pilihan akuisisi :<br />
1. Perangkat lunak dapat dibeli(atau lisensi) off-the-shelf.<br />
2. Komponen perangkat lunak full-experience dan partial-experiance dapat diperoleh dan kemudian dimodifikasi dan diintegrasikan untuk memenuhi kebutuhan tertentu.<br />
3. Perangkat lunak dapat dibuat custom-built oleh kontraktor luar untuk memenuhi spesifikasi pembeli.<br />
Langkah-langkah yang tercakup dalam akuisisi perangkat lunak ditentukan oleh kekritisan perangkat lunak yang akan dibeli dan biaya akhir. Dalam analisis akhir, keoputusan make-buy dibuat berdasarkan kndisi berikut :<br />
1. Apakah tanggal penyampaian produk perangkat lunka akan lebih cepat dari  pada perangkat lunak yang dikembangkan secara internal?<br />
2. Apakah biaya akuisisi ditambah biaya pemesanan akan lebih kecil dari pada biaya pengembangan perangkat lunak secara internal?<br />
3. Apakah biaya dukungan luar (seperti kontrak pemeliharaan) akan lebih rendah daripada biaya dukungan internal?<br />
Kondisi ini berlaku untuk setiap pilihan akuisisi yang telah dicantumkan di atas</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/rpl07.wordpress.com/85/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/rpl07.wordpress.com/85/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rpl07.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rpl07.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rpl07.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rpl07.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rpl07.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rpl07.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rpl07.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rpl07.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rpl07.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rpl07.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rpl07.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rpl07.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rpl07.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rpl07.wordpress.com/85/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=85&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rpl07.wordpress.com/2007/06/20/perencanaan-proyek-perangkat-lunak-oleh-mizar-5105-100-067/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3d7a924083c1286987a08eef0e55d0fc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Handy</media:title>
		</media:content>
	</item>
		<item>
		<title>PERMODELAN ANALISIS, oleh Lakstyo [5105 100 039]</title>
		<link>http://rpl07.wordpress.com/2007/06/20/permodelan-analisis-oleh-lakstyo-5105-100-039/</link>
		<comments>http://rpl07.wordpress.com/2007/06/20/permodelan-analisis-oleh-lakstyo-5105-100-039/#comments</comments>
		<pubDate>Wed, 20 Jun 2007 17:09:37 +0000</pubDate>
		<dc:creator>Handy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://rpl07.wordpress.com/2007/06/20/permodelan-analisis-oleh-lakstyo-5105-100-039/</guid>
		<description><![CDATA[APAKAH PERMODELAN ANALISIS ITU Pada tingkat teknik, rekayasa perangkat lunak dimulai dengan serangkaian tugas pemodelan yang membawa kepada suatu spesifikasi lengkap dari persyaratan representasi dan representasi desain yang komprehensif bagi perangkat lunak yang akan dibangun. Model, analiss sebenarnya merupakan serangkaian model, merupakan representasi teknisyang pertama dari system. Elemen-elemen dari model analisis dapat digambarkan seperti gambar [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=77&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>APAKAH PERMODELAN ANALISIS ITU<br />
Pada tingkat teknik, rekayasa perangkat lunak dimulai dengan serangkaian tugas pemodelan yang membawa kepada suatu spesifikasi lengkap dari persyaratan representasi dan representasi desain yang komprehensif bagi perangkat lunak yang akan dibangun. Model, analiss sebenarnya merupakan serangkaian model, merupakan representasi teknisyang pertama dari system. Elemen-elemen dari model analisis dapat digambarkan seperti gambar 1 disamping. Penjelasannya adalah sebagai berikut:</p>
<p><a TITLE="lax1" HREF="http://rpl07.files.wordpress.com/2007/06/111.gif"><img ALT="lax1" SRC="http://rpl07.files.wordpress.com/2007/06/111.gif?w=500" /></a><br />
[gambar 1]<br />
<span id="more-77"></span></p>
<p>►	Entity Relationship Diagram (ERD) : Menggambarkan hubungan antara objek data.<br />
►	Data Flow Diagram (DFD) :<br />
§	Memberikan indikasi mengenai bagaimana data ditranformasi pada saat data bergerak melalui sistem<br />
§	Menggambarkan fungsi-fungsi (dan sub fungsi) yang mentranformasi aliran data.<br />
►	State Transition Diagram (STD) :<br />
Menunjukkan bagaimana sistem bertingkah laku sebagai akibat dari kejadian eksternal.<br />
►	Dekripsi setiap fungsi yang disajikan pada DFD diisikan dalam sebuah spesifikasi proses / process specification (PSSPEC)<br />
►	Informasi tambahan mengenai aspek kontrol dari perangkat lunak diisikan dalam Control Specification (CSPEC)<br />
Namun dalam pembahasan kali ini hanya akan dijelaskan Data Flow Diagram secara detail. Mengingat luas-nya materi pembahasan mengenai permodelan analisis, dan diharapkan dengan spesifik-nya materi pembahasan, pembaca diaharapkan dapat memahami dengan baik mengenai Data Flow Diagram.</p>
<p>WHAT IS DATA FLOW DIAGRAM a.ka DIAGRAM ALIRAN DATA?<br />
DFD adalah sebuah teknik grafis yang menggambarkan aliran informasi dan tranformasi yang diaplikasikan pada saat data bergerak dari input menjadi output.<br />
DFD juga dikenali sebagai grafik aliran data atau bubble chart. Bentuk dasar dari suatu aliran data sebagai beikut:<br />
<a TITLE="lax2" HREF="http://rpl07.files.wordpress.com/2007/06/27.gif"><img ALT="lax2" SRC="http://rpl07.files.wordpress.com/2007/06/27.gif?w=500" /></a><br />
[gambar 2]</p>
<p>DFD dapat digunakan untuk menyajikan sebuah system atau perangkat lunak pada setiap tingkat  abstaksi. DFD dapat dipartisi ke dalam tingkat-tingkat yang merepresentasikan aliran informasi  yang bertambah dan fungs ideal.<br />
DFD tingkat 0, yang disebut juga dengan model sistem fundamenatasi atau model konteks, merepresentasikan seluruh elemen sistem sebagai sebuah bubble tunggal dengan data input dan output yang ditunjukkan oleh anak panah yang masuk dan keluar secara berurutan. Proses tambahan (bubble) dan jalur aliran informasi direpresentasikan pada saat DFD tingkat 0 dipartisi untuk mengungkap setail yang lebih. Contohnya, sebuah DFD tingkat 1 dapat berisi lima atau enam bubble dengan anak panah yang saling menghubungka. Setiap proses yang direpresentasikan pada tingkat 1 merupakan subfungsi dari seluruh sistem yang digambarkan di dalam model konteks.</p>
<p>Prosedur atau konsumer informasi yang ada di luar bound sistem untuk dimodelkan</p>
<p><a TITLE="lax3" HREF="http://rpl07.files.wordpress.com/2007/06/34.gif"><img ALT="lax3" SRC="http://rpl07.files.wordpress.com/2007/06/34.gif?w=500" /></a><br />
[gambar 3]</p>
<p>Transfer informasi (fungsi) yang ada di dalam bound sistem untuk dimodelkan</p>
<p><a TITLE="lax4" HREF="http://rpl07.files.wordpress.com/2007/06/44.gif"><img ALT="lax4" SRC="http://rpl07.files.wordpress.com/2007/06/44.gif?w=500" /></a><br />
[gambar 4]</p>
<p>Objek data , anak panah menunjuk arah aliran data.</p>
<p><a TITLE="lax5" HREF="http://rpl07.files.wordpress.com/2007/06/52.gif"><img ALT="lax5" SRC="http://rpl07.files.wordpress.com/2007/06/52.gif?w=500" /></a><br />
[gambar 5]</p>
<p>Repositori data yang disimpan untuk digunakan oleh satu atau lebih,  proses dapat disederhanakan buffer atau queue. Atau serumit database relasional.</p>
<p><a TITLE="lax6" HREF="http://rpl07.files.wordpress.com/2007/06/6.gif"><img ALT="lax6" SRC="http://rpl07.files.wordpress.com/2007/06/6.gif?w=500" /></a><br />
[gambar 6]</p>
<p>Penting untuk dicatat bahwa tidak ada indikasi eksplisit dari urutan pemrosesan yang didukung oleh diagram tersebut. Prosedur atau urutan dapat menjadi implicit di dalam diagram, tetapi representasi procedural biasanya ditunda sampai desain perangkat lunak.<br />
Seperti telah diacatat sebelumnya, masing-masing bubble dapat direfinasi atau dilapisi untuk menggambarkan lebih setail. Gambar dibawah menggambarkan konsep ini. Perhatikan, sebuah model fundamental untuk sistem F yang menunjukkan input utama adalah A dan awal ouput B. Kemudian kita menyaring model F ke dalam tranformasi f1 sampai f7. Catatlah bahwa kontinuitas aliran informasi harus dijaga, yaitu input dan output ke masing-masing penyaringan harus tetap sama. Konsep ini, yang sering disebut dengan balancing, esensial bagi pengembangan model konsisten. Penyaringan lebih jauh dari f4 menggambarkan detail di dalam bentuk transformasi f41 sampai f45. Lagi, input (X,Y) dan output (Z) tetap tidak berubah.<br />
<a TITLE="lax7" HREF="http://rpl07.files.wordpress.com/2007/06/7.gif"><img ALT="lax7" SRC="http://rpl07.files.wordpress.com/2007/06/7.gif?w=500" /></a><br />
[gambar 7]</p>
<p>Perlu diperhatikan disini, sebuah DFD dapat disalahinterpresentasikan jika fungsinya tidak sesuai dengan diagram alir. Sebuah DFD menggambarkan aliran informasi tanpa representasi logika procedural yang eksplisit (misalnya kondisi atau loop).<br />
Contoh Data Flow Diagram</p>
<p><a TITLE="lax9" HREF="http://rpl07.files.wordpress.com/2007/06/9.gif"><img ALT="lax9" SRC="http://rpl07.files.wordpress.com/2007/06/9.gif?w=500" /></a><br />
[gambar 8]</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/rpl07.wordpress.com/77/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/rpl07.wordpress.com/77/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rpl07.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rpl07.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rpl07.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rpl07.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rpl07.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rpl07.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rpl07.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rpl07.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rpl07.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rpl07.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rpl07.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rpl07.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rpl07.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rpl07.wordpress.com/77/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=77&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rpl07.wordpress.com/2007/06/20/permodelan-analisis-oleh-lakstyo-5105-100-039/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3d7a924083c1286987a08eef0e55d0fc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Handy</media:title>
		</media:content>
	</item>
		<item>
		<title>COCOMO (COnstructive COst MOdel), oleh Dommy [5105 100 163]</title>
		<link>http://rpl07.wordpress.com/2007/06/20/cocomo-constructive-cost-model-oleh-dommy-5105-100-163/</link>
		<comments>http://rpl07.wordpress.com/2007/06/20/cocomo-constructive-cost-model-oleh-dommy-5105-100-163/#comments</comments>
		<pubDate>Wed, 20 Jun 2007 16:43:29 +0000</pubDate>
		<dc:creator>Handy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://rpl07.wordpress.com/2007/06/20/cocomo-constructive-cost-model-oleh-dommy-5105-100-163/</guid>
		<description><![CDATA[PENGENALAN PADA COCOMO MODEL Pada tahun 1981, Barry Boehm mendesain COCOMO untuk memberikan estimasi / perkiraan jumlah Person-Months untuk mengembangkan suatu produk software. Referensi pada model ini dikenal dengan nama COCOMO 81. Pada tahun 1990, muncul suatu model estimasi baru yang disebut dengan COCOMO II. Secara umum referensi COCOMO sebelum 1995 merujuk pada original COCOMO [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=75&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>PENGENALAN PADA COCOMO MODEL</p>
<p>Pada tahun 1981, Barry Boehm mendesain COCOMO untuk memberikan estimasi / perkiraan jumlah Person-Months untuk mengembangkan suatu produk software. Referensi pada model ini dikenal dengan nama COCOMO 81.<br />
Pada tahun 1990, muncul suatu model estimasi baru yang disebut dengan COCOMO II. Secara umum referensi COCOMO sebelum 1995 merujuk pada original COCOMO model yaitu COCOMO 81, kemudian setelah itu merujuk pada COCOMO II.<br />
Model estimasi COCOMO telah digunakan oleh ribuan project manager suatu proyek perangkat lunak, dan berdasar pada pengalaman dari ratusan proyek sebelumnya. Tidak seperti model estimasi biaya yang lain, COCOMO adalah model terbuka, sehingga semua detail dipublikasikan, termasuk :<br />
·	Dasar persamaan perkiraan biaya<br />
·	Setiap asumsi yang dibuat dalam model<br />
·	Setiap definisi<br />
·	Biaya yang disertakan dalam perkiraan dinyatakan secara eksplisit<br />
Perhitungan paling fundamental dalam COCOMO model adalah penggunaan Effort Equation (Persamaan Usaha) untuk mengestimasi jumlah dari Person-Months yang dibutuhkan untuk pengembangan proyek. Sebagian besar dari hasil-hasil lain COCOMO, termasuk estimasi untuk Requirement dan Maintenance berasal dari persamaan tersebut.<br />
<span id="more-75"></span></p>
<p>SOURCE LINE OF CODE</p>
<p>Perhitungan COCOMO didasarkan pada estimasi anda pada ukuran proyek dalam Source Line Of Code (SLOC). Pendefinisian SLOC:<br />
·	Hanya jumlah baris kode yang dikirim sebagai bagian dari produk yang disertakan (test drivers dan software pendukung lainnya tidak dihitung).<br />
·	Baris kode dibuat oleh staf proyek (kode yang di-generate oleh aplikasi tidak dihitung).<br />
·	Satu SLOC adalah satu baris kode secara logis.<br />
·	Deklarasi dihitung sebagai SLOC.<br />
·	Komentar tidak dihitung sebagai SLOC.<br />
Model COCOMO 81 didefinisikan dalam bentuk Delivered Source Instruction, yang mana sangat menyerupai SLOC. Perbedaan utama antara DSI dan SLOC adalah sebuah SLOC mungkin merupakan beberapa baris secara fisik. Sebagai contoh, sebuah statement “if-then-else” akan dihitung sebagai satu SLOC, tetapi mungkin dihitung sebagai beberapa DSI.</p>
<p>SCALE DRIVERS</p>
<p>Pada model COCOMO II, beberapa factor terpenting yang berkontribusi pada durasi proyek dan biaya yang dikeluarkan adalah Scale Drivers. Anda mengeset setiap Scale Driver untuk mendeskripsikan proyek anda. Scale Drivers tersebut menentukan eksponen yang digunakan dalam Effort Equation.<br />
Ada 5 Scale Drivers :<br />
·	Precedentedness<br />
·	Development Flexibility<br />
·	Architecture / Risk Resolution<br />
·	Team Cohesion<br />
·	Process Maturity<br />
Catat bahwa Scale Drivers telah menggantikan Development Mode dari COCOMO 81. Dua Scale Drivers yang pertama, Precedentedness dan Development Flexibility sebenamya mendeskripsikan pengaruh yang hampir sama dibanding Development Mode.</p>
<p>COST DRIVERS</p>
<p>COCOMO II memiliki 17 cost drivers. Cost driver tersebut adalah factor pengali yang menentukan usaha yang diperlukan untuk menyelesaikan proyek software anda. Sebagai contoh, jika proyek anda akan mengembangkan software yang mengatur penerbangan pesawat, anda akan mengeset Required Software Reliability (RELY) cost driver menjadi sangat tinggi. Rating tersebut berhubungan dengan effort multiplier 1,26  yang berarti bahwa proyek anda akan membutuhkan usaha lebih sebesar 26%  dibanding proyek software pada umumnya. COCOMO II mendefinisikan setiap cost drivers dan effort multiplier yang terhubung dengan setiap rating.</p>
<p>COCOMO II EFFORT EQUATION</p>
<p>Model COCOMO II membuat estimasi dari usaha yang dibutuhkan (diukur dari Person-Month) berdasarkan keutamaan dalam estimasi anda akan ukuran proyek perangkat lunak (yang diukur dalam ribuan SLOC atau KSLOC) :<br />
Effort = 2,94 * EAF * (KSLOC)E<br />
Dimana :<br />
EAF = Effort Adjustment Factor yang berasal dari Cost Drivers<br />
E      = Eksponen yang berasal dari Scale Drivers.<br />
Sebagai contoh, suatu proyek dengan semua Nominal Cost Drivers dan Scale Drivers akan memiliki sebuah EAF 1,00 dan eksponen (E) 1,0997. Diasumsikan bahwa proyek diproyeksikan terdiri atas 8.000 baris kode, COCOMO II mengestimasi bahwa 28,9 Person-Months effort diperlukan untuk menyelesaikannya :<br />
Effort = 2.94 * (1.0) * (8)1.0997 = 28.9 Person-Months<br />
EFFORT ADJUSTMENT FACTOR</p>
<p>Effort Adjustment Factor dalam effort equation adalah produk dari effort multipliers yang terhubung pada masing-masing cost drivers untuk proyek anda.<br />
Sebagai contoh, jika proyek anda berating sangat tinggi untuk kompleksitas (effort multipliers 1,34) dan rendah untuk pengalaman language &amp; tools (effort multipliers 1,09) dan semua cost drivers yang lain berating nominal (effort multipliers 1,00), sehingga EAF adalah produk dari 1,34 dan 1,09.<br />
EAF= 1,34 * 1,09 = 1,46<br />
Effort = 2,94 * (1,46) * (8)1,0097 = 42,3 Person-Months</p>
<p>COCOMO II SCHEDULE EQUATION</p>
<p>COCOMO II Schedule Equation memprediksi jumlah bulan yang dibutuhkan untuk menyelesaikan proyek perangkat lunak anda. Durasi dari proyek berdasarkan pada usaha yang diprediksi oleh effort equation :<br />
Duration = 3,67 * (Effort)SE<br />
Dimana :<br />
Effort = usaha dari COCOMO II effort equation.<br />
SE       = eksponen scheduled equation yang berasal dari Scale Dirvers.<br />
Melanjutkan contoh, dansubtitusi eksponen dengan 0.3179 yang dihitung dari scale drivers, menghasilkan estimasi hanya dalam satu tahun dan rata-rata staf antara 3 sampai 4 orang.<br />
Duration = 3.67 * (42.3)0.3179 = 12.1 months<br />
Average staffing = (42.3 Person-Months) / (12.1 Months) = 3.5 people</p>
<p>SCED COST DRIVER</p>
<p>COCOMO cost driver untuk Required Development Schedule (SCED) adalah unik dan memerlukan penjelasan special.<br />
SCED cost driver digunakan untuk menghitung observasi bahwa proyek yang dikembangkan dalam jadwal yang dipercepat akan membutuhkan usaha yang lebih banyak dari proyek yang dikembangkan dalam jadwal optimal. Sebuah rating SCED yang sangat rendah diwakili oleh sebuah effort multipliers sebesar 1,43 dan berarti bahwa anda berniat menyelesaikan proyek anda dalam 75% jadwal optimal (yang ditentukan oleh estimasi COCOMO sebelumnya). Melanjutkan contoh yang digunakan tadi, tetapi diasumsikan bahwa SCED memiliki rating sangat rendah, COCOMO menghasilkan estimasi :<br />
Duration = 75% * 12.1 Months = 9.1 Months<br />
Effort Adjustment Factor = EAF = 1.34 * 1.09 * 1.43 = 2.09<br />
Effort = 2.94 * (2.09) * (8)1.0997 = 60.4 Person-Months<br />
Average staffing = (60.4 Person-Months) / (9.1 Months) = 6.7 people<br />
Catat bahwa perhitungan durasi tidak berdasar secara langsung pada effort (jumlah Person-Months), justru hal tersebut berdasar pada jadwal yang akan diperlukan untuk proyek diasumsikan proyek tersebut telah berjalan dalam jadwal nominal. Ingat bahwa SCED cost driver berarti “percepatan dari jadwal nominal”.</p>
<p>COCOMO II</p>
<p>COCOMO II diset sebagai siklus hidup software modern. Orgininal COCOMO model sudah sangat berhasil, tetapi tidak sesuai dengan praktek pengembangan software yang lebih baru sebagaimana dengan software tradisional. COCOMO II menargetkan proyek software pada tahun 1990an sampai 2000an dan akan terus berkembang dalam beberapa tahun ke depan.<br />
COCOMO II memiliki 3 model berbeda :<br />
·	The Application Composition Model<br />
Sesuai untuk pembangunan proyek dengan tools GUI-builder yang modern. Berdasar pada Object Points baru.<br />
·	The Early Design Model<br />
Anda bisa menggunakan model ini untuk mendapat estimasi kasar biaya dan durasi dari suatu proyek sebelum anda menentukan arsitektur keseluruhan proyek tersebut. Model ini menggunakan sekumpulan kecil cost driver baru dan persamaan estimasi baru. Berdasar pada Unadjusted Function Points atau KSLOC.<br />
·	The Post-Architecture Model<br />
Ini adalah model COCOMO II yang paling detail. Anda akan menggunakannya setelah anda membentuk arsitektur proyek anda secara menyeluruh. Model ini memiliki cost driver baru, aturan penghitungan baris yang baru, dan persamaan baru.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/rpl07.wordpress.com/75/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/rpl07.wordpress.com/75/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rpl07.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rpl07.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rpl07.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rpl07.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rpl07.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rpl07.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rpl07.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rpl07.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rpl07.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rpl07.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rpl07.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rpl07.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rpl07.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rpl07.wordpress.com/75/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=75&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rpl07.wordpress.com/2007/06/20/cocomo-constructive-cost-model-oleh-dommy-5105-100-163/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3d7a924083c1286987a08eef0e55d0fc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Handy</media:title>
		</media:content>
	</item>
		<item>
		<title>Software Reuse, oleh M Adi P [5105 100 159]</title>
		<link>http://rpl07.wordpress.com/2007/06/20/software-reuse-oleh-m-adi-p-5105-100-159/</link>
		<comments>http://rpl07.wordpress.com/2007/06/20/software-reuse-oleh-m-adi-p-5105-100-159/#comments</comments>
		<pubDate>Wed, 20 Jun 2007 16:41:13 +0000</pubDate>
		<dc:creator>Handy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://rpl07.wordpress.com/2007/06/20/software-reuse-oleh-m-adi-p-5105-100-159/</guid>
		<description><![CDATA[1. Pengertian Software reuse, disebut juga code reuse adalah penggunaan software yang sudah ada, atau pengetahuan software (software knowledge) untuk membangun software baru. Di banyak disiplin ilmu teknik, sitem dibangun dengan menyusun componen yang sudah ada dan telah digunakan pada system lain. Software engineering lebih difokuskan pada pembangunan software secara asli, tapi sekarang untuk mendapatkan [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=74&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>1. Pengertian<br />
Software reuse, disebut juga code reuse  adalah penggunaan software yang sudah ada, atau pengetahuan software (software knowledge) untuk membangun software baru. Di banyak disiplin ilmu teknik, sitem dibangun dengan menyusun componen yang sudah ada dan telah digunakan pada system lain. Software engineering lebih difokuskan pada  pembangunan software secara asli, tapi sekarang untuk mendapatkan hasil software yang lebih baik, lebih cepat dan harga murah, kita membutuhkan mengadopsi proses yang didasarkan pada konsep software reuse.<br />
Reuse telah di praktikkan semenjak hari pertama memprogram. Programmer selalu memggunakan kembali (reuse) sebagian dari code, template, fungsi, dan procedure. Software reuse telah diterima kedalam area belajar software engineering.<br />
Item dari reusable software atau software knowledge disebut sebagai software asset. Asset mungkin adalah desain, model tes, kebutuhan &#8211; kebutuhan, arsitektur, dll.<br />
<span id="more-74"></span><br />
Reuse didasarkan pada software engineering<br />
a.	Application system reuse<br />
Sebuah aplikasi besar pada sebuah sistem mungkin digunakan tanpa merubah ke sistem lain atau membangun aplikasi yang mirip.<br />
b.	Component reuse<br />
Penggunaan dari komponen sebuah aplikasi.<br />
c.	Object and function reuse<br />
Pengunaan komponen software berupa objek atau fungsi.</p>
<p>Mungkin yang paling dikenal baik dari software reuse adalah code. Ide dari penggunaan ulang code ialah sebagian atau keseluruhan program computer yg ditulis suatu ketika lalu digunakan oleh program lain yang di tulis kemudian. Penggunaan ulang code adalah teknik yg umum dilakukan untuk menghemat waktu dan energi untuk mengurangi pekerjaan. Contoh yang umum dari software reuse adalah Teknik penggunaan software library. Banyak operasi umum seperti konversi informasi diantara format yang berbeda, mengakses simpanan luar, berkomunikasi dengan external program, atau memanipulasi informasi (angka, kata, nama, lokasi., tanggal, dll) yang sering dibutuhkan oleh berbagi program berbeda. Pembuat program baru bisa menggunakan kode pada software library untuk melakukan tugas tertentu, bukan sebaliknya dengan menulis penuh program untuk melakukan tugas / operasi yg diinginkan. Implementasi dari libarary sering kali memberi keuntungan dalam menyelesaikan kasus yang tidak biasa.</p>
<p>2. Keuntungan dan masalah software reuse<br />
Keuntungan software reuse.<br />
a.	Meningkatkan kepercayaan<br />
Software yang akan digunakan kembali telah di tes dan dicoba pada sistemnya, sehingga lebih bisa dipercaya dari software baru. awal pembuatan dari software mendeteksi berbagai kesalahan desain dan implementasi. Ini kemudian diperbaiki, yang megurangi tingkat kegagalan saat software di gunakan kembali.<br />
b.	Mengurangi resiko<br />
Jika sotware telah ada, ada pengurangan biaya dalam pembuatan software. Ini adalah factor yang penting untuk manajemen proyek untuk mengurang estimasi biaya proyek disisi kesalahan software. Hal ini lebih terlihat saat sejumlah besar komponen software digunakan kembali.<br />
c.	Lebih efektif untuk para spesialis<br />
Para spesialis tidak perlu melakukan pekerjaan yang sama pada proyek berbeda. Para spesialis bisa menggunakan software sebelumnya dengan mengkapsulasi program mereka.<br />
d.	Standar pelaksanaan<br />
Beberapa standar, seperti standar user interface, bisa diimplementasikan sebagai standard reusable component. Sebagai contoh interface menu bisa diimplementasikan memggunakan reusable component, semua aplikasi menyajikan format menu yang sama. Standar interface ini meningkatkan keyakinan user untuk mengurangi kesalahan ketika medapati interface yang familiar.<br />
e.	Percepatan pengembangan<br />
Membawa software ke pasaran secepat mungkin adalah lebih penting dari semua biaya pengembangan. Reuse softrware dapat mempercepat produksi karena waktu pengembangan dan pengesahan software bisa dikurangi.</p>
<p>Masalah software reuse.<br />
a.	Meningkatkan biaya perawatan<br />
Biaya perawatan mungkin akan bertambah saat reuse elemen dari suatu sistem memjadi semakin tidak sesuai dengan perubahan system.<br />
b.	Kekurangan tool pendukung<br />
Toolset mungkin tidaksupport pembangunan software dengan model reuse. Ini mungkin sulit atau tidak mungkin untuk mengintegrasi tool – tool ini dengan sistem component library.<br />
c. 	Sindrome Not-Invented-here<br />
Beberapa software engineer kadang – kadang lebih suka menulis ulang reuse component sebagian dengan alasan dapat meningkatkan kegunaan reusable component, sebagian melakukan dengan kepercayaan bahwa fakta menulis original software adalah lebih menantang dari menggunakan software orang lain.<br />
d.	Membuat dan merawat komponen library<br />
Menyusun sejumlah reusable componenet library dan menjamin pengembang bisa mengunakan library ini bisa menjadi mahal. Teknik umum kita untuk mengklasifikasi, mengkatalog, dan megambil komponen software adalah belum tepat.<br />
e.	Menemukan, mengerti dan mengadaptasikan komponen reusable<br />
Komponen software harus ditemukan di library, dimengerti dan, kadang, diadaptasikan untuk bekerja di lingkungan baru. Engineer harus yakin untuk menemukan komponen di library sebelum mereka akan menyertakan komponen sebagai bagian dari proses pembangunan software mereka.<br />
Software library adalah contoh yang bagus sebagai abstraksi. Programmer mungkin memutuskan untuk membuat abstraksi internal sehingga bagian dari program mereka bisa digunakan kembali, atau mungkin membuat library untuk digunakan sendiri. Untuk penggunaan code yang sudah ada, beberapa hal seperti interface, atau jalur komunikasi, harus didefinisikan. Ini umumnya termasuk penggunaan subroutine, object, class, atau prototype. Praktik seperti ini di formalisasi dan distandarisasi oleh software product line engineering. Praktek yang umum adalah pengunaan versi terdahulu dari program yg ada sebagai titik mulai dari versi selajutnya juga disebut dengan software reuse.<br />
3. Landasan software reuse (reuse landscape)<br />
Meskipun reuse sering disederhanakan sebagai sebuah komponen sistem, ada banyak pendekatan berbeda untuk menggunakan kembali software. Reuse dimungkinkan untuk selang level dari fungsi simple sampai aplikasi komplit. landscape reuse memberi landasan pemahaman  dalam pengaplikasian reuse.<br />
<a TITLE="madi1" HREF="http://rpl07.files.wordpress.com/2007/06/110.gif"><img ALT="madi1" SRC="http://rpl07.files.wordpress.com/2007/06/110.gif?w=500" /></a><br />
[gambar 1]</p>
<p>a.	Design patterns (Pola desain) :  Abstraksi umum yang terjadi dalam memperesentasikan aplikasi dalam sebuah desain yang menunjukkan astraksi umum, objek konkret dan interaksi.<br />
b.	Component-based development (pembangunan berbasis komponen) : system dibangun dengan mengintegrasikan komponen yang sesuai dengan model standar komponen.<br />
c.	Aplication framework (Kerangka aplikasi) : koleksi dari abstrak dan class konkret yang bisa diadaptasikan dan diperluas untuk membuat aplikasi system.<br />
d.	Legacy system wrapping : kebijaksaaan sistem yang bisa disatukan dengan mendefisniskan  seset interface dan menyediakan akses ke kebijaksanaan system ini melalui interface.<br />
e.	Service oriented system (system berorientasi service) : sistem yang dibangun dengan menghubungkan share service yang mungkin disediakan pihak luar.<br />
f.	Application product lines : sebuah tipe aplikasi yang umum pada arsitekture software sehingga bisa diadaptasiakan dengan cara berbeda utuk costumer berbeda.<br />
g.	Program libraries (Program library) : Library Class dan function yang mengimplementasikan code yang siap digunakan.<br />
h.	Program generators : Sebuah generator system yang bisa menghsilkan system atau software dengan menspesifikasikan type parameter / hasil yang diinginkan.<br />
Beberapa meyebut penggunaan ulang kode adalah termasuk juga mengkopi beberapa atau sebagian code dari program yang sudah ada ke program baru. Dengan menyadari nilai dari produk baru, mereka bisa bersedih hati kemudian hari dengan adanya banyak code yg sama disebabkan cut dan paste programming yang membuat kebutuham memory lebih besar. Banyak penelitian yg telah dilakukan untuk membuat reuse lebih cepat, mudah, lebih sistematik, dan dalam sebuah kesatuan proses normal pemrograman. Ini adalah tujuan utama dibalik penemuan pemrograman berbasis objek (object oriented programaing), dimana menjadi salah satu bentuk yang paling umum dari penggunaan ulang program yang formal (formalized reuse). Dimana kemudian melahirkan penemuan yang disebut generic programming.<br />
Alat terbaru yang lain disebut dengan software generator, program yang bisa membuat program baru dari sebuah tipe yang ditentukan. Didasarkan pada sekumpulan parameter yang user pilih. Bidang study dari system seperti ini disebut generative progrmaing dan net progrmaing.<br />
Just little thing,,, wish for better</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/rpl07.wordpress.com/74/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/rpl07.wordpress.com/74/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rpl07.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rpl07.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rpl07.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rpl07.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rpl07.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rpl07.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rpl07.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rpl07.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rpl07.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rpl07.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rpl07.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rpl07.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rpl07.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rpl07.wordpress.com/74/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rpl07.wordpress.com&amp;blog=1207096&amp;post=74&amp;subd=rpl07&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rpl07.wordpress.com/2007/06/20/software-reuse-oleh-m-adi-p-5105-100-159/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3d7a924083c1286987a08eef0e55d0fc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Handy</media:title>
		</media:content>
	</item>
	</channel>
</rss>
