Yani’s Weblog

it’s all about software engineering…

Tahukah kamu ? (5)

Effort untuk melakukan coding pada rangkaian tahap software development bisa ditekan hingga hanya 20%.
Effort terbesar seharusnya dialokasikan untuk tahap design… Dari hasil design yang lengkap, dapat dibangkitkan source code (atau paling tidak skeleton-nya) dengan bantuan tool.

Yang biasa terjadi adalah, design secukupnya, kemudian coding … debuging… coding… debuging… coding…
Bisa-bisa, effort coding dan debuging mencapai 80%…

Jadi, pastikan design sudah dibuat cukup detil… Jangan bebani programmer dengan sisa pekerjaan design

June 27, 2008 Posted by yaniwid | others, software process | | 8 Comments

Mau protes ??

June 27, 2008 Posted by yaniwid | fun | | 3 Comments

Weaving pada AOP

Dengan AOP (aspect oriented programming), kita bisa melokalisir kode-kode program yang biasanya tersebar (cross-cut) di banyak kelas. Kode-kode tersebut biasanya berupa kode-kode untuk aspek tertentu seperti, kode untuk logging, kode untuk mekanisme security, dll..

Pada AOP, kita tidak hanya mendefinisikan class, tetapi juga mendefinisikan aspect, yang menjadi tempat lokalisasi kode-kode aspek tadi. Dengan demikian, apabila kita ingin mengubah salah satu aspek, kita tidak perlu menelusuri kelas-kelas yang terkena akibat perubahan…

Yang hebat adalah ide untuk ‘menyisipkan’ (weaving) kode-kode aspek tadi di baris yang tepat dan di kelas yang tepat. Proses ini dilakukan pada saat kompilasi kode. Contoh bahasa pemrograman berorientasi aspek adalah AspectJ yang merupakan perluasan dari Java.

Bramanian (1998 ) melakukan visualisasi mekanisme weaving ini, sehingga kita bisa lebih paham bagaimana mekanisme tersebut berjalan.

Ayo, siapa yang mau TA dengan topik AOP ??

June 27, 2008 Posted by yaniwid | final project | | 5 Comments

SDLC

SDLC (software development life cycle) adalah siklus yang harus dilakukan pada proses pembangunan perangkat lunak. Umumnya terdiri dari tahap berikut: analisis, perancangan, coding, pengujian, dan perawatan.

Bagaimana tahapan-tahapan tersebut dilaksanakan, akan tergantung pada model proses yang dipilih. Ada model water fall, prototyping, spiral, dll… Atau yang terbaru: Agile model… (ttg agile model, kita bahas di posting berikutnya).

June 27, 2008 Posted by yaniwid | introduction, software process | | 3 Comments