Posts Tagged ‘swebok’

Mengenal SWEBOK (Software engineering Body of Knolwdge) 4

Sunday, June 1st, 2008

Mengenal SWEBOK (Software engineering Body of Knolwdge) 4

Knowledge Area SWEBOK

Software Engineering Body of Knowledge dibagi ke dalam sepuluh bagian dan satu bagian yang membahas keterkaitan software engineering dengan ilmu-ilmu lain. Setiap knowledge area dalam SWEBOK masih mempunyai beberapa sub area lagi. Knowledge area tersebut dapat digambarkan seperti berikut,

Knowledge area dalam bagan diatas dapat dijabarkan secara singkat seperti berikut;

  1. SOFTWARE REQUIREMENTS, membahas tema yang berkaitan dengan permintaan, analisa, spesifikasi, dan validasi kebutuhan perangkat lunak. Software requirements merupakan dasar pengembangan dalam life cycle pengembangan perangkat lunak sehingga pada tahap ini semua kebutuhan harus didefinisikan dengan jelas. Apabila software requirements tidak dikelola dengan baik maka bisa menyebabkan tahap berikutnya menjadi sulit dilakukan dan kemungkinan persepsi yang berbeda terhadap perangkat lunak.
  2. SOFTWARE DESIGN, Design adalah sebuah proses untuk menentukan arsitektur, komponen, antarmuka dan karakteristik sistem atau komponen lain. Software design merupakan aktifitas life cycle dalam software engineering dimana kebutuhan perangkat lunak dianalisa sehingga akan membentuk deskripsi struktur internal perangkat lunak yang akan digunakan sebagai konstruksi dasar pengembangan perangkat lunak (digunakan pada tahap konstruksi).
  3. SOFTWARE CONSTRUCTION, Yaitu berisi detail tentang pekerjaan pembuatan perangkat lunak yang berarti merupakan kombinasi pembuatan kode (coding), pengecekan, unit testing, integration testing dan debugging. Software construction sendiri tidak bisa dipisahkan dengan area desain dan testing, karena kedua proses tersebut terlibat dalam proses konstruksi.
  4. SOFTWARE TESTING, Testing merupakan sebuah aktifitas evaluasi kualitas produk dan meningkatkannya dengan mengidentifikasi bugs dan masalah yang menyebabkan adanya bugs. Area ini membahas semua topik yang berkaitan dengan pengujian perangkat lunak seperti teknik pengujian, skenario pengujian dan proses pengujian itu sendiri.
  5. SOFTWARE MAINTENANCE , Software maintenance didefinisikan sebagai semua aktifitas yang dilakukan untuk melakukan support terhadap software secara efektif. Software meintenance merupakan bagian tak terpisahkan dalam life cycle software engineering. Area ini juga membahas konsep dan terminologi yang membentuk dasar untuk memahami aturan dan ruang lingkup perawatan perangkat lunak.
  6. SOFTWARE CONFIGURATION MANAGEMENT, Area SCM merupakan area yang membahas tentang penerapan teknik dan administratif serta pengawasan untuk melakukan identifikasi dan dokumentasi karakteristik fisik dan fungsional dari konfigurasi sistem. Selain itu juga mencatat dan melaporkan proses perubahan dan status implementasi serta mencocokan dengan kebutuhan yang harus dipenuhi dalam pengembangan perangkat lunak.
  7. SOFTWARE ENGINEERING MANAGEMENT, SEM dapat dikatakan sebagai penerapan manajemen perencanaan kegiatan, koordinasi, pengukuran, pengawasan, pengontrolan dan laporan untuk memastikan bahwa pengembangan dan perawatan (maintenance) perangkat lunak adalah sistematis dan memenuhi syarat yang telah ditentukan.
  8. SOFTWARE ENGINEERING PROCESS, Area ini berhubungan dengan definisi, implementasi, penilaian, pengukuran, manajemen dan perbaikan proses software engineering itu sendiri.
  9. SOFTWARE ENGINEERING TOOLS AND METHODS, Area ini berkaitan dengan tool dan metodologi yang digunakan dalam software engineering.
  10. SOFTWARE QUALITY , Berisi knowledge tentang kualitas pada perangkat lunak dan bagaimana agar sebuah perangkat lunak berkualitas serta menentukan ukuran kualitas perangkat lunak.
  11. RELATED DISCIPLINES, software engineering sebagai sebuah disiplin ilmu tentu tidak bisa dipisahkan dengan disiplin lain. Pada area ini dibahas keterkaitan ilmu-ilmu lain dengan software engineering yaitu matematika, teknik komputer, ilmu komputer, manajemen, manajemen proyek dan ergonomi perangkat lunak.

Mengenal SWEBOK (Software engineering Body of Knolwdge) 3

Sunday, June 1st, 2008

Mengenal SWEBOK (Software engineering Body of Knolwdge) 3

Kategori Knowledge SWEBOK.

Rekayasa perangkat lunak tersusun dari berbagai disiplin ilmu lain, seperti matematika, sains kognitif (psikologi dan sosiologi), manajemen proyek dan berbagai disiplin ilmu teknik lainnya.

swebok2

Karena ilmu rekayasa perangkat lunak (software engineering) bersumber pada berbagai disiplin ilmu, maka untuk memudahkan pengelompokan knowledge-nya, dilakukan pemisahan knowledge software engineering dalam tiga kategori, yaitu Generaly Accepted, Advanced and Research dan Generaly Accepted. Tetapi untuk mempermudah pemahaman tentang knowledge dan ruang lingkup rekayasa perangkat lunak dalam SWEBOK, maka disarankan agar fokus perhatian lebih ditekankan pada Generally Accepted, yaitu knowledge dan parktek telah teruji digunakan beberapa kali dalam dalam berbagai proyek yang berbeda.

2540738920_001e19b85d_o

  • Specialized, Knowledge yang digunakan hanya untuk perangkat lunak dengan tipe tertentu
  • Advanced and Research, Knowledge yang berupa best practices, konsep atau pengalaman inovatif yang telah teruji dan digunakan hanya oleh beberapa organisasi. Knowledge tersebut kemudian tetap terus dikembangkan dan diuji oleh lembaga-lembaga riset.
  • Generaly Accepted, Knowledge yang telah digunakan pada banyak proyek dalam kurun waktu yang cukup lama, dan best practicesyang sudah ada dan telah digunakan serta disarankan oleh banyak organisasi dan telah disahkan dan setujui sebagian besar perusahaan. Selain itu Generally Accepted juga harus telah teruji manfaat dan efektiftasnya.

Mengenal SWEBOK (Software engineering Body of Knolwdge) 2

Sunday, June 1st, 2008

Mengenal SWEBOK (Software engineering Body of Knolwdge) 2

Sejarah SWEBOK

Sebenarnya inisiatif perlunya sebuah standar tentang berbagai persepsi dalam software engineering ini sudah ada lebih dari 20 tahun, hal tersebut bisa dilihat dari rangkaian workshop yang dilakukan selama 1981 s/d 1985 oleh IEEE tentang standar software engineering. Workshop tersebut melibatkan para praktisi yang mempunyai kemampuan dan pengetahuan dalam software engineering, dimana mereka kemudian melakukan sharing pengetahuan tentang standar software engineering yang mereka gunakan. Worshop tersebut juga membahas tentang rencana standarisasi pengembangan perangkat lunak yang akan digunakan dimasa mendatang, termasuk didalamnya adalah ukuran dan matrik produk dan proses-proses dalam pengembangan perangkat lunak. Pada tahun 1990 perencanaan untuk membuat standar internasional dalam pengembangan perangkat lunakpun dimulai, dan kemudian dilanjutkan sosialisasi dari tahun 1993 hingga tahun 2000 oleh IEEE Computer Society dan Association for Computing Machinery (ACM) tentang perlu adanya profesionalisasi dalam software engineering yang dilakukan melalui sebuah komite yaitu Software Engineering Coordinating Committee (SWECC). Sebuah kode etik akhirnya dapat dibuat dengan bantuan sukarelawan SWECC yang kemudian memulai proyek SWEBOK pada tahun 1998. Karena ruang lingkup SWEBOK yang cukup luas dan bervariasinya latar belakang sukarelawan yang terlibat, maka dibutuhkan orang-orang yang secara khusus dan penuh mengurusi proyek tersebut. Karena kebutuhan itu maka kemudian IEEE mengajak kerjasama Software Engineering Management Research Laboratory at the Université du Québec à Montréal (UQAM) untuk melakukan koordinasi. Rencana proyekSWEBOK tersebut dibagi menjadi tiga fase, yaitu Strawman, Stoneman dan Ironman. Strawman merupakan sebuah prototipe yang menunjukan bagaimana proyek di kelola, kemudian versi stoneman muncul dengan Trial Version pada tahun 2001. Saat ini SWEBOK telah memasuki fase ironman dengan adanya review dari berbagai pihak dan uji coba aplikasi.

Team proyek SWEBOK mengembangkan dua buah prinsip penting yang digunakan sebagai petunjuk proyek yaitu transparency dan consensus. Adanya dua prinsip tersebut maka berarti bahwa proses pengembangan didokumentasikan, dipublikasikan dan diumumkan sehingga keputusan penting dan statusnya dapat dilihat oleh semua orang yang terlibat. Tiga fase pengembangan SWEBOK diatas dapat digambarkan seperti berikut;

swebok
2540738904_4b827a8774_t

Mengenal SWEBOK (Software Engineering Body of Knowledge) I

Sunday, June 1st, 2008

Software engineering :

“The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software” (IEEE Computer Society).

Software engineering merupakan sebuah disiplin ilmu yang bisa dikatakan baru, sehingga walaupun hasilnya yaitu software telah banyak digunakan dalam sistem, konsep, prinsip dan metodologi yang dikembangkan saat ini, akan tetapi istilah software engineering belum terdefinisikan dengan baik sehingga disepakati dan dimengerti secara bersama. Kekurangan tersebut seringkali membuat kebingungan sehingga menimbulkan beberapa masalah serius pada tahap evaluasi, akuisisi dan penggunaan perangkat lunak dalam kerangka software engineering. Kebingunan juga terjadi pada kebutuhan level kompetensi dalam software engineering. Hal tersebut bisa terjadi dengan munculnya inisiatif-inisiatif yang mengindikasikan adanya level dalam software engineering seperti berikut;

  • Berbagai universitas yang mengadakan program software engineering.
  • Adanya lembaga yang bertanggungjawab terhadap akreditasi program software engineering di Amerika,
  • Kriteria akreditasi program software engineering yang dikeluarkan oleh The Canadian Information Processing Society.
  • Software Engineering Institute’s Capability Maturity Model for Software (SW CMM) dan Capability Maturity Model Integration yang digunakan untuk melakukan penilaian kemampuan organisasi dalam pengembangan perangkat lunak (software engineering).
  • Adanya sertifikasi profesional software engineer oleh The Texas Board of Professional Engineers,
  • Dan beberapa inisiatif lain.

Adanya beberapa inisiatif tersebut dapat dianggap sebagai asumsi awal bahwa perlu adanya Body of Knowledge yang dibuat oleh para praktisi software engineering. Body of Knowledge tersebut kalau dalam management proyek kemudian dikenal istilah Project Management Body Of Knowledge atau yang disingkat dengan PMBOK, maka dalam software engineering dikenal juga istilah yang identik yaitu Software Engineering Body Of Knowledge atau SWEBOK.

Tujuan dibuatnya Software Engineering Body of Knowledge adalah untuk mengorganisir dan mengkatalogisasi knowledge dalam software engineering secara sistematis, singkat dan deskripsi yang lengkap tentang software engineering itu sendiri. SWEBOK sendiri lebih menitik beratkan pada beberapa tema dalam software engineering seperti berikut;

  1. Mengenalkan sebuah pandangan atau paradigma yang konsisten dalam pengembangan perangkat lunak (software engineering).
  2. Mengklarifikasi serta memperjelas tempat dan ruang lingkup software engineering dengan ilmu-ilmu lain seperti computer science, project management, computer engineering dan matematika.
  3. Memberikan karakteristik kandungan knowlegde dalam software engineering.
  4. Menyediakan akses secara “topical” pada SWEBOK.
  5. Memberikan dasar untuk pengembangan kurikulum dan sertifikasi software engineering.