«

»

Mar 31

Pengembangan Perangkat Lunak (Software Development)

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

A. Perangkat Lunak Komersial dari Vendor
B. 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.

 

Leave a Reply

Your email address will not be published. Required fields are marked *


five × = 10

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>