Kamis, 11 Desember 2008

Maintenance Management Software (Software Aplikasi Pemeliharaan)

1. Manajemen Pemeliharaan - Upaya terbaik untuk peningkatan produktivitas

Perusahaan yang membiarkan dirinya mengalami kegagalan peralatan produksinya serta mengabaikannya, sama saja dengan memberikan dirinya kalah bersaing terhadap pesaingnya, dengan kekalahan yang tidak wajar. Sangat aneh, kiranya, jika sementara sebuah perusahaan yang membiarkan dirinya mengalami gangguan pada alat-alat produksinya, maka pihak lain berani menghabiskan pengeluarannya yang cukup besar untuk terus-menerus mencari software yang bisa meningkatkan sistem informasi berkenaan dengan aktivitas pemeliharaan dan perawatan terhadap aktiva tetap berupa mesin-mesin tersebut. Masih cukup banyak perusahaan yang begitu bodoh, sehingga tidak segera memperhatikan penerapan sistem yang mampu mengelola informasi berkenaan dengan aset-aset yang menjadi modal bisnisnya. Dan hasilnya bisa dilihat pada laporan-laporan keuangan, atau laba/rugi, yang menunjukkan bagaimana jeleknya cara mereka menangani aset-aset permodalannya tersebut.

2. Produk untuk manajemen pemeliharaan dan perawatan aset
berasal dari: PSDI

THE MAXIMO ADvantage solusi Microsoft tersedia dalam database Access, MAXIMO ADvantage mengembangkan sistem yang mampu melakukan penghematan dan produktivitas yang berlangsung secara otomatis dari manajemen pemeliharaan dan perawatan bagi fasilitas dan pasar manufaktur kecil.

3. Materials Management (manajemen material/barang)

Aplikasi Work Order akan menghasilkan, merubah, dan menutup untuk terjadinya transaksi-transaksi yang berkenaan dengan adanya pekerjaan-pekerjaan yang harus dikerjakan, yang dikelompokkan berdasarkan nomor WO-nya.

Inventory (Persediaan material/barang) aplikasi ini akan melakukan penambahan jenis item, melakukan perubahan atas informasi batas minimal persediaan, serta menetapkan suatu batas kuantitas di mana sebuah material/bahan harus dilakukan pemesanan kembali, untuk secara otomatis menimbulkan laporan permintaan pembelian. Juga akan diterbitkan data pengeluaran dan pemakaian material/barang yang digunakan untuk suatu Work Order tertentu, pekerjaan perbaikan, catatan pemeliharaan dan akuntansi persediaan.

Work Request (permintaan pelaksanaan kerja) aplikasi ini akan membentuk dan menelusuri semua permintaan perbaikan, termasuk pembatalan, pengiriman, pembukuan catatan secara lengkap, dan pembebanan biayanya.

Receiving (penerimaan) aplikasi akan menerima kedatangan barang, baik yang dibeli atas dasar permintaan pembelian atau beli langsung, untuk direkam pada catatan persediaan (stok), dan secara otomatis akan meng-update nilai persediaan.

Perencanaan & Penjadualan aplikasi ini akan mengendalikan sumberdaya tenaga kerja dan material termasuk informasi mengenai kontraktor. Akan membantu dalam pengaturan dan pengelompokan jenis-jenis dan klasifikasi tenaga kerja berdasarkan kebutuhan-kebutuhan atas beban kerja tertentu, dan menyeimbangkan antara kebutuhan tenaga kerja dan materialnya.

Kartu Material merupakan aplikasi yang akan membebankan material yang tidak termasuk ke dalam material stok yang digunakan pada penyelesaian sebuah work-order permintaan pekerjaan serta panggilan mendadak, serta mencatat waktu penyelesaian pekerjaan dan akuntansi materialnya.

Work Order Bar Code merupakan aplikasi yang memungkinkan pemasukan data work-order dengan menggunakan scanner untuk barcode.

Inventory Bar Code akan menjadi aplikasi yang memungkinkan untuk melakukan pengeluaran barang dan kinerja dari persediaan fisik dengan menggunakan scanner barcode.

Time Cards (kartu pencatat jam operasi) akan menjadi sebuah aplikasi yang akan menerapkan pembebanan biaya berdasarkan alokasi waktu yang digunakan untuk menyelesaikan sebuah work-order, permintaan pekerjaan, serta panggilan mendadak, atau merupakan pencatatan akuntansi atas waktu dan materialnya.

4. Aplikasi kunci lainnya

Aplikasi penagihan (tersedia dalam versi 3.40) memfasilitasi prosedur pembebanan biaya, membuat tagihan dan menelusuri data penerimaan pembayaran dari pelanggan atas pelaksanaan kerja dari Work-Order tertentu, meliputi beban biaya material dan tenaga kerjanya.

5. Preventive Maintenance (pemeliharaan dan perawatan)

Preventive Maintenance merupakan aplikasi yang memungkinkan Anda untuk membuat jadual PM (preventive maintenance, pemeliharaan dan perawatan) untuk peralatan tertentu atau fasilitas-fasilitas perusahaan. Work-order akan dibuat secara otomatis berdasarkan skedul waktu yang sudah ditetapkan, lengkap dengan peralatan-peralatan, bahan-bahan, serta prosedur kerjanya. Jadual PM bisa didasarkan atas satuan meter, jam kerja aktif, atau pemanfaatannya.

Component Management (manajemen komponen) merupakan sebuah aplikasi untuk menghasilkan peringkat peralatan. meliputi sub-komponen dan sistem yang lebih besar di mana peralatan itu terdapat.

6. Purchasing (pembelian)

Purchase Order (permintaan pembelian) merupakan aplikasi yang memungkinkan untuk menghasilkan permintaan pembelian, termasuk penyediaan informasi dalam besaran mata uangnya, untuk memudahkan persetujuan pimpinan.

System Administration merupakan aplikasi untuk mempersiapkan pemberian kode bagi sistem dan pengguna untuk keperluan pengamanan dan pengelompokan staf.

Spot-Buy Requisitions (permintaan pembelian langsung) digunakan untuk menghasilkan permintaan-permintaan yang bersifat mendadak untuk item-item barang yang tidak tersedia sebagai stok atau merupakan barang yang jarang digunakan dan disediakan.

Interfaces merupakan aplikasi yang memungkinkan ADvantage untuk terhubung langsung pada sistem lainnya yang Anda gunakan untuk keperluan pendugaan masa pemeliharaan, manajemen energi, TPM, dan lain sebagainya.

Reports (pelaporan-pelaporan) merupakan aplikasi yang akan memberikan Anda kesempatan untuk memilih dari sejumlah pelaporan baku, membuat sendiri laporan dengan bantuan Smart Reports atau membuat bentuk laporan tersendiri, dan analisanya.

7. THE MAXIMO

memberikan Anda fungsi-fungsi manajemen pengolahan data yang sempurna dan memiliki fleksibilitas sesuai kebutuhan dari perusahaan-perusahaan kelas atas. MAXIMO mendukung sistem database SQL utama, termasuk Oracle, Sybase, dan bekerja pada platform UNIX atau NT server pada lingkungan operasional client/server.

Ryan Hidayat

2202 3070

sumber :

smk3ae.wordpress.com/.../belajar-manajemen-perusahaan-chapter-10-maintenance-management

Minggu, 07 Desember 2008

Pengaruh software maintenance pada perangkat lunak

Perawatan itu berperan penting dalam siklus pembuatan perangkat lunak. Karena perawatan yang membuat perangkat lunak itu tetap up to date dan menghindari dari errornya sebuah perangkat lunak tersebut. Dari pernyataan di atas tidak heran jika perawatan itu memakan biaya yang tidak sedikit, adapun empat masalah yang menjadi perawatan mempunyai biaya yang besar ;

1. coding yang tidak terstruktur

2. perawatan programmer yang tidak dimengerti system yang baru

3. tidak adanya dokumentasi dari programer

4. perawatan memiliki gambaran yang buruk(rumit).

Perawatan memiliki empat jenis jika dilihat dari masalah yang di hadapi, seperti :

1. corrective maintenance(software evolution)

yaitu membetulkan error yang ada di coding, hal ini semakin rumit bila coding dari perangkat lunak tidak terstruktur.

2. adaptive maintenance

yaitu menyesuaikan perangkat lunak dengan system operasi atau perangkat keras yang baru, ada banyak software yang tidak plug and play jadi perlu perawatan lebih bila kita menganti salah satu komponen dalam computer kita

3. perfective maintenance

yaitu menyesuaikan perangkat lunak dengan kebutuhan dari pengguna, seperti dalam program system informasi penjualan ingin menambahakan untuk laporannya. Hal ini sulit bila perangkat lunak tersebut mempunyai susunan yang rumit.

4. preventive maintenance

yaitu perawatan yang memudahkan perawatan maksudnya menambahkan dokumentasi dari codng yang di buat, sepertinya namanya perawatan pencegahan jadi mencegah sebelum terjadinya error

menurut Martin and McClure(1983) ada enam cara mengurangi usaha perawatan, adapun itu :

1. teknik sturktur coding yang bagus

2. gunakan software yang baru dalam membuat perangkat lunak

3. gunakan peralatan yang otomatis

4. gunakan teknik basis data

5. adsminitrasi data yang bagus

6. dan perawat perangkat lunak yang handal.

ada lima cara dalam proses model, yaitu :

1. the quick fix model, yaitu membetulkan error dengan secepat-cepatnya

2. boehm’s model yaitu menggunakan prinsip-prinsip ekonomi dimana yang digunakan untuk mempertimbangkan untuk menyelesaikan masalah dalam masalah perawatan.

3. osborne’s model, yaitu memusatkan cara perawatan dilihat dari barunya perangkat dari computer untuk menginstal perangkat lunak tersebut, yaitu dari operanting system dan hardwarenya

4. the iterative enhancement model, yaitu menyarankan menggunakan cara iterasi adapun tahapan-tahapan iterasi tersebut seperti :

a. analisa sistem perangkat lunak

b. pastikan perawatan sukses

c. uji perawatan tersebut

5. the reuse oriented model, menggunakan dasar system dari perangkat lunak yang lama untuk membuat system perangkat lunak yang baru.

Pada jaman sekarang banyak juga pengembang dan pembuat software membuat pengontrol dari software yang mereka buat. Adapun tujuannya adalah mempermudah perawatan dari software tersebut. Contohnya seperti menghitung Line Of
Code(LOC) yang mana dari menghitung LOC dapat dihitung biaya perawatan dari software.

Contoh kasus :

Microsoft Line Of Code Counter yang diciptakan Microsoft untuk menghitung stabilitas(LOC) perangkat lunak yang diciptakan oleh Microsoft. Program ini juga dapat menghitung LOC dari berbagai bahasa pemograman seperti : C#, C++, Java Script, XML, Html, Dll. Namun program ini hanya dapat menghitung secara fisik, belum dapat membedakan comment dengan program. Program ini juga dapat menampilkan laporan dari perhitungan LOC yang kita inginkan dan membedakan blank files dengan coding.

tampilan depan Microsoft Line Of Code Counter.




sumber :

http://www.hepguru.com/maintenance/Final_121603_v6.pdf

http://www.compaid.com/caiinternet/ezine/maintenance-canfora.pdf

Stevanus Ratu Perwira K. Brata(22023087)


Kamis, 04 Desember 2008

Software Maintenance dengan contoh kasus Adaptive maintenance untuk perubahan pada Sistem Operasi

Pada suatu sistem komputer perawatan tidak hanya dibutuhkan oleh perangkat keras saja perangkat lunak pun membutuhkannya, software maintenance atau dalam bahasa Indonesiannya perawatan atau perbaikan maupun perubahan perangkat lunak memiliki beberapa jenis kategori menurut ISO (International Organization for Standardization) seri IEC 14764 mengenai manajemen perangkat lunak yaitu :
Corrective maintenance : Memodifikasi suatu produk perangkat lunak untuk memperbaiki masalah yang ditemukan setelah produk diterima oleh pembeli..
Adaptive maintenance : Memodifikasi suatu produk perangkat lunak untuk dapat digunakan dalam suatu ruang lingkup yeng berbeda.
Perfective maintenance : Memodifikasi suatu produk perangkat lunak untuk meningkatkan kinerja perangkat lunak.
Preventive maintenance : Memodifikasi suatu produk perangkat lunak untuk mendeteksi dan memperbaiki kesalahan yang tersembunyi sebelum kesalahan tersebut menjadi suatu kesalahan yang fatal.

Contoh kasus pada adaptive maintenance :

Seorang programmer baru ditugaskan untuk mengubah suatu sistem informasi yang menggunakan bahasa pemrogramman Cobol, perusahaan tersebut menginginkan sistem informasi itu dapat digunakan di sistem yang berbasis windows yang pada awalnya sistem tersebut berbasis DOS, dan dokumentasi tentang sistem tersebut tidak tersedia.
Programmer tersebut menggunakan teknik reverse engineering atau sering juga disebut teknik pembalikan, programmer tersebut mengambil langkah-langkah sebagai berikut :

1. Menjalankan sistem dan mengobservasi menus, forms, reports dan alur navigasi diantara keempat komponen tersebut.
2. Indetifikasi program atau nama dari source code untuk tiap-tiap menu, form, dan report.
3. Menggambarkan representasi grafis atau hirarki pengamatan antar modul didalam sistem.
4. Identifikasi database dan kumpulan nama dari file-file dan table-tabel yang ada.
5. Gunakan utilitas untuk daftar pencarian "Buka" dan "Tutup" kata dalam setiap program yang menunjukkan file yang digunakan dan mode tersebut (membaca, menulis atau keduanya).
6. Gabungkan program yang tercantum pada (No.2) dan file atau tabel yang tercantum pada(No.4) menjadi lintas-referensi tabel kemudian yang terbuka dalam mode pada (No.5) lalu sesuaikan.
7. akhiri daftar dengan memeriksa source code yang memiliki nama dari tiap file kedalam soft copy dari sistem. Beberapa program atau file tidak dapat digunakan. Dengan demikian harus ditentukan apakah akan membuangnya atau menyimpannya. Jadi harus menggunakan utilitas pencarian untuk memeriksa ulang ketergantungan antar file-file atau program lain.
8. Cantumkan struktur dari setiap file atau tabel dan identifikasi beberapa kemungkinan perubahan berdasarkan platform database baru.

Diambil dari : http://72.14.235.132/search?q=cache:ca-8IBmnc0YJ:mjcs.fsktm.um.edu.my/downlog.asp%3FAID%3D309+%22software+maintenance+cases+%22&hl=id&ct=clnk&cd=1&gl=id

Antonius M
22.02.3039

Rabu, 03 Desember 2008

Testing Dan Implementasi Perangkat Lunak

OLeh : IGusti Nyoman Puriantara (22053971)

Testing (Pengujian Perangkat Lunak)
Adalah elemen kritis dari jaminan kualitas perangkat lunak dan merepresentasikan kajian pokok dari spesifikasi, desain, dan pengkodean. Pentingnya pengujian perangkat lunak dan implikasinya yang mengacu pada kualitas perangkat lunak tidak dapat terlalu ditekan karena melibatkan sederetan aktivitas produksi di mana peluang terjadinya kesalahan manusia sangat besar dan arena ketidakmampuan manusia untuk melakukan dan berkomunikasi dengan sempurna maka pengembangan perangkat lunak diiringi dengan aktivitas jaminan kualitas. Meningkatnya visibilitas (kemampuan) perangkat lunak sebagai suatu elemen sistem dan “biaya” yang muncul akibat kegagalan perangkat lunak, memotivasi dilakukannya perencanaan yang baik melalui pengujian yang teliti. Pada dasarnya, pengujian merupakan satu langkah dalam proses rekayasa perangkat lunak yang dapat dianggap sebagai hal yang merusak daripada membangun.

Desain Test Case:
  • Pengujian white-box
  • pengujian black-box
  • Integrasi Bottom-Up
  • Integrasi Top-Down.

Pengujian white-box
berfokus pada struktur control program. Test case dilakukan untuk memastikan bahwa semua statemen pada program telah dieksekusi paling tidak satu kali selama pengujian dan bahwa semua kondisi logis telah diuji. Pengujian basic path, tehnik pengujian white-box, menggunakan grafik (matriks grafiks) untuk melakukan serangkaian pengujian yang independent secara linear yang akan memastikan cakupan.
Pengujian aliran data dan kondisi lebih lanjut menggunakan logika program dan pengujian loop menyempurnakan tehnik white-box yang lain dengan memberikan sebuah prosedur untuk menguji loop dari tingkat kompleksitas yang bervariasi. Pengujian black-box didesain untuk mengungkap kesalahan pada persyaratan fungsional tanpa mengabaikan kerja internal dari suatu program.

Tehnik pengujian black-box


berfokus pada domain informasi dari perangkat lunak, dengan melakukan test case dengan menpartisi domain input dari suatu program dengan cara yang memberikan cakupan pengujian yang mendalam.

gambar perbandingan pengujian black box dan whitebox

Metode pengujian graph-based
mengeksplorasi hubungan antara dan tingkah laku objek-objek program. Partisi ekivalensi membagi domain input ke dalam kelas data yang mungkin untuk melakukan fungsi perangkat lunak tertentu. Analisis nilai batas memeriksaa kemampuan program untuk menangani data pada batas yang dapat diterima.Metode pengujian yang terspesialisasi meliputi sejumlah luas kemampuan perangkat lunak dan area aplikasi. GUI, arsitektur client/ server, dokumentasi dan fasilitas help dan sistem real time masing-masing membutuhkan pedoman dan tehnik khusus untuk pengujian perangkat lunak.

Integrasi Top-Down
adalah pendekatan incremental dengan menggerakkan ke bawah melalui hirarki control, dimulai dengan control utama. Strategi intergrasi top-down memeriksa control mayor atau keputusan pada saat awal di dalam proses pengujian. Pada struktur program yang difaktorkan dengan baik, penarikan keputusan terjadi pada tingkat hirarki yang lebih tinggi sehingga terjadi lebih dulu.
Strategi top-down kelihatannya tidak sangat rumit, tetapi di dalam praktenya banyak menimbulkan masalah logistic. Biasanya masalah ini terjadi jika dibutuhkan pemrosesan di dalam hirarki pada tingkat rendah untuk menguji secara memadai tingkat yang lebih tinggi.



Pengujian Integrasi Bottom-up
memulai konstruksi dan pengujian dengan modul atomic (modul pada tingkat paling rendah pada struktur program). Karena modul diintegrasikan dari bawah ke atas, maka pemrosesan yang diperlukan untuk modul subordinate ke suatu tuingkat yang diberikan akan selalu tersedia dan kebutuhan akan stub dapat dieliminasi. Strategi integrasi bottom-up dapat diimplementasi dengan langkah-langkah:
  • modul tingkat rendah digabung ke dalam cluster (build) yang melakukan subfungsi perangkat lunak spesifik.
  • Driver (program control untuk pengujian) ditulis untuk mengkoordinasi input dan output test case
  • cluster diuji
  • driver diganti dan cluster digabungkan dengan menggerakkannya ke atas di dalam struktur program.
Uji Sistem
Uji sistem: Sistem software diuji keseluruhan. Ini memverifikasi semua elemen secara langsung untuk memastikan bahwa semua fungsi dan performance sistem diterima dalam lingkungan target.
Terbagi menjadi 4 bagian yaitu:
  1. Recovery Testing : sistem tes yang menekan software untuk gagal dengan cara yang bervariasi dan memverifikasi perbaikan sendiri dengan baik
  2. Security Testing : usaha untuk memverifikasi mekanisme perlindungan yang dibuat dalam sistem apakah akan melindunginya dengan semestinya.
  3. Stress Testing : didesain untuk menghadapi program dengan situasi abnormal.
  4. Pengujian instalasi : didesain untuk menguji prosedur instalasi dan software pendukungnya
Area fokus adalah:
— Fungsi dan performance sistem
— Reliability(ketersediaan) dan recoverability (kemampuan menutup/recovery test) sistem
— Instalasi (uji instalasi) sistem
— Perilaku pada kondisi tertentu (uji tekanan dan load) sistem
— Operasi user (acceptance test/alpha test/) sistem
— Integrasi dan kolaborasi hardware dan software
— Integrasi software eksternal dan sistem

Penguji sistem : uji engineer pada orang-orang ITG atau SQA.Saat sebuah sistem akan dikeluarkan sebagai sebuah produk software, suatu proses pengujian yang disebut pengujian beta sering digunakan.Rencana Ujin Rencana uji berhubungan dengan mengeset standar untuk pengujian proses dibanding penggambaran pengujian produk.

Test plan/rencana uji terdiri atas:
- standar untuk proses pengujian
- resource yang diperlukan (hardware, software dan engineer)
- jadwal pengujian (pengujian task dan milestones)
- uji item (apa yang harus diuji)
- prosedur recording test(hasil test harus secara sistematis direkam)
- constraint
Test planning adalah sebuah dari suatu test manager.
Sebuah test plan adalah output dari perencanaan.

(Gambar berikut)



IMPLEMENTASI ENTEPRISE SISTEM

Enterprise system adalah sistem berbasis software untuk membantu pengelolaan sistem informasi pada suatu organisasi dengan skala besar. Skala besar berarti volume transaksi yang besar, concern terhadap kualitas informasi yang tinggi, mengintegrasikan berbagai proses bisnis, lintas bidang (horisontal) maupun lintas strata (vertikal). Contoh dari ES adalah ERP (Enterprise Resource Planning) atau e-Business secara umum, e-Government, dan ingrated software lainnya.

Implementasi SI
Masalah terbesar dari implementasi SI adalah untuk mengetahui kebutuhan dari user, apalagi dengan karakter proyek :
· Sistem yang melibatkan multi-organisasi/divisi (penggunanya dari beberapa role dan divisi)
· Bisnis proses yang kompleks
· Kebutuhan yang sangat spesifik dan customized.

Dengan karakter proyek yang semacam ini, tidak cukup bagi seorang system analyst (SA) menentukan kebutuhan hanya dengan teknik wawancara, observasi ataupun kuesioner. Banyak kasus ditemui, bahwa pada akhirnya apa yang kita dapatkan dari proses analisa kebutuhan di awal proyek, tidak match dengan kebutuhan sesungguhnya dari pengguna sistem, sehingga sistem akhirnya tidak dapat digunakan dengan baik. Masalah lain adalah di sisi waktu. Teknik-teknik seperti itu seringkali sangat time consuming, sangat membutuhkan waktu yang lama. Sering juga tim developer dihadapkan situasi bahwa tidak semua stakeholder proyek memiliki kepedulian yang sama dengan yang lain. Seorang manajer tidak mengetahui kebutuhan detail dari staf-staf operasional, sementara itu staf operasional mungkin juga tidak memahami sepenuhnya spirit, goal dari SI. JAD merupakan sebuah teknik yang berfokus pada keterlibatan dan komitmen pengguna dalam menentukan kebutuhan dan merancang (desain) aplikasi. JAD biasanya dilakukan dalam bentuk tim yang merupakan gabungan dari seluruh stakeholder proyek, yang bekerja dalam bentuk workshop-workshop atau forum diskusi.
Kenapa workshop ? karena teknik JAD ini bukanlah sekedar rapat-rapat, yang biasa dilakukan dalam sebuah proyek dan melibatkan seluruh stakeholder proyek. JAD adalah tim yang nantinya akan membuat rancangan dan mengawasi, memonitor bersama jalannya proyek.

Siapa yang perlu terlibat ?
Secara garis besar yang perlu terlibat adalah :
  1. Sponsor. Sponsor ini berarti project owner, memiliki kedudukan yang cukup tinggi dalam organisasi dan sebagai pengambil keputusan tertinggi dalam pengelolaan sistem informasi. Satu hal yang penting dilakukan oleh seorang project owner adalah komitmen yang kuat akan implementasi SI yang dilakukan. Without the executive sponsor's commitment, people do not show up for workshops on time or sometimes at all. Schedules change and projects are delayed. In short, without an executive sponsor, there is no project!
  2. Business Users. Business User ini terdiri dari 2 jenis, yaitu real end user dan representative end user. Real end user adalah person yang melakukan pekerjaan real di lapangan. Dalam kasus, ini adalah operator-operator. Sedangkan representative end user adalah person yang mengetahui seharusnya bisnis proses itu dilakukan, memahami spirit dan goal dari sistem yang dikelolanya. Biasanya ini adalah kepala bagian, manajer, atau operator senior.
  3. System Analyst (Tim Developer). Person/tim ini yang akan in-charge dari sisi teknologi dan proses engineeringnya.
  4. System Experts. Tidak semua referensi mencantumkan peran ini. Perannya lebih seperti konsultan yang memahami seluk beluk bisnis proses dari sisi konseptual dan berbasis pengalaman.
  5. Facilitator. Seorang fasilitator berfungsi sebagai moderator dan mengarahkan setiap aktivitas JAD yang melibatkan banyak pihak, untuk menjadi efektif. Seorang fasilitator harus memiliki kecakapan yang baik dalam berkomunikasi, memberikan stimulus-stimulus dan trik-trik agar diskusi bisa berjalan dengan baik.
Tentu saja, setelah penyusunan tim JAD, diperlukan strategi yang tepat dalam melakukan workshop-workshop, sehingga proses dilakukan lebih efektif. Yang jelas, teknik ini sudah terbuktif efektif dalam menyelesaikan masalah-masalah implementasi SI.

Sukses / gagalnya proyek
Project Success Factors % of Responses
1. keterlibatan pemakai 15.9%
2. dukungan manajemen eksekutif 13.9%
3. kebutuhan yg jelas 13.0%
4. perencanaaan yg sesuai 9.6%
5. harapan yg realistis 8.2%
6. proyek terkecil 7.7%
7. staff yg kompeten 7.2%
8. pemilik 5.3%
9. visi dan sasaran yg jelas 2.9%
10.kerja keras, staff dipusatkan 2.4%
Lainnya 13.9%

Project Challenged Factors % of Responses
1. tidak ada masukkan dari pemakai 12.8%
2. kebutuhan & spesifikasi tg tdk sempurna 12.3%
3. mengubah kebutuhan dan spesifikasi 11.8%
4. tidak ada dukungan dr manajemen eksekutif 7.5%
5. ketidakmampuan teknologi 7.0%
6. tidak ada sumber daya 6.4%
7. harapan yg tdk realistis 5.9%
8.sasaran tdk jelas 5.3%
9. batasan waktu tdk realistis 4.3%
10. teknologi baru 3.7%
Lainnya 23.0%

Project Impaired Factors % of Responses
1. kebutuhan tdk lengkap 13.1%
2. tidak ada masukan/keterlibatan dr pemakai 12.4%
3. tidak ada sumber daya 10.6%
4. harapan yg tdk realistis 9.9%
5. tidak ada dukungan dr manajemen eksekutif 9.3%
6. perubahan kebutuhan dan spesifikasi 8.7%
7. tidak ada perencanaan 8.1%
8. tidak diperlukan sama sekali 7.5%
9. tidak ada manajemen IT 6.2%
10. buta teknologi 4.3%
Lainnya 9.9%

Istilah
DMV : the California department of motor vehicles
Banco itamarti : bank brazil
Confirm : American airlines utk penyewaan mobil di hotel marriott
& hilton

SUMBER:
http://images.google.co.id/imgres?imgurl=http://i.msdn.microsoft.com/ms998233.f06mtf02(en-us,MSDN.10).gif&imgrefurl=http://msdn.microsoft.com/en-us/library/ms998233.aspx&usg=__x7eNCvZefD6_51hxb2GbSb9PGMg=&h=260&w=450&sz=13&hl=id&start=10&tbnid=fyDeiz2K66J2gM:&tbnh=73&tbnw=127&prev=/images%3Fq%3Dwhite%2Bbox%2Btesting%26gbv%3D2%26hl%3Did%26sa%3DG
http://rpl07.wordpress.com/2007/06/21/strategi-pengujian-software-oleh-ardi-f-5105-100-118/

Introduction Testing & Implementation

Nama : Citra M. N. Hoema
Nim : 22053955

Software Process
Proses pada software terdapat 5 (lima), yaitu :
  • Spesification
  • Design
  • Testing
  • Implementation
  • Maintenance / Use
Dan yang akan dibahas disini adalah pengertian dari Implementasi dan Testing pada software.
Pengertian Pengujian perangkat lunak adalah :
proses menjalankan dan mengevaluasi sebuah perangkat lunak secara manual maupun otomatis untuk menguji apakah perangkat lunak sudah memenuhi persyaratan atau belum. untuk menentukan perbedaan antara hasil yang diharapkan dengan hasil sebenarnya.

Prinsip pengujian yang harus diperhatikan :
Dapat dilacak hingga ke persyaratan atau dokumen SRS (Software Requirement Specification).
Pengujian harus direncanakan sebelum pelaksanaan pengujian Pengujian harus dimulai dari hal yang kecil, diteruskan ke hal-hal yang besar. Pengujian yang berlebihan tidak akan mungkin dapat dilaksanakan. Pengujian sebaiknya dilakukan oleh pihak ketiga.

Tujuan Pengujian :
Menilai apakah perangkat lunak yang dikembangkan telah memenuhi kebutuhan pemakai. Menilai apakah tahap pengembangan perangkat lunak telah sesuai dengan metodologi yang digunakan.Membuat dokumentasi hasil pengujian yang menginformasikan kesesuaian perangkat lunak yang diuji dengan spesifikasi yang telah ditentukan.

Strategi Pengujian :
Pengujian unit program
Pengujian unit program difokuskan pada unit terkecil dari suatu modul program. Dilaksanakan dengan menggunakan driver dan stub. Driver adalah suatu program utama yang berfungsi mengirim atau menerima data kasus uji dan mencetak hasil dari modul yang diuji, dan Stub adalah modul yang menggantikan modul sub-ordinat dari modul yang diuji.

Pengujian integrasi
Pengujian integrasi adalah pengujian terhadap unit-unit program yang saling berhubungan (terintegrasi) dengan fokus pada masalah interfacing. Dapat dilaksanakan secara top-down integration atau bottom-up integration.

Pengujian validasi
Pengujian validasi adalah pengujian yang dimulai jika pada tahap integrasi tidak ditemukan kesalahan. Suatu validasi dikatakan sukses jika perangkat lunak berfungsi pada suatu cara yang diharapkan oleh pemakai.

Pengujian sistem
Pengujian Sistem adalah pengujian yang dilakukan sepenuhnya pada sistem berbasis komputer.

Recovery testing
Pengujian dilakukan dimana sistem diusahakan untuk gagal, kemudian diuji normalisasinya.

Security testing
Dilakukan untuk menguji mekanisme proteksi

Stress testing
Pengujian yang dirancang untuk menghadapkan suatu perangkat lunak kepada situasi yang tidak normal.

Tahap-tahap Pengujian :
Tentukan apa yang akan diukur melalui pengujian Bagaimana pengujian akan dilaksanakan
Membangun suatu kasus uji (test case), yaitu sekumpulan data atau situasi yang akan digunakan dalam pengujian. Tentukan hasil yang diharapkan atau hasil sebenarnya Jalankan kasus pengujianBandingkan hasil pengujian dan hasil yang diharapkan.

Pengujian Tahap Analisis :
Ditekankan pada validasi terhadap kebutuhan, untuk menjamin bahwa kebutuhan telah dispesifikasikan dengan benar Tujuan pengujian pada tahap ini adalah untuk mendapatkan kebutuhan yang layak dan untuk memastikan apakah kebutuhan tersebut sudah dirumuskan dengan baik.

Faktor-faktor pengujian yang dilakukan meliputi :
Kebutuhan yang berkaitan dengan metodelogi Pendefinisian spesifikasi fungsional Penentuan spesifikasi kegunaan Penentuan kebutuhan portabilitas Pendefinisian antar muka sistem.

Pengujian Tahap Implementasi :
Merupakan pengujian unit-unit yang dibuat sebelum diintegrasikan mejadi aplikasi keseluruhan

Faktor-faktor pengujian tahap implementasi meliputi :
  • Kendali integritas data
  • Kebenaran program
  • kemudahan pemakaian
  • Sifat coupling
  • Pengembangan prosedur operasi.
Pengujian Tahap Pengujian :
Untuk menilai apakah spesifikasi program telah ditulis menjadi instruksi-instruksi yang dapat dijalankan pada mesin.Selain itu, juga untuk menilai apakah instruksi yang ditulis tersebut telah sesuai dengan spesifikasi program

Faktor-faktor pengujian tahap ini meliputi :
  • Pengujian fungsional
  • Dukungan manual
  • Kemudahan operasi
Pengujian dengan Kasus Uji :
Dilakukan meliputi pengujian unit (berupa prosedur atau fungsi) dan pengujian sistem. Dalam pengujian unit, unit-unit yang diuji meliputi unit-unit yang ada dalam sistem. Sedangkan pengujian sistem dilakukan terhadap sistem secara keseluruhan. Setiap pengujian dilakukan dengan menggunakan berbagai data masukan, baik data yang valid maupun tidak.

Teknik Pengujian :
Ada banyak teknik pengujian yang dapat digunakan untuk menguji perangkat lunak, seperti :

1. Pengujian Black Box




Digunakan untuk menguji fungsi-fungsi khusus dari perangkat lunak yang dirancang. Kebenaran perangkat lunak yang diuji hanya dilihat berdasarkan keluaran yang dihasilkan dari data atau kondisi masukan yang diberikan untuk fungsi yang ada tanpa melihat bagaimana proses untuk mendapatkan keluaran tersebut. Dari keluaran yang dihasilkan, kemampuan program dalam memenuhi kebutuhan pemakai dapat diukur sekaligus dapat diiketahui kesalahan-kesalahannya.

Beberapa jenis kesalahan yang dapat diidentifikasi :
Fungsi tidak benar atau hilang
Kesalahan antar muka
Kesalahan pada struktur data (pengaksesan basis data)
Kesalahan inisialisasi dan akhir program
Kesalahan performasi.

Contoh : ATM

a. Consider data maintained for ATM
§ User should be able to access the bank using PC and modem
§ User should provide six-digit password
§ Need to follow a set of typed commands
Data format

b. Software accepts
Area code: Might be blank or three-digit
Prefix: three-digit number not beginning with 0 or 1
Suffix: four digits number
Password: six digit alphanumeric value
Command: {“check”, “deposit,” “ bill pay”, “transfer” etc.}
Input conditions for ATM

c. Input conditions
Area code:
Boolean: the area code may or may not be present
Range: values defined between 200-999
Specific value: no value > 905
Prefix: range –specific value >200
Suffix: value (four-digit length)
Password:
Boolean: password may or may not be present
Or value – six char string
Command: set containing commands noted previously

2. Pengujian White Box
Digunakan untuk mengetahui cara kerja suatu perangkat lunak secara internal. Pengujian dilakukan untuk menjamin operasi-operasi internal sesuai dengan spesifikasi yang telah ditetapkan dengan menggunakan struktur kendali dari prosedur yang dirancang. Pelaksanaan pengujian white box :
  1. Menjamim seluruh independent path dieksekusi paling sedikit satu kali. Independent path adalah jalur dalam program yang menunjukkan paling sedikit satu kumpulan proses ataupun kondisi baru.
  2. Menjalani logical decision pada sisi dan false
  3. Mengeksekusi pengulangan (looping) dalam batas-batas yang ditentukan
  4. Menguji struktur data internal
Mengapa white box?
Kesalahan logis dan asumsi yang tidak benar berbanding terbalik dengan probabilitas jalur program yang akan dieksekusi. (Kesalahan cenderung terjadi saat mendesain dan mengimplementasikan fungsi, kontrol/kondisi.)Kita sering percaya bahwa jalur logis mungkin tidak akan dieksekusi bila pada kenyataanya akan dieksekusi pada basis regular. (Asumsi yang tidak kita sadari akan mempengaruhi desain dan terungkap saat pengujian.)
Kesalahan tipografis adalah random. (Kesalahan ketik.)

Basis Path Testing
Yaitu teknik pengujian white box yang memungkinkan desainer test case mengukur kompleksitas logis dari desain prosedural dan menggunakannya sebagai pedoman untuk menetapkan basis set dari jalur eksekusi.



Loop Testing



Sumber :
http://sicyca.stikom.edu/Resource/MateriOnline/900036/410103068/07/TIS%207.pps

http://sicyca.stikom.edu/Resource/MateriOnline/900036/410103068/01/TIS%201.pps

http://www.mikroskil.ac.id/~roni/TIS/TIS7.pdf

http://dosen.stiki.ac.id/anita/RPL/Software%20Testing.ppt


http://eri.staff.gunadarma.ac.id/Downloads/files/8862/introduction.ppt