CMM

Apa itu CMM…?? pertanyaan itu mendengung di pikiranku.. Pada saat dosen S2 ku menyebut itu, gak ada bayangan sama sekali… …. Selesai dari kampus langsung mencari tau ke mbah google. Dan ternyata….. eng ing eng… Gak ada satu pun web yang membahas CMM dalam bahasa indonesia.  Di dalam hati sambil mencak-mencak bilang kepada diri sendiri “kalo bahasa inggris mah banyak bukunya gw dapet dari kampus…. malah tu buku saking tebelnya nimpuk anjing pingsan x”.. Nah untuk itu saya akan menolong orang-orang yang seperti saya untuk mengetahui apa itu CMM… Cekidot……


Apa itu  CMM:

CMM merupakan mekanisme kualifikasi sebuah Software Development House yang dapat memberikan gambaran tentang kemampuan perusahaan tersebut dalam melakukan development software. Capability Maturity Model adalah sebuah model yang dikembangkan oleh Software Engineering Institute atas permintaan Departement of Defense(DOD) Amerika Serikat dengan tujuan membuat ujian saringan masuk bagi kontraktor yang mendaftarkan diri untuk menjadi konsultan

Pengertian secara harfiah:

  • Capability, diartikan menjadi kapabilitas yang berarti kemampuan yang bersifat laten. Capability lebih mengarah kepada integritas daripada kapabilitas yang berarti itu sendiri. 
  • Maturity,  berarti matang atau dewasa. Matang merupakan hasil proses. Dewasa merupakan hasil pertumbuhan
  • Model, didefinisikan sebagai suatu penyederhanaan yang representatif terhadap keadaan di dunia nyata
Secara keseluruhan pengertian CMM, yaitu:

CMM dapat didefinisikan sebagai  sebuah penyederhanaan yang representatif yang digunakan untuk mengukur tingkat kematangan sebuah software development house dalam menyajikan/membuat/mengembangkan perangkat lunak sebagaimana telah dijanjikan secara tertulis dalam perjanjian kerjasama. Sehingga bisa dikatakan bahwa CMM adalah mengukur.

Nilai-nilai yang dilihat dalam pengukuran tersebut:

  1. Apa yang diukur (Parameter)
  2. Bagaimana cara mengukurnya (Metode)
  3. Bagaimana standar penilaiannya (Skala Penilaian)
  4. Bagaimana Interpretasinya (Bagi Manusia)
CMM

Capability Maturity Model terdapat 5 level/skala kematangan yaitu :

  1. Initial
    Ciri-ciri dari fungsi initial adalah tidak ada manajemen proyek, tidak adanya quality assurance, tidak adanya mekanisme manajemen perubahan (change management), tidak ada dokumentasi, adanya seorang ahli yang tau segalanya tentang perangkat lunak yang dikembangkan, dan sangat bergantung pada kemampuan individual.
  2. Repeatable
    Ciri-ciri dari fungsi repeatable adalah kualitas perangkat lunak mulai bergantung pada proses bukan pada oprang, ada manajemen proyek sederhana, ada quality assurance sederhana, ada dokumen sederhana, ada software configuration management sederhana, tidak adanya knowledge management, tidak adanya komitmen untuk selalu mengikuti SDLC dalam kondisi apapun, tidak adanya stastikal control untuk estimasi proyek dan rentan perubahan struktur organisasi.
  3. Defined
    Ciri-ciri dari level Defined adalah SDLC sudah ditentukan, ada komitmrn untuk mengikuti SDLC dalam keadaan apapun, kualitas proses dan produk masih bersifat kualitatif atau hanya perkiraan saja, idak menerapkan Activity Based Costing, dan tidak adanya mekanisme umpan balik yang baku.
  4. Managed
    Ciri-cirinya adalah sebagai berikut, sudah ada Activity Based Costing dan digunakan untuk estimasi proyek berikutnya, proses penilaian kualitas perangkat lunak dan proyek bersifat kuantitatif, terjadi pemborosan biaya untuk pengumpulan data karena proses pengumpulan data masih dilakukan secara manual, cenderung belum jelas disebabkan karena masnusia ketika diperhatikan perilakuknya cenderung berubah, tidak ada mekanisme pencegahan defect dan adanya mekanisme umpan balik
  5. Optimized
    Pengumpulan data secara automatis, adanya mekanisme pencegahan defect, adanya mekanisme umpan balik yang sangat baik, dan adanya peningkatan kualitas dari SDM dan juga peningkatan kualitas proses.

Hubungan CMM dengan Programming

Programming atau pembuatan program dapat dibuat kesamaannya dengan CMM. Programming in small (coding red) ekivalen dengan CMM level 1. Programming in large (proyek managemen, documentasi, dll) ekivalen dengan CMM level 2. Keduanya dapat dikelompokan menjadi programming as art proccess karena tidak memiliki unsur engineering. Unsur engineering yang perlu ditambahkan adalah standarisasi (pembakuan) dan pengukuran. Jika sudah dilakukan standarisasi maka ekivalen dengan CMM level 3. Jika sudah ada pengukuran maka ekivalen dengan CMM level 4. Jika sudah sampai di level 4 maka programming dapat dianggap sebagai engineering process. Keseluruhan level dari 1-4 dapat dipandang sebagai programming as discreet process dimana tidak ada pengembangan berkelanjutan (life time quality improvment) . Baru pada level 5 programming dapat dianggap sebagai continues process dimana peningkatan kualitas sumber daya manusia dan proses dilakukan secara terus menerus.

Kegunaan CMM meliputi:

• Menilai tingkat kematangan sebuah organisasi pengembang perangkat lunak
• Memfilter kontraktor yang akan menjadi pengembang perangkat lunak
• Memberikan arah untuk peningkatan organisasi bagi top managemen di dalam sebuah organisasi pengembang perangkat lunak
• Sebagai alat bantu untuk menilai keunggulan kompetitif yang dimiliki sebuah perusahaan dibandingkan perusahaan pesaingnya.

Untuk mengetahui lebih lanjut silahkan liat di http://www.estylesoft.com/?id=317&pid=1