SWEBOK, Buku Pegangan Wajib Software Engineer

Resensi Buku : Guide to the Software Engineering Body of Knowledge (SWEBOK)

Tahun : 2004

Penerbit : IEEE Computer Society

Buku Guide to the Software Engineering Body of Knowledges atau biasa disingkat SWEBOOK sebenarnya sudah lama diterbitkan yaitu pada 2004 oleh IEEE Computer Society. Tetapi saya baru tahu keberadaan buku ini sekitar 1 minggu yang lalu. Setelah Pak Arry dosen Pengembangan Aplikasi Berorientasi Obyek memberikan tugas untuk membuat resensi ini.

Buku ini menurut saya sangat bagus dan setiap software engineer wajib untuk membaca dan memahami buku ini. Kenapa saya katakan bagus? Karena di buku ini semua tahapan pada software engineering dibahas secara lengkap mulai dari tahap analisa kebutuhan software sampai dengan tahap pemantau kualitas software yang sudah jadi. Dan tentunya yang cukup penting juga, buku ini bisa didapatkan secara gratis di situs www.swebok.org :-).

Buku ini dibagi menjadi 12 Chapter, secara garis besar pembahasan tiap babnya adalah sebagai berikut:

Chapter 1 Introduction To The Guide

Berisi tentang pembahasan singkat mengenai definisi software engineering dan juga gambaran umum mengenai buku SWEBOK ini.

Chapter 2 Software Requirement

Bab ini membahas mengenai tahap-tahap analisis kebutuhan software.

Chapter 3 Software Design

pada bab ini membahas mengenai bagaimana menentukan arsitektur, komponen, antarmuka, dan karakterisik dari sistem yang akan dibuat.

Chapter 4 Software Construction

Bab ini membahas kegiatan yang dilakukan untuk mengevaluasi kualitas software, dan untuk meningkatkannya, dengan mengidentifikasi kerusakan-kerusakan dan berbagai masalah yang dihadapi. Software testing terdiri dari verifikasi yang dinamis terhadap perilaku program pada satu set terbatas kasus uji, sesuai dipilih dari domain eksekusi biasanya terbatas, terhadap perilaku yang diharapkan.

Chapter 5 Software Testing

Bab ini membahas kegiatan yang dilakukan untuk mengevaluasi kualitas software, dan untuk meningkatkannya, dengan mengidentifikasi kerusakan-kerusakan dan berbagai masalah yang dihadapi. Software testing terdiri dari verifikasi yang dinamis terhadap perilaku program pada satu set terbatas kasus uji, sesuai dipilih dari domain eksekusi biasanya terbatas, terhadap perilaku yang diharapkan.

Chapter 6 Software Maintenance

Bab ini membahas memelihara produk perangkat lunak dari awal pembuatan sampai pemakaian perangkat lunak. Setiap perubahan yang tejadi pada produk perangkat lunak akan dicatat dalam bentuk log. Perubahan perangkat lunak menyebabkan perubahan kode program (coding), memerlukan test sampai menghasilkan produk dengan versi yang baru.

Chapter 7 Software Configuration Management

Merupakan tools manajemen konfigurasi yang dipakai untuk menyimpan versi komponen sistem, membangun sistem dari komponen, dan memantau rilis versi sistem ke pelanggan beserta hasil laporannya. Tools yang digunakan untuk mengatur sekumpulan aktifitas yang dirancang untuk mengontrol perubahan adalah sebagai berikut:

  • – Mengidentifikasi jenis produk yang akan diubah
  • – Audit dan report perubahan yang dibuat
  • – Mengontrol perubahan
  • – Menentukan mekanisme untuk memanage versi yang berbeda dari jenis produk
  • – Mengelompokkan produk

Chapter 8 Software Engineering Management

Bab ini membahas aplikasi dari aktivitas-aktivitas manajemen, seperti planning, coordinating, measuring, monitoring, controlling dan reporting, untuk memastikan bahwa pembangunan dari suatu perangkat lunak dilakukan secara sistematik, disiplin dan sesuai perkiraan. Oleh sebab itu, software engineering management knowledge area memetakan manajemen dari pembangunan perangkat lunak dengan perkiraan dan pemodelan dari pembangunan perangkat lunak tersebut.

Chapter 9 Software Engineering Process

Untuk membangun suatu perangkat lunak, tentu membutuhkan proses-proses tertentu yang disebut dengan model proses. Ada beberapa macam model proses di dalam Sofware Engineering seperti Linear Sequential Model (yang sering dikenal dengan Model Waterfall), kemudian prototyping dan lain sebagainya.

Chapter 10 Software Engineering Tools And Methods

Bab ini membahas kajian teoritis tentang alat bantu dan metode rekayasa perangkat lunak.

Chapter 11 Software Quality

Software Quality menitikberatkan pada kualitas dan daur hidup perangkat lunak.

Chapter 12 Related Disciplines Of Software Engineering

Bab 12 membahas mengenai disiplin ilmu yang mendukung kegiatan software engineering seperti computer engineering, computer science, management, mathematics, project management dll.

Saatnya Pindah Mirror Repository

Untuk mengakses paket-paket ubuntu agar lebih cepat, alamat mirror untuk repository harus segera diganti. Mirror ITB bukan hanya lebih cepat tetapi bisa juga diakses secara gratis melakui jaringan intranet kampus, kebetulan saya pake Ubuntu 12.04 LTS terbaru dengan codename precise. Jika anda menggunakan ubuntu versi lainnya silahkan sesuaikan saja.. 🙂

berikut cara melakukan settingnya:

1. Edit file /etc/apt/source.list:
sudo nano /etc/apt/source.lis

2. Tambahkan alamat mirror berikut:

deb ftp://ftp.itb.ac.id/pub/ubuntu precise main restricted universe multiverse
deb-src ftp://ftp.itb.ac.id/pub/ubuntu precise main restricted universe multiverse
deb ftp://ftp.itb.ac.id/pub/ubuntu precise-updates main restricted universe multiverse
deb-src ftp://ftp.itb.ac.id/pub/ubuntu precise-updates main restricted universe multiverse
deb ftp://ftp.itb.ac.id/pub/ubuntu precise-security main restricted universe multiverse
deb-src ftp://ftp.itb.ac.id/pub/ubuntu precise-security main restricted universe multiverse

3. Lakukan setting ulang apt-get

$   sudo apt-get update && sudo apt-get upgrade

sumber: http://mirror.itb.ac.id/

PHP-CLI di Windows

Sebenarnya sudah banyak bundel apache+PHP di pasaran yang dapat digunakan untuk menjalankan script PHP kita. Tapi jika anda ingin menjalankan script PHP menggunakan command line anda bisa melakukan instalasi sendiri di komputer anda. Dengan hanya menggunakan PHP-CLI untuk mengeksekusi script PHP kita bisa menghemat resources dikomputer karena ukuran file program yang relatif kecil dan juga sangat ringan. Untuk kali saya ingin menjelaskan bagaimana agar kita bisa menjalankan script PHP melalui CLI yang ada pada operating system windows. Berikut langkah-langkahnya:

1. Download program PHP dari situs http://php.net/downloads.php
2. Extract file program PHP misal di: d:\php

3. Setting system environment variable agar kita dapat langsung menjalankan perintah php pada command prompt dengan cara menambahkan PATH= d:\php\ pada Environment variable


4. Untuk memastikan apakah PHP sudah terinstal dengan baik, silahkan ketik perintah: php –help pada command prompt, jika setting sudah berhasil maka tampilan akan tampak seperti gambar di bawah, jika masih gagal pastikan langkah no 3 telah anda lakukan dengan benar.

5. Kemudian untuk mencoba mengeksekusi program php, buat script sederhana berisi pesan hello world. Misal saya beri nama helloWorld.php kemudian saya simpan di d:\php\prj\

<?php
echo"Hello World!";
?>

6. Lakukan eksekusi menggunakan perintah: php d:\php\prj\helloWorld.php

Selesai, kini anda sudah bisa menjalankan script PHP melalui command line. Semoga bermanfaat 🙂

Blok website menggunakan Squid

Buat alamat website yang akan diblok, misal:

youtube.com
mediafire.com
4shared.com
dst

Kemudian simpan alamat tersebut pada file di:

/etc/squid/BadSite.txt

Untuk memblok kata kunci tertentu, buat file berisi kata kunci yang ingin diblok:

xxx
porn
saru
dst

Kemudian simpan di:

/etc/squid/BadKeyWord.txt

Buat acl pada squid.conf

acl BadSite dstdomain “/etc/squid/BadSite.txt”
acl BadKeyWord url_regex -i “/etc/squid/BadKeyWord.txt”

Kemudian deklarasikan acl BadSite dan BadKeyWord sebagai request yang ditolak:

http_access deny BadSite
http_access deny BadKeyWord
http_allow all

Simpan Konfigurasi, dan lakukan rekonfigurasi

sudo squid -k reconfigure

Untuk mengubah halaman pesan error, rubah file yang ada di sini:

/usr/share/squid/errors/English/ERR_ACCESS_DENIED

Selesai, Semoga Bermanfaat 🙂

Perkenalan dengan IBM System x3500 dan Windows Server 2003

Beberapa waktu yang lalu saya diminta bos untuk memperbaiki server IBM System x3500 yang sudah lama rusak dan tidak terpakai. Setelah dinyalakan pada saat booting muncul pesan error:

Controller Monitor Initializing

Fatal Error: Controller monitor failed. Controller not started

Pada awalnya saya menduga kartu raid controller-nya rusak, karena lampu indikator led DASD/RAID berwarna oranye. Ketika saya mencoba untuk masuk ke BIOS ataupun ke menu konfigurasi RAID juga gagal dan selalu muncul pesan error yang sama. Singkat cerita, setelah mencari panduan dari berbagai sumber akhirnya saya mencoba untuk melepas semua hardisk server dan ternyata cara ini membuahkan hasil karena saya bisa masuk ke menu konfigurasi RAID nya. Kemudian saya setting ulang RAID ke settingan awal (default factory). Setelah melakukan reboot, Alhamdulillah server bisa normal lagi dan bisa masuk ke windows server 2003 (OS bawaan server).

Namun masalah tidak berhenti di situ saja, pada saat akan login ternyata tidak ada satupun teman yang tau password user di server ini, pun setelah saya tanya di beberapa provinsi tentang password default akun user server (kemungkinan sudah ada yg pernah mengganti password defaultnya). Setelah memastikan tidak yang tau passwordnya saya memilih untuk melakukan reset password menggunakan tool yang disebut ntpasswd yang bisa diunduh di sini. Insyaallah tutorial cara melakukan reset password di windows server 2003 akan saya tulis dipostingan berikutnya. 🙂

Sekian cerita perkenalan saya dengan server IBM System x3500, tentunya saya akan mengupdate segala sesuatu yang berhubungan dengan server ini dan juga windows server 2003 karena memang ke depannya hari-hari akan saya habiskan berinteraksi dengan mesin ini, insyaallah.

Capture Video dari Handycam Sony HVR HD 1000P Menggunakan VLC

Beberapa waktu yang lalu kantor dikirimi beberapa peralatan untuk dokumentasi kegiatan di daerah oleh kantor pusat. Selain sebuah kamera DSLR ada juga handycam Sony HVR HD 1000P. Beberapa kegiatan telah didokumentasikan oleh bagian humas dan tiba giliranku untuk membantu proses transfer video ke komputer. Beberapa alat yang dibutuhkan untuk proses capture ini:

1. Handycam Sony HVR HD 1000P

2. IEEE 1394 Card Interface (Firewire)

Kartu PCI firewire ini dibeli seharga 175ribu di makassar.

3. Kabel firewire

Kabel firewire biasanya tersedia dalam satu paket ketika kita membeli kartu PCI firewire. Apabila komputer kita sudah memiliki port firewire kita cukup beli kabel ini saja.

4. VLC

Software yang akan digunakan untuk proses capture. Software ini freeware dan juga open source, jadi kita tidak perlu mengeluarkan biaya besar untuk membeli software macam Ulead, Adobe Premier atau Pinnacle Studio :-). VLC dapat didownload secara gratis di sini:

http://www.videolan.org/vlc/

langkah-langkah untuk melakukan transfer video sangat mudah:

  1. Pasang PCI card firewire pada komputer.
  2. Hubungkan kamera dengan komputer.
  3. Settingan untuk VLC:
  4. File -> Open Capture device
  5. Pilih Video dan Audio Device -> Configure, dalam hal ini settinga saya microsoft
  6. pada Tab bawah klik -> Convert,
  7. Tuliskan nama file yang diinginkan, kemudian lakukan setting codec di sini;
  8. Encapsulation: MPEG1
  9. Video Codec: MPEG1
  10. Audio Codec: MPEG Audio
  11. Kemudian klik start
  12. Langkah terakhir tekan play pada kamera dan juga tombol play pada VLC.
  13. Tunggu sampai proses transfer selesai.

Semoga bermanfaat.

[Solved] Menggabung 2 File Ascii

Saya diminta untuk melakukan tabulasi data dari file ascii dengan menggunakan CSPro oleh seorang kawan. Ada 5 file ascii berekstensi *.dat yang akan saya run. Daripada bekerja dua kali, nge-run ke-5 data terus melakukan penjumlahan, saya mencoba untuk menggabungkan ke 5 file tersebut menjadi 1 file ascii gabungan. Berikut caranya:

Misal nama ke -5 file tersebut:

ascii1.dat
ascii2.dat
ascii3.dat
ascii4.dat
ascii5.dat

Ketikan perintah berikut di command prompt windows:

copy /b ascii* asciigab.dat

dimana asciigab.dat adalah nama file gabungannya. Sekian semoga bermanfaat 🙂