Rabu, 13 Juni 2012

Documentation Control

Dokumentasi merupakan salah satu hal yang perlu diperhatikan bagi developer untuk membandingkan dan mengvaluasi hasil dari perangkat lunak yang sedang dikembangkan. Mengontrol dokumentasi dalam software development merupakan  yang penting atau dapat menjadi hal yang penting, bagi pengembangan dan pemeliharaan system software.

Dalam software development, segala hal yang mengenai Persiapan dokumen, penyimpanan dokumen, pencarian dokumen, dan pembuangan dokumen harus dikendalikan dengan prosedur dokumentasi.

Quality Record
Quality Record merupakan salah satu bentuk pengendalian dokumen adalah quality record. Quality record sendiri berisikan data kualitas dari software yang telah dijanjikan kepada client. Maka segala bentuk keterlibatan client sangat banyak dilibatkan dalam hal ini.

Daftar Isu yang ada dalam controlled document
  • Memutuskan dokumen mana saja yang merupakan quality record dan merupakan controlled documents.
  • Menentukan tingkat kontrol pada masing-masing tipe dokumen.
  • Melakukan follow-up terhadap kontrol dukumen.
Tujuan dari dokumen kontrol yaitu :
  1. Untuk menjamin kualitas dokumen yang dihasilkan
  2. Untuk menjamin kelengkapan teknis sesuai dengan prosedur struktur dokumen dan instruksi.
  3. Untuk keperluan di masa yang akan datang, dalam hal maintenance software
  4. Untuk mendukung dalam hal penyelidikan penyebab kegagalan sebuah perangkat lunak

Software Testing


Software testing secara umum dapat diartikan sebagai serangkaian proses guna mengverifikasi dan mengvalidasi perangkat lunak yang dihasilkan dari proses developing. Jadi proses inti yang dilakukan adalah mengevaluasi dan memastikan apa yang dihasilkan dalam pengembangan perangkat lunak sesuai dengan apa yang diinginkan dan sudah sesuai dengan kebutuhan. Testing ini dilakukan hingga akhir proses pengembangan perangkat lunak untuk menentukan apakah yang dibuat sudah benar. Testing ini memang dapat dikorelasikan dengan “requirement tracebility matrix” atau RTM karena dengan adanya hasil testing ini maka developer dapat memastikan kembali dengan kebutuhan yang telah dicantumkan pada dokumen plannig pada fase inisiasi project.

Pada dasarnya software testing terbagi atas 2 macam, antara lain : 
  1. Blackbox Testing
    Blackbox Testing merupakan proses mengidentifikasi bugs ataupun error berdasarkan pada gangguan yang terlihat pada fungsi outputnya atau interface. Dengan kata lain yang diperiksa hanyalah jalannya fungsionalitas perangkat lunak tersebut, dan  mengabaikan penyebab kesalahan dalam program dalam codenya. keuntungan dari black box memungkinkan tester melakukan semua test pada setiap modul, dan kekurangan dari black box sendiri adalah lemahnya proses pengidentifikasian gangguan dari code.  
  2.  Whitebox Testing
    Whitebox Testing
    yaitu mengidentifikasi kesalahan bugs atau error pada internal program (code). kelebihan dapat melakukan didalam program untuk mengetahui apa yang menyebabkan error yang di karenakan oleh code, kekurangannya membutuhkan banyak resource karena yang dianalisa adalah setiap baris code yang dihasilkan. 

Senin, 11 Juni 2012

Staff Training And Certification

Dalam perusahaan atau organisasi pasti dibutuhkan suatu pelatihan maupun sertifikasi guna menjamin kualitas dan kinerja sumber daya manusia yang berkecimpung mengani segala aktivitas perusahaan. Maka dalam hal ini pelatihan staf dan sertifikasi, merupakan sesuatu yang dapat meningkatkan kualitas kerja, memastikan kapabilitas staf tercapai dan sesuai dengan kebutuhan perusahaan atau organisasi.

Staff training adalah serangkaian kegiatan pelatihan yang mana ditujukan kepada staf untuk melakukan penambahan kemampuan dan pengetahuan mengenai hal tertentu yang mana dibutuhkan dalam pekerjaan. Nantinya Output yang dihasilkan dari pelatihan tersebut akan dilakukan certification, hal tersebut sebagai bukti bentuk pemenuhan kompetensi yang telah didapatkan pada training.

Dalam lingkup software development, pelatihan staff dan sertifikasi erat kaitannya dengan penjaminan kualitas software. Hasil sertifikasi yang didapatkan dari serangkaian pelatihan tersebut merupakan alat (tools) yang berguna sebagai tolak ukur penjaminan kualitas suatu software.

Berikut ini beberapa tujuan dari pelatihan staff dan sertifikasi, yaitu :
  • Menjamin kesesuaian standar organisasi dengan produk perangkat lunak yang dihasilkan.
  • Menambah kemampuan dan pengetahuan staff, agar sesuai dengan kebutuhan dalam hal software development hingga proses maintenance yang dilakukan.
  • Memperbarui kemampuan dan pengetahua staff yang telah ada sebelumnya, sehingga dapat menyesuaikan dengan perkembangan SI/TI terkini.
  • Transfering knowledge mengenai penjaminan kualitas software (SQA)
  • Untuk memenuhi kapabilitas, kemampuan dan pengetahuan staff yang direkomendasikan menempati posisi jabatan tertentu pada perusahaan atau organisasi (System Analyst, Project Leader, Programmer, dsb)

Kamis, 07 Juni 2012

Configuration Management

Banyak masalah yang terjadi pada suatu proyek software development, salah satunya adalah permasalahan manajemen konfigurasi. Biasanya kesalahan terjadi pada konfigurasi antara pengaturan versi software , pengaturan hasil dokumentasi software, dsb.
Perlu dicatat, bahwa tidak ada software yang memang benar-benar bebas dari bugs/erorr, maka software terkadang memiliki versi. Pembaruan Versi software tersebut digunakan untuk memperbaiki bugs/erorr yang ditemukan pada versi sebelumnya. Jadi inti dari permasalahan di atas adalah bagaimana melakukan pengaturan pada perubahan perangkat lunak.
Configuration management adalah serangkaian proses yang dilakukan guna membuat dan mempertahankan konsistensi kinerja suatu produk, desain, hingga operasionalnya.
Tujuan dari configuration management secara umum sebagai berikut :
    • Untuk mengidentifikasi perubahan
    • Untuk mengontrol perubahan
    • Untuk memastikan perubahan telah dilaksanakan
    • Laporan perubahan yang ditujukan untuk anggota, yang mana membutuhkan pengetahuan mengenai configiration management.
Perubahan yang dilakukan pada configuration management meliputi :
    • Kode software
    • Data (data testing dan file database)
    • Dokumen dokumen yang terkait (SKPL, desain , jadwal proyek, rencana testing)
Beberapa faktor yang mempengaruhi keputusan dari perubahan yang akan diusulkan, antara lain :
    • Tingkat kepentingan (urgency) dari perubahan.
    • Besarnya kontribusi dari perubahan yang akan diusulkan.
    • Pengaruh perubahan yang akan diusulkan pada jadwal proyek.
    • Upaya yang diperlukan dalam membuat perubahan operasional.
    • Regulasi pemerintah

Rabu, 06 Juni 2012

Supporting Quality Devices


Sering kita mendengar dan melihat bentuk dokumen template ataupun checklist pada suatu proses development software. Secara umum fungsi dari template itu sendiri adalah untuk menyamakan format pendokumentasian, agar nantinya informasi yang dituliskan tersebut dapat dimengerti oleh orang lain yang terlibat dalam pekerjaan tersebut
.
Dalam rekayasa perangkat lunak, template dapat didefiniskan sebagai :
Format yang dibuat oleh suatu bagian dari organisasi (biasanya disusun oleh bagian SQA unit dalam suatu perusahaan/oraganisasi), untuk diaplikasikan dalam pembuatan laporan atau dokumen tertentu.

Berikut ini merupakan kontribusi dan manfaat yang didapat dari penggunaan template bagi kualitas software.
·                   Bagi devepoment team :
  • Mengfasilitasi proses penyiapan dokumen, sehingga dapat menghemat waktu dan tenaga
  • Menjamin kelengkapan hasil dokumentasi yang dilakukan developer software
  • Memberikan kemudahan dalam hal pengintegrasian bagi anggota baru dalam tim (dapat memahami dokumen dengan mudah)
  • Dapat menyederhanakan review, karena telah terstandarisasi. Oleh karena itu isi atau konten pelaporan review lebih konsisten dan teliti.
·                Bagi review team :  
  • Mempermudah pencarian informasi pada saat melakukan proses pemeliharaan.
Tantangan yang mungkin dapat menjadi hambatan dalam penggunaan template :
  • Hal yang mungkin diperhatikan adalah template merupakan aset yang dimiliki organisasi atau perusahaan.
  • Template yang dibuat, dapat digunakan sebagai menyimpan sumber daya internal perusahaan atau organisasi. template sendiri dapat diimplementasikan dalam satu departemen ataupun bagi kesluruhan perusahaan/oraganisasi.
  • Namun ada beberapa hal yang perlu diperhatikan dari dampak yang mungkin dapat merugikan. Template tersebut pada dasarnya harus dapat dipahami oleh setiap staff organisasi. Perubahan atau revisi yang dilakukan terhadap template yang ada tidak boleh sembarang dilakukan, dibutuhkan tenaga profesional untuk membuatnya (misalnya SQA unit dalam perusahaan atau organisasi)
Template sendiri, dapat didevelop oleh SQA unit yang ada dalam perusahaan atau organisasi. Yang unit SQA sendiri, bertanggung jawab penuh terhadap terbentuknya template yang profesional bagi pelaporan dan dokumen bagi staff organisasi.

Dalam mengorganisir template, yang dilakukan SQA unit meliputi : 
  • Mempersiapkan template yang baru 
  • Mengimplementasikan template yang baru tersebut
  • Memperbarui template
 

Minggu, 03 Juni 2012

Development and Quality Plan


Berikut ini merupakan bagian elemen dari Development Plan, yaitu :
  • Project products
  • Project interfaces
  • Project methodology and development tools
  • SW development standards and procedures
  • The mapping of the development process.
  • Project milestones
  • Project staff organization
  • Development facilities
  • Development risks
  • Control methods
  • Project cost estimation

Berikut ini merupakan bagian elemen dari Quality Plan, yaitu :
  •  Quality goals
    Planned review activities (The scope of review activity, The type, The schedule ( priorities ), The specific, procedure to be applied , Who responsible for carrying out the rev. act. )
     
  • Planned Software tests ( a complete list of planned SW tests should be provided ) each test (The unit, integration or the complete system to be tested , The type of testing activities to be carried out, The planned test schedule, The specific procedure, Who responsible) 
  • Planned acceptance tests for externally developed software 
  • Configuration management (change control procedures )

Requirement Tracebility Matrix ?

“RTM” atau yang lebih dikenal dengan Requirements Traceability Matrix, merupakan format tabel  yang berisikan daftar kebutuhan perangkat lunak pada suatu proses Software Development Life Cycle (SDLC).

RTM memiliki beberapa manfaat, baik sebagai tools untuk melakukan "trace" atau mengecek kembali kebutuhan perangkat lunak berdasarkan daftar yang telah ditetapkan pada awal tahapan SDLC.

Requirements Traceability Matrix bertujuan untuk memastikan ketersediaan semua requirement perangkat lunak yang telah dideklarasikan di awal. Hal tersebut dilakukan pula untuk menjamin kualitas perangkat lunak sesuai dengan keinginan Client.

Requirements Traceability Matrix biasanya digunakan oleh pihak developer perangkat lunak dalam hal ini meliputi Sistem Analis, programmer, dan sebagainya.

 Tekan pada Gambar Untuk memperbesar tampilan gambar.