'0'/> 1707

Jumat, 15 November 2013

0 Tips & Trik

Cara Merusak Komputer Orang Lain Dalam Sekejap Tanpa Software Melalui CMD
Membuat semua aplikasi exe tidak berfungsi :
- buka Commandprompt dengan menekan tombol win+r lalu ketikkan cmd tekan Enter - pada Commandprompt ketikkann" ASSOC.EXE = terserah kamu mau ngetik apa" - Enter
Coba jalankan komputer dan Lihat Hasilnya.
kenapa ini bisa terjadi?,,ini disebabkan fungsi exe yang tidak berfungsi lagi,,coba pake winnrar,,lihat file2 yang berakhiran .exe seperti winamp exe,dan aplikasi lainnya sekarang sudah berubah menjadi nama yang kamu ketikkan tadi
Trus gimana cara mengatasinya?
- Klik Start –> Run –> ketikkan COMMAND - Ketik ASSOC.EXE=EXEFILE
Setelah itu komputer akan bekerja normal kembali…
Sekian dari Cara Merusak Komputer Orang Lain Dalam Sekejap Tanpa SoftwareMelalui CMD. Semoga bermanfaat and Good Luck

Shutdown Komputer Orang Lain Menggunakan CMD

Caranya:
1. pd komputer, klik Start->Run…di kotak isian tersebut kamu isikan “cmd” (tanpa tanda petik )
2. Setelah itu muncul kotak berwarna hitam…di situ kamu ketikan SHUTDOWN.EXE (spasi) -i (spasi) -m

3. Contoh: Shutdown.exe -i -m lalu kamu tekan Enter
4. Maka akan muncul kotak di bawah yang bernama “Remote Shutdown Dialog”
5. Kamu klik “ADD” -> untuk menambahkan IP target or nama target di LAN…atau kamu klik “Browse” untuk mencari otomatis
6. Kamu bisa tentuin yang enaknya buat ngusilin komputer orang itu, apakah di shutdown, restart, or Log off…
7. Tentukan time yang pas buat deat time-nya komputer itu beraksi
8. Kamu bisa tambakan other (planned), ini dimaksudkan agar si user lawan mengira kalo ini ulah server yang lagi maintenance.

0 Cara Menghapus Virus Shortcut dengan CMD

Virus Shortcut kebanyakan menyebar lewat Flashdisk. berikut akan saya bagikan langkahnya:

Virus Shortcut memiliki induk berupa sebuah Folder yang bernama Recycler, Folder ini akan memproduksi beberapa file diantaranya adalah :

  1. autorun.inf
  2. Dekstop.ini
  3. fanny.bmp
  4. Thumb.db
  5. serta beberapa shortcut yang berekstensi.lnk  ( ekstensi ini adalah LNK bukan INK )
Pada saat menginfeksi komputer Virus Shortcut akan berusaha untuk membangun file-file tersebut pada setiap Drive dan Folder yang ada dalam komputer.
berikut langkah yang dapat kita lakukan untuk membersihkannya :

Pertama : mematikan system restore pada setiap Drive
Klik kanan My computer pilih Properties, pada jendela properties My computer pilih tab system restore, berikan tanda centang pada kotak kecilTurn off system restore on all Drives, kemudian Ok,
langkah ini bertujuan agar induk virus tidak lagi dapat mengembalikan file-file yang nantinya akan kita Hapus.

Kedua : mematikan wscript.exe
Buka Start Menu pilih Search pilih All Files and Folder, pada kotak text All or Part of the File name ketikkan wscript.exe, setelah selesai anda akan menemukan 2 file wscript.exe, silahkan double klik file tersebut dan pada jendela windows script Host setting silahkan anda centang kotak kecil bertuliskan Stop Script after specified number of seconds, tekan tombol Apply kemudian Ok

Ketiga : Mematikan Hidden File and Folder
Pada jendela explorer buka menu View pilih Folder Option, kemudian pilih tab View pada jendela Folder Option,
  1. silahkan pilih Show hidden files and folder pada hidden file and folder
  2. hilangkan centang pada hide Extensions for known File type
  3. hilangkan centang pada Hide Protected operating system files ( recommended )

Keempat : Menghapus File-File yang di ciptakan oleh virus.
pada jendela pencarian ( Search ) silahkan Pilih All Files and Folder, pada kotak text All or part of the File name ketikkan autorun.inf, pada kotak Look in pilih My Computer dan pada more advance option berikan centang pada setiap kotaknya tekan tombol Search, silahkan anda Hapus semua File yang di temukan, Hapus secara permanen ( Shift+Del )
silahkan anda ulangi pencarian untuk file-file Virus yang lain ( file yang dibuat oleh virus tertera diatas ) dan Hapuslah secara permanen
Namun untuk File berekstensi .lnk ketikkan *.lnk untuk mencarinya, sebelum menghapus file-file ini perhatikan hal penting di akhir tutorial

Kelima : menghilangkan Folder Recycler dengan Paksa secara permanen
Buka jendela Command prompt masuk pada Drive Falshdisk anda, contoh : jika Flashdisk anda terdeteksi sebagai drive G maka ketikkan G: enter, sehingga anda akan di bawa ke ruang drive G, kemudian ketikkan perintah berikut : 
rd /s recycler ( ini perintah untuk menghapus Folder recycler, karena biasanya Folder ini tidak dapat di hapus )

Penting : 
Untuk File dengan ekstensi .lnk anda harus Hati-hati dalam menghapusnya. karena ada File windows yang memiliki ekstensi tersebut, untuk membedakan silahkan anda  dekatkan pointer mouse anda pada file / folder yang di temukan , jika saat anda dekatkan anda mendapati sebuah link yang mengarah pada windows/system32 maka file/folder tersebut adalah Virus.
Silahkan Anda lakukan cara diatas jika Anti Virus anda sudah tidak mampu mendeteksi Virus ini
Semoga bisa Dimanfaatkan.

0 Cara Mengunci Komputer Dengan Flashdisk

Jika selama ini Anda “mengunci” komputer Anda hanya dengan menggunakan cara konvensional, yaitu dengan memberikan password untuk login mungkin Anda telah melewatkan cara lain untuk melindungi komputer Anda dari tangan yang tidak bertanggung jawab. Cara ini jauh lebih efektif daripada hanya sekedar password yang Anda pakai pada komputer.

Screen Shoot


Cara Mengunci Komputer Melalui Flashdisk
Adnan Julianto

Anda bisa memanfaatkan sebuah software gratis untuk Windows yang bernama Predator. 
Software Predator ini mengubah flashdisk Anda menjadi sebuah “kunci” yang akan menyebabkan komputer Anda terkunci saat flashdisk tersebut dicabut. 

Untuk membukanya Anda harus menancapkan flashdisk itu kembali. Sehingga Anda bisa melindungi data di komputer Anda dengan cara seperti yang dilakukan oleh agen-agen rahasia di film-film Hollywood. Setiap orang yang mencoba masuk ke komputer Anda tanpa menggunakan flashdisk yang telah menjadi kunci tersebut akan mendapat pesan error “”Access Denied”. Berikut adalah langkah-langkah untuk melakukan setting pada aplikasi Predator.

Tutorial
  • Download aplikasi Predator , kemudian instal di komputer Anda.
  • Setelah itu buka aplikasi Predator kemudian masukkan flashdisk Anda. Tidak ada data di flashdisk yang akan dihapus atau diubah dengan cara apa pun oleh aplikasi ini, sehingga Anda bisa menggunakan flashdisk utama Anda. Ketika Anda memasukkan flashdisk akan muncul kotak dialog yang meminta Anda untuk memasukkan sebuah password, klik OK untuk melanjutkan.
  • Setelah masuk ke jendela Preferences, perhatikanlah beberapa pengaturan utama. Pertama yang harus Anda lakukan adalah memasukkan sebuah password yang benar-benar unik dan aman pada kotak “New password”. Karena jika Anda kehilangan flashdisk  yang digunakan sebagai kunci, Anda bisa menggunakan password tersebut untuk membuka komputer.
  • Jika Anda menginginkan agar aplikasi Predator selalu meminta password setiap kali Anda memasukkan flashdisk untuk membuka kunci, silahkan centang pada pilihan “Always Required”. Terakhir di bagian bawah “Flash Drive” pastikan bahwa Anda memilih flashdisk yang benar. Setelah itu klik “Create key” kemudian OK.
  • Setelah itu aplikasi Predator akan keluar. Jika demikian klik ikon Predator yang ada di task bar untuk merestart aplikasi. Tunggu beberapa detik hingga ikon Predator berwarna hijau, itu menandakan bahwa Predator sudah berjalan di komputer Anda. Setiap 30 detik Predator akan mengecek apakah flashdisk kunci Anda masih tertancap di komputer, jika tidak komputer akan langsung terkunci.
Demikian cara mengunci komputer dengan flashdisk, semoga bisa membantu Anda untuk lebih mengamankan komputer dari orang-orang yang tidak bertanggung jawab.

0 TUGAS PTI

Perbedaan Sistem Operasi dan Program Aplikasi


1.      SISTEMOPERASI.
Sistem operasimerupakan program utama yang langsung berinteraksi dengan bahasa yang di kenal oleh mesin komputer ( bahasa mesin). Sistem Operasi komputer merupakan software pada lapisan pertama yang diletakkan pada memori komputer, (memori komputer dalam hal ini ada Hardisk, bukan memory ram) pada saat komputerdinyalakan. Sedangkan software-software lainnya dijalankan setelah Sistem Operasi Komputer berjalan, dan Sistem Operasi akan melakukan layanan inti umum untuk software-software itu. Layanan inti umum tersebut seperti akses ke disk, manajemen memori, skeduling task, dan antar-muka user. Sehingga masing-masing software tidak perlu lagi melakukan tugas-tugas inti umum tersebut, karena dapat dilayani dan dilakukan oleh Sistem Operasi. Bagian kode yang melakukan tugas-tugas inti dan umum tersebut dinamakan dengan kernel suatu Sistem Operasi.
Sistem Operasi berfungsi sebagai penghubung antara lapisan hardware dan lapisan software. selain itu, Sistem Operasi komputer juga melakukan semua perintah perintah penting dalam komputer, serta menjamin aplikasi-aplikasi yang berbeda fungsinya dapat berjalan lancar secara bersamaan tanpa hambatan. Sistem Operasi Komputer menjamin aplikasi perangkat lunak lainnya bisa memakai memori, melakukan input serta output terhadap peralatan lain, dan mempunya akses kepada sistem file. Jika beberapa aplikasi berjalan secara bersamaan, maka Sistem Operasi Komputer akan mengatur jadwal yang tepat, sehingga sebisa mungkin semua proses pada komputer yang berjalan mendapatkan waktu yang cukup untuk menggunakan CPU dan tidak saling mengganggu dengan perangkat yang lain.
Contoh Sistem Operasi :
·                     Produk Microsoft : Windows 3.1, Windows 95, Windows 98, Windows 2000, WIndows Me, WIndows XP, Windows Vista, WIndows NT (untuk jaringan).
·                     Produk Novel : Linux, Redhat, OpenSuse, Ubuntu, Mandrake, Mandriva,dll
·                     Produk Apple : Macintosh
·                     Produk IBM : DOS, UNIX
2.      APLIKASI.
Perangkat lunak aplikasi adalah suatu subkelas perangkat lunak komputer yang memanfaatkan kemampuan komputer langsung untuk melakukan suatu tugas yang diinginkan pengguna. Biasanya dibandingkan dengan perangkat lunak sistem yang mengintegrasikan berbagai kemampuan komputer, tapi tidak secara langsung menerapkan kemampuan tersebut untuk mengerjakan suatu tugas yang menguntungkan pengguna. Contoh utama perangkat lunak aplikasi adalah pengolah katalembar kerja, dan pemutar media.
Beberapa aplikasi yang digabung bersama menjadi suatu paket kadang disebut sebagai suatu paket atau suite aplikasi (application suite). Contohnya adalah Microsoft Office dan OpenOffice.org, yang menggabungkan suatu aplikasi pengolah kata, lembar kerja, serta beberapa aplikasi lainnya. Aplikasi-aplikasi dalam suatu paket biasanya memiliki antarmuka pengguna yang memiliki kesamaan sehingga memudahkan pengguna untuk mempelajari dan menggunakan tiap aplikasi. Sering kali, mereka memiliki kemampuan untuk saling berinteraksi satu sama lain sehingga menguntungkan pengguna. Contohnya, suatu lembar kerja dapat dibenamkan dalam suatu dokumen pengolah kata walaupun dibuat pada aplikasi lembar kerja yang terpisah.
Contoh Program Alpikasi ialah Microsoft Office untuk pengolahan kata,Winamp untuk mendengarkan musik, Avira sebagai antivirus, dll.

0 TUGAS PTI

Perangkat Lunak (Software) Komputer
Perangkat lunak (sowfware) adalah program komputer yang berfungsi sebagai sarana interaksi antara pengguna dengan perangkat keras atau sebagai penerjemah perintah-perintah yang dijalankan pengguna komputer untuk diteruskan atau diproses oleh perangkat keras. Di lihat dari fungsinya, perangkat lunak komputer di bagimenjadi beberapa bagian.

1.       Sistem Operasi
Sistem Operasi adlah perangkat lunaksistem yang bertugas untuk melakukan kontrol dan manajemen perangkat keras serta operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti program-program pengolah kata dan browser web. Sistem Operasi merupakan sisitem operasi pada lappisan pertamayan di tempatkan pada memori komputer pada saat komputer dinyalakan. Sedangkan sofware lainnya dijalankan setelah sistem  Operasi berjalan.
Sampai saat ini kita mengenal bermacam-macam sistem operasi, diantaranya:
a.       Microsoft Windows, sistem operasi windows diproduksi oleh perusahan Microsoft Corp. Sisitem operasi ini dalam perkembangannya terdiri dari beberapa versi, misal: Windows Desktop Environment (versi 1.x sampai versi 3.x), Windows 9x (windows 95,98, dan Windows ME), dan Windows NT ( Windows NT 3.x, Windows NT 4.0, Windows 2000, Windows XP, Windows server 2003, Windows Vista, Windows 7 (seven) dan akan riliss Windows Orient
b.      Unix, sistem operasi ini menggunkan antar muka sisitem  operasi POSIX,
c.       Mac OS adalah sisitem operasi untuk komputer keluaran Apple yang disebut juga Mac atau Macintos
2.       Perangkat lunak Aplikasi
Perangkat lunak apalikasi  adalah software yang dirancang kusus untuk kebutuhan kebutuhan tertentu. Perangkat lunak terus mengalami perkembangan. Dalam beberapa  komputer beberapa program apliaksi di gabung menjadi satu paket yang disebut  suite aplikasi, contoh Microst Office dan Open-Office. Org. Yang berfungsi pengolah kata, lembar kerja dan beberapa aplikasi lainnya. Jenis –jenis perangkat lunak aplikasi
a.       Jenis Word processing –untuk menciptakan dokumen membuat surat , misal Word dan Abiword
b.      Spreadsheet – pengolah data dalam dalam bentuk kumpulan sel, yang memungkinkan perhitungan secaara dinamis. Contoh Microsoft Exsel dan Start Office.
c.       Desktop Publisisng – menangani pembuatan surat kabar, buku dan iklan. Contoh CorelDraw.
d.      Presentasi grafis –untuk membuat bahan-bahan presentasi dalam bentuk transparan atau membuat diktat dan sekaligus dapat sebagai alat untuk presentasi, misal PowerPoint, Start Office, dan Impress.
e.      Komunikasi –untuk melakukankomunikasi antar pemakai secara ekonomis, mengirim dan menerima surat elektronik, contoh Microsoft Outlook dan Opera.
f.        Personal informastion manager- pengolah informasi yang berhubungan dengan jadwal, tugas dan rekanan atau klien ddan keungan.
g.       Manajemen data – untuk mencatat, memanipulasi dan mengambil data atau informasi.
3.       Bahasa Pemrograman
Perangkat lunak bahsa pemrograman adalah program splikasi yang berfungsi untuk membuat suatu aplikasi dengan menggunakanbahasa- bahsa dengan aturan tertentu. Bahasa yang dibuat akan diterjemahkan ke dalam bahsa mesin supaya dapat dimengerti oleh komputeer. Bahasa komputer dapat dibedakan menjadi tiga
a.       Bahasa tingkat  rendah
Bahsa tingkat rendah termasuk ke dalam bahasa mesin karenas ifat dan bahasa mesin  lebih beriorentasi pada mesin. Bahasa ini hanya dapat dipahami  oleh mesin itu sendiri. Bahsa ini berupa kode-kode yang terdiri dari sekumpulan angka yang aada di dalam komputer yang biasany diwakili oleh angka 1 dan 0. Misalnya Assembly language, Machine language ddan RPG( Report Program Generator)
b.      Bahasa tingkat tinggi
Bahasa tingkat tinggi adalah bahasa yang ditunjukan untuk pengguna yang awam. Misal : BASIC, COBOL, PASCAL, FOLTRAN.
c.       Bahasa generasi keempat
Bahsa pemrograman 4 GL (fourth generation language) merupakan bahasa yang beriorentasi pada objek yang disebut  dengan Objek Oriented Programming (OOP). Msal: Visual Basic, Delphi, dan Visual C++
4.       Program bantu (utility)
5.       Program bantu yaitu perngkat lunak yangg ditujukan untuk melengkapi kinerja  sisitem operasi dan menigkatkan kinerja komputer.  Salah satu contoh adalah program antivirus, disk defragmenter (program untuk merapikan file-file yang tersebar di harddisk/mempartisi harddisk)





Kamis, 31 Oktober 2013

0 TUGAS 3 HARDWARE : GAMBAR MOTHERBOARD




Sabtu, 19 Oktober 2013

0 PERANGKAT LUNAK

PENGEMBANGAN PERANGKAT LUNAK

            Pengembangan perangkat lunak (Software development) merupakan salah satu dari tahap rancangan system rinci/detail dari Siklus Hidup Pengembangan Sistem (Software Development Life Cycle atau SDLC).
Tim proyek system mungkin mulai mencari paket perangkat lunak komersial yang sesuai atau mendukung spesifikasi rancangan system dan berjalan pada rancangan arsitektur komputernya. Paket perangkat lunak komersial secara luas tersedia  untuk aplikasi fungsi spesifik dan aplikasi bisnis yang telah ditetapkan secara baku.
Tetapi untuk rancangan sistem yang terkait dengan kebutuhan khusus atau unik (memenuhi keperluan pemakai dan spesifikasi rancangan sistem) maka paket perangkat lunak komersial mungkin tidak sesuai atau mendukung kebutuhan pemakai secara langsung. Perangkat lunak yang diharapkan untuk mendukung rancangan sistem tersebut harus dibuat sendiri dari awal (scratch)

Sumber Perangkat Lunak Aplikasi
  1. Perangkat Lunak Komersial dari Vendor
  2. Perangkat Lunak Pesanan (customized software) dikembangkan secara in-house atau oleh kontraktor pemrograman independent

A. Perangkat Lunak Komersial dari Vendor
            Paket (off-the-self) yang tersedia bisa diterapkan dalam berbagai kebutuhan bisnis. Beberapa paket bersifat generik dan multifungsional yang memungkinkan para pemakai memprogram sofware tersebut untuk kebutuhannya sendiri. Paket-paket tersebut mengotomisasi fungsi-fungsi bisnis dasar yang umumnya tidak terlalu bervariasi dari satu organisasi dengan organisasi lain. Contoh jenis paket adalah spreadsheet dan DBMS.

Keuntungan/kelebihan dari Perangkat Lunak Komersial :
1.   Implementasi yang cepat
      Software tersebut bersifat siap, teruji, dan terdokumentasi. Paket yang dibeli biasanya pengimplementasiannya jauh lebih cepat dari pada mengembangkan program yang sama secara in-house atau menyuruh kontraktor independen untuk mengembangkannya sehingga secara potensial membantu memecahkan backlog (penimbunan pekerjaan yang belum selesai).
2.   Penghematan Biaya
      Satu paket perangkat lunak komersial bisa dijual kepada banyak organisasi sehingga biaya pengembangan ditanggung oleh banyak pemakai, dan biaya total suatu paket akan lebih murah dari pada program pesanan yang sama.
3.   Estimasi biaya dan waktu
      Biaya atau harga paket komersial telah diketahui, dan tanggal pengimplementasian-nya mudah diestimasi. Sebaliknya program pesanan biasanya cenderung melampaui estimasi waktu dan biaya.
4.   Reliabilitas          
      Sebelum diterbitkan di pasaran umum, paket perangkat lunak komersial pasti telah diuji secara teliti. Melalui penggunaan yang ekstensif oleh sejumlah organisasi, segala kesalahan yang dijumpai telah dideteksi dan dikoreksi sehingga peluang kesalahannya lebih sedikit.

Kerugian/kelemahan :
1.   Kesesuaian Rancangan sistem yang tidak baik
      Paket software komersial dibuat untuk berbagai organisasi, dan tidak untuk organisasi tertentu maka paket ini mungkin mempunyai beberapa fungsi yang tidak diperlukan atau mungkin tidak mempunyai fungsi yang diperlukan sehingga paket tersebut harus dimodifikasi. Jika vendor tidak membuat kode sumber (source code) yang bisa digunakan untuk penyesuaian dan tidak menyediakan layanan penyesuaian maka rancangan sistem mungkin harus diubah agar sesuai  dengan paket tersebut. Jika hal ini terjadi sebaiknya mengembangkan program secara in-house agar programnya bisa memenuhi spesifikasi rancangan sistem yang tepat.
2.   Ketergantungan Vendor
      Jika organisasi memerlukan perubahan paketnya maka organisasi akan tergantung pada vendor dalam perolehan dukungannya, dan jika vendor telah tiada maka organisasi akan kesulitan mencari dukungannya.
3.   Biaya tidak langsung dari kerusakan SDLC
      Seringkali apa yang ingin dicapai, manajemen tidak melaksanakan SDLC menyeluruh atau mungkin melewati tahap SDLC, dan secara langsung menuju ke paket perangkat lunak komersial Strategi ini seringkali mengakibatkan paket perangkat lunak komersial tidak berjalan sesuai yang diharapkan dan masalah sistem serta organisasional yang terjadi sebelum implementasi paket tersebut tetap muncul sehingga menimbulkan kesulitan atau harus dibayar kemudian yaitu adanya peningkatan biaya implementasi, operasi, dan pemeliharaan.

Menyiapkan permohonan untuk proposal berorientasi kinerja
      Terkait dengan pemrolehan (akuisisi) perangkat lunak komersial maka perlu membuat atau menyiapkan Permohonan  Proposal (Request For Proposal atau RFP) berorientasi kinerja untuk menyeleksi vendor dan paket perangkat lunak komersial yang tepat. Faktor-faktor evaluasi mencakup pemenuhan spesifikasi rancangan detail untuk output, input, proses, dan database serta cocok dengan batasan waktu dan biayanya, juga penggunaan benchmark yang mensimulasi kebutuhan sistem baru (bentuk prototyping) harus diterapkan pada setiap paket dari vendor.

Penilaian paket
      Setiap paket dari vendor harus dinilai. Penilaian tersebut meliputi :
a.   Sebagian penilaian dari  benchmark (tanda untuk menentukan tingginya suatu nama), dan penilaian lain dari sejumlah publikasi yang didasarkan pada survei  dari sejumlah besar pengguna paket tersebut.  
b.   Kinerja pengoperasian (operating performance)
      Penilaian dari benchmark yang digunakan untuk mengukur hal-hal seperti transaksi perdetik (transaction per second) dan waktu respon (response time).
c.   Dokumentasi
      Penilaian ini mencerminkan kuantitas dan kualitas prosedur tertulis, prosedur online, pedoman quick start, online tutorial, dan fasilitas help.
d.   Mudah dipelajari
      Penilain ini tergantung pada interface pemakai dan rancangan intuitif dari paket tersebut. Paket harus bisa dipelajari oleh rata-rata pemakai.
e.   Mudah digunakan
      Menu yang mudah diikuti dan perintah yang jelas membantu kemudahan penggunaan.
f.    Pengendalian dan penanganan kesalahan.
      Untuk menjaga kesalahan input, paket software harus menyediakan pencegahan kesalahan, pendeteksian kesalahan dan perbaikan kesalahan, serta menuliskan kesalahan ke file kesalahan.
g.   Dukungan (support).
      Menyediakan dukungan kebijakan dan teknis. Dukungan kebijakan mencakup jalur toll-free, garansi, dan pelatihan. Dukungan teknis menyediakan teknisi dan yang berpengalaman.

Menyeleksi paket      
            Menentukan paket software dari vendor yang menawarkan manfaat terbesar dengan biaya/harga termurah. Metode untuk menentukan angka penilaian total terlihat padaTabel 1. Bobot relatif ditentukan ke setiap faktor kinerja umum yang didasarkan pada kepentingan relatifnya.Base atau nilai dasarnya adalah 100. Penilaian setiap faktor kinerja 1 s/d 10 (1=jelek dan 10 = sangat bagus).Skor adalah bobot dikalikan penilaian. Setiap skor yang dihasilkan dijumlahkan yang merupakan angka penilaian total untuk setiap vendor.

Faktor kinerja umum
Bobot
Vendor  A
Vendor  B
Nilai
Skor
Nilai
Skor
Penilaian vendor
10
6
60
8
80
Kinerja pengoperasian
20
7
140
8
160
Dokumentasi
10
8
80
9
90
Kemudahan belajar
20
7
140
6
120
Kemudahan pemakaian
10
5
50
6
60
Kendali dan penanganan kesalahan
20
4
80
6
120
Dukungan
10
7
70
8
80
Total
100

620

710
Tabel 1. Penilaian Kinerja Umum

Misalkan biaya atau harga paket vendor A adalah $22.700 dan paket vendor B adalah $27.690. Paket mana yang harus dipilih ? Jawabannya ditentukan dengan membagi angka biaya total dengan skor total untuk memperoleh biaya perangka penilaian. Vendor A mempunyai penilaian= $22.700/620= $37, sedangkan Vendor B= $27.690/710= $39, tampak terlihat pada gambar 1.2



Biaya Total
Angka Penilaian Total
Biaya per angka penilaian
Vendor A
$22.700
620
$37
Vendor B
$27.690
710
$39
Tabel 2.  Biaya per angka penilaian

Vendor A mempunyai penilaian lebih rendah, namun biaya per angka penilaiannya sebesar $37 menjadi pilihan biaya atau manfaat yang lebih baik dari pada vendor B.

B. Perangkat Lunak Pesanan (customized software)
          Jika system yang sedang dikembangkan tidak bisa didukung oleh paket software maka harus memesan dari perusahaan jasa/kontraktor independen atau membangun sendiri perangkat lunak (in-house) agar sesuai dengan rancangan sistemnya.

Siklus Hidup Pengembangan Perangkat Lunak (Software Development Life Cycle)
            Membangun perangkat lunak mengikuti tiga tahap SWDLC, yaitu :
  1. Rancangan (Design)
  2. Kode (Code)
  3. Uji (Test)

1.   Rancangan (Design)
      Bagian dari rancangan sistem terinci yang akan dikonversi ke program aplikasi yang dapat digunakan sebagai pedoman oleh programmer dalam menulis program. Alat (tools) rancangan program yang pokok adalah :
¨      Bagan Terstruktur (Structure Chart)                        ¨ Diagram Warnier/Orr (W/O)
¨      Bahasa Inggris Terstruktur (Structure English)           ¨ Diagram Jackson
¨      Tabel Keputusan (Decision Tabel)
¨      Pohon Keputusan (Decision Tree)
¨      Persamaan/mirip bahasa pemrograman (Pseudocode)
¨      Kamus Data (Data Dictionary)

2.   Kode (Code)
      Menulis statemen dalam bahasa pemrograman yang diasumsikan dibuat dan dijalankan oleh programmer dan tidak secara otomatis seperti yang dibangkitkan oleh paket CASE (Computer Aided Software Engineering). Beberapa paket CASE akan membangkitkan kode dari beberapa rancangan terinci sehingga menghapus adanya kebutuhan pengkode manusia (human coders).

3.   Uji (Test)
      Pengujian terhadap semua modul kode untuk mendeteksi dan menghapus kesalahan.

Mengorganisasi Proyek Pengembangan Perangkat Lumak

 Perancang dan analis sistem terlibat dalam tim pengembangan perangkat lunak dan harus mengetahui bagaimana program ini dikode dan bagaimana hasil akhirnya. Untuk itu diperlukan keterampilan pengorganisasian dalam tim proyek. Pengorganisasian proyek pengembangan perangkat lunak memerlukan komunikasi, integrasi dan koordinasi yang baik. Pengorganisasian tim pemrograman menggunakan pendekatan organisasional.

Pendekatan Organisasional
Tiga cara untuk mengorganisasi tim pemrograman, yaitu :
1.      Tim Pengembangan Program ( Program development team)
2.      Tim programmer kepala (chief programmer team)
3.      Tim pemrograman bersama (Egoless programming team)

1.   Tim Pengembangan Program ( Program development team)
            Tim pengembangan program dikelola oleh manajer tim atau seseorang yang terlibat dalam SDLC dari awal, dan didukung oleh perancang, pengkode, dan penguji (Gb.1.4 hal.14 Diktat kuliah) Jika perusahaan menggunakan aturan 40-20-40 (lihat gb.1.5 hal.15 Buku Diktat Pengantar Implementasi) maka orang-orang yang memiliki keterampilan lebih tinggi harus ditugaskan untuk perancangan dan pengujian. Bila rancangan lengkap, jelas dan akurat maka tugas pengkodean akan menjadi proses yang sederhana yang dapat dijalankan oleh setiap orang yang telah kenal dengan sintaks bahasa pemrograman. Konsep ini mendukung terciptanya teknologi CASE.

2.   Tim programmer kepala (chief programmer team)
            Tim ini dibentuk dari programmer kepala atau senior yang banyak pengalaman dan pengetahuan pemrograman. Programmer kepala dapat berkomunikasi secara efektif dengan analis dan perancang sistem, pemakai, dan berbagai teknisi.
Programmer kepala didukung oleh asisten utama yang bertugas sebagai komunikator dengan orang lain pada tim atau penyampai informasi dari gagasan programmer kepala. Kedua orang tersebut didukung oleh Programmer pendukung/ yunior bertugas membantu programmer kepala dan asisten utama untuk proyek besar yang tidak dapat ditangani sendiri. Para programmer pendukung biasanya mengkode modul-modul tingkat rendah. Tim ini juga didukung oleh pustakawan, administrator, editor, dan klerk program.

3.   Tim pemrograman bersama (Egoless programming team)
            Tim ini terbentuk dari seluruh rekan yang bersama-sama bertanggung jawab atas pengembangan perangkat lunak tanpa supervisi langsung/pimpinan.

Perbedaan pendekatan-pendekatan tersebut :
ª      Tim pengembangan program mengembangkan aturan 40-20-40 yaitu menekankan pada perancangan dan pengujian.
ª      Tim programmer kepala dan tim pemrograman bersama menekankan pada fungsi pengkodean.
Jumlah interface dan lintasan komunikasi dari pendekatan di atas:

§   Tim pengembangan program tersusun atas 2 perancang, 1 pengkode, 2 penguji. Interface dan lintasan komunikasi berada antara perancang dan pengkode, pengkode dan penguji, perancang dan penguji. Interface dan lintasan komunikasi ke manajer tim hanya memberikan rekapitulasi dan informasi kinerja karena manajer tidak terlibat langsung dalam pekerjaan yang sebenarnya. Jadi total interface dan lintasan komunikasi ada lima, dan satu interface manajemen.

Text Box: Manajer Tim
Pengembangan Program





§   Tim programmer  kepala terdiri dari lima programmer pendukung mempunyai lima interface dan lintasan komunikasi, dan lebih mungkin memenuhi deadline yang ketat.




§   Tim pemrograman bersama terdiri dari lima programmer. Jumlah interface dan lintasan komunikasi = n(n-1)/2= 5(5-1)/2=10
Text Box: Pemrogram

 




Biasanya untuk komunikasi membutuhkan waktu dan mengurangi produktivitas. Segala jenis pekerjaan pengembangan biasanya waktu restart (mulai lagi) setelah setiap interupsi besarnya 30 menit sehingga peluang pemrograman yang bisa dilakukan waktunya sedikit.
Oleh karena itu apabila terdapat lebih dari tiga programmer yang terlibat maka sebaiknya ditetapkan seorang supervisor atau pimpinan.

Konsep pabrik perangkat lunak
            Pabrik-pabrik perangkat lunak yang menerapkan prinsip pengendalian kualitas dan manajemen proyek. Berbagai macam tujuan pabrik pengembangan perangkat lunak, yaitu :
¨Penerapan cara termekanisasi (terekayasa) untuk pengembanan sistem dan perangkat lunak.
¨Penggunaan perangkat pemodelan dan teknologi CASE
¨Penginstalasian teknik manajemen proyek
¨Penekanan pada kemungkinan  kemampuan pemeliharaan (Maintainability), penggunaan (Usability), penggunaan ulang (reusability), kehandalan (reliability), perluasan faktor-faktor rancangan (extandability)à MURRE
¨Pencapaian produktivitas pengembangan perangkat lunak dan sistem yang optimal.




Mengukur Produktivitas Dalam Pengembangan Perangkat Lunak
           
Produktivitas  dapat diukur  dengan rumus :

Text Box: Produktivitas =

                                                      Output yang dihasilkan
                                          Input yang dikonsumsi


Produktivitas pengembangan perangkat lunak dapat ditingkatkan dengan menaikkan output, menurunkan input, atau keduanya.
            Input yang dikonsumsi relatif mudah diukur misalnya tenaga kerja, workstation, pasokan, sebaliknya output relatif tidak mudah diukur. Untuk mengukur output pengembangan perangkat lunak dapat menggunakan teknik metrik.
Manfaat menggunakan metrik yaitu :
a.   Bisa mengelola proses pengembangan perangkat lunak
b.   Bisa mengukur dampak perubahan misalnya perubahan ke teknologi CASE atau dari satu generasi bahasa komputer ke generasi lain
c.   Bisa terjadi persepsi bahwa pengembangan perangkat lunak lebih bersifat ilmiah (produk yang dimekanisasi)
     
Dua metrik yang paling berperan adalah :
  1. Jalur Kode yang bisa dieksekusi (Lines Of Executable Code atau LOEC)
  2. Titik Fungsi (Function Point)

1.   Mencacah Jalur Kode yang bisa Dieksekusi (LOEC)
            Metrik LOEC mengukur cakupan pada pengkodean. Beberapa Profesional Sistem menggunakan Jalur Kode Sumber sebagai metriknya. Jalur Kode Sumber (Source Line Of Code atau SLOC) adalah segala jalur program yang bukan penjelasan maupun jalur kosong tanpa mempedulikan jumlah statemen (statemen yang bisa dan tidak bisa dieksekusi). SLOC bisa untuk mengukur LOEC.
      Keuntungan menggunakan metric LOEC sebagai ukuran produktivitas output perangkat lunak adalah :
  1. Mudah ditetapkan dan dibahas secara jelas.
End user, manajer, dan profesional sistem biasanya memahami apa yang dimaksud dengan jalur kode yang bisa dieksekusi.
  1. Diakui secara luas.
      Metrik ini seringkali digunakan oleh vendor sebagai alat pengembangan perangkat lunak.
  1. Mudah diukur.
LOEC dapat dihitung untuk menentukan ukuran program.
  1. Mudah digunakan untuk estimasi.
Ukuran perkiraan suatu program ditentukan berdasarkan dokumentasi rancangan sistem detail. Angka ini digunakan untuk mengestimasi waktu dan biaya proyek pengembangan perangkat lunak.

Contoh : program yang diusulkan berisi 100K LOEC. Jika 2K LOEC dapat di-hasilkan oleh satu orang per bulan, maka untuk menyelesaikan proyek tersebut diperlukan diperlukan 50 orang perbulan. Jika input yang diperlukan untuk mendukung satu orang per bulan sebesar $9000 maka proyek tersebut membutuhkan biaya $450.000.

Apa kelemahan dari satu orang per bulan (person-month) dan pencacahan LOEC?

            Frederick P. Brooks, Jr. Dalam bukunya berjudul The Mythical Man-Month  bahwa the person-month sebagai unit pengukuran suatu pekerjaan adalah mitos. Ia menyatakan bahwa orang dan bulan bisa saling ditukar atau diganti. Misal memerlukan 50 orang untuk waktu 1 bulan atau memerlukan 10 orang dengan per orang memerlukan waktu 5 bulan Apabila tugas dibagikan kepada banyak pekerja tanpa komunikasi hal ini mustahil, tetapi apabila menggandakan tugas ukuran tim maka tidak akan menggandakan produktivitas.
            Penggunaan person-month sebagai benchmark harus digunakan secara wajar dan konsisten.

            Kelemahan lain metrik LOEC adalah mengukur dengan dasar jumlah LOEC yang lebih besar adalah yang produktif bukan jalur kode yang diperlukan. Misal untuk menulis suatu program Programmer assembly membutuhkan waktu 4 minggu untuk 1500 LOEC, programmer COBOL butuh waktu 2 minggu untuk 500 LOEC, dan programmer C butuh waktu 1 minggu untuk 300 LOEC. Dengan metric LOEC programmer assembly yang paling produktif. Secara riil programmer yang paling produktif adalah programmer C. Yang lebih efektif dan efisien dijalankan adalah bahasa pemrograman C dan COBOL.

2.   Metrik Titik Fungsi (Function Point)
      Metrik titik fungsi dirancang untuk mengatasi beberapa kelemahan metrik LOEC.
Ada lima fungsi yang dianalisis untuk diukur oleh profesional sistem, yaitu :
1.      Jumlah input, seperti form dan layar
2.      Jumlah output, seperti laporan dan layar
3.      Jumlah query yang diminta oleh end user
4.      Jumlah file logic yang diakses dan digunakan
5.      Jumlah interface ke aplikasi lain.

Metrik titik fungsi mengukur apa yang akan diberikan oleh tim pengembangan perangkat lunak kepada end user. Metrik ini mencakup perancangan, pengkodean, dan pengujian, dan metrik ini juga mengukur efisiensi dan efektifitas.

Kelebihan/keuntungan metrik titik fungsi :
ª      Mengukur produktivitas perangkat lunak menggunakan cara yang seragam tanpa memandang bahasa pemrograman yang digunakan.
ª      Mengukur efisiensi dan efektivitas. Efisiensi berkaitan dengan sumber-sumber yang dikonsumsi dalam pengembangan suatu aplikasi tertentu secara tepat waktu. Efektivitas berhubungan dengan kualitas program dan kemampuannya dalam memenuhi kebutuhan pemakai.

Di bawah ini adalah contoh menghitung titik fungsi.

Titik Fungsi
Tingkat Kompleksitas
Total
Rendah
Sedang
Tinggi
Input
12 x 2 = 24
  3 x 5 = 15
    12 x 8 = 96
135
Output
10 x 3 = 30
15 x 5 = 75
14 x 9  = 126
231
Inquery
10 x 3 = 30
16 x 6 = 96
17 x  8  = 126
262
File
9 x 4 = 36
20 x 7 = 140
 10 x 10 = 100
276
Interface
12 x 4 = 48
20 x 6 = 120
 20 x 10 = 200
368
Total titik fungsi
 1272
Tabel.3 Analisis Titik Fungsi Proyek Pengembangan Software



Derajajat kompleksitas 1 s/d 10 (1= derajat rendah dan 10 derajat paling kompleks). Sebagai contoh 12 input mempunyai kompleksitas cukup rendah 2, dan 3 input kompleksitas rata-rata 5, serta 12 input mempunyai kompleksitas cukup tinggi 8. Semua titik fungsi dicacah atau dikalkulasi dengan cara yang sama. Jumlah total titik fungsi adalah 1272.
Text Box: Tingkat Produktivitas Pengembangan                =

                                                            
                                         
Tingkat produktivitas pengembangan rata-rata untuk perangkat lunak aplikasi, umumnya berada antara 5 dan 10 artinya satu orang bisa menyerahkan atau menghasilkan sekitar 5 sampai 10 titik fungsi per bulan.
Jika proyek pengembangan perangkat lunak memerlukan 1272 titik fungsi dan tingkat penyerahan rata-rata dari tim yang akan mengembangkannya adalah 8 titik fungsi per person-month, maka proyek tersebut memerlukan sekitar 159 person-month, (1272/8=159). Jika satu person-month mengkonsumsi $10.000, maka proyek tersebut akan membutuhkan biaya ± $1.590.000

Jika organisasi menginstal teknologi CASE maka bisa kemungkinan menghasilkan  sekitar 15 atau 20 titik fungsi per person-month.
Jika organisasi yang menggunakan pendekatan rancangan dan diadopsi dengan teknologi dan dikombinasikan dengan menerapkan penggunaan ulang kode sekitar 50% , maka tingkat produktivitas pengembangan bisa mencapai 70 titik fungsi per person-month.

Misalkan, diasumsikan biaya per person-month meningkat menjadi $12.000 dengan tingkat penyerahan 62 titik fungsi per person-month, maka jumlah person-month yang akan menghasilkan 1272 titik fungsi dikurangi menjadi 20,5 person-month (1272/62=20,5), dan biaya sebesar $246.000 à ($12.000 x 20,5= $246.000).
Penghematan biaya sebesar $1.344.000à($1.590.000 - $246.000 = $1.344.000).


Pengaruh Manajemen terhadap Produktivitas

1.   Metrik Produktivit            as yang tidak baik atau tidak tersedia
             Manajemen yang tidak baik dapat menurunkan produktivitas perangkat lunak sehingga manajer tidak akan bisa mengestimasi waktu dan biaya pengembangan perangkat lunak atau tidak bisa mengukur produktivitas/tingkat penyerahan.   
2.   Perencanaan dan pengontrolan yang tidak baik
            Manajer proyek membiarkan proyek berkembang semaunya tanpa mempunyai target penyelesaian dan penyerahannya.Untuk membantu mengurangi perencanaan dan pengontrolan yang tidak baik bisa menggunakan pengaplikasian teknik manajemen proyek seperti PERT.
3.   Pencampuran keterampilan yang tidak baik.
            Tim pengembangan cenderung kurang memberi tekanan pada perancangan dan pengujian, dan lebih menekankan pada pengkodean. Idealnya campuran keterampilan adalah 40% perancangan, 20% pengkodean, dan 40% pengujian.
4.   Pengkodean Prematur.
            Manajer proyek biasanya ingin menyelesaiakan proyek pengembangan secara cepat dan segera melakukan pengkodean dengan mengabaikan tahap rancangan sehingga waktu dan biaya yang dikeluarkan tidak sebanding dengan manfaat atau keuntungan yang diperoleh.
5.   Imbalan yang tidak adil.
            Upah atau gaji yang tidak adil kepada pelaksana tim yang berpotensi (berketrampilan dan motivasi tinggi) mengakibatkan pelaksana tersebut frustasi dan keluar. Cara yang bisa dilakukan untuk memberikan imbalan dengan pemberian bonus kinerja khusus, bonus perjalanan, dan pemberian kesempatan mengikuti seminar khusus.

Memproduksi Perangkat Lunak Berkualitas Tinggi
      Sasaran akhir pengembangan perangkat lunak adalah untuk menghasilkan perangkat lunak berkualitas tinggi pada tingkat produktivitas tinggi yang memberi nilai tambah kepada perusahaan.

Apa yang dimaksud dengan kualitas perangkat lunak ?
Ada tiga dimensi untuk mengukur kualitas :
1.   Faktor kinerja, dari sudut pandang end user seperti :
      a.   Kinerja pengoperasian keseluruhan
      b.   Kemudahan pembelajaran
      c.   Pengontrolan dan penanganan kesalahan
      d.   Dukungan dari pembuat dan pemelihara perangkat lunak.
2.   Faktor rancangan MURRE mencakup :
      a.   Kemungkinan pemeliharaan (Maintainability)
      b.   Kemungkinan penggunaan (Usability)
      c.   Kemungkinan penggunaan ulang (Reusability)
      d.   Kehandalan (Reliability)
      e.   Kemungkinan perluasan (Extendability)
3.   Faktor Strategik PDM
      a.   Meningkatkan produktivitas (Productivity)
      b.   Menambah keragaman produk dan pelayanan (Development)
      c.   Meningkatkan fungsi manajemen (Management)

Apa yang dimaksud dengan Jaminan Kualitas (Quality Assurance atau QA) ?
      Adalah memastikan bahwa SWDLC yang digunakan dalam pengembangan perangkat lunak berkualitas sesuai dengan standart yang telah ditetapkan bagi produk tersebut.
Pada skala yang lebih luas, jaminan kualitas mencakup pemonitoran terus menerus terhadap semua tahap-tahap pengembangan sistem dan perangkat lunak dari perencanaan sampai implementasi, dan pengoreksian terhadap proses pengembangan sistem dan perangkat lunak.

Apa yang dimaksud dengan pengendalian kualitas ?
      Pengendalian Kualitas (Quality Control) memfokuskan pada produk, yaitu apa yang dihasilkan. Pengendalian kualitas mengevaluasi sistem dan perangkat lunak setelah dikembangkan.
Kualitas harus dirancang ke dalam sistem dan perangkat lunak ketika mereka sedang dibuat, bukan setelah pembuatannya selesai. Jadi jaminan kualitas adalah teknik pencegahan kesalahan, sedangkan pengendalian kualitas merupakan teknik penghapusan kesalahan.

Menciptakan kelompok Jaminan Kualitas (QA)
      Kelompok QA yang independen terbentuk atas wakil-wakil end user, analis system, perancang system, programmer terampil, yang semuanya tidak tergantung pada developer (pembuat).
Tugas-tugas QA mencakup :
1.      Menetapkan standar untuk pengembangan sistem dan perangkat lunak (SDLC dan SWDLC)
2.      Mengevaluasi laporan terdokumentasi yang siap diserahkan.
3.      Menjalankan tahapan pemeriksaan rancangan sistem dan perangkat lunak.
4.      Melakukan tahapan pemeriksaan pengkodean.
5.      Menjalankan pengujian.

Merencanakan Proyek Siklus Hidup Pengembangan Perangkat Lunak (SWDLC)
Manajer Proyek menjadual dan memonitor semua tugas yang diperlukan untuk menyelesaikan SWDLC, dan Teknik yang digunakan  adalah Teknik Tinjauan dan Evaluasi Program (Program Evaluation Review and Technic atau PERT).
Sasaran PERT adalah untuk menentukan rangkaian atau urutan pelaksanaan tugas pengembangan perangkat lunak dan untuk mengestimasi lamanya waktu yang diperlukan dari awal sampai selesainya pelaksanaan tugas.
Lamanya proyek yang terdiri atas serangkaian tugas yang harus dijalankan secara urut merupakan jalur kritis (critical path) darai proyek tersebut.
Empat langkah menyusun jaringan PERT pengembangan perangkat lunak :
1.   Mengidentifikasi semua tugas pengembangan perangkat lunak yang harus dijalankan.
2.   Mengestimasi waktu yang diperlukan untuk menjalankan setiap tugas.
3.   Menentukan atau menetapkan rangkaian tugas.

4.   Menentukan jalur kritis yang akan menunjukkan waktu pengembangan perangkat lunak.

Tahapan-Tahapan Pengembangan Perangkat Lunak Dalam Metode Waterfall


1. Vote

Metode Waterfall
Metode Waterfall
Dalam pengembangan perangkat lunak terdapat beberapa metode pengembangan sistem. salah satu pengembangan sistem tersebut ialah model waterfall. model/metode waterfall sebenarnya adalah Linear Sequential Mode. dalam model waterfall terdapat beberapa tahapan dalam pengembangan perangkat lunak.
adaupn tahapan dalam model ini meliputi :

1System / 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 hardwaredatabase, dsb. Tahap ini sering disebut dengan Project Definition.

2. 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.

3. Design. Proses ini digunakan untuk mengubah kebutuhan-kebutuhan diatas menjadi representasi ke dalam bentuk “blueprint” software sebelum codingdimulai. 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.

4Coding. 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.

5Testing / 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.

6. 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.
itulah tahapan-tahapan yang dimiliki waterfalldalam pengembangan perangkat lunak.



Sejarah Perkembangan Perangkat Lunak (Software)
Sejarah perkembangan komputer dapat dikelompokkan menjadi 2 bagian, yaitu :
1. Software sebelum komputer generasi pertama
Pada tahun 300 SM, bangsa Yunani menciptakan suatu system komunikasi yang disebut dengan polybius telegraph. System itu menggunakan obor untuk mengirim berita dari suatu tempat ke tempat lain.
Tahun 1842 perangkat lunak pertama muncul yang ditulis oleh Ada Augusta, anak perempuan dari Lord Byron. Software ini diterapkan pada Analytical Engine ciptaan Charles Babbage.
Tahun 1933 Wallace J. Eckert menciptakan suatu program mekanik yang dipergunakan mengontrol jalannya suatu mesin yang merupakan gabungan dari beberapa mesin akuntansi.
2. Software semasa komputer generasi pertama
Software pada generasi ini diciptakan oleh para ahli matematika dan ahli teknik yang digunakan untuk menyelesaikan problem yang muncul pada bidangnya. Program yang dibuat bersifat khusus karena hanya untuk satu aplikasi tertentu sehingga jika ingin digunakan untuk aplikasi lain, maka program yang baru harus dibuat lagi.
Untuk mengatasi kesulitan tersebut, maka orang menciptakan suatu bahasa pemrograman yang disebut bahasa tingkat tinggi. Dengan bahasa tingkat tinggi dilakukan dengan cara menulis program dalam bahasa Inggris yang diterjemahkan ke dalam bahasa mesin.
Komputer hanya sebagai alat yang dapat mengerjakan perintah yang diberikan oleh manusia. Bahasa yang diberikan ini menggunakan bahasa komputer.
Bahasa komputer terdiri dari beratusan macam. Setiap bahasa mempunyai cirri-ciri tersendiri yang sesuai dengan bidangnya, seperti :
a. Bahasa Cobol (Common Bussiness Oriented Language) digunakan untuk masalah peradagangan
b. FORTRAN (Formula Translator) digunakan untuk penyelesaian matematika
c. BASIC (Beginner’s All Purpose Symbolic Instruction Code) digunkaan untuk perhitungan matematika dan perhitungan dagang yang sederhana.
Ada beberapa aplikasi pemrograman yang sering dipergunakan, seperti : pengolah kata, perhitungan kolom dan lajur, serta untuk perhitungan statistuk dan lain-lain. Untuk mengatasai agar jangan terlalu sering menulis ulang program, dibuat suatu paket program untuk penolah kata, paket program untuk perhitungan kolom dan lajur, paket program untuk perhitungan statistik dan sebagainya.
Pembuat paket program pengolah kata cukup banyak, misalnya : WordStar, Microsoft Word dan Word Perfect, Chi Writer dan lain-lain.
Jenis-jenis program aplikasi adalah :
a. Microsoft Excel
Untuk menyelesaikan masalah perhitungan yang terdiri dari baris dan kolom.
b. Microsoft Power Point
Untuk menyelesaikan masalah yang berhubungan dengan presentasi.
c. Microsoft Acces
Untuk menyelesaikan masalah pengolahan data/database.
d. CAD (Computer Aided Design)
Untuk menangani bidang ilmu pengetahuan dan teknologi, seperti : merancang gedung, merancang bentuk mobil dan sebagainya.
e. DecEasy Accounting
Untuk menyelesaikan masalah perhitungan/pelaporan dalam bidang akuntansi dan sebagainya.


§  Tahap Pertama (1950 – 1960) Evolusi perangkat lunak tahap pertama dimulai pada awal 1950-an sampai pertengahan 1960. Pengembangan perangkat lunak pada tahap pertama mempunyai ciri-ciri berorientasi batch, distribusi software terbatas untuk kalangan tertentu sehingga apabila ada perusahaan yang ingin dibuatkan software khusus harus memesan terlebih dahulu.
§  Tahap Kedua ( 1960 – 1970) Evolusi Perangkat Lunak Tahap Kedua dimulai pertengahan tahun 1960-an sampai awal tahun 1970-an.  Pengembangan perangkat lunak mempunyai ciri-ciri multi user.  Pengguna dari software sudah banyak dan bisa saling berbagi.   Ciri ini menunjukkan ada perkembangan baru yaitu interkasi manusia dan komputer (Human Computer Interaction).Selain itu, ciri dari tahap kedua ini adalah real time. Real Time disini adalah suatu kondisi dimana sistem dapat mengumpulkan, menganalisa dan mentransformasikan data dari banyak sumber kemudian mengatur proses serta menghasilkan output yang diinginkan.  Dalam tahap ini, sudah banyak juga paket perangkat lunak yang beredar di pasaran serta muncul istilah database dalam perangkat lunak.
§  Tahap Ketiga (1970 – 1990) Evolusi Perangkat Lunak tahap ketiga, dimulai pertengahan tahun  1970 sampai awal tahun 1990.  Pengembangan perangkat lunak sudah maju sedemikian pesat.  Perangkat lunak sudah menggunakan sistem terdistribusi, sehingga penyampaian informasi dari komputer sumber ke komputer tujuan akan terasa sangat cepat. Dalam era ini, perangkat keras dari suatu komputer harganya sangat murah.  Selain itu, pesanan perangkat lunak sudah sangat mendominasi dari penyelesaian suatu masalah sehingga penggunaan software pada masa itu sudah sedemikian jauh.
§  Tahap Keempat (1990 – 2000) Evolusi Perangkat Lunak Tahap Keempat dimulai tahun 1990 sampai tahun 2000. Pada tahap ini, perangkat lunak sudah mendominasi dari pengembangan perangkat keras, sehingga perangkat keras dalam hal ini komputer sangat dikendalikan oleh suatu sistem operasi.  TIngkat kecerdasan dari perangkat lunak semakin ditingkatkan sehingga perangkat lunak atau software dilatih mempunyai kecerdasan seperti yang dimilik manusia.  Terbukti dengan adanya penemuan kecerdasan buatan, jaringan syaraf tiruan, sistem pakar dan logika fuzzy. Jaringan komputer, pemrosesan komputer paralel sangat mendominasi pada era ini.  Dan, pada masa ini pula pemrograman sudah berorientasi obyek (OOP).


METODE PENGEMBANGAN PERANGKAT  LUNAK
Secara prinsip metode pengembangan perangkat lunak bertujuan untuk membantu menghasilkan perangkat lunak yang berkualitas. Berikut faktor-faktor yang perlu di cermati dalam pengembangan perangkat lunak.
Metode pengembangan perangkat lunak (atau disebut juga model proses atau paradigma rekayasa perangkat lunak) adalah suatu strategi pengembangan yang memadukan proses, metode, dan perangkat (tools). Metode-metode pengembangan perangkat lunak,  memberikan teknik untuk membangun perangkat lunak yang berkaitan dengan serangkaian tugas yang luas yang menyangkut analisis kebutuhan, konstruksi program, desain, pengujian, dan pemeliharaan.

Metode-Metode Pengembangan Perangkat Lunak secara umum ada 4 diantaranya yaitu metode sekuensial linier, prototype, RAD, Fourth Generation Techniques (4GT) dan spiral adapun metode-metode yang lain yaitu  metode Proses Perangkat Lunak Evolusioner (pertambahan, spiral, konkruen), dan metode formal.
METODE  PENGEMBANGAN  PERANGKAT  LUNAK
Pada artikel ini akan saya jelaskan mengenai pemodelan secara sekuensial linier, metode pengembangan perangkat lunak model ini sering juga disebut dengan “siklus kehidupan klasik” atau “model air terjun” atau bisa juga di sebut waterfall.

Metode pengembangan perangkat lunak ini menggunakan pendekatan pada perkembanganperangkat lunak yang sistematik dan sekuensial yang mulai pada tingkat dan kemajuan sistem pada seluruh analisis, desain, kode, pengujian, dan pemeliharaan. Model ini melingkupi aktivitas-aktivitas :

a.    Rekayasa dan pemodelan system/informasi
Karena perangkat lunak adalah bagian dari sistem yang lebih besar, pekerjaan dimulai dari pembentukan kebutuhan-kebutuhan untuk seluruh elemen sistem dan kemudian memilah mana yang untuk pengembangan perangkat lunak. Hal ini penting, ketika perangkat lunak harus berkomunikasi dengan hardware, orang dan basis data

b.   Analisis kebutuhan perangkat lunak
Pengumpulan kebutuhan dengan fokus pada perangkat lunak, yang meliputi : Domain informasi, fungsi yang dibutuhkan, unjuk kerja/performansi dan antarmuka. Hasilnya harus didokumentasi dan direview ke pelanggan
c.    Desain

Ada 4 atribut untuk program yaitu : Struktur Data, Arsitektur perangkat lunak, Prosedur detil dan Karakteristik Antarmuka. Proses desain mengubah kebutuhan-kebutuhan menjadi bentuk karakteristik yang di mengerti perangkat lunak sebelum dimulai penulisan program. Desain ini harus terdokumentasi dengan baik dan menjadi bagian konfigurasi perangkat lunak.

d.    Generasi kode
Penterjemahan perancangan ke bentuk yang dapat dimengerti oleh mesin, dengan menggunakan bahasa pemrograman

e.    Pengujian
Setelah kode program selesai testing dapat dilakukan. Testing memfokuskan pada logika internal dari perangkat lunak, fungsi eksternal dan mencari segala kemungkinan kesalahan dan memriksa apakah sesuai dengan hasil yang diinginkan.

f.    Pemeliharaan
Merupakan bagian paling akhir dari siklus pengembangan dan dilakukan setelah perangkat lunak dipergunakan. Pemeliharaan perangkat lunak mengaplikasikan lagi Setiap fase program sebelumnya dan tidak membuat yang baru. Kegiatan :

·         Corrective Maintenance : Mengoreksi kesalahan pada perangkat lunak, yang baru terdeteksi pada saat perangkat lunak dipergunakan.
·         Adaptive Maintenance : Penyesuaian dengan lingkungan baru, misalnya sistem operasi atau sebagai tuntutan atas perkembangan sistem komputer, misalnya penambahan printer driver
·         Perfektive Maintenance : Bila perangkat lunak sukses dipergunakan oleh pemakai. Pemeliharaan ditujukan untuk menambah kemampuannya seperti memberikan fungsi-fungsi tambahan, peningkatan kinerja dan sebagainya
Model sekuensial adalah metode pengembangan perangkat lunak yang paling luas dipakai dan paling tua.
Kelemahan model ini antara lain :
·         Proyek yang sebenarnya jarang mengikuti alur sekuensial seperti diusulkan, sehingga perubahan yang terjadi dapat menyebabkan hasil yang sudah didapat tim harus diubah kembali/iterasi sering menyebabkan masalah baru.
·         Linear sequential model mengharuskan semua kebutuhan pemakai sudah dinyatakan secara eksplisit di awal proses, tetapi kadang-kadang ini tidak dapat terlaksana karena kesulitan yang dialami pemakai saat akan mengungkapkan semua kebutuhannya tersebut.
·         Pemakai harus bersabar karena versi dari program tidak akan didapat sampai akhir rentang waktu proyek.
·         Adanya waktu menganggur bagi pengembang, karena harus menunggu anggota tim proyek lainnya menuntaskan pekerjaannya.