Friday, September 28, 2007

16 Ramadhan 1428 Hijrah

Alhamdulillah dah 16 hari kita berada dalam bulan Ramadhan yang penuh dengan keberkatan. Hari ini di Masjid Negara ada perhimpunan membantah sistem kehakiman negara yang sedang menuju kehancuran. Negaraku semakin kalut dengan pelbagai jenayah yang sedang berlaku ianya amat merisaukan. Tak tahulah aku apa pemimpin hari ini buat, ok lah cukup dengan sedikit cerita pasal kesakitan hati aku melihat sistem yang dijalankan oleh pemimpin hari ini.

Hari ini kesakitan hati aku terubat sikit kerana berjaya memasukan NHibernate.Linq kedalam project aku, emm seronok apabila dapat query menggunakan ORM NHibernate berserta LINQ query statement. bdiaz developer yang menghack untuk integrate NHibernate & LINQ , ada beberapa contoh dlm site tersebut boleh dijadikan tutorial untuk memahami dengan lebih mendalam.

Jadi dengan beberapa tool yang digunakan sekrang aku harap development time untuk aku semakin pendek dan cepat.

Update
Salah seorang member dalam yahoo group message aku, hendak cari MS SQL DBA yang tahu buat database replication sebagai part time DBA, aku bukan expert dengan DB so tak dapat membantu, kena cari rakan-rakan lain.. siapa budak geng kat tmnet yang boleh buat ek..emmm.. kena cari maklumat nie..

Ada sesorang forward kedalam email aku menarik petikan ini


Di dalam hidup manusia, yang penting ialah BERKAT.
Bila hidup kita berkat, diri ini akan selamat.
Apabila diri selamat, rumahtangga jadi sepakat.
Apabila rumahtangga jadi sepakat, masyarakat jadi muafakat.
Apabila masyarakat jadi muafakat,

negara kita menjadi kuat.



Apabila negara menjadi kuat,

negara luar jadi hormat. Apabila negara luar

jadi hormat, permusuhan pun tersekat.

Apabila permusuhan tersekat,
pembangunan pun meningkat. Apabila pembangunan pun meningkat,
kemajuan menjadi pesat.



TETAPI AWAS, apabila pembangunan meningkat, kemajuan menjadi pesat,
kita lihat bangunan naik bertingkat-tingkat.

Ditengah-tengah itu, tempat maksiat tumbuh macam kulat. Apabila
tempat-tempat maksiat tumbuh macam kulat, KETIKA ITU manusia mula
mengubah tabiat. Apabila manusia telah mengubah tabiat,
ada yang jadi lalat ada yang jadi ulat.
Apabila manusia dah jadi ulat, sembahyang makin hari makin liat.
Apabila sembahyang jadi liat, orang baik ada yang bertukar jadi jahat.


Apabila orang baik bertukar jahat,

orang miskin pula nak kaya cepat.
Apabila orang miskin nak kaya cepat,

orang tua pula nak mati lambat.


Apabila orang tua nak mati lambat,

tak dapat minum madu telan jerla
minyak gamat.

Yang lelaki, budak budak muda pakai

seluar ketat. Semua nak tunjuk kuat.
Bila berjudi, percaya unsur kurafat.
Tapi hidup pula yang melarat.
Tali kasut dah tak berikat.
Rambut pun jarang sikat.

Yang perempuan, pakai mini sekerat.
Suka pakai baju ketat.
Suka sangat menunjukkan pusat.
Hingga tak pedulikan lagi batasan aurat.
Pakai pulak yang singkat-singkat.
Kadang-kadang ternampak benda 'bulat'.

Bila jadi macam ini, siapa lihat pasti tercegat.
Silap gaya jadi gawat, bohsia bohjan lagi hebat.
Duduk jauh berkirim surat .
Bila berjumpa, tangan berjabat.
Kemudian pakat lawan peluk siapa erat.
Masa tu, nafas naik sampai tersekat-sekat.
Usah peduli agama dan adat.
Usah takut Allah dan malaikat.
Yang penting apa kita nak buat?
Kita 'bukti' lah kita buat.
Akhirnya perut kempis dah jadi bulat.
Apabila perut kempis dah jadi bulat,

maka lahirlah
pula anak-anak yang tak cukup sifat.
Bila anak-anak tak cukup sifat, jam tu kita tengok bayi dibuang di
merata tempat.
MAKNANYA KETIKA ITU, IBLIS MULA MELOMPAT.
Dia kata apa? Habis manusia dah masuk jerat.
Habis manusia telah tersesat.
Inilah dia fenomena masyarakat.
Oleh itu wahai saudaraku dan para sahabat,
Marilah kita pakat mengingat,
Bahawa dunia hari ini makin singkat,
Esok atau lusa mungkin kiamat,
Sampai masa kita semua akan berangkat! .
Berangkat menuju ke negeri akhirat.

Di sana kita akan ditanya apa yang kita buat.
Masa tu, sindri mau ingat.

Umur mu banyak mana mu buat ibadat...?
Zaman muda mu, apa yang telah mu buat...?
Harta benda anta, dari mana anta dapat...?
Ilmu anta, adakah anta manafaat...?

Semoga ianya dapat mengingatkan kita supaya segera
meninggalkan maksiat dan memperbanyakkan ibadat.

(Petikan ucapan Ustaz Hj. Akil Hayy Rawa.
Sebarkanlah ini kepada ahli keluarga, saudara-mara, rakan-rakan dan
sahabat handai kita agar masyarakat
kita akan menjadi sebuah masyarakat yang bukan sahaja maju dari segi
duniawi malah ukhrawi. Insya-Allah...Allahhuakbar! Allahhuakbar!
Allahhuakbar!)



Thursday, September 27, 2007

Update

A'salam , aku dah lama tak dapat hendak mengupdate sebarang tulisan disini, aku akan join another company bulan 12 nie sebagai Solution Architect. Last week aku attend 2 kali sessi menginterview candidate yang insyAllah kalau dipilih akan join team aku.

Di sini masih ada lagi project ongoing yang perlu diselesaikan seperti Customer Management System.

Ada tools baru yang aku jumpa yang aku rase dpt memendekkan lagi process soft dev aku, aku dah rase menjadi semakin malas nak buat code heheh, adakah aku perlu beralih ke ruby?? emm munkin juga.. hahaha :)


Tools:
ActiveWriter

Thursday, September 13, 2007

Ramadhan

Selamat menyambut Ramadhan Al-Mubarak kepada semua yang singgah kedalam web ini :) Semoga ibadah puasa tahun ini lebih baik dari tahun-tahun sebelumnya.

Tuesday, September 04, 2007

Domain Model - Tips

Semalam aku ada update tentang bagaimana menganalisa domain dari property/attribute kepada menjadi konsep object dan akhirnya bila menbuat sekali lagi interaction object tersebut di design menjadi interface untk support pelbagai jenis kelakuan (method)

Tips
1. Mana-mana property dalam object bukannya terdiri dari simple text, ia sepatutnya dikeluarkan menjadi object yang lain dan bina hubungan antara object tersebut.

2. Hubungan antara object boleh menjadi konseptual object jika hubungan tersebut adalah kompleks

Sebagai contoh satu scenario dimana kita hendak bina sistem perkiraan harga kereta yang dijual oleh penjualkereta(salesman). Kita boleh je design seperti berikut:



Ok sekarang kita kaji hubungan salesman dan kereta, hubungan antara kedua-dua object ini dihubungankan dengan kaitan 'sale' iaitu salesman menjual kereta. Hubungan tersebut sebenarnya bukan hubungan yang simple dalam ertikata yang lain banyak perkara boleh didapati dalam hubungan tersebut. Maka hubungan 'sale' tadi boleh dijadikan konseptual object Sale

Monday, September 03, 2007

DDD and TDD Software Development Architecture Guideline

Cuti sempena hari kemerdekaan aku tak pergi maner, malas nak sibuk-sibuk sambut merdeka sebab dari banyak segi negaraku ni umpama negara yang benar-benar belum merdeka. Jadi aku buat initial draft untuk DDD dan TDD Software Development Architecture Guideline. Ada beberapa buku yang aku gunakan sebagai sumber seperti Domain Driven Design - Eric Evans, Apply Domain Driven Design and Pattern - Jimmy Nilsson dan beberapa web site lagi. Alhamdulillah semasa menulis draft ini nampak lagi jelas kaitan DDD dalam software development. Sebelum nie, aku baca buku bnyk juga yang aku skip, dan kenkadang maklumat tersebut penting dalam memahami software development process.

Aku dah cover beberapa point penting dalam initial draft seperti Crunching Knowledge dan Ubiquitos Language.

Update

Aku plan dah lama nak catat apa yang aku faham pasal domain, terdapat beberapa point penting semasa captured domain model bersama domain expert.

1. mana-mana property dalam object bukannya terdiri dari simple text, ia sepatutnya dikeluarkan menjadi object yang lain dan hubungankan relation antara object tersebut.

Sebagai contoh ambil scenario sistem register pendaftaran no kereta, pendaftaran no kereta boleh didapati dengan cara biasa iaitu ikut turutan, pendaftaran memilih no istimewa yang telah di paparkan oleh JPJ seperti 1111,2222 etc dan juga pendaftaran no pilihan sendiri yang kemungkinan bukan terdiri dari no istimewa yang telah di setkan oleh pihak JPJ.


Jadi jika difikirkan secara biasa no plate kereta akan menjadi property dlm class Kereta seperti contoh:



Tiada apa yang salah cuma number plat kereta berdasarkan scenario lebih dari sekadar property , number plat boleh menjadi konsep object dimana property tersebut dikeluarkan menjadi object Plat dan tambahkan association antara object tersebut.



Kemudian kita buat satu lagi analisa untuk memenuhi scenario, number plat kereta boleh di daftarkan dengan pelbagai cara seperti ikut turutan pendaftaran, booking no pilihan dengan sejumlah bayaran dan pilih number plat sendiri. Jadi design kena tukar supaya Plat akan menjadi interface IPlat dan untuk menampung cara-cara pendaftaran tadi kita akan buat 3 lagi object yang akan implement interface IPlate