Minggu, 10 April 2011

Fase dalam Pemrograman

Pemrograman adalah Rangkaian kegiatan atau perintah untuk dieksekusi oleh komputer. Program merupakan kumpulan instruction set yang akan dijalankan oleh pemroses, yaitu berupa software. Bagaimana sebuah sistem komputer berpikir diatur oleh program ini. Program inilah yang mengendalikan semua aktifitas yang ada pada pemroses. Program berisi konstruksi logika yang dibuat oleh manusia, dan sudah diterjemahkan ke dalam bahasa mesin sesuai dengan format yang ada pada instruction set.
Aktifitas pada fase ini adalah menulis program. Kejadian pentingnya adalah menguji program, rencana tes sistem, dan paling tidak mulai pada dokumentasi user.

Berikut langkah-langkah dalam pemrograman:
1.      Rencana Penggabungan (Plan The Integration)
2.      Mendisain Modul (Design The Module)
3.      Telusuri Disain Modul (Walk Through The Module Design)
4.      Rencana Bagaimana Menguji Modul (Plan How To Test The Module)
5.      Kode Setiap Modul (Code Each Module)
6.      Menguji Modul (Test The Module)
7.      Menguji Level Terendah dari Integrasi (Test The Lowest Levels Of Integration)
8.      Menyimpan Semua Hasil Pengujian; Penggabungan Modul-Modul yang telah Diuji (Save The Results of All Tests; Submit Finished Module to Integration)
9.      Memulai Dokumentasi User (Get Started on The User Documentation)

Fase Pemrograman  
1. Rencana Penggabungan (Plan The Integration)
Merincikan beberapa metode untuk menggabungkan bagian-bagian tersebut dan harus merencanakan urutan penggabungannya agar program tersebut dapat digabungkan.

2. Mendisain Modul (Design The Module)
Programmer menerima beberapa tingkatan disain dari fase disain. Tugasnya adalah memecah modul secara rinci ke tingkat yang lebih rendah hingga mencapai keadaan siap untuk melakukan pemrograman, hal ini disebut sebagai disain modul.
Adapun pertimbangan lainnya:
·         Jika pemecahan modul yang dihasilkan adalah sangat penting yang memerlukan prioritas seperti adanya respon, user-friendly, atau konsistensi, perancang bisa melanjutkan ke tingkat yang lebih rendah.
·         Tingkat pemecahan dari disain dinyatakan dengan kontak.
·         Jika programmer tidak mengetahui pada waktu disain, pengetahuan programmer tingkat menengah dapat diasumsikan, dan disain dapat diambil alih oleh programmer tingkat menengah yang dapat mengatasinya.
Tetapi programmer tidak senang menerima disain yang terlalu rinci, yang programnya adalah menerjemahkan bahasa Inggris sederhana, seperti pernyataan secara harafiah ke dalam bahasa pemrograman.

3. Telusuri Disain Modul (Walk Through The Module Design)
Pada fase ini, dianjurkan untuk menelusuri disain dari masing-masing modul sebelum melakukan pengkodean. Kegunaan dari penelusuran disain modul adalah untuk memastikan bahwa disain terbaik yang telah dilakukan, semua fungsi telah dialamatkan dan semua bagian telah ditangani.

4. Rencana Bagaimana Menguji Modul (Plan How to Test The Module)
Programmer harus menyiapkan rencana pengujian modul dan data pengujian sebelum dikodekan. Rencana pengujian dilakukan setelah kode ditetapkan dan cenderung hanya menguji bagian kode yang paling ‘sulit’. Pimpinan proyek bisa saja melakukan tuntutan pada penelusuran rencana pengujian sepanjang disain modul sedang dilaksanakan. Kerjakan penelusuran ini bersama-sama.

5. Kode Setiap Modul (Code Each Module)
Standar pengkodean akan ditetapkan pada saat disain sistem. Berikut ini adalah ringkasan dari sebuah program terstruktur, yaitu :
•     Jika berukuran kecil. Aturan dasarnya adalah kira-kira 100 baris kode yang dapat dieksekusi dan listingnya tidak lebih dari 2 halaman.
•     Satu entry, satu exit.
•     Referensi secara keseluruhan sedikit.
•     Konstruksi terstruktur yang digunakan : berurutan, IF/THEN/ELSE, CASE, WHILE, UNTIL, CALL (bukan GO TO).

6. Menguji Modul (Test The Module)
Programmer menguji modul dengan menetapkan lingkungan yang tepat, menyediakan beberapa input, membiarkan modul langsung memproses secara logic dan mendapatkan hasilnya. Beberapa input mungkin tidak sebenarnya, terutama jika modul tersebut tidak menyediakan input yang sebenarnya.
Modul seharusnya diuji dalam dua tahap, yaitu:
·         Tahap Pertama disebut pengujian “White Box”. Programmer harus mengetahui isi di dalam modul dan menyediakan data pengujian, sehingga masing-masing path logical dalam program dapat dieksekusi.
·         Tahap Kedua atau pengujian “Black Box” dapat dilakukan. Dalam pengujian ini, programmer mengabaikan bagian dalam dari modul data disediakan secara berurut dan dianggap seperti pemakaian sebenarnya.

7. Menguji Level Terendah dari Integrasi (Test The Lowest Levels of Integration)
Jika modul utama memanggil sub-modul, programmer harus menggabungkan dan menguji semua modul secara bersama-sama. Bahkan jika programmer tidak bertanggung jawab untuk menulis sub-modul, programmer harus menguji perintah CALL dan RETURN dari seluruh modul.
Metode terbaik untuk melakukan hal ini adalah membuat sebuah “program stub” (potongan program) sebagai pengganti sub-modul. Potongan program ini dapat terdiri dari empat baris program yang menunjukkan bahwa kontrol sudah diterima dengan baik, tampilkan parameter penerima, jika perlu lakukan pengontrolan kembali dengan beberapa parameter yang tidak sebenarnya.

8. Menyimpan Semua Hasil Pengujian; Penggabungan Modul-Modul yang Telah Diuji (Save The Results Of All Tests; Submit Finished Modules To Integration)
Hasil pengujian digunakan untuk menyusun statistik yang menunjukkan penyebab, cara perbaikan serta biaya-biaya yang dibutuhkan untuk memperbaiki kesalahan-kesalahan program.
Pimpinan proyek biasanya menguasai atau mengepalai penggabungan ini pada sistem berukuran kecil sampai sedang. Software seperti CMS (Code Management System) sangat berguna untuk menajemen konfigurasi – menjamin program tetap berjalan sesuai versinya dan mengubah ke source code.


9. Memulai Dokumentasi User (Get Started On The User Documentation)
Apakah programmer bertanggung jawab pada dokumentasi user atau tidak, tahapan ini adalah waktu terbaik untuk menjawabnya. Dokumen-dokumen berikut mungkin harus ditulis :
Tuntunan Pemakai (User’s Guide)
Dokumen ini dapat ditulis oleh programmer, penulis teknis atau bahkan user sendiri. Tampilkan kembali FS yang mempunyai bagian rinci mengenai menu, layar, form, dan user interface lainnya.
USER’S GUIDE yang baik adalah terbagi dalam bagian-bagian yang menunjukkan tingkatan user yang berbeda-beda. Sebagai contoh, dalam USER’S GUIDE sistem ABC, harus ada bagian yang disebut “Registrar’s Functions” atau “Warehouse Functions” atau lainnya. Materinya harus disesuaikan agar user dapat menggunakan secara normal. Hal ini membuat USER’S GUIDE berguna untuk mempelajari sistem.
Tuntunan Pemeliharaan (Maintenance Guide)
Bagaimana anda menemukan programmer untuk merinci dokumen dari program mereka untuk pemeliharaan berikutnya ? Kebanyakan Manajer proyek mengalami kesulitan dalam hal berikut : programmer enggan untuk melakukan dokumentasi sebelum program ditulis; dan beruntunglah menemukannya setelah semuanya selesai dikerjakan. Programmer berpikir bahwa pemeliharaan memerlukan penjelasan secara rinci dari logika pemrograman. Sangat membosankan untuk menulisnya dan sebenarnya tidak perlu. Berikut ini adalah solusi sederhana tentang hal tersebut : lebih baik merinci spesifikasi disain tingkat modul secara struktur, mendokumentasikan sendiri kode, dirasa cukup untuk pemeliharaan sistem.
MAINTENANCE GUIDE akan berisi spesifikasi disain, listing program dan penjelasan bagaimana semuanya disesuaikan, bagaimana mengubah pendekatan, dan bagaimana menghubungkan dan menguji semuanya.
Tuntunan Operator atau Tuntunan Manajer Sistem (Operator’s Guide or System Manager’s Guide)
Sama seperti USER’S GUIDE untuk orang-orang yang menghidupkan sistem di pagi hari, mematikannya, melakukan backup, menangani permasalahan utama, melakukan perhitungan, dsb. Dokumentasi yang disediakan oleh perusahaan hardware dan sistem operasi mungkin cukup – hanya prosedur untuk software tertentu yang harus ditulis ulang.
Dokumentasi Pelatihan (Training Documentation)
Jika anda akan memberikan kursus bagaimana menggunakan sistem, rencanakan apakah materi pelatihan akan diperlukan. USER’S GUIDE yang baik harusnya menambahkan hal ini. Anda mungkin harus membuat bantuan pelatihan, seperti transaparansi, buku latihan, pengujian, dan sebagainya.



Sumber: http://wsilfi.staff.gunadarma.ac.id/Downloads/files/20196/Pertemuan+09+-+Fase+Pemrograman.pdf
Readmore »

Rabu, 02 Maret 2011

Model Pengembangan Standar Profesi


Pada materi "Model Pengembangan Standar Profesi" akan membahas:
a. Jenis dan Deskripsi Profesi IT
b. ACM dan IEEE

materi dapat di download:
download materi 1
download materi 2
Readmore »

Senin, 28 Februari 2011

HTML Code

Readmore »

Kamis, 09 Desember 2010

OS Android (Linux) dan OS Iphone (MAC)

OS Android
Android dirilis pertama kali pada 5 November 2007, dengan Linux yang berperan sebagai operating sistem menjadikan android sebagai open source. Awalnya Google Inc. membeli Android Inc., pendatang baru yang membuat peranti lunak untuk ponsel. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia.

Kelebihan dari os android selain open source, android bekerja sama dengan Google Inc. Sehingga, layanan google seperti Gmail, Google Calendar, Google Contacts dan Google Voice dapat digunakan oleh pengguna android. Salah satu hal dari Android adalah saat pertama menyalakannya Anda diminta memasukkan nama pengguna Google dan password dan semua pesan Google, kontak dan info lainnya mulai tersinkronisasi ke handset tanpa sync ke desktop.

Sayang sekali, untuk android ini belum mempunyai media pemutar video maupun audio yang resmi. Namun, pada umumnya Android memberi Anda lebih banyak pilihan tentang bagaimana mengatur ponsel Anda dan kontennya. Salah satu kelemahan Google adalah begitu banyak menyediakan versi Android. Manufaktur dan operator dapat memutuskan meng-upgrade ponsel mereka ke versi terbaru Android.

OS Iphone
Iphone adalah telephone genggam yang diproduksi oleh Apple Inc. Selain itu telepon ini juga dapat dihubungkan dengan jaringan internet, untuk melakukan berbagai aktivitas misalnya mengirim/menerima email, menjelajah web, dan lain-lain. Antarmuka dengan pengguna menggunakan layar sentuh multi-touch (atau bisa juga disebut dengan layar sentuh kapasitif) dengan papan ketik virtual dan tombol.

Iphone tidak hanya merupakan sebuah telephone melainkan ekosistem, dimana tidak dimiliki oleh produk lain. Integrasinya dengan semua produk Apple lainnya seperti iTunes, iPod, Mac, dll membuat pengguna Apple enggan berpindah platform. Dukungan jutaan aplikasinya termasuk game game high end juga menjadi faktor penting dalam kesuksesan apple iPhone (bahkan fungsi game nya diklaim menyaingi platform game sukses sebelumnya macam sony PSP dan Nitendo DS).

Perbandingan Android dan Iphone:
Pada platform Android berbasis Linux, setiap aplikasi berjalan dalam penyimpanan terpisah. Setiap aplikasi diisolasi secara unik dengan pengaturan hak akses untuk mengatur apakah aplikasi tertentu diperbolehkan untuk mengakses. Akibatnya, pengguna Linux biasanya tidak memiliki “root” atau hak istimewa yang dapat mengakses file sistem. Aplikasi Android pun dibatasi untuk mengakses file sistem. Sama seperti sistem operasi Linux pada desktop yang meminimalkan kerusakan yang dapat dilakukan  oleh virus, dengan kata lain, Android membatasi potensi kerusakan yang dapat dilakukan oleh aplikasi jahat.

Pada sistem Android pun, seluruh akses Aplikasi baru diatur oleh pengguna, misalnya saja akses telepon, akses penggunaan GPS dan lain-lain. Berbeda dengan iPhone yang membebaskan semua aplikasi dapat mengakses seluruh sistem tanpa harus menginformasikan ke pengguna. Dari sisi keamanan aplikasi terlihat Android lebih unggul dengan pemberitahuan akses data oleh aplikasi pihak ke 3 yang dianggap berbahaya. Sedangkan pada iPhone, Anda tidak akan tahu apakah Aplikasi tersebut berbahaya atau tidak.

Sistem Operasi Android menempatkan pengguna untuk mengendalikan serta mengevaluasi kebutuhan suatu aplikasi sebelum menginstalnya. Sebaliknya, pada AppStore iPhone, Apple yang mengevaluasi setiap aplikasi yang masuk ke pasar aplikasi tersebut. Sedangkan pasar Android tidak memiliki pembatasan dari Google, sehingga dengan mudah pengembang aplikasi menempatkan aplikasi yang dibuatnya tanpa harus di “Filter” oleh Google. Sehingga di harapkan pengguna Android dapat mengevaluasi sendiri Aplikasi tersebut sebelum diinstall.

Dari sisi pasar Aplikasi, jelas iPhone unggul dengan keamanan aplikasi yang saring oleh Apple sendiri. Namun penyaringan tersebut perlu kerja tambahan dari Apple untuk menyaring setiap kode aplikasi yang dimungkinkan diselipkan kode-kode berbahaya, namun dari ribuan aplikasi baru yang membludak dari hari ke hari, kemungkinan besar ada saja aplikasi jahat yang dapat mengancam keamanan sistem iPhone.

Hal ini sempat diriset oleh salah satu badan riset “Lookout” yang menginformasikan bahwa pengguna iPhone memiliki jumlah aplikasi yang dapat mengakses data pengguna 2x lebih banyak daripada Android, baik itu mengakses buku telepon pengguna, maupun mengambil data lokasi.
Android merupakan paltform OpenSource dari Google. Keterbukaan pengembangan sistem oleh siapapun dimungkinkan disini. Sehingga kode-kode yang merupakan dasar sistem diawasi oleh banyak pengembang di seluruh dunia yang ikut serta didalamnya. Sedangkan Apple hanya mengandalkan pengembang yang bekerja dengan Apple. Tapi seberapa banyak pengembang sistem iOS di Apple, apakah dapat sebanyak dan setangguh pengembang Android di seluruh dunia dalam menutup celah keamanan.

Informasi maupun ancaman kode-kode tertentu dapat lebih cepat diinformasikan dari  seluruh dunia baik itu ancaman kode-kode, maupun celah keamanan. Dalam Era transparansi dan partisipasi dari seluruh pihak, Android memiliki keterbukaan dan kontrol pengguna mengenai apa saja yang dibutuhkan oleh setiap pengguna Smartphone yang berkembang pesat dewasa ini. Tidak ada perusahaan tunggal dengan segilintir karyawan yang dapat melindungi pengguna dari segala sesuatu. Kebebasan pengontrolan aplikasi oleh pengguna sangat penting disini, apalagi menyangkut data Privacy pengguna. Akan lebih baik lagi apabila Google lebih ketat menyaring setiap aplikasi baru sebelum masuk ke Android Market.


Sumber:
http://id.wikipedia.org/wiki/IPhone
http://www.inilah.com/read/detail/742301/inilah-10-fakta-menyangkut-ponsel-android
http://www.teknologinet.com/2010/08/aplikasi-keamanan-os-android-vs-iphone.html
Readmore »

Sabtu, 13 November 2010

Wireless (Jaringan Tanpa Kabel)


Wireless merupakan jaringan tanpa nirkabel, yang berarti tidak menggunakan kabel sebagai sarana transfer data tetapi menggunakan gelombang elektromagnetik. Data dipertukarkan melalui media gelombang cahaya tertentu (seperti teknologi infra merah pada remote TV) atau gelombang radio (seperti bluetooth pada komputer dan ponsel) dengan frekuensi tertentu.
Keuntungan dari teknologi ini adalah tidak membutuhkan kabel yang akan merusak interior ruang. Dengan kabel yang bertebaran disana-sini hingga akan membuat penghuni merasa terganggu dengan keadaan kabel tersebut, dan apabila kabel itu ditutupi oleh alas sehingga tidak terlihat bukannya lebih ribet ?
Anyway, di zaman teknologi yang sudah canggih ini maka telematika menyediakan sarana wireless yang merupakan sebuah jaringan dimana transmisi data (pengiriman maupun penerimaan data) dilakukan melalui teknologi frekuensi radio lewat udara, menyediakan sebagian besar keunggulan dan keuntungan dari teknologi lama Kabel namun tidak dibatasi oleh media kabel atau kawat atau suatu komunikasi antar dua titik atau lebih dimana gelombang elektomagnetik membawa signal sebagian atau seluruh bagian jalur komunikasi.
Contohnya :
a. infrared(IR)
b. wireless wide area network (bluetooth)
c. Radio Frequency (RF)
d. wireless personal area network /telepon seluler(GSM/CDMA)
e. wireless lan (802.11)

Wireless LAN
Wireless local area network (LAN) adalah sistem komunikasi data yang fleksibel yang dapat diimplementasikan sebagai perpanjangan atau pun sebagai alternatif pengganti untuk jaringan kabel LAN. Dengan menggunakan gelombang radio wireless LAN mengirim dan menerima data melalui udara, yang meminimalisasikan penggunaan kabel yang terlalu banyak.

Kelebihan Wireless LAN
Dengan wireless LAN, user bisa membagi akses informasi tanpa harus mencari tempat sebagai sambungan kabel ke jaringan, dan network manager bisa menset up atau menambah jaringan tanpa harus melakukan instalasi atau pun penambahan kabel. Wireless LAN menawarkan beberapa kelebihan seperti produktivitas, kenyamanan, dan keuntungan dari segi biaya bila dibandingkan dengan jaringan kabel tradisional.

Cara Kerja Wireless LAN
Wireless LAN menggunakan electromagnetic airwaves (radio atau infrared) untuk menukarkan informasi dari satu titik ke titik lainnya tanpa harus tergantung pada sambungan secara fisik.Gelombang radio biasa digunakan sebagai pembawa karena dapat dengan mudah mengirimkan daya ke penerima. Data ditransmikan dengan cara ditumpangkan pada gelombang pembawa sehingga bisa diextract pada ujung penerima. Data ini umumnya digunakan sebagai pemodulasi dari pembawa oleh sinyal informasi yang sedang ditransmisikan. Begitu datanya sudah dimodulasikan pada gelombag radio pembawa, sinyal radio akan menduduki lebih dari satu frekuensi, hal ini terjadi karena frekuensi atau bit rate dari informasi yang memodulasi ditambahkan pada sinyal carrier.
Multiple radio carrier bisa ada dalam suatu ruang dalam waktu yang bersamaan tanpa terjadi interferensi satu sama lain jika gelombang radio yang ditransmisikan berbeda frekuensinya. Untuk mengextract data, radio penerimanya diatur dalam satu frekuensi dan menolak frekuensi-frekuensi lain. Pada konfigurasi wireless LAN tertentu, transmitter/receiver (transceiver) device, biasa disebut access point, terhubung pada jaringan kabel dari lokasi yang fixed menggunakan kabel standard. Sebuah access point bisa mensupport sejumlah group kecil dari user dan bisa dipakai dalam jarak antara seratus sampai beberapa ratus kaki. Access point (atau antena yang terhubung pada access point) biasanya diletakkan pada tempat yang tinggi tapi dapat juga diletakkan dimana saja untuk mendapatkan cakupan yang dikehendaki. End user access wireless LAN menggunakan wireless-LAN adapters, biasa terdapat pada PC card pada notebook atau palmtop computer, atau sebagai card dalam desktop computer, atau terintegrasi dalam hand-held computer.
Berikut WLAN yang ada:
  1. Wi-Fi (Wireless Fidelity), merupakan teknologi yang memungkinkan bagi pengguna komputer dan peripheral sejenis yang mendukung teknologi tersebut (PDA, telefon genggam) untuk berkomunikasi dalam jaringan LAN atau mengakses internet dengan jaringan broadband yang tentunya tanpa kabel
  2. Hotspot, merupakan teknologi wifi yang dapat diakses oleh pengguna sekala besar. Biasanya terdapat dilingkungan kampus yang membutuhkan internet tanpa harus menggunakan kabel.

Mode dalam WLAN diantaranya:
  1. Mode ad-hoc, sering disebut sebagai jaringan peer to peer atau disebut juga jaringan point to point. Mode ad-hoc memungkinkan hubungan antar komputer pada jaringan WLAN tanpa melalui suatu access point. Tidak seperti pada jaringan kabel yang mana jaringan point to point hanya berlangsung antara dua komputer, jaringan point to point pada jaringan WLAN dapat dilakukan oleh tiga komputer secara bersama. Semua komputer dapat berhubungan secara langsung dan menggunakan sumber daya yang ada secara bersama.
  2. Mode infrastuktur, jaringan WLAN yang bekerja pada mode ad-hoc hanya dibatasi untuk hubungan antar tiga komputer. Untuk menghubungkan banyak komputer, jaringan WLAN harus dijalankan menggunakan mode infrastruktur. Untuk menyusun jaringan WLAN yang bekerja pada mode infrastruktur diperlukan peralatan tambahan berupa wireless access point (WAP) atau disebut secara singkat dengan access point. Access point berlaku seperti hub atau switch pada jaringan kabel, sehingga access point akan menjadi pusat dari jaringan WLAN.
How To make a Wifi Connection on Desktop without wireless router [Windows 7] 





Readmore »