Saturday, December 1, 2012

Service Level Agreement (SLA) vs Kontrak Proyek

Kali ini saya akan membahas mengenai SLA dan Kontrak Proyek.
Apa bedanya kedua hal itu?
Apa itu SLA?
Apa itu Kontrak Proyek?

Sebenarnya ini adalah tugas yang pernah diberikan oleh dosen di awal-awal perkuliahan. Tapi saya tidak ingat dosen kami ingat untuk meminta tugas ini. Tapi biarlah, ini tetap bagian pembahasan dari software quality management, yaitu pada tahap CONTRACT REVIEW.
Sepemahaman saya, ini adalah fase paling awal, yaitu di mana tim proyek pembuat software melakukan penandatanganan kontrak untuk melakukan proyek yang menandakan kesepakatan antara dua belah pihak.

Nah, sebelumnya kita bahas dulu satu persatu artinya apa.
SERVICE LEVEL AGREEMENT (SLA)
Biar gampang, saya akan mencontohkan hal yang paling sering kita alami. Ingat nggak, sewaktu kita mendaftar sesuatu di internet, atau ketika kita menginstal sebuah aplikasi/software di komputer kita, selain kita mengisi data, kita suka dihadapkan para "TERMS and SERVICE" atau "TERMS and CONDITION" (yang biasanya nggak pake baca langsung next next next...nneeeeexxxtttt~).
Itulah salah satu contoh paling sederhana SLA.
Jadi, apa itu SLA? SLA itu semacam persetujuan akan layanan apasaja yang akan kita dapat. Yap, kurang lebih bahasa paling sederhananya seperti itu. Bentuk layanannya tidak melulu menguntungkan kita lho! Bentuk layanannya juga kadang adalah batasan-batasan. Misalnya,

Software Quality Mc Call

Dari kemarin saya sudah terus-terusan menjelaskan mengenai kualitas software. Pertanyaannya adalah :
Apa yang menentukan kualitas sebuah software?

Pertama, tentu saja scope requirementnya terpenuhi atau tidak. Menurut saya, kalau requirement seharusnya A, B, dan C, tapi ternyata yang C cuma hoax belaka, itu udah bisa dibilang, "nggak bagus". Itulah yang pernah saya singgung soal trade off, scope requirement dapat dihilangkan tapi kualitas menjadi korban.

Kedua, adakah kelengkapan-kelengkapan seperti yang saya singgung di sini? Kelengkapan-kelengkapan seperti itu diperlukan, karena tidak hanya untuk pihak lain yang akan mengembangkan software kita, tetapi juga klien kita. Saya mendapatkan soal ini sewaktu UTS lisan.

Jadi ceritanya ada sebuah kasus, saat kita telah meluncurkan sebuah software, kurang lebih kita sudah percaya diri banget deh sama software tersebut, wah pasti software ini bagus, klien pasti suka, pasti diterima. Tapi ternyata sewaktu klien menggunakan, mereka justru kebingungan. Mereka tidak bisa menggunakan software yang sudah kita bangga-banggakan. Kenapa bisa begitu?

6 Tipe Software Testing

Setelah membahas mengenai black box dan white box testing, sekarang saya akan menjelaskan mengenai 5 tipe software testing.

Kalau di penjelasan saya menjelaskan mengenai 2 tipe testing, sekarang testing yang saya jelaskan adalah bagian dari 2 testing tersebut. Testing-testing ini adalah yang paling umum digunakan. Sebenarnya saya pernah menemukan hingga 100 tipe software testing di sini. Tetapi kebetulan yang saya pelajari, dan umumnya, hanya ada 6.

1. UNIT TESTING
Tergolong dalam WHITE BOX TESTING, adalah pengujian terkecil dari pembuatan software. Istilahnya adalah 'compile' kalau lagi ngoding. Yang melakukan testing ini tentu saja orang atau tim yang sedang membuat softwarenya. Karena namanya ngoding itu harus rajin-rajin di-compile biar segera terdeteksi kalau-kalau ada yang error.

2. INTEGRATION TESTING
Tergolong dalam WHITE BOX TESTING dan BLACK BOX TESTING, adalah testing yang dilakukan oleh pihak pengembang maupun oleh klien. Testing ini maksudnya, misalnya dalam software terdapat beberapa modul, testing ini adalah untuk mengecek integrasi modul-modul tersebut. Jadi bisa dilakukan oleh orang yang benar-benar mengerti tentang software tersebut maupun tidak.

Friday, November 30, 2012

White Box and Black Box Testing

Kali ini saya akan menjelaskan tentang macam-macam software testing.
Umumnya, software testing itu diholongkan menjadi 2, yaitu WHITE BOX TESTING dan BLACK BOX TESTING.

Apa itu white box-black box testing?

WHITE BOX TESTING adalah testing yang dilakukan dengan mengetahui proses, coding, dll di dalamnya. Jadi, si penguji mengetahui seluk beluk aplikasi yang diuji. Menurut saya pribadi, ini dilakukan oleh tim pengembang aplikasi yang bersangkutan.
Kalau dari sumber yang saya dapatkan, artinya seperti ini :
White Box Testing merupakan cara pengujian dengan melihat ke dalam modul untuk meneliti kode-kode program yang ada, dan menganalisis apakah ada kesalahan atau tidak. Jika ada modul yang menghasilkan output yang tidak sesuai dengan proses bisnis yang dilakukan, maka baris-baris program, variabel, dan parameter yang terlibat pada unit tersebut akan dicek satu persatu dan diperbaiki, kemudian di-compile ulang.

SQA ARCHITECTURE

Soal ini pernah keluar sewaktu ujian post test, dan saking banyak dan ruwetnya catatan saya, saya sampai-sampai cuma menggambarkan kuil yunani. Itu pun penjelasannya terbalik. -____-"
Tapi memang benar, menurut saya ketimbang dibilang berbentuk rumah, lebih mirip dengan Greek Temple.

Berikut inilah yang dimaksud dengan SQA Architecture :




Kalau yang ini SQA Architecture versi coret-coretan saya :

Pembuatan Software Berdasarkan Manajemen Kualitas

Berikut adalah hasil catatan saya selama di kelas, mencoba memahami apa yang diterangkan dosen sekaligus dengan cepat mencatat sebelum slide PPT diganti. :O
Kali ini saya akan membahas tentang pembuatan software berdasarkan manajemen kualitas.

Karena saya tidak sempat mencatat terlalu banyak, jadi saya akan membuatnya menjadi poin-poin.

1. Dalam pembuatan software diperlukan :
a. Code
Ya pastilah ya, namanya membuat software pasti diperlukan kode yang biasanya kita sebut dengan mengoding (sesuatu yang dihindari secara masal oleh banyak orang di jurusan saya--sumber : pengalaman pribadi). Karena dari kode-kode yang dirangkai menjadi perintah-perintah maka jadilah sebuah software. Selain itu kode juga dibutuhkan untuk memudahkan ketika seseorang ingin mengembangkan software yang kita buat.
b.  Data
Menurut saya, aplikasi tidak akan dapat berjalan tanpa data. Namanya aplikasi membutuhkan input data. Bahkan aplikasi sederhana, misalnya kalkulator pun membutuhkan data untuk dihitung.
c. Dokumentasi
Kata dosen saya, banyak sekali mahasiswa yang membuat aplikasi tetapi tidak membuat dokumentasi. Termasuk beliau, maksudnya. Bahkan beliau terheran-heran kenapa dulu bisa sehebat itu membuat aplikasi tanpa dokumen. Yap, membuat dokumen adalah hal yang amit-amit ampun bosannya. Tapi dokumen itu dibutuhkan lho. Sangat dibutuhkan malah. Karena dokumen itu nantinya akan dibaca orang lain yang sekedar ingin mempelajari aplikasi anda, atau mengembangkan aplikasi anda. Dengan gaya mengoding yang berbeda-beda, pemahaman setiap orang pun berbeda-beda. Nah, dokumen dibutuhkan untuk menyamakan pikiran agar si pembaca mengerti alur pikiran si pembuat software/aplikasi.
d. Prosedur
Setuju dong, tanpa prosedur orang pasti bakal acakadut kebingungan apa yang harus dilakukan atau diperbuat, tidak tahu arah, dan segala macam. Di sinilah fungsi dari prosedur.


2. TRADE OFF
Kalau menurut saya, trade off itu istilahnya seperti 'tumbal menumbal'. Iya, soalnya menurut saya segala sesuatu yang dilakukan akan mengorbankan yang lainnya.

Kalau dari wikipedia sih artinya :
A trade-off (or tradeoff) is a situation that involves losing one quality or aspect of something in return for gaining another quality or aspect. It often implies a decision to be made with full comprehension of both the upside and downside of a particular choice; the term is also used in an evolutionary context, in which case the selection process acts as the "decision-maker".
Kalau digambarkan bentuknya seperti ini :

Software Quality Assurance & Software Quality Control

Saya pernah menyinggung sebelumnya mengenai Software Quality Control di sini. Yap, Saya sering sekali mendengar dosen menyinggung-nyinggung baik Software Quality Control (SQC) dan Software Quality Assurance (SQA).

Apa yang dimaksud dengan keduanya?

Pada postingan saya sebelumnya tentang PLC saya menjelaskan mengenai tahapan-tahapan PLC yang isinya adalah :

- Inisiasi (Requirement Analysis)
- Planning (Design)
- Implementation
- Testing
- Closing

Berada di manakah SQC dan SQA ini pada PLC?
Poinnya hanya 2 :
Ageboy Blog: http://ageboy.blogspot.com/2012/04/cara-agar-blog-tidak-bisa-di-copy-paste.html#ixzz2DpVQ1ZH0