Archive for September 2013

Motherboard ini adalah bagian interior komputer yang pada dasarnya otak utama laptop. Meskipun motherboard laptop rusak mungkin tampak seperti sia-sia untuk di perbaiki, tapi ada cara untuk memperbaiki motherboard tanpa perlu membayar profesional ratusan ribu rupiah untuk memperbaiki mereka. Salah satu tanda yang paling yakin bahwa motherboard kebutuhan perbaikan jika tombol power pada laptop ditekan, tetapi tetap saja tidak mau menyala atau tak ada perubahan. nah mari kita cek dan ikuti langkah-langkah berikut ini.

Langkah-Langkah Cara Memperbaiki Motherboard Komputer / Laptop Mati Total :

1. Matikan Laptop dan Pastikan sudah ditutup. Bahkan jika laptop dimatikan, pastikan bahwa kabel listrik juga dicabut dari laptop.

2. Lepaskan panel samping. Panel samping yang sering dipakai di tempat dengan beberapa sekrup. Cukup buka sekrup dan tarik kuat pada panel luar untuk menghapusnya.

3. Sentuh sepotong logam di tempat lain selain komputer. Motherboard sangat rentan terhadap listrik statis. Segala jenis shock statis dapat membuat kerusakan motherboard bahkan lebih serius. Pastikan Anda tidak memiliki statis pada Anda sebelum Anda mulai bekerja pada interior komputer.

4. Cari steker besar yang menghubungkan motherboard dengan power supply unit. Sumbat ini sulit untuk dilewatkan. Ini mungkin memiliki 20 atau 24 pin. Ringan menariknya dan kemudian mendorong kembali steker ke tempat hanya untuk memastikan koneksi ketat.

5. Periksa colokan lain untuk memastikan mereka juga ketat. Plug longgar bisa menghambat jumlah daya motherboard menerima. Juga periksa untuk melihat bagaimana RAM tongkat telah disisipkan. Tongkat harus pas dihubungkan dengan sedikit atau tanpa gerak. Jika ada menggoyangkan, pastikan tab yang diikat.

6. Tempatkan panel samping kembali pada tempatnya, dan kencangkan dengan sekrup. Pasang laptop dan tekan tombol power. Ada kesempatan baik bahwa motherboard Anda sekarang akan berfungsi dengan baik dan tombol power akan bekerja.
Delphi adalah Suatu bahasa pemrograman yang menggunakan visualisasi sama seperti bahasa pemrograman Visual Basic ( VB ) . Namun Delphi menggunakan bahasa yang hampir sama dengan pascal (sering disebut objeck pascal ) . Sehingga lebih mudah untuk digunakan . Bahasa pemrograman Delphi dikembangkan oleh CodeGear sebagai divisi pengembangan perangkat lunak milik embarcadero . Divisi tersebut awalnya milik borland , sehingga bahasa ini memiliki versi Borland Delphi .

     Delphi juga menggunakan konsep yang berorientasi objek ( OOP ) , maksudnya pemrograman dengan membantu sebuah aplikasi yang mendekati keadaan dunia yang sesungguhnya . Hal itu bisa dilakukan dengan cara mendesign objek untuk menyelesaikan masalah . OOP ini memiliki beberapa unsur yaitu ; Encapsulation ( pemodelan ) , Inheritance ( Penurunan ) , Polymorphism ( Polimorfisme ) .

     Awalnya bahasa pemrograman delphi hanya dapat digunakan di Microsoft Windows, namun saat ini telah dikembangkan sehingga dapat digunakan juga di Linux dan di Microsoft .NET . Dengan menggunakan free pascal yang merupakan proyek OpenSource, bahasa pemrograman ini dapat membuat program di sistem operasi Mac OS X dan Windows CE .

     Umumnya delphi hanya digunakan untuk pengembangan aplikasi dekstop, enterprise berbasis database dan program - program kecil . Namun karena pengembangan delphi yang semakin pesat dan bersifat general purpose bahasa pemrograman ini mampu digunakan untuk berbagai jenis pengembangan software . Dan Delphi juga disebut sebagai pelopor perkembangan RadTool ( Rapid Apllication Development ) tahun 1995 . Sehinnga banyak orang yang mulai mengenal dan menyukai bahasa pemrograman yang bersifat VCL ( Visual Component Library ) ini .

MySQL adalah sebuah perangkat lunak system manajemen basis data SQL (DBMS) yang multithread, dan multi-user. MySQL adalah implementasi dari system manajemen basisdata relasional (RDBMS). MySQL dibuah oleh TcX dan telah dipercaya mengelola system dengan 40 buah database berisi 10.000 tabel dan 500 di antaranya memiliki 7 juta baris.
MySQL AB merupakan perusahaan komersial Swedia yang mensponsori dan yang memiliki MySQL. Pendiri MySQL AB adalah dua orang Swedia yang bernama David Axmark, Allan Larsson dan satu orang Finlandia bernama Michael “Monty”. Setiap pengguna MySQL dapat menggunakannya secara bebas yang didistribusikan gratis dibawah lisensi GPL(General Public License) namun tidak boleh menjadikan produk turunan yang bersifat komersial.
Pada saat ini MySQL merupakan database server yang sangat terkenal di dunia, semua itu tak lain karena bahasa dasar yang digunakan untuk mengakses database yaitu SQL. SQL (Structured Query Language) pertama kali diterapkan pada sebuah proyek riset pada laboratorium riset San Jose, IBM yang bernama system R. Kemudian SQL juga dikembangan oleh Oracle, Informix dan Sybase. Dengan menggunakan SQL, proses pengaksesan database lebih user-friendly dibandingan dengan yang lain, misalnya dBase atau Clipper karena mereka masih menggunakan perintah-perintah pemrograman murni.
SQL dapat digunakan secara berdiri sendiri maupun di lekatkan pada bahasa pemograman seperti C, dan Delphi.
1. Elemen SQL
Elemen dari SQL yang paling dasar antara lain pernyataan, nama, tipe data, ekspresi, konstanta dan fungsi bawaan.
  • Pernyataan
Perintah dari SQL yang digunakan untuk meminta sebuah tindakan kepada DBMS.
Pernyataan dasar SQL antara lain :
  1. ALTER      : Merubah struktur tabel
  2. COMMIT  : Mengakhiri eksekusi transaksi
  3. CREATE   : Membuat tabel, indeks
  4. DELETE   : Menghapus baris pada sebuah tabel
  5. DROP        : Menghapus tabel, indeks
  6. GRANT     : Menugaskan hak terhadap basis data kepada user
  7. INSERT    : Menambah baris pada tabel
  8. REVOKE  : Membatalkan hak kepada basis data
  9. ROLLBACK  : Mengembalikan pada keadaan semula apabila transaksi gagal dilaksanakan
  10. SELECT    : Memilih baris dan kolom pada sebuah tabel
  11. UPDATE   : Mengubah value pada baris sebuah tabel
  • Nama
Nama digunakan sebagai identitas, yaitu identitas bagi objek pada DBMS. Misal : tabel, kolom dan pengguna.
  • Tipe data
Tipe data yang ada dalam MYSQL :
1. Tipe data numerik antara lain :
  1. TINYINT         : Nilai integer yang sangat kecil
  2. SMALLINT     : Nilai integer yang kecil
  3. MEDIUMINT  : Nilai integer yang sedang
  4. INT                   : Nilai integer dengan nilai standar
  5. BEGINT           : Nilai integer dengan nilai besar
  6. FLOAT             :Bilangan decimal dengan single-precission
  7. DOUBLE         :Bilangan decimal dengan double-precission
  8. DECIMAL(M,D)   : Bilangan float yang dinyatakan sebagai string. M : jumlah digit yang disimpan, D : jumlah angka dibelakang koma
2. Tipe data String antara lain :
  1. CHAR               : Karakter yang memiliki panjang tetap yaitu sebanyak n
  2. VARCHAR      : Karakter yang memiliki panjang tidak tetap yaitu maksimum n
  3. TINYBLOB     : BLOB dengan ukuran sangat kecil
  4. BLOB               : BLOB yang memiliki ukuran kecil
  5. MEDIUMBLOB    : BLOB yang memiliki ukuran sedang
  6. LONGBLOB    : BLOB yang memiliki ukuran besar
  7. TINYTEXT      : teks dengan ukuran sangat kecil
  8. TEXT                : teks yang memiliki ukuran kecil
  9. MEDIUMTEXT     : teks yang memiliki ukuran sedang
  10. LONGTEXT     : teks yang memiliki ukuran besar
  11. ENUM              : kolom diisi dengan satu member enumerasi
  12. SET                   : Kolom dapat diisi dengan beberapa nilai anggota himpunan
3. Tipe data tunggal dan jam :
  1. DATE        : date memiliki format tahun-bulan-tanggal
  2. TIME         : time memiliki format jam-menit-detik
  3. DATETIME           : gabungan dari format date dan time
  • Ekspresi
Ekspresi digunakan untuk menghasilkan/menghitung nilai.
Misalnya : jumlah=harga-diskon
Ekspresi aritmatika antara lain :
  1. +  : tambah
  2. –  : kurang
  3. /  : bagi
  4. *  : kali
  • Konstanta
Nilai yang tetap
  • Fungsi bawaan
Fungsi adalah subprogram yang dapat menghasilkan suatu nilai apabila fungsi tersebut dipanggil. Fungsi Agregat adalah fungsi yang digunakan untuk melakukan summary, statistik yang dilakukan pada suatu tabel/query.
  1. AVG(ekspresi)  : digunakan untuk mencari nilai rata-rata dalam kolom dari tabel.
  2. COUNT(x)       : digunakan untuk menghitung jumlah baris dari sebuah kolom dari tabel
  3. MAX(ekspresi) : digunakan untuk mencari nilai yang paling besar dari suatu kolom dari tabel
  4. MIN(ekspresi)   : digunakan untuk mencari nilai yang paling kecil dari suatu kolom dari tabel
  5. SUM(ekspresi)  : digunakan untuk mengitung jumlah keseluruhan dari suatu kolom dari tabel
2. Kelompok Penyataan SQL
Pernyataan SQL dapat dikelompokan menjadi 3 kelompok, yaitu : DDL, DML dan DCL.
1.Pernyataan SQL kelompok DDL (Data Defination Language)
DDL berfungsi untuk mendefinisikan atribut basis data, table, atribut(kolom), batasan-batasan terhadap suatu atribut, serta hubungan antar tabel. Perintah yang digunakan biasanya : CREATE, ALTER, dan DROP
  1. Membuat Database
  2. Syntax yang digunakan : CREATE DATABASE namadatabase;
  3. Menghapus Database
  4. Syntax yang digunakan : DROP DATABASE namadatabase;
  5. Membuat Tabel
  6. Syntax yang digunakan : CREATE TABLE namatabel;
  7. Menghapus Database
  8. Syntax yang digunakan : DROP DATABASE namadatabase;
  9. Menghapus Tabel
  10. Syntax yang digunakan : DROP TABEL namatabel;
  11. Mendefinisikan null/not null
  12. Syntax yang digunakan : CREATE TABLE namatabel
    ( Field1 TipeData1 NOT NULL,
    Field2 TipeData2
    );
  13. Mendefinisikan Nilai Default
  14. Syntax yang digunakan : CREATE TABLE namatabel
    ( Field1 TipeData1,
    Field2 TipeData2 DEFAULT nilai
    );
  15. Mendefinisikan Primary Key pada Tabel
  16. Dapat dilakukan dengan 3 Syntax :
    1)      CREATE TABLE namatabel
    ( Field1 TipeData1 NOT NULL PRIMARY KEY,
    Field2 TipeData2
    );
    2)      CREATE TABLE namatabel
    ( Field1 TipeData1,
    Field2 TipeData2,
    PRIMARY KEY(Field1)
    );
    3)      ALTER TABEL namatabel ADD CONSTRAINT namaconstraint PRIMARY KEY (NAMAKOLOM)
  17. Menghapus Primary Key pada Tabel
  18. Syntax yang digunakan ada 2 :
    1)      ALTER TABLE namatabel DROP CONSTRAINT NAMACONSTRAINT;
    2)      ALTER TABLE NAMATABEL DROP PRIMARY KEY;
  19. Menambah Kolom Baru pada Tabel
  20. Syntax yang digunakan : ALTER TABEL NAMATABEL ADD newfield tipe;
  21. Mengubah Tipe Data atau Lebar Kolom pada Tabel
  22. Syntax yang digunakan : ALTER TABEL namatabel MODIFY COLUMN field tipe;
  23. Mengubah Nama Kolom
  24. Syntax yang digunakan : ALTER TABEL namatabel CHANGE COLUMN namakolomlama namakolombaru tipe;
  25. Menghapus Kolom pada Tabel
  26. Syntax yang digunakan : ALTER TABEL namatabel DROP COLUMN namakolom;
  27. Mendefinisikan Foreign Key pada Tabel
  28. Dapat dilakukan dengan 2 Syntax :
    1)      CREATE TABLE namatabel
    ( Field1 TipeData1,
    Field2 TipeData2,
    FOREIGN KEY (Field2) REFERENCES namatabelinduk
    (namakolominduk) ON UPDATE CASCADE ON DELETE NO ACTION)
    2)      ALTER TABEL namatabel ADD CONSTRAINT namaconstraint FOREIGN KEY (namakolom) REFERENCES namatabelinduk (namakolominduk) ON UPDATE CASCADE ON DELETE NO ACTION;
  29. Menghapus Foreign Key
  30. Syntak yang digunakan : ALTER TABEL namatabel DROP FOREIGN KEY namaconstraint;
2. DML (Data Manipulation Language)
DML berfungsi untuk memanipuladi data yang ada di dalam basis data, contohnya untuk pengambilan data, penyisipan data, pengubahan data dan penghapusan data.
Perintah yang digunakan biasanya adalah : INSERT, DELETE, UPDATE, dan SELECT.
  1. INSERT
  2. menambah baris pada tabel. Syntax yang paling sering digunakan : INSERT INTO namatabel VALUES (nilai1, nilai2, nilai-n);
  3. DELETE
  4. Menghapus baris pada tabel. Syntax : DELETE FROM namatabel [where kondisi];
  5. UPDATE
  6. Mengubah isi beberapa kolom pada tabel. Syntax : UPDATE namatabel SET kolom1=nilai1, kolom2=nilai2 [where kondisi];
  7. SELECT
  8. Menampilkan isi dari suatu tabel yang bisa dihubungkan dengan tabel yang lainnya;
Keunggulan MySQL
  • Program yang multi-threaded, sehingga dapat dipasang pada server yang memiliki mulit-CPU
  • Didukung bahasa pemrograman umum seperti C, C++, Java, Perl, PHP, Python, TCL, APls dls.
  • Bekerja pada berbagai platform
  • Memiliki jenis kolom yang cukup banyak sehingga memudahkan konfigurasi system database
  • Memiliki jenis kolom yang cukup banyak sehingga memudahkan konfigurasi system database
  • Memiliki system sekuriti yang cukup baik dengan verifikasi host
  • Mendukung ODBC untuk OS Microsoft Windows
  • Mendukung record yang memiliki kolom dengan panjang tetap
  • Software yang free
  • Saling terintegrasi dengan PHP

RPL ( "Rekayasa Perangkat Lunak" )


                                        بِسْمِ اللهِ الرَّحْمنِ الرَّحِيمِ

Pengertian dari Perangkat Lunak adalah kumpulan beberapa perintah komputer yang dieksekusi oleh mesin komputer dalam menjalankan pekerjaannya yaitu memproses informasi. perangkat lunak ini merupakan catatan bagi mesin komputer untuk menyimpan perintah, maupun dokumen serta arsip lainnya. Perangkat lunak tidak dapat disentuh dan dilihat secara fisik, software memang tidak tampak secara fisik dan tidak berwujud benda tapi bisa di operasikan.

Pengertian Rekayasa Perangkat Lunak (RPL) adalah aplikasi ilmu komputer untuk membangun sistem perangkat lunak praktis yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal yaitu analisa kebutuhan pengguna, menentukan spesifikasi dari kebutuhan pengguna, disain, pengkodean, pengujian sampai pemeliharaan sistem setelah digunakan.jadi RPL merupakan data elektronik yang disimpan sedemikian rupa oleh komputer itu sendiri, data yang disimpan ini dapat berupa program atau instruksi yang akan dijalankan oleh perintah, maupun catatan-catatan yang diperlukan oleh komputer untuk menjalankan perintah yang dijalankannya. Jadi perangkat lunak itu dapat berupa program atau prosedur


Berikut Pengertian Rekayasa Perangkat Lunak menurut para ahli ::
1. Menurut Stephen R. Schach
Rekayasa perangkat lunak adalah sebuah disiplin dimana dalam menghasilkan perangkat lunak bebas dari kesalahan dan dalam pengiriman anggaran tepat waktu serta memuaskan keinginan pemakai.

2. Menurut Fritz Bauer
Rekayasa perangkat lunak adalah penetapan dan penggunaan prinsip rekayasa dalam rangka memperoleh perangkat lunak yang dapat dipercaya dan dapat bekerja secara efisien pada mesin nyata.

3. Menurut IEEE 610.12
Rekayasa perangkat lunak adalah sebuah studi pendekatan dan aplikasi secara sistematis, disiplin pengembangan operasi dan pemeliharaan perangkat lunak yang kesemuanya itu merupakan aplikasi rekayasa yang berkaitan dengan perangkat lunak.

Pengertian yang diberikan Stephen R.Schach mengacu pada hal-hal yang inging dicapai pada Software Crisis, yaitu: tepat waktu, sesuai budget, berkualitas (bebas dari kesalahan), dan sesuai keinginan pemakai.
Fritz Bauer tidak mengartikan Software Engineering sesederhana Stephen R.Schach. Rekayasa peraknkat lunak merupakan sebuah cara untuk mendapatkan Software yang ekonomis dan dapat serta efisien bila diterapkan pada mesin nyata.
Pengertian yang diberikan standar IEEE 610.12 lebih mengarah pada konsep perangkat lunak.
Dari ketiga pengertian tersebut, arti yang diberikan Fritz Bauer sangat sesuai dengan tujuan dan sasaran dari rekayasa perangkat lunak. Pernytaan Stephen R.Schach terbatas pada menanggulangi kekurangan yang terjadi jika tidak menerapkan rekayasa penrngkat lunak. Pengertian yang diberikan IEEE 610.12 paling baik dalam menyampaikan wujud dari rekayasa perangkat lunak.
Rekayasa perangkat lunak merupakan ilmu yang penting untuk diperdalam karena teknologi ini memberikan stabolitas, kontrol, dan organisasi aktifitas yang jika tidak terkontrol dapat menjadi sangat kacau.

Latar Belakang muncul-nya Rekayasa Perangkat Lunak ::
Munculnya software engineering terjadi ketika adanya krisis software di era tahun 1960-an. Krisis ini terjadi akibat lahirnya komputer generasi ke III yang ditandai dengan penggunaan IC (Integrated Circuit). Kemampuan hardware yang meningkat, membuat adanya kebutuhan untuk memproduksi software yang lebih baik. Akibatnya software yang dihasilkan pada saat itu menjadi beberapa kali lebih besar dan kompleks. Pendekatan informal yang digunakan dalam pengembangan perangkat lunak, menjadi tidak cukup efektif (secara biaya, waktu dan kualitas). Biaya hardware mulai jatuh dan biaya perangkat lunak malah menjadi naik secara cepat. Oleh karena itu muncullah pemikiran untuk menggunakan pendekatan yang lebih efektif, standar dan terukur dalam mengembangan perangkat lunak.
Faktor yang melatarbelakangi adanya rekayasa perangkat lunak ::
a. Ketidakmampuan organisasi memprediksi waktu, usaha dan biaya untuk membangun perangkat lunak.
b. Perubahan nisbah/rasio biaya perangkat keras terhadap harga perangkat lunak
c. Kemajuan pesat perangkat keras
d. Kemajuan dalam teknik-teknik pembuatan perangkat lunak
e. Tuntutan yang lebih tinggi terhadap jumlah perangkat lunak
f. Tuntutan yang lebih tinggi terhadap mutu perangkat lunak
g. Meningkatnya peran pemeliharaan.


 Berikut adalah jenis - jenis Rekaya Perangkat Lunak ::
  1. Perangkat Lunak Sistem (Sistem Software)
    Sekumpulan program yang ditulis untuk kepentingan program lain, contoh editor,driver dan lain-lain
  2. Perangkat Lunak Waktu Nyata (Real Time Software)
    Perangkat lunak yang digunakan untuk mengukur/menganalisis atau mengontrol proses pemasukan data dari lingkungan luar sampai menghasilkan laporan yang diinginkan
  3. Perangkat Lunak Bisnis (Business Software)
    Perangkat lunak yang memberikan fasilitas operasi untuk bisnis atau fasilitas pengambilan keputusan manajemen, contoh sistem akuntansi,inventory, payroll dan lain-lain
  4. Perangkat Lunak Rekayasa dan Sains (Engineering and Scientific Software)
    Perangkat lunak yang digunakan di dalam bidang aplikasi teknik dan kerekayasaan Perangkat lunak jenis ini biasanya berhubungan dengan komputasi data numerik, CAD (Computer Aided Design), simulasi sistem, dan lain-lain.
  5. Embedded Software
    Perangkat lunak yang digunakan untuk mengontrol suatu produk dan sistem dimana perangkat lunak tersebut disimpan. Biasanya ditempatkan di ROM, contoh Tombol di Microwave Oven
  6. Perangkat Lunak Komputer Pribadi (Personal Computer Software)
    Banyak digunakan pada aplikasi yang bersifat perorangan, contohnya :pengolah kata, spreadsheet, game, DBMS dan lain-lain.
  7. Perangkat Lunak Intelegensia Buatan (Artificial Intelligent Software) Dibuat dengan menggunakan teknik algoritma non-numerik untuk memecahkan masalah yang kompleks, digunakan dalam bidang aplikasi kecerdasan buatan, contohnya : game, expert sistem, neural network, Turbo Prolog, dan lain-lain dan masih banyak lagi yg  lainnya. 
Tujuan Rekayasa Perangkat Lunak
Menghasilkan sebuah perangkat lunak yang berkualitas. Yang dimaksud dengan
berkualitas dapat dilihat dari tiga sisi, sisi sponsor (individu atau organisasi yang telah
mengeluarkan biaya dalam pembangunan perangkat lunak), sisi pemakai (siapapun
yang menggunakan perangkat lunak tersebut), sisi maintainer / modifier (yang
memelihara dan memodifikasi perangkat lunak tersebut) dengan biaya yang efisien
dan tepat pada waktunya.
Untuk lebih jelasnya lihat gambar 1.1.

 


Free Download Smadav 2013 Rev. 9.3.1 Update Revisi Terbaru 2013 | Antivirus Lokal Terbaik dan Gratis Smadav Pro 9.3.1 2013 Full Version. Smadav adalah Antivirus lokal gratis sebagai proteksi tambahan untuk mengatasi virus-virus lokal maupun virus internasional yang menyebar luas di komputer Anda, tidak hanya itu, smadav juga sangat berguna untuk proteksi total USB Flashdisk, dan tentunya untuk pembersihan tuntas virus yang menyebarluas.

Smadav ini memiliki banyak keunggulan dibandingkan dengan Antivirus yang lainnya, yang diantaranya adalah Smadav Kompatibel dengan Antivirus yang lain. Kebanyakan dari sebagian besar antivirus tidak bisa diinstal bersama dengan antivirus yang lainnya, hal itu dikarenakan Antivirus seperti itu memang didesain untuk sebagai proteksi utama komputer Anda. Namun Smadav tidak seperti itu, smadav adalah Antivirus yang didesain sebagai Antivirus untuk proteksi tambahan, sehingga smadav dapat berjalan dengan antivirus yang lain secara bersamaan dengan kompatibel.

Smadav juga akan memproteksi total USB Flashdisk, di karenakan USB Flashdisk merupakan salah satu media penyebaran virus yang paling mudah. Smadav akan melakukan pencegahan total virus yang menyebar via USB Flashdisk, sehingga, saat anda menancapkan USB Flashdisk yang terdapat virus berbahaya didalamnya, Smadav akan mencegah virus tersebut berjalan dikomputer kita, dan Smadav memberitahukan bahwa komputer anda tidak aman. Tidak hanya pencegahan, Smadav juga mampu membersihkan virus yang menginfeksi file kita dan akan mengembalikan file yang disembunyikan virus di USB Flashdisk tersebut.


Nama model ini sebenarnya adalah “Linear Sequential Model”. Model ini sering disebut dengan “classic life cycle” atau model waterfall. Model ini adalah model yang muncul pertama kali yaitu sekitar tahun 1970 sehingga sering dianggap kuno, tetapi merupakan model yang paling banyak dipakai didalam Software Engineering (SE). Model ini melakukan pendekatan secara sistematis dan urut mulai dari level kebutuhan sistem lalu menuju ke tahap analisis, desain, coding, testing / verification, dan maintenance. Disebut dengan waterfall karena tahap demi tahap yang dilalui harus menunggu selesainya tahap sebelumnya dan berjalan berurutan. Sebagai contoh tahap desain harus menunggu selesainya tahap sebelumnya yaitu tahap requirement. Secara umum tahapan pada model waterfall dapat dilihat pada gambar berikut :

 

Gambar di atas adalah tahapan umum dari model proses ini. Akan tetapi Roger S. Pressman memecah model ini menjadi 6 tahapan meskipun secara garis besar sama dengan tahapan-tahapan model waterfall pada umumnya. Berikut adalah penjelasan dari tahap-tahap yang dilakukan di dalam model ini menurut Pressman:
  • System / Information Engineering and Modeling. Permodelan ini diawali dengan mencari kebutuhan dari keseluruhan sistem yang akan diaplikasikan ke dalam bentuk software. Hal ini sangat penting, mengingat software harus dapat berinteraksi dengan elemen-elemen yang lain seperti hardware, database, dsb. Tahap ini sering disebut dengan Project Definition.
  • Software Requirements Analysis. Proses pencarian kebutuhan diintensifkan dan difokuskan pada software. Untuk mengetahui sifat dari program yang akan dibuat, maka para software engineer harus mengerti tentang domain informasi dari software, misalnya fungsi yang dibutuhkan, user interface, dsb. Dari 2 aktivitas tersebut (pencarian kebutuhan sistem dan software) harus didokumentasikan dan ditunjukkan kepada pelanggan.
  • Design. Proses ini digunakan untuk mengubah kebutuhan-kebutuhan diatas menjadi representasi ke dalam bentuk “blueprint” software sebelum coding dimulai. Desain harus dapat mengimplementasikan kebutuhan yang telah disebutkan pada tahap sebelumnya. Seperti 2 aktivitas sebelumnya, maka proses ini juga harus didokumentasikan sebagai konfigurasi dari software.
  • Coding. Untuk dapat dimengerti oleh mesin, dalam hal ini adalah komputer, maka desain tadi harus diubah bentuknya menjadi bentuk yang dapat dimengerti oleh mesin, yaitu ke dalam bahasa pemrograman melalui proses coding. Tahap ini merupakan implementasi dari tahap design yang secara teknis nantinya dikerjakan oleh programmer.
  • Testing / Verification. Sesuatu yang dibuat haruslah diujicobakan. Demikian juga dengan software. Semua fungsi-fungsi software harus diujicobakan, agar software bebas dari error, dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah didefinisikan sebelumnya.
  • Maintenance. Pemeliharaan suatu software diperlukan, termasuk di dalamnya adalah pengembangan, karena software yang dibuat tidak selamanya hanya seperti itu. Ketika dijalankan mungkin saja masih ada errors kecil yang tidak ditemukan sebelumnya, atau ada penambahan fitur-fitur yang belum ada pada software tersebut. Pengembangan diperlukan ketika adanya perubahan dari eksternal perusahaan seperti ketika ada pergantian sistem operasi, atau perangkat lainnya.
Mengapa model ini sangat populer??? Selain karena pengaplikasian menggunakan model ini mudah, kelebihan dari model ini adalah ketika semua kebutuhan sistem dapat didefinisikan secara utuh, eksplisit, dan benar di awal project, maka SE dapat berjalan dengan baik dan tanpa masalah. Meskipun seringkali kebutuhan sistem tidak dapat didefinisikan seeksplisit yang diinginkan, tetapi paling tidak, problem pada kebutuhan sistem di awal project lebih ekonomis dalam hal uang (lebih murah), usaha, dan waktu yang terbuang lebih sedikit jika dibandingkan problem yang muncul pada tahap-tahap selanjutnya.
Meskipun demikian, karena model ini melakukan pendekatan secara urut / sequential, maka ketika suatu tahap terhambat, tahap selanjutnya tidak dapat dikerjakan dengan baik dan itu menjadi salah satu kekurangan dari model ini. Selain itu, ada beberapa kekurangan pengaplikasian model ini, antara lain adalah sebagai berikut:
  • Ketika problem muncul, maka proses berhenti, karena tidak dapat menuju ke tahapan selanjutnya. Bahkan jika kemungkinan problem tersebut muncul akibat kesalahan dari tahapan sebelumnya, maka proses harus membenahi tahapan sebelumnya agar problem ini tidak muncul. Hal-hal seperti ini yang dapat membuang waktu pengerjaan SE.
  • Karena pendekatannya secara sequential, maka setiap tahap harus menunggu hasil dari tahap sebelumnya. Hal itu tentu membuang waktu yang cukup lama, artinya bagian lain tidak dapat mengerjakan hal lain selain hanya menunggu hasil dari tahap sebelumnya. Oleh karena itu, seringkali model ini berlangsung lama pengerjaannya.
  • Pada setiap tahap proses tentunya dipekerjakan sesuai spesialisasinya masing-masing. Oleh karena itu, ketika tahap tersebut sudah tidak dikerjakan, maka sumber dayanya juga tidak terpakai lagi. Oleh karena itu, seringkali pada model proses ini dibutuhkan seseorang yang “multi-skilled”, sehingga minimal dapat membantu pengerjaan untuk tahapan berikutnya.
Menurut saya, tahapan-tahapan model ini sudah cukup baik dalam artian minimal untuk melakukan SE, maka harus ada tahapan-tahapan ini. Tahapan-tahapan ini jugalah yang digunakan oleh model-model yang lain pada umumnya. Ada filosofi yang mengatakan sesuatu yang sukses diciptakan pertama kali, maka akan terus dipakai di dalam pengembangannya. Hal ini juga berlaku pada waterfall model ini. Mungkin dapat dikatakan bahwa inilah standar untuk melakukan SE.
Akan tetapi, yang mungkin menjadi banyak pertimbangan mengenai penggunaan dari model ini adalah metode sequential-nya. Mungkin untuk awal-awal software diciptakan, hal ini tidak menjadi masalah, karena dengan berjalan secara berurutan, maka model ini menjadi mudah dilakukan. Sesuatu yang mudah biasanya hasilnya bagus. Oleh karena itu model ini sangat populer. Akan tetapi, seiring perkembangan software, model ini tentu tidak bisa mengikutinya. Yang menjadi kelemahan adalah pada pengerjaan secara berurutan tadi, seperti yang sudah saya utarakan sebelumnya. Kelemahan-kelemahan yang lain juga sudah saya utarakan di atas, atau bahkan masih ada yang lainnya.
Dari sini, nantinya akan dikembangkan model-model yang lain, bahkan ada tahap evolusioner dari suatu model proses untuk mengatasi kelemahan-kelemahan tadi. Meskipun secara tahapan masih menggunakan standar tahapan waterfall model. Kesimpulannya adalah ketika suatu project skalanya sedang mengarah kecil bisa menggunakan model ini. Akan tetapi kalau sudah project besar, tampaknya kesulitan jika menggunakan model ini.

Welcome to My Blog

Popular Post

Category

Blogger templates

Pages

Diberdayakan oleh Blogger.

Pengikut

Pengunjung

Blogger news

Blogger templates

- Copyright © Fopsoft -Robotic Notes- Powered by Blogger - Designed by Johanes Djogan -