by Agus Kurniawan
19. November 2011 09:13
Pada edisi 10 (Oktober 2011) majalah PC Media, saya menulis dua artikel dan salah satunya adalah Dasar Pemrograman Socket Dengan Java. Apa Itu Socket? Socket adalah suatu abtraksi yang mana aplikasi dapat mengirim dan menerima data seperti sama halnya dengan membuka suatu file untuk dibaca dan ditulis pada tempat penyimpanan file. Socket memungkinkan untuk masuk kedalam jaringan dan berkomunikasi dengan aplikasi lain yang juga masuk kedalam jaringan yang sama. Informasi yang ditulis kedalam socket pada suatu aplikasi pada suatu mesin dapat dibaca oleh aplikasi lain pada mesin yang berbeda dan sebaliknya. Socket dapat bekerja dibanyak protokol dan ilustrasi bagaimana socket berkomunikasi satu dengan lainnya dapat dilihat pada gambar 1. Pada artikel ini kita akan membahas socket yang diimplementasi pada protokol TCP/IP dan UDP/IP. Gambar 1. Ilustrasi komunikasi antar socket Pengetahuan tentang socket merupakan pengetahuan wajib yang harus diketahui ketika kita membuat aplikasi berbasis jaringan. Oleh karena itu, mula-mula penulis akan menjelaskan bagaimana arsitektur socket pada platform Windows dan Linux. Socket Pada Windows Istilah socket pada platform Windows lebih dikenal dengan istilah Winsock. Winsock ini dibuat untuk standart interface programming TCP/IP pada semua versi dari Microsoft Windows termasuk Windows Server 2003/2008, Windows Vista/7, Windows XP, Windows 2000, Windows NT, Windows 98/95, Windows CE dan Windows 3.x. Keuntungan Winsock yang diciptakan oleh Microsoft antara lain: 1. Menyediakan open standart API sehingga memudahkan dalam mengakses jaringan untuk segala platform operating system dalam lingkungan Microsoft Windows. 2. Aplikasi yang dibuat oleh developer pada port BSD Socket dapat juga berjalan dalam operating system Windows. 3. Memberikan kemudahan pada pemakai dan manager IT dalam menemukan pilihan yang dapat bekerja tanpa melakukan modifikasi terlalu banyak. Motivasi untuk menciptakan Winsock untuk versi 2 terutama untuk menyediakan interface transport sebuah protocol-independent yang mempunyai kemampuan support jaringan termasuk komunikasi multimedia real-time. Disamping itu juga, Winsock 2 merupakan perbaikan dari Winsock sebelumnya dan mempunyai kemampuan lebih. Pada gambar 2 merupakan arsitektur dari Window Socket. Sedangkan Winsock 2 mempunyai arsitektur yang lebih fleksibel yang support multiple protocol stacks, interfaces, dan service providers secara simultan. Pada gambar 2 juga terlihat alur dari aplikasi yang dibedakan dalam Winsock 2.0 dan Winsock 1.1 yang ditangani oleh file WS2_32.dll. Gambar 2. Arsitektur Winsock 2.0 Dengan model arsitektur diatas, maka para developer dan vendor dapat membuat aplikasi untuk mengakses jaringan melalui Winsock 2.DLL yang dapat bekerja dalam platform operating system Windows. Socket Pada Linux Sistem operasi Linux mengimplementasi standard Berkeley socket API yang awalnya diimplementasi pada BSD Unix. Secara untuk arsitektur socket pada network layer sistem operasi Linux dapat dilihat pada gambar 3. Gambar 3. Arsitektur umum socket pada Linux Interface Berkeley socket mengijinkan sebuah program dapat membuka komunikasi ke suatu target mesin lainnya. Network Device Driver memungkinkan beberapa peralatan jaringan dapat digunakan pada suatu saat. Peralatan jaringan ini terlebih dulu didaftarkan pada sistem sesuai dengan tipe nya seperti Ethernet, PPP, X.25 dan sebagainya. Mengenal Java Berbasis Jaringan Pada saat artikel ini ditulis Java JDK yang dikembangkan oleh Sun Microsystem sudah mencapai versi 6 dan secara garis besar pembagian library Java dapat digambarkan sebagai berikut Gambar 4. Diagram Java API 6 Pada diagram Java API diatas terlihat begitu banyak sekali API dan buku ini akan fokus ke library Java dibagian Networking yang dikumpulkan dalam package java.net. Lebih lengkapnya, pembaca dapat membacanya di majalah PC Media edisi Oktober 2011. Semoga berguna.
01315c41-d66e-4981-a093-45de9a6cb522|0|.0
Tags:
Papers | Java
by Agus Kurniawan
17. November 2011 10:20
Beberapa perusahan, lembaga atau mungkin institusi kita mempunyai Active Directory yang masih berjalan diatas sistem operasi Windows Server 2003 padahal saat ini Microsoft sudah meluncurkan Active Directory untuk Windows Server 2008 yang dikenal dengan Active Directory Domain Services (ADDS).
Ada banyak keuntungan yang diperoleh ketika kita mengimplementasi Active Directory dengan Windows Server 2008. Pada artikel ini penulis mengajak pembaca bagaimana melakukan migrasi Active Directory Windows Server 2003 ke Windows Server 2008 dengan berbagai skenario.
Skenario Migrasi
Secara umum migrasi Active Directory dari lingkungan Windows Server 2003 ke Windows Server 2008 dapat dilakukan dengan tiga pendekatan antara lain
· In-place upgrading
· Transitioning
· Restructuring
Masing-masing skenario ini mempunyai keuntungan dan kerugian. Kita akan membahasnya pada sub judul selanjutnya.
Skenario In-place upgrading
Skenario In-place upgrading memungkinkan kita langsung dapat menguprade dari sistem operasi Windows Server 2003 ke Windows Server 2008 sehingga Active Directory akan dapat di upradge. Sedangkan Windows Server 2003 dan Windows Server 2003 R2 akan dapat di upgrade ke Windows Server 2008 secara langsung apabila memenuhi syarat sebagai berikut
· Windows Server 2003 minimal Service Pack 1
· Tidak dapat upgrade untuk cross-architecture diantara platform x86, x64 dan Itanium
· Standard Edition dapat di upgrade ke Standard and Enterprise Edition
· Enterprise Edition hanya dapat di upgrade ke Enterprise Edition
· Datacenter Edition hanya dapat di upgrade ke Datacenter Edition
Berikut ini langkah-langkah melakukan migrari Active Directory Windows Server 2003 ke Windows Server 2008:
1. Login ke Active Directory Windows Server 2003
2. Masukkan DVD Windows Server 2008
3. Jalankan CMD
4. Arahkan ke direktori dimana DVD Windows Server 2008 berada. Misalkan drive D adalah drive DVD Windows Server 2008
5. Arahkan ke path D:\sources\adprep
6. Pertama-tama kita akan mempersiapakan forest yang akan dilakukan migrasi
7. Selanjutnya ketik pada CMD
adprep /forestprep
8. Selanjutnya akan muncul seperti gambar 1
9. Ketik C dan selanjutnya tekan ENTER
10. Contoh hasil eksekusi dapat dilihat pada gambar 2
11. Langkah selanjutnya kita mempersiapkan domain
12. Ketik pada CMD
adprep /domainprep
13. Contoh hasil eksekusinya yang sukses seperti pada gambar 3
14. Apabila akan membuat Read Only DC (RODC) maka kita harus mempersiapkannya. Jika tidak maka bisa dilanjutkan ke langkah 16
15. Untuk membuat RODC, ketik pada CMD
adprep /rodcprep
16. Apabila semua proses persiapan selesai maka klik tombol Install pada kotak dialog Windows Server 2008 Installation seperti gambar 4
17. Jika tidak muncul kotak dialog ini, klik dua file setup.exe pada DVD Windows Server 2008
18. Selanjutnya ikuti proses instalasinya
19. Jika menemukan kotak dialog seperti gambar 5, pilih Upgrade
20. Akhirnya selesai juga migrasi dengan metode In-place upgrading
Gambar 1. Periapan migrasi forest
Gambar 2. Contoh hasil eksekusi persiapan migrasi forest
Gambar 3. . Contoh hasil eksekusi persiapan migrasi domain
Gambar 4. Kotak dialog Windows Server 2008 Installation
Gambar 5. Upgrade ke Windows Server 2008
Skenario Transitioning
Skenario Transitioning adalah skenario dimana kita menambahkan Windows Server 2008 sebagai Domain Controller pada lingkungan Active Directory yang sedang berjalan. Setelah sukses memindahkan Flexible Single Master Operations (FSMO) roles ke Windows Server 2008 maka kita dapat menghapus DC pada Windows Server 2003. Skenario ini dapat dilakukan pada lingkungan Active Directory yang functional level minimal Windows 2000 Native.
Skenario ini yang cocok untuk kondisi
· Struktur Active Directory yang komplek
· Mesin server yang sudah tua
· Ada kesempatan untuk memindahkan drive file Active Directory
Berikut langkah-langkah proses migrasi dengan pendekatan Transitioning:
1. Install OS Windows Server 2008
2. Install DC Windows Server 2008 yang menjadi member DC Windows Server 2003
3. Lakukan pemindahan FSMO role ke mesin Windows Server 2008
4. Backup semua data dan pindahkan ke DC mesin Windows Server 2008
5. Jika sukses maka mesin DC Windows Server 2003 dapat dimatikan
Untuk bagaimana memindahkan FSMO role ke mesin Windows Server 2008 dapat dibaca pada sub judul Transfer FSMO roles.
Skenario Restructuring
Restructuring adalah cara migrasi dari Domain Controller Windows Server 2003 ke Windows Server 2008. Skenario ini memungkinkan untuk memindahkan semua resource dari satu domain Windows Server 2003 ke domain baru Windows Server 2008. Ini dapat dilakukan dengan Active Directory Migration Tool (ADMT).
Skenario ini sangat cocok untuk kondisi
· AD sering terjadi masalah
· Ingin membangun struktur AD yang baru
· Ingin melakukan merge atau split dua AD forest
Transfer FSMO Roles
FSMO (Flexible Single Master Operation) banyak dimanfaatkan pada Active Directory Windows Server 2000 dan Windows Server 2003 sedangkan di Windows Server 2008 istilah FSMO diganti dengan Operations masters. Pada FSMO roles terhadap beberapa role yaitu
· Scheme Master
· Domain Naming Master
· PDC Emulator
· RID Master
· Infrastructure Master
Pada umumnya FSMO menjadi satu pada Domain Controller (DC) ketika proses instalasi. Kita dapat memindahkan FSMO roles ke beberapa DC. Transfer FSMO dapat dipindahkan dari satu DC ke DC lainnya oleh administrator atau menghapus DC tersebut. Bagaimanapun juga proses ini dilakukan secara manual. Kita dapat melakukan transfer FSMO roles ke DC lainnya dengan menggunakan Ntdsutil.exe atau MMC snap-in tool yang disediakan oleh OS Windows.
Untuk memindahkan FSMO roles memerlukan hak akses berdasarkan user group pada Active Directory. Berikut ini tabel untuk user group untuk memindahkan FSMO roles
FSMO Roles
User Group yang dapat mempunyai hak akses
Scheme
Scheme Admins
Domain Naming
Enterprise Admins
RID
Domain Admins
PDC Emulator
Infrastructure
Untuk ilustrasinya, penulis melakukan simulasi ini yang dilakukan pada Windows Server 2003 x86. Kita akan menggunakan GUI melalui MMC Snap-In. Oleh karena itu, kita harus melakukan registrasi Schmmgmt.dll. Berikut bagaimana melakukan registrasi Schmmgmt.dll
1. Klik Start dan klik Run
2. Tulis regsvr32 schmmgmt.dll seperti pada gambar 6
3. Setelah selesai, klik tombol OK
4. Jika sukses maka akan muncul kotak dialog seperti gambar 7
Gambar 6. Registrasi Schmmgmt.dll
Gambar 7. Proses registrasi Schmmgmt.dll sukses
Setelah kita sukses melakukan registrasi Schmmgmt.dll maka kita dapat melakukan transfer FSMO roles dari satu DC ke DC lainnya.
Transfer Schema Master Role
Berikut ini langkah-langkah melakukan transfer Master role dari satu DC ke DC lainnya:
1. Klik tombol Start Windows dan klik Run
2. Ketik mmc
3. Selanjutnya akan muncul kotak dialog seperti gambar 8
4. Pada kotak dialog MMC ini klik menu File-> Add/Remove Snap-in
5. Kemudian akan muncul kotak dialog Add/Remove Snap-in
6. Pada kotak dialog ini, klik tombol Add sehingga akan muncul kotak dialog Add Standalone Snap-in seperti gambar 9
7. Pada kotak dialog ini, pilih Active Directory Schema
8. Jika selesai klik tombok Add dan klik tombol OK
9. Kemudian pada dialog MMC akan terlihat Active Directory Schema
10. Pada menu tree Active Directory Schema, klik kanan sehingga akan muncul context menu seperti gambar 10
11. Pilih Change Domain Controller…
12. Selanjutnya kita akan muncul kotak dialog seperti gambar 11
13. Ketik Domain Controller yang didalamnya ada Scheme Master Role
14. Jika selesai, klik tombol OK
15. Jika sukses maka kita MMC ini sudah bekerja pada Domain Controller sesuai yang dipilih sebelumnya
16. Untuk memindahkan dan transfer Scheme Master Role ke Domain Controller dengan cara mengklik kanan pada Directory Schema (lihat gambar 10)
17. Pada contect menu ini, pilih Operations Master sehingga kita akan memperoleh kotak dialog seperti gambar 12
18. Klik tombol Change dan pilih target Domain Controller
19. Jika selesai dan sukses, klik tombol Close
Gambar 8. Kotak dialog MMC
Gambar 9. Kotak dialog Add Standalone Snap-in
Gambar 10. Context menu pada Active Directory Schema
Gambar 11. Mengganti Domain Controller untuk Active Directory Schema
Gambar 12. Melakukan transfer Operations Master
Transfer Domain Naming Master Role
Berikut ini langkah-langkah melakukan transfer Domain Naming Master role dari satu DC ke DC lainnya:
1. Klik Active Directory Domains and Trust pada Administrative tools seperti pada gambar 13
2. Selanjutnya kita akan memperoleh kotak dialog seperti pada gambar 14
3. Untuk memindahkan atau transfer Domain Naming Master role ke Domain Controller lain dengan mengklik kanan pada menu tree Active Directory Domain and Trusts seperti gambar 15
4. Pilih menu Operations Master
5. Selanjutnya kita akan memperoleh kotak dialog seperti gambar 16
6. Klik tombol Change untuk melakukan transfer
7. Jika selesai dan sukses, klik tombol Close
Gambar 13. Menu Active Directory Domains and Trust
Gambar 14. Kotak dialog Active Directory Domains and Trust
Gambar 15. Klik menu pada Active Directory Domains and Trust
Gambar 16. Memindahkan Domain Naming Master role
Transfer RID Master, PDC Emulator, dan Infrastructure Master Role
Kita dapat melakukan transfer RID Master, PDC Emulator dan Infrastructure Master secara bersamaan. Berikut ini langkah-langkahnya:
1. Klik Active Directory Users and Computers di Administrative Tools seperti gambar 13
2. Selanjutnya kita akan memperoleh kotak dialog Active Directory Users and Computer seperti gambar 17
3. Klik kanan pada domain seperti gambar 18
4. Pilih All Tasks->Operations Masters
5. Kemudian kita akan memperoleh kotak dialog seperti gambar 19
6. Klik tab RID
7. Klik tombol Change untuk memindahkan RID ke domain Controller lainnya
8. Lakukan halyang sama untuk PDC dan Infrastructure
9. Jika selesai semau, klik tombol Close
Gambar 17. Kotak dialog Active Directory Users and Computer
Gambar 18. Context menu pada Active Directory Users and Computer
Gambar 19. Kotak dialog Operations Master
Active Directory Migration Tool (ADMT)
Tool ini sangat berguna untuk melakukan backup data ataupun memindah Active Directory. Saat penulis menulis artikel ini sudah ada versi 3.1. Tool ini dapat di unduh di
http://www.microsoft.com/downloads/details.aspx?familyid=AE279D01-7DCA-413C-A9D2-B42DFB746059&displaylang=en
ADMT 3.1 hanya dapat dijalankan pada OS Windows Server 2008. Instalasi cukup menjalankan file setupnya seperti gambar 20. Ikuti petunjuk instalasinya. Setelah selesai instalasi, kita dapat melakukan backup data atau memindahkan AD. Contoh untuk backup data user seperti gambar 21.
Gambar 20. Instalasi ADMT
Gambar 21. Backup data user AD
Referensi
· TechNET, Active Directory Windows Server 2008
· Will Panek and James Chellis, MCTS Windows Server 2008 Active Directory Configuration-Study Guide, Wiley Publishing, 2008
**artikel ini sudah dipublikasikan ke majalah PC Media edisi Februari 2010. Semoga berguna
19456f8e-6ada-4b8f-a50f-eb8b49e8a9a6|1|5.0
Tags:
Papers | Windows
by Agus Kurniawan
15. November 2011 06:26
Membuat aplikasi perangkat lunak tidaklah semudah apa yang dibayangkan. Membuat aplikasi juga bukan sekedar memprogram dan debugging. Banyak faktor non teknis kadang mempengaruhi dalam proses pembuatan aplikasi apalagi aplikasi ini dibuat dengan banyak team. Hal ini kita memerlukan suatu metodologi mulai mengatur team, jadwal hingga proses pembuatan aplikasi dalam membuat aplikasi perangkat lunak.
Pada artikel ini penulis akan mengajak pembaca bagaimana memanfaatkan metodologi Scrum dalam membuat aplikasi yang dibantu dengan tool Visual Studio 2010 dan Team Foundation Server 2010.
Mengenal Metodologi Scrum
Scrum adalah suatu framework yang bersifat iteratif dan incremental dalam manajemen proyek yang berbasis agile software development (salah satu tipe software engineering). Fokus utama Scrum adalah manajemen pengembangan produk.
Sekitar tahun 1986 Hirotaka Takeuchi dan Ikujiro Nonaka mengembakan suatu solusi dalam pengembangan produk komersial yang dapat meningkatkan kecepatan dan flesibilitas dimana ini didasarkan pada studi kasus industri manufacturing, automative, komputer, photocopier dan printer. Metode ini mereka sebut dengan pendekatan holistic atau rugby.
Sedangkan DeGrace dan Stahl pertama kali memperkenalkan istilah Scrum pada metodologi rugby pada tahun 1991. Istilah metodologi Scrum diperkenalkan pada workshop Business Object Design and Implementation yang merupakan bagian OOPSLA pada tahun 1995 dimana Sutherland dan Schwaber membawakan makalah mengenai metodologi Scrum.
Beberapa orang istilah Scrum kadang ditulis dengan SCRUM (semua huruf besar) walaupun SCRUM bukanlah suatu singkatan tertentu. Scrum Roles Pada implementasi metodologi Scrum pembagian team dibagi menjadi tiga role yaitu • Product Owner • ScrumMaster • Team
Product owner mewakili suara customer dan bertanggungjawab terhadap team yang akan mengimplementasi dari requirement ke implementasi. Product owner biasanya menulis daftar fitur produk berdasarkan diskusi dalam model user story dan memperioritaskan daftar fitur yang dimasukkan kedalam product backlog. Satu team Scrum akan mempunyai satu product owner dan juga anggota team development. Direkomendasikan bahwa role product owner tidak digabungkan dengan role ScrumMaster.
ScrumMaster bertugas untuk membawa team dari hambatan-hambatan dalam pengembangan produk. ScrumMaster bertanggungjawab atas kemajuan pengembangan produk.
Team yang bertanggungjawab dalam realisasi produk jadinya. Biasanya satu team terdiri sampai 5-9 orang dengan ketrampilan yang dimiliki bervariasi yaitu analisa, desain, develop, test, technical communication hingga dokumentasi. Setiap anggota team dituntut untuk bekerja sendiri dan mengatur manajemen sendiri dalam koridor dalam satu team.
Visual Studio 2010 dan Team Foundation Server
Seperti yang kita ketahui, Microsoft sudah mengeluarkan tool development yang dikenal dengan Visual Studio. Pada saat ini produk Visual Studio yang terbaru adalah Visual Studio 2010. Tool ini tidak hanya ditujukkan untuk memprogram tetapi dalam digunakan untuk melakukan desain dan testing. Contoh aplikasi Visual Studio 2010 Ultimate Edition dapat dilihat pada gambar 2. Lebih lengkap mengenai produk ini pembaca dapat melihat pada website Microsoft di http://msdn.microsoft.com/en-us/vstudio/default
Gambar 2. Aplikasi Visual Studio 2010 Ultimate Edition
Ketika kita mengembangkan suatu aplikasi secara bersama-sama dengan Visual Studio maka diperlukan suatu media yang dapat menghubungkan kode program antar programmer, architect dan tester. Dalam hal ini, Microsoft menyediakan produk apa yang dikenal dengan Team Foundation Server. Produk ini menawarkan solusi meliputi • Project Management • Work item tracking (WIT) • Version control • Test case management • Build automation • Reporting • Virtual lab management
Team Foundation Server (TFS) merupakan produk berbasis produk server yang ditujukkan untuk programmer, tester, architect, project manager, business analysis dan orang yang ingin berkontribusi dalam pengembangan perangkat lunak.
Secara umum TFS terdiri dari dua bagian yang dapat diimplementasi dalam satu atau lebih mesin komputer. Dua bagian ini meliputi • Application Tier. Ini merupakan kumpulan web service yang mana mesin client dapat berkomunikasi pada protokol web service. • Data Tier. Ini terdiri dari database SQL Server yang menyimpan logic database dari TFS. Data ini termasuk data reporting. Seluruh data disimpan kedalam database termasuk kode program.
Contoh aplikasi Team Foundation Server 2010 dapat dilihat pada gambar 3. Pembaca dapat membaca lebih lengkap mengenai TFS pada website Microsoft dengan alamat http://msdn.microsoft.com/en-us/vstudio/ff637362
Gambar 3. Aplikasi Team Foundation Server 2010
Instalasi Template Scrum
Sebelumnya kita sudah menghubungkan Team Foundation Server dan Visual Studio 2010. Sekarang kita akan mengkonfigurasi Scrum pada Team Foundation Server dan Visual Studio 2010. Guna keperluan ini, kita harus menginstall template Scrum.
Proses instalasi template Scrum kedalam Team Foundation Server dan Visual Studio 2010 dapat dibaca di majalah PC Media edisi 10 tahun 2011.
Gambar 18. Menambah template Scrum pada Team Foundation Server
Penggunaan Scrum Pada Team Foundation Server
Setelah template Scrum sudah diinstall pada Team Foundation Server maka kita dapat langsung menggunakan. Hal yang paling mudah adalah membuat project baru.
Cara penggunaan template Scrum pada Visual Studio 2010 dapat dibaca di majalah PC Media edisi 10 tahun 2011.
Gambar 19. Memilih template Scrum pada team project
Gambar 20. Team project baru dengan menggunakan template Scrum
**seluruh isi artikel ini dapat dibaca pada majalah PC Media edisi 10 tahun 2011. Semoga berguna
4481fcfe-f922-4ac2-b673-20df82816199|0|.0
Tags:
.NET | Papers
by Agus Kurniawan
15. April 2011 08:46
Fourier transform merupakan operasi matematika yang bertujuan untuk dekomposisi dari suatu sinyal (umumnya bentuk time-domain) ke unsur pokok berdasarkan frekuensi yang terkandung. Pada artikel ini gw akan memberikan ilustrasi bagaimana melakukan Fourier transform dengan menggunakan Matlab.
Fourier Transform
Secara umum sinyal berbasis waktu atau ditulis f(t) dapat diformula dalam bentuk periodic waveform sebagai berikut:
Formula diatas cukuplah terkenal. Anda dapat membaca di buku yang membahas mengenai Fourier Series atau datang ke wikipedia link ini.
Sebagai ilustrasi, gw mengambil contoh soal dari buku [1] misalkan kita mempunyai sinyal sebagai berikut
Selanjutnya kita melakukan transformasi fourier dan hasilnya menjadi sebagai berikut
Cukup heavy dengan matematika jadi silakan memperdalam pada buku-buku, artikel, ataupun journal.
Fourier Transform Dengan Matlab
Untuk menggunakan fourier transform kita membutuhkan Symbolic Math Toolbox dan kita dapat memanfaatkan fungsi fourier untuk mengeksekusi fourier transform.
Sebagai contoh kita mempunyai fungsi yaitu selanjutnya kalau kita melakukan transformasi fourier maka hasilnya menjadi
Nah, bagaimana melakukan ini dengan menggunakan Matlab? Cukup mudah. Berikut ini kode program nya
syms t v w x;
f = exp(-x^2);
fw=fourier(f)
Disini gw menyimpan kode program diatas dengan nama file ff2.m dan selanjutnya dieksekusi melalui Matlab command. Hasilnya seperti dibawah ini
Sama kan hasilnya? tapi tunggu, tampilannya gak elegan ? gampang cukup tambahkan dengan fungsi pretty(fw) dan hasilnya menjadi seperti dibawah ini.
Mudahkan?
Kita lanjut dengan fungsi unit step yaitu dan kalau digambarkan akan menghasilkan seperti dibawah ini
Kalau fungsi unit step ini dilakukan transformasi fourier akan menghasilkan fungsi sebagai berikut
dan gambarnya fungsinya menjadi
Bagaimana ini melakukannya dengan menggunakan Matlab?
Fungsi unit step dapat memanfaatkan fungsi heaviside(x) sehingga transformasi dari fungsi unit step akan menjadi sebagai berikut
syms t w f;
u0 = heaviside(t);
fw = fourier(u0)
Kalau dijalankan akan menghasilkan seperti dibawah ini
Kalau kita perhatikan diatas, disana tertulis dirac(w) . Ini menunjukan fungsi .
Kalau kita panggil fungsi pretty(fw) maka akan menghasilkan simbolik matematika yang bagus sebagai berikut
Mari kita lebih komplek lagi. Misalkan kita mempunyai fungsi sebagai berikut
Kalau kita lakukan perhitungan transformasi fourier akan menghasilkan fungsi sebagai berikut
Sedangkan implementasi dengan menggunakan Matlab sebagai berikut
syms t w;
x = -exp(-t)*heaviside(t)+3*dirac(t);
fw = fourier(x)
Hasil eksekusinya sebegai berikut
Disini variabel i menunjukkan nilai imaginer atau j.
Kalau kita panggil pretty(fw) maka hasilnya menjadi
Well, semoga artikel ini membantu.
Jika kesulitan dengan sintak Matlab, saya juga sudah membuat tutorial pemrogaman Matlab di PE College, gratis. Cek website ini [V].
Referensi
Benoit Boulet, Fundamental of Signals and Systems, Charles River Media, 2006
Matlab Help documentation
241cb302-dc1a-41a9-8f04-e48dfe1fece5|0|.0
Tags:
MATLAB | Papers
by Agus Kurniawan
8. April 2011 09:16
Perkembangan komputer yang begitu cepat dan tanpa sadar sudah banyak dibanjiri platform komputer yang berbasis 64-bit namun perkembangan pemrograman sekarang masih juga berorientasi pemrograman berbasis 32-bit so pada edisi April 2011 majalah PC Media gw menulis mengenai bagaimana membuat program berbasis 64-bit. Apa itu Platform 64-bit? Pada konsep arsitektur komputer istilah 64-bit menunjukan 64-bit integer dan tipe data lainnya mempunya ukuran 64 bits. Ini artinya kita mendefinisikan platform 64-bit dengan panjang data yang dimiliki. Dengan ukuran data yang lebih besar dibandingkan dengan 32-bit maka sistem platform 64-bit kinerjanya akan jauh lebih cepat karena data yang diprosesnya lebih banyak. Dari segi fitur processor, platform 64-bit memungkinkan dapat meningkatkan kinerja processor tersebut. Contoh perbandingan fitur processor Intel 32-bit dan 64-bit dapat dilihat pada gambar dibawah ini Aplikasi 32-bit Pada Platform 64-bit Sebagian besar sistem operasi berplatform 64-bit tidak mengijinkan aplikasi 32-bit berjalan diatas sistem operasi ini tapi beberapa sistem operasi 64-bit mengijinkan aplikasi 32-bit berjalan diatasnya. Teknik yang digunakan menggunakan emulasi. Salah satu contohnya adalah teknologi WoW64 (Windows 32-bit On Windows 64-bit). Teknologi WoW64 memungkinkan aplikasi 32-bit dapat berjalan diatas platform OS Windows 64-bit antara lain: Windows 2000 Limited Edition Windows XP Professional x64 Windows Server 2003 x64 Windows Vista dan 7 berbasis x64 Windows Server 2008 x64 Khusus untuk Windows dengan platform Itanium aplikasi 32-bit sebagian besar tidak dapat dijalankan. Arsitektur umum teknologi WoW64 dapat dilihat pada gambar dibawah dimana realisasinya Microsoft menambahkan komponen library antara lain: WoW64.dll – Untuk mengatur initialisasi thread dan process serta melakukan interferensi system call WoW64win.dll – Menangkap GUI system call WoW64cpu.dll – Untuk mengatur thread context pada spesifik CPU Bagaimana implementasi pada C/C++, .NET dan java untuk membuat program berbasis 64-bit? lebih lengkapnya dapat dilihat pada majalah PC Media edisi April 2011. Referensi 64-Bit, http://en.wikipedia.org/wiki/64-bit Intel 64 Architecture, http://www.intel.com/technology/intel64/index.htm Microsoft .NET, http://www.microsoft.com/net Sun Java, http://java.sun.com
by Agus Kurniawan
28. March 2011 00:27
Majalah Mikrodata adalah majalah komputer yang mengkhususkan pada pemrograman. Pertama kali diterbitkan oleh Elexmedia. Majalah ini saat ini memang sudah tidak terbit lagi.
Gw sendiri ikut berkontribusi membuat artikel untuk majalah Mikrodata sekitar tahun 2002-an. Setelah dilakukan editing akhirnya proses dokumen pdf selesai. Para pembaca dapat mengunduh beberapa artikel yang dulu gw tulis.
Sistem Distribusi Data Melalui COM+ Dengan Visual Basic, Mikrodata Vol. 5 Series 17, May 2002. [unduh]
Membuat Aplikasi Teleconference Sendiri Dengan Visual Basic, Mikrodata Vol. 6 Series 17, June 2002. [unduh]
Akses Database Dengan ADO.NET Pada Aplikasi .NET, Mikrodata Vol. 7 Series 17, July 2002. [unduh]
Membangun Web Service Provider Sebagai Alternatif e-Business, Mikrodata Vol. 7 Series 17, July 2002. [unduh]
Menampilkan List Komputer dan User-nya dalam Jaringan Intranet Dengan Fungsi WNet API, Mikrodata Vol. 8 Series 17, Agustus 2002. [unduh]
Pengolahan Citra Digital Dengan Visual Basic, Mikrodata Vol. 8 Series 17, Agustus 2002. [unduh]
Mengirim E-Mail Melalui Server SMTP Dengan C#, Mikrodata Vol. 9 Series 17, September 2002. [unduh]
Sistem Cryptography Pada Framework .NET, Mikrodata Vol. 10 Series 17, Oktober 2002. [unduh]
Semoga ini berguna. Sebarkan info ini kepada rekan, sahabat dan kolega anda.
227a21c8-6d1a-4714-bb82-77affa1369d2|1|5.0
Tags:
Papers
by Agus Kurniawan
18. March 2011 09:20
Selain menulis artikel Mengenal Teknologi Mobile Qt, gw juga menulis satu artikel di majalah PC Media edisi Maret 2011 yaitu topik Mengenal Entity Framework 4.0. Apa Itu Entity Framework? Pada bulan Juli 2008 Microsoft meluncurkan ADO.NET Entity Framework yang merupakan bagian dari Visual Studio 2008 Service Pack 1 dan .NET Framework 3.5 Service Park 1. Selain itu Microsoft juga memperkenalkan LINQ (Language Integrated Query). Hal ini menunjukkan Microsoft sangat serius untuk meningkatkan produktifitas produksi dalam membangun aplikasi. Kemudian Microsoft meluncurkan Entity Framework bersamaan dengan diluncurnya Visual Studio 2010 dan .NET Framework 4.0. Apa itu Entity Framework? Entity Framework adalah sekumpulan teknologi ADO.NET yang membantu mapping antara pengembangan object-oriented dan database. Metode ini dikenal dengan ORM (Object-Rational Mapping). Kalau diteliti lebih dalam Entity Framework lebih sekedar dari ORM karena Entity Framework juga dapat bekerja sebagai ERM (Entity Relationship Model). Selain Entity Framework, kita juga dapat menjumpai solusi lain yaitu NHibernate. Solusi persistent .NET object ke relational database. NHibernate merupakan hasil porting dari Hibernate java ke .NET Framework SPRING.net. Framework berbasis open source yang merupakan hasil porting Spring Framework dimana ini memungkinkan kita untuk membuat komponen yang terintegrasi kedalam multi-tier application Pada artikel ini penulis akan memaparkan bagaimana memanfaatkan Entity Framework dalam pengolahan database secara object-oritented. Database vs Model Programmer .NET pasti sudah familiar dengan objek DataReader dan DataSets untuk melakukan koneksi ke database dan melakukan melakukan query data kedalamnya. Sebagai ilustrasi kita lihat potongan kode program untuk melakukan koneksi dan query kedalam database SQL Server: using (SqlConnection conn = new SqlConnection(@"server=(local);Database=Northwind;UID=tester;PWD=123"))
{
conn.Open();
using (SqlCommand cmd = new SqlCommand())
{
cmd.Connection = conn;
cmd.CommandType = CommandType.Text;
cmd.CommandText = "SELECT * FROM Products";
using (SqlDataReader rdr = cmd.ExecuteReader())
{
while (rdr.Read())
{
// Ambil data
}
}
}
}
Dengan menggunakan Entity Framework, kita tidak lagi kuatir mengenai database malahan kode program kita jauh lebih sederhana dan kita melakukan query ke tabel tapi query ke objek (entitas) yang mewakili business model. Hasil query-nya adalah objek dan tidak seperti yang dulu sibuk dengan konfigurasi row dan column yang di bind ke objek.
Sebagai ilustrasi, skema database Northwind untuk tabel product, categories, dan suppliers dapat dilihat pada gambar 1. Sedangkan hasil model mapping dengan Entity Framework akan menghasil class diagram seperti pada gambar 2. Dengan pendekatan ini, kita sudah tidak melakukan query sql pada kode program kita tapi kita melakukan query ke objek, contohnya sebagai berikut
using (var context = new NorthwindEntities())
{
var products = from p in context.Products select p;
}
Teknik query objek ini dengan memanfaatkan LINQ.
Gambar 1
Gambar 2
Persiapan
Kita tidak perlu melakukan persiapan yang komplek. Seperti kita ketahui bahwa Entity Framework adalah bagian dari .NET Framework 4.0 oleh karena itu ketika komputer kita sudah terinstall .NET Framework 4.0 maka kita dapat langsung memanfaatkan framework ini.
Sedangkan untuk tool IDE, kita dapat menggunakan Visual Studio 2010 yang memang sudah terintegrasi dengan target .NET Framework 4.0. Database yang digunakan adalah SQL Server. Jika pembaca ingin memanfaatkan Entity Framework untuk database selain SQL Server maka kita harus menginstall tambahan Entity Framework dari database ini. Umumnya pembaca dapat mengunduh di website database tersebut.
Lebih lengkapnya dapat dibaca pada majalah PC Media edisi Maret 2011.
Semoga berguna
by Agus Kurniawan
5. March 2011 10:13
Pada edisi maret 2011 majalah PC Media gw menulis artikel dengan judul Mengenal Teknologi Mobile Qt. Artikel ini memperkenalkan teknologi Qt pada peralatan mobile Nokia. Terima kasih untuk om Narend atas bantuannya. Apa Itu Teknologi Qt? Qt atau dibaca dengan cute awalnya adalah produk dari QtSoftware yang dibuat oleh Trolltech pada tahun 1994. Teknologi Qt banyak digunakan di banyak perusahan seperti Google, Skype dan sebagainya. Aplikasi yang dibuat dengan memanfaatkan Qt dapat dijalankan banyak platform desktop seperti Linux, Windows, dan Mac hingga sistem operasi embbeded tanpa harus merubah kode program secara keseluruhan. Dengan solusi ini para programmer tidak lagi dipusingkan dengan perbedaan platform ketika melakukan deployment aplikasi yang telah dibuat. Berikut ini beberapa platform yang di support pada Qt Embbeded Linux Mac OS X Windows Linux/X11 Windows CE/Mobile Symbian MeeGo Fitur cross-platform akan memberikan keuntungan tersendiri bagi para programmer dan pelaku bisnis yang ingin melebarkan support multi-platform. Fitur produk Qt dapat dilihat pada gambar dibawah ini Ket Gambar. Fitur produk Qt Pada tahun 2008 Nokia mengakuisisi Trolltech dan memperkenalkan teknologi Qt pada platform Symbian dan Linux. Melalui teknologi Qt para programmer dapat dengan mudah membuat aplikasi pada semua platform teknologi Nokia. Pembaca dapat mengunjungi website resmi Qt pada alamat http://qt.nokia.com yang dapat dilihat seperti pada gambar dibawah ini Lisensi Isu besar bagi para programmer ketika menggunakan suatu teknologi adalah masalah lisensi. Qt menawarkan model lisensi yang berbeda. Secara umum, Qt menawarkan 2 model lisensi yaitu • Qt Commercial • Qt GNU LGPL v2.1 • Qt GNU GPL v3.0 Perbedaan ketiga model lisensi ini dapat dilihat dibaca seperti tabel dibawah ini Commercial LGPL GPL Biaya lisensi Berbayar Tidak berbayar Tidak berbayar Harus menyediakan setiap perubahan kode program pada Qt Tidak wajib. Setiap perubahan kode program tidak wajib diserahkan ke Qt Kode program harus disediakan Kode program harus disediakan Dapatkan membuat aplikasi komersial Ya, kode program tidak wajib dibuka Ya, disesuaikan dengan aturan LGPL versi 2.1 Tidak boleh, setiap aplikasi untuk GPL maka kode program harus disediakan Ketersediaan setiap ada perubahan framework Qt Ya, akan langsung diinformasikan jika ada perubahan framework Qt Ya, sesuai dengan informasi yang disharing Ya, sesuai dengan informasi yang disharing Support Ya, tersedia sesuai dengan perjanjian dan lisensi yang dimiliki Tidak termasuk tetapi dapat dibeli sesuai dengan kebutuhan Tidak termasuk tetapi dapat dibeli sesuai dengan kebutuhan Biaya untuk runtime Ya, untuk beberapa pemakaian pada platform embedded Tidak ada Tidak ada Persiapan Qt Development Apa yang disiapkan untuk membuat aplikasi dengan menggunakan teknologi Qt? cukup mudah Pilih platform yang dipakai. Dalam hal ini disesuaikan apakah komputer anda menggunakan Windows, Linux atau Mac. Download Qt SDK sesuai dengan platform. Pembaca dapat menggunduh Qt SDK pada alamat http://qt.nokia.com/downloads Install Qt SDK. Untuk proses instalasi Qt, pembaca dapat membacanya pada sub judul selanjutnya Mulai membuat program sederhana atau pembaca dapat menjalankan contoh program yang telah disediakan. Pada saat kita akan mengunduh Qt SDK pada website http://qt.nokia.com/downloads kita ada dua pilihan untuk membuat aplikasi mobile dengan Qt yaitu • Qt SDK • Nokia Qt SDK Perbedaan SDK ini dapat dilihat pada gambar 3. Untuk keperluan development, penulis menyarankan pembaca untuk mengunduh Nokia Qt SDK karena didalamnya tersedia Qt Simulator sehingga walaupun kita tidak mempunya peralatan mobile/handphone kita tetap dapat menjalankan aplikasi tersebut melalui Qt simulator. Pembaca dapat menggunduh Nokia Qt SDK pada alamat http://www.forum.nokia.com/Develop/Qt/ . Bahasa Pemrograman Untuk Qt Mobile Setelah kita melakukan instalasi Qt maka kita akan memulai membuat programnya. Pertanyaan sekarang adalah bahasa pemrograman apa yang harus digunakan ketika membuat aplikasi mobile dengan Qt? Jawabnya adalah C++;). Oleh karena itu, pembaca harus menguasai terlebih dulu sintak pemrograman C/C++ ketika kita membuat aplikasi mobile berbasis Qt. Sebagai refreshing, pembaca dapat membaca sintak dasar C/C++ pada tabel dibawah ini Sintak Bahasa C/C++ Contoh Deklarasi variabel int number; char* name; Operator Logika && à AND || à OR ! à NOT Kondisional if(IsOk) { printf(“C/C++ ok”); } else { printf(“C/C++ tidak ok”); } Seleksi - switch switch(pilihan){ case 1: printf(“Pilihan 1”); break; case 2: printf(“Pilihan 2”); break; case 3: printf(“Pilihan 3”); break; default: printf(“Pilihan default”); } Looping - for int i; for(i=0;i<10;i++) { printf(“Hallo Qt”); } Looping - while while(IsOk) { printf(“Hallo Qt”); } Looping – do..while do{ printf(“Hallo Qt”); } while(IsOk); Tersedia juga video tutorial bahasa pemrograman C yang di host di PE College, cek URL ini. Lebih lengkap dapat dibaca di majalah PC Media edisi maret 2011. Semoga berguna.
by Agus Kurniawan
31. December 2010 07:52
Ini adalah artikel gw mengenai Wireless Sensor Network yang dipublikasikan oleh majalah PC Media edisi Januari 2011.
Apa Itu Wireless Sensor Network?
Wireless Sensor Network atau disingkat dengan WSN adalah suatu peralatan sistem embedded yang didalamnya terdapat satu atau lebih sensor dan dilengkapi dengan peralatan sistem komunikasi. Sensor disini digunakan untuk menangkap informasi sesuai dengan karakteristik . Contoh tipe sensor dapat dilihat pada table dibawah ini:
Tipe Sensor
Contoh Sensor
Temperatur
Thermistor, thermocouple
Tekanan
Pressure gauge, barometer, ionization gauge
Optik
Photodiodes, phototransistors, infrared sensors, CCD sensors
Akustik
Piezoelectric resonators, microphones
Mekanik
Strain gauges, tactile sensors, capacitive diaphragms, piezoresistive cells
Gerakan dan Getaran
Accelerometers, gyroscopes, photo sensors
Posisi
GPS, ultrasound-based sensors, infrared-based sensors, inclinometers
Kelembaban
Capacitive and resistive sensors, hygrometers, MEMS-based humidity sensors
Radiasi
Ionization detectors, Geiger–Mueller counters
Sensor-sensor ini akan mengubah data analog ke data digital. Data ini selanjutnya dikirim ke suatu node melalui media komunikasi yang digunakannya seperti
Bluetooth
Infrared
Wifi
Kemampuan sensor pada WSN secara luas membuat penggunaan WSN untuk melakukan monitoring banyak digunakan. WSN dapat digunakan dengan sensor sederhana yang memonitoring suatu fenomena sedangkan untuk yang komplek maka setiap WSN akan mempunya lebih dari satu sensor sehingga WSN ini akan dapat melakukan banyak monitoring suatu fenomena. Jika WSN ini dihubungkan ke gateway yang dapat mengakses internet maka WSN ini dapat diakses dan berkolaborasi dengan sistem lain seperti yang terlihat pada gambar 1.
Gambar 1. Ilustrasi scenario penggunaan WSN
Penerapan dan Penggunaan WSN
Teknologi WSN banyak memberikan inspirasi dalam penerapan dan penggunaan untuk segala bidang. Beberapa penerapannya contohnya
Monitoring lingkungan
Target tracking
Pipeline (Air, minyak, gas) tracking
Monitoring pertanian
Supply chain management
Traffic management
Setiap node WSN akan mengirim data sensor ke suatu base dan hasil kumpulan data semuanya akan diolah sehingga ini akan memberikan suatu informasi. Contoh penggunaan WSN pada bidang pertanian dapat dilihat pada gambar 2. Disini terlibat bahwa lingkungan pertanian dilakukan monitoring melalui WSN dan dapat diakses melalui internet baik browser maupun mobile device.
Gambar 2. Penggunaan WSN bidang pertanian
Arsitektur WSN
Setiap node WSN umumnya berisi sistem sensing, processing, communication dan power yang dapat diilustrasikan seperti pada gambar 3. Bagaimana menggabungkan ini adalah hal yang harus diperhatikan ketika kita melakukan perancangan. Sistem processor merupakan bagian sistem yang terpenting pada WSN yang dapat mempengaruhi performance ataupun konsumsi energi. Beberapa pilihan untuk processor dapat memilih antara lain:
Microcontroller
Digital signal processor
Application-specific IC
Field programmable gate array
Gambar 3. Arsitektur umum pada sebuah WSN
…………..
Referensi
Waltenegus Dargie and Christian Poellabauer, Fundamental of Wireless Sensor Networks, Wiley & Sons, 2010
Philip Levis and David Gay, TinyOS Programming, Cambridge University Press, 2009
Wikipedia, Wireless Sensor Networks, http://en.wikipedia.org/wiki/Wireless_sensor_network
Lebih lengkapnya dapat dibaca di majalah PC Media edisi Januari 2011. Semoga berguna
by Agus Kurniawan
5. December 2010 11:11
Pada majalah PC Media edisi Desember 2010, gw menulis artikel mengenai Mengenal ASP.NET MVC 2 Framework dengan memanfaatkan Visual Studio 2010. Berikut ini informasi singkat mengenai artikel ini. Apakah itu MVC? Model–View–Controller atau dikenal dengan MVC adalah salah satu architectural pattern yang digunakan pada software engineering. Konsep MVC memisahkan domain login dari input dan presentation (UI). Model diagram MVC dan hubungannya dapat dilihat pada gambar 1. Gambar 1. Relasi Model–View–Controller Model digunakan untuk manajemen informasi dan memberikan notifikasi ke observer jika ada perubahan informasi. Model biasanya dipresentasikan sebagai domain spesifik. Domain logic ditambahkan untuk monitoring perubahan status, sebagai contohnya menghitung apakah hari ini ada yang ulang tahu atau perubahan pengiriman pada shopping. Ketika model berubah statusnya maka model akan menginformasikan ke View yang berasosiasi supaya dilakukan refresh. Sebagian besar aplikasi menggunakan database sebagai mekanisme persistent storage untuk menyimpan data. Mekanisme ini biasanya dikenal dengan data access layer sedangkan MVC secara eksplisit tidak menyebut sebagai data access layer tetapi semua fungsi dan fitur di enkapsolusi didalam Model sehingga Model tidak bukanlah data access objects. Active Record merupakan design pattern yang mengabungkan domain logic dan data access code yang mana Model dalam memanfaatkan pattern ini. View berfungsi untuk melakukan render Model kedalam suatu bentuk elemen interakasi contohnya UI (User Interface). Sebuah Model dapat digunakan untuk beberapa View dengan tujuan yang berbeda-beda. Controller menerima input dan memulai respon yang dibuat oleh objek Model. Sebuah Controller dapat menerima input dari user dan mengintruksikan Model untuk melakukan aksi sesuai dengan input. MVC bisanya diimplemtasikan pada plikasi web dimana HTML atau XHTML sebagai View yang dihasilkan oleh aplikasi. Controller menerima input GET atau POST dan menentukan apa yang akan dilakukan serta menangani domain object (Model) yang berisi business rules. Apa Bedanya ASP.NET Web Form dan ASP.NET MVC? ASP.NET MVC bukanlah pembunuh Web Form ASP.NET ataupun anti Web Form ASP.NET. Dapat dikatakan ASP.NET saat ini sudah berumur 10 tahun lebih. ASP.NET MVC adalah ASP.NET baru yang dibuat untuk menyesuaikan diri atas perkembangan teknologi. Beberapa blog dan artikel banyak sekali membahas apa bedanya ASP.NET Web Form dan ASP.NET MVC. Berikut ini beberapa kondisi fakta antara ASP.NET Web Form dan ASP.NET MVC Web Form sulit untuk di testing ASP.NET MVC memerlukan keahlian scripting HTML ASP.NET MVC bukan salah satu untuk mendapatkan SoC pada ASP.NET Web Form dapat dipelajari dengan cepat ViewState bukannya bermasalah dan ini dapat dikontrol ataupun dimatikan Web Form didesain untuk abstraksi mesin web ASP.NET MVC didesain untuk mudah ditesting ASP.NET MVC dapat menawarkan desain code yang lebih baik Perkembangan ASP.NET MVC masih mudah dan kurang component model ASP.NET MVC bukan anti Web Form Persiapan ASP.NET MVC 2.0 Sebelum membuat aplikasi ASP.NET MVC 2 kita harus menyiapakan beberapa development tool pada komputer kita. Untuk keperluan ini, persiapan yang diperlukan adalah Visual Studio 2010 yang didalamnya sudah ada ASP.NET MVC 2 Visual Studio 2008 with SP1. Ini didalamnya tidak ada ASP.NET MVC 2 sehingga kita harus mengunduh ASP.NET MVC 2 di www.asp.net/mvc Lebih lengkapnya rekan dapat membaca pada majalah PC Media edisi Desember 2010
ec726148-f6cf-40f5-9ce9-7f63378c1220|0|.0
Tags:
Papers | .NET