Selasa, 05 Juni 2012

Unit Testing

1. UNIT TESTING

Dalam pemrograman komputer, unit testing adalah metode dimana unit individu dari kode sumber, menetapkan satu atau lebih modul program komputer bersama-sama dengan data kontrol terkait, prosedur penggunaan, dan prosedur operasi diuji untuk menentukan apakah mereka layak digunakan. Secara intuitif, kita dapat melihat unit sebagai bagian diuji terkecil dari sebuah aplikasi. Dalam pemrograman prosedural unit bisa menjadi modul seluruh tetapi lebih umum fungsi individu atau prosedur. Dalam pemrograman berorientasi obyek unit sering merupakan seluruh antarmuka, seperti kelas, tetapi bisa menjadi metode individu. Unit test yang dibuat oleh programmer atau kadang-kadang oleh penguji kotak putih selama proses pembangunan.

Idealnya, setiap kasus uji independen dari yang lain: pengganti seperti bertopik metode, objek tiruan, palsu dan memanfaatkan tes dapat digunakan untuk membantu pengujian modul secara terpisah. Unit test biasanya ditulis dan dijalankan oleh pengembang perangkat lunak untuk memastikan bahwa kode memenuhi desain dan berperilaku sebagaimana dimaksud. Pelaksanaannya dapat bervariasi dari yang sangat manual (pensil dan kertas). Untuk yang diformalkan sebagai bagian dari otomatisasi membangun.

2. MANFAAT UNIT TESTING

Tujuan dari unit testing adalah untuk mengisolasi setiap bagian dari program dan menunjukkan bahwa bagian-bagian individu sudah benar. Sebuah tes unit menyediakan kontrak, ketat ditulis bahwa potongan kode harus memenuhi. Akibatnya afford dapat dibagi menjadi beberapa manfaat atau keuntungan, diantaranya :

2.1 Pencarian Masalah Awal

Unit test menemukan masalah di awal siklus pengembangan. Pada tes-driven (TDD), yang sering digunakan dalam kedua Extreme Programming dan Scrum, unit test dibuat sebelum kode itu sendiri ditulis. Jika tes lulus, kode yang dianggap lengkap. Unit test yang sama dijalankan terhadap fungsi yang sering sebagai basis kode yang lebih besar dikembangkan baik sebagai kode diubah atau melalui proses otomatis dengan membangun. Jika unit test gagal, dianggap bug baik dalam kode berubah atau tes sendiri. Unit test kemudian memungkinkan letak kesalahan atau kegagalan untuk dapat dengan mudah dilacak. Karena unit test mengingatkan tim pengembangan dari masalah sebelum menyerahkan kode ke penguji atau klien, masih di awal proses pembangunan.

2.2 Memfasilitasi Perubahan

Unit pengujian memungkinkan programmer untuk kode refactor di kemudian hari, dan pastikan modul masih bekerja dengan benar (misalnya, dalam pengujian regresi). Prosedur ini menulis kasus uji untuk semua fungsi dan metode sehingga setiap kali perubahan menyebabkan kesalahan, dapat dengan cepat diidentifikasi dan diperbaiki. Tes unit tersedia memudahkan para programmer untuk memeriksa apakah sepotong kode masih bekerja dengan benar. Dalam lingkungan pengujian unit terus menerus, melalui praktek yang melekat pemeliharaan berkelanjutan, unit test akan terus secara akurat mencerminkan tujuan penggunaan executable dan kode dalam menghadapi perubahan. Tergantung pada praktek-praktek pembangunan yang ditetapkan dan cakupan unit uji, up-to-the-detik akurasi dapat dipertahankan.

2.3 Menyederhanakan Integrasi

Unit pengujian dapat mengurangi ketidakpastian dalam unit sendiri dan dapat digunakan dalam pendekatan gaya bottom-up pengujian. Dengan menguji bagian dari sebuah program pertama dan kemudian menguji jumlah bagian-bagiannya, pengujian integrasi menjadi lebih mudah. Hirarki yang rumit unit test tidak pengujian integrasi sama. Integrasi dengan unit perangkat harus dimasukkan dalam tes integrasi, tapi tidak dalam unit test Integrasi pengujian biasanya masih sangat bergantung pada manusia pengujian manual;. Pengujian tingkat tinggi atau global-scope bisa sulit untuk mengotomatisasi, sehingga pengujian manual sering muncul lebih cepat dan lebih murah.

2.4 Dokumentasi

Unit pengujian menyediakan semacam dokumentasi hidup dari sistem. Pengembang yang ingin belajar apa fungsi disediakan oleh unit dan bagaimana menggunakannya dapat melihat unit test untuk mendapatkan pemahaman dasar API unit. Satuan kasus uji mewujudkan karakteristik yang sangat penting untuk keberhasilan unit. Karakteristik ini dapat menunjukkan penggunaan yang tepat / tidak tepat unit serta perilaku negatif yang akan terjebak oleh unit. Sebuah kasus uji unit, dalam dan dari dirinya sendiri, mendokumentasikan karakteristik kritis, meskipun lingkungan pengembangan perangkat lunak yang tidak hanya mengandalkan kode untuk mendokumentasikan produk dalam pembangunan. Sebaliknya, dokumentasi naratif biasa lebih rentan terhadap melayang dari pelaksanaan program dan dengan demikian akan menjadi usang (misalnya, perubahan desain, terobosan fitur, praktek santai dalam menjaga dokumen up-to-date).

2.5 Disain

Ketika perangkat lunak dikembangkan dengan menggunakan pendekatan uji-driven, tes unit bisa menggantikan desain formal. Setiap unit test dapat dilihat sebagai elemen desain menentukan kelas, metode, dan perilaku yang dapat diamati. Contoh Jawa berikut akan membantu menggambarkan hal ini. Berikut ini adalah kelas tes yang menentukan sejumlah elemen pelaksanaan. Pertama, bahwa harus ada sebuah antarmuka yang disebut Adder, dan kelas yang mengimplementasikan dengan konstruktor nol-argumen disebut AdderImpl. Ini melanjutkan dengan menegaskan bahwa antarmuka Adder harus memiliki metode yang disebut menambahkan, dengan dua parameter bilangan bulat, yang mengembalikan bilangan bulat lain. Hal ini juga menentukan perilaku dari metode ini untuk berbagai nilai-nilai kecil.


public class TestAdder {
public void testSum() {
Adder adder = new AdderImpl();
// can it add positive numbers?
assert(adder.add(1, 1) == 2);
assert(adder.add(1, 2) == 3);
assert(adder.add(2, 2) == 4);
// is zero neutral?
assert(adder.add(0, 0) == 0);
// can it add negative numbers?
assert(adder.add(-1, -2) == -3);
// can it add a positive and a negative?
assert(adder.add(-1, 1) == 0);
// how about larger numbers?
assert(adder.add(1234, 988) == 2222);
}
}



Dalam hal ini tes unit, yang telah tertulis pertama, bertindak sebagai dokumen desain menentukan bentuk dan perilaku solusi yang diinginkan, tetapi tidak rincian pelaksanaan, yang tersisa untuk programmer. Setelah praktek "melakukan hal sederhana yang mungkin bisa bekerja", solusi yang paling mudah yang akan membuat lulus tes ditampilkan di bawah.

interface Adder {
int add(int a, int b);
}
class AdderImpl implements Adder {
int add(int a, int b) {
return a + b;
}
}


Tidak seperti diagram berbasis metode desain, menggunakan unit-test sebagai sebuah desain memiliki satu keuntungan yang signifikan. Dokumen desain (unit-tes itu sendiri) dapat digunakan untuk memverifikasi bahwa pelaksanaannya menganut desain. Dengan metode desain unit-test, tes tidak akan lulus jika pengembang tidak mengimplementasikan solusi sesuai dengan desain.

Memang benar bahwa unit testing tidak memiliki beberapa aksesibilitas diagram, tetapi UML diagram sekarang mudah dihasilkan untuk sebagian besar bahasa modern dengan alat gratis (biasanya tersedia sebagai ekstensi untuk IDE). Alat gratis, seperti yang didasarkan pada kerangka xUnit, outsourcing ke sistem rendering grafis dari pandangan untuk konsumsi manusia.


3. Pemisahan Interface dari Implementasi

Karena beberapa kelas dapat memiliki referensi ke kelas lain, pengujian kelas sering dapat meluas ke pengujian kelas lain. Sebuah contoh umum ini adalah kelas yang tergantung pada database: untuk menguji kelas, tester sering menulis kode yang berinteraksi dengan database. Ini suatu kesalahan, karena tes unit harus biasanya tidak pergi ke luar dari batas kelas sendiri, dan terutama tidak harus menyeberangi proses seperti / jaringan batas karena ini dapat memperkenalkan masalah kinerja tidak dapat diterima ke unit uji-suite. Melintasi batas-batas unit tersebut ternyata tes unit menjadi tes integrasi, dan ketika uji kasus gagal, membuatnya kurang jelas komponen yang menyebabkan kegagalan. Lihat juga Fakes, mengolok-olok dan tes integrasi

Sebaliknya, pengembang perangkat lunak harus membuat sebuah antarmuka abstrak sekitar query database, dan kemudian mengimplementasikan interface dengan objek yang pura-pura terhadap mereka. Dengan abstrak ini lampiran yang diperlukan dari kode (sementara mengurangi kopling efektif bersih), unit independen dapat lebih benar-benar teruji dari Mei sebelumnya telah tercapai. Hal ini menghasilkan unit kualitas lebih tinggi yang juga lebih maintainable.

4. Parameterized Pengujian Unit (PUT)

Unit Pengujian parameter (PUTS) adalah tes yang mengambil parameter. Tidak seperti tes unit tradisional, yang biasanya metode tertutup, menempatkan mengambil set parameter. PUTS telah didukung oleh JUnit 4 dan berbagai. NET kerangka uji. Parameter Cocok untuk unit test mungkin diberikan secara manual atau dalam beberapa kasus yang secara otomatis dihasilkan oleh kerangka pengujian. Berbagai alat pengujian industri juga ada untuk menghasilkan masukan tes untuk PUTS.

5. Unit Pengujian Keterbatasan

Pengujian tidak dapat diharapkan untuk menangkap setiap kesalahan dalam program ini: tidak mungkin untuk mengevaluasi setiap jalur eksekusi dalam semua kecuali program yang paling sepele. Hal yang sama berlaku untuk unit testing. Selain itu, unit testing secara definisi hanya menguji fungsionalitas dari unit itu sendiri. Oleh karena itu, tidak akan menangkap kesalahan integrasi atau lebih luas sistem tingkat kesalahan (seperti fungsi dilakukan di beberapa unit, atau non-fungsional daerah uji seperti kinerja). Unit pengujian harus dilakukan dalam hubungannya dengan kegiatan pengujian perangkat lunak lain. Seperti semua bentuk pengujian perangkat lunak, tes unit hanya bisa menunjukkan adanya kesalahan, mereka tidak dapat menunjukkan tidak adanya kesalahan.

Software pengujian adalah masalah kombinatorial. Misalnya, setiap pernyataan keputusan boolean memerlukan setidaknya dua tes: satu dengan hasil dari "benar" dan satu dengan hasil dari "false". Akibatnya, untuk setiap baris kode yang ditulis, programmer sering perlu 3 sampai 5 baris kode tes. Hal ini jelas membutuhkan waktu dan investasi mungkin tidak layak usaha.. Ada juga banyak masalah yang tidak dapat dengan mudah diuji sama sekali - misalnya mereka yang nondeterministic atau melibatkan beberapa thread. Selain itu, menulis kode untuk tes unit adalah sebagai mungkin setidaknya sama kereta sebagai kode itu adalah pengujian. Fred Brooks dalam The Man-Bulan kutipan Mythical: tidak pernah mengambil dua kronometer ke laut. Selalu mengambil satu atau tiga. Artinya, jika dua kronometer bertentangan, bagaimana Anda tahu mana yang benar?

Untuk mendapatkan manfaat dimaksudkan dari unit testing, disiplin ketat diperlukan selama proses pengembangan perangkat lunak. Penting untuk menyimpan catatan-hati tidak hanya dari tes yang telah dilakukan, tetapi juga dari semua perubahan yang telah dibuat pada kode ini atau unit lain dalam perangkat lunak. Penggunaan sistem kontrol versi sangat penting. Jika versi yang lebih baru unit gagal tes tertentu yang sebelumnya berlalu, perangkat lunak versi-kontrol dapat memberikan daftar perubahan kode sumber (jika ada) yang telah diterapkan pada unit sejak saat itu.

Hal ini juga penting untuk menerapkan proses yang berkelanjutan untuk memastikan kegagalan uji kasus yang terakhir setiap hari dan segera diatasi. Jika proses tersebut tidak diterapkan dan mendarah daging ke dalam alur kerja tim, aplikasi akan berkembang tidak sinkron dengan unit test suite, meningkatkan positif palsu dan mengurangi efektivitas suite uji.

Unit pengujian perangkat lunak sistem tertanam menghadirkan tantangan yang unik: Karena perangkat lunak sedang dikembangkan pada platform yang berbeda dari yang pada akhirnya akan berjalan pada, Anda tidak dapat dengan mudah menjalankan program tes di lingkungan penyebaran yang nyata, seperti yang mungkin dengan program-program desktop.

6. Aplikasi

6.1 Ekstrim Pemrograman


Unit pengujian adalah dasar dari pemrograman ekstrim, yang bergantung pada kerangka unit testing otomatis. Kerangka unit otomatis pengujian dapat berupa pihak ketiga, misalnya, xUnit, atau dibuat dalam kelompok pengembangan.

Pemrograman ekstrim menggunakan penciptaan unit test untuk test-driven. Pengembang menulis tes unit yang mengekspos baik persyaratan perangkat lunak atau cacat. Tes ini akan gagal karena baik persyaratan belum diimplementasikan, atau karena sengaja mengekspos cacat dalam kode yang ada. Kemudian, pengembang menulis kode sederhana untuk membuat tes, bersama dengan tes lainnya, lulus.

Kode yang paling dalam suatu sistem satuan diuji, tetapi belum tentu semua jalan melalui kode. Ekstrim pemrograman mandat "uji segala sesuatu yang mungkin dapat mematahkan" strategi, atas "menguji setiap jalur eksekusi" tradisional metode. Hal ini menyebabkan pengembang untuk mengembangkan tes yang lebih sedikit daripada metode klasik, tapi ini bukan masalah, lebih merupakan penyajian kembali fakta, sebagai metode klasik jarang pernah diikuti metodis cukup untuk semua path eksekusi telah diuji secara menyeluruh. [Rujukan?] pemrograman ekstrim hanya mengakui bahwa tes ini jarang lengkap (karena sering terlalu mahal dan memakan waktu layak secara ekonomi) dan menyediakan panduan tentang cara efektif memfokuskan sumber daya terbatas.

Krusial, kode tes dianggap sebagai proyek artefak kelas satu dalam hal itu dipertahankan pada kualitas yang sama seperti kode implementasi, dengan semua duplikasi dihapus. Pengembang merilis kode unit pengujian untuk repositori kode dalam hubungannya dengan kode itu tes. Unit testing menyeluruh pemrograman ekstrim ini memungkinkan manfaat yang disebutkan di atas, seperti pengembangan kode sederhana dan lebih percaya diri dan refactoring, integrasi kode disederhanakan, dokumentasi yang akurat, dan desain modular lebih. Tes ini satuan juga terus berjalan sebagai bentuk uji regresi.

Unit pengujian juga penting untuk konsep Desain Muncul. Sebagai Desain Muncul sangat tergantung pada Refactoring, unit test adalah komponen integral [6].

6.2 Teknik

Unit pengujian umumnya otomatis, tetapi masih mungkin dilakukan secara manual. IEEE tidak mendukung salah satu dari yang lain. [7] Pendekatan manual untuk unit testing dapat mempekerjakan dokumen langkah-demi-langkah instruksional. Namun demikian, tujuan dalam unit testing adalah untuk mengisolasi unit dan memvalidasi kebenaran nya. Otomasi adalah efisien untuk mencapai hal ini, dan memungkinkan banyak manfaat yang tercantum dalam artikel ini. Sebaliknya, jika tidak direncanakan dengan hati-hati, unit panduan ujian ceroboh dapat mengeksekusi sebagai kasus uji integrasi yang melibatkan banyak komponen perangkat lunak, dan dengan demikian menghalangi pencapaian kebanyakan jika tidak semua tujuan yang ditetapkan untuk unit testing.

Untuk sepenuhnya menyadari efek isolasi sementara dengan menggunakan pendekatan otomatis, unit atau badan yang diuji kode dijalankan dalam kerangka luar lingkungan alamnya. Dengan kata lain, dieksekusi di luar produk atau konteks menyerukan yang awalnya dibuat. Pengujian sedemikian secara terisolasi mengungkapkan dependensi yang tidak perlu antara kode yang diuji dan unit lain atau ruang data dalam produk. Dependensi ini kemudian dapat dihilangkan.

Menggunakan framework otomatisasi, kode pengembang kriteria ke dalam tes untuk memverifikasi kebenaran unit. Selama pelaksanaan uji kasus, kerangka log tes yang gagal kriteria apapun. Kerangka Banyak juga akan secara otomatis bendera uji kasus gagal dan melaporkannya dalam ringkasan. Tergantung pada tingkat keparahan kegagalan, kerangka kerja ini dapat menghentikan pengujian berikutnya.

Akibatnya, unit testing secara tradisional motivator bagi programmer untuk membuat tubuh kode dipisahkan dan kohesif. Praktek ini mendorong kebiasaan sehat dalam pengembangan perangkat lunak. Desain pola, unit testing, dan refactoring sering bekerja bersama sehingga solusi terbaik mungkin muncul.

6.3 AUnit Pengujian Kerangka

Satuan kerangka pengujian yang paling sering Produk pihak ketiga yang tidak didistribusikan sebagai bagian dari suite compiler. Mereka membantu menyederhanakan proses pengujian unit, yang telah dikembangkan untuk berbagai macam bahasa. Contoh kerangka pengujian meliputi solusi open source seperti kode berbasis kerangka kerja berbagai pengujian dikenal secara kolektif sebagai xUnit, dan solusi proprietary / komersial seperti TBrun, JustMock, Isolator.NET, Isolator + +, Testwell CTA + + dan VectorCAST / C + +.

Hal ini umumnya mungkin untuk melakukan unit testing tanpa dukungan kerangka tertentu dengan menulis kode klien yang melatih unit yang diuji dan menggunakan pernyataan, pengecualian penanganan, atau mekanisme kontrol lainnya mengalir ke sinyal kegagalan. Unit pengujian tanpa kerangka kerja berharga dalam bahwa ada hambatan masuk untuk adopsi pengujian unit; memiliki unit test sedikit hampir tidak lebih baik daripada memiliki tidak sama sekali, sedangkan sekali kerangka di tempat, menambahkan unit test menjadi relatif mudah. [8] Dalam beberapa framework fitur canggih satuan banyak tes yang hilang atau harus tangan-kode.
Bahasa tingkat unit pengujian dukungan

Beberapa bahasa pemrograman langsung mendukung unit testing. Tata bahasa mereka memungkinkan deklarasi langsung dari unit test tanpa mengimpor perpustakaan (baik pihak ketiga atau standar). Selain itu, kondisi boolean unit test dapat dinyatakan dalam sintaks yang sama sebagai ekspresi boolean digunakan dalam non-unit kode tes, seperti apa yang digunakan untuk laporan jika dan sementara.

Bahasa yang langsung mendukung unit testing meliputi:

C #
Corba
D
Jawa
Obix



Sumber : http://en.wikipedia.org/wiki/Unit_testing

Rabu, 09 Mei 2012

Menyematkan File Pdf, Doc dan Ppt Ke Dalam Blogger

Di sini saya ingin mencoba berbagi ilmu bagaimana menyematakan file doc, pdf atau ppt di halaman web Anda. Berikut tutorialnya:


1. Masuk ke https://docs.google.com/ lalu login ke google account, apabila anda belum memiliki google account, anda bisa mendaftar terlebih dahulu

2. Setelah login, unggah file yang ingin ditampilkan dengan mengklik

3. Setelah selesai, buka file yang telah di unggah lalu Klik File - Pilih tampilan Publikasikan Ke Web sebagai berikut

4. Lalu copy link yang berada di kolom Sematkan Kode seperti gambar berikut :

dan paste kan di halaman HTML blog Anda dengan mengubah resolusi gambar dengan height dan width yang sesuai.

Kejahatan Teknologi Informasi (Cybercrime)

Jumat, 04 Mei 2012

Tampilan Input dan Output Kondisi Nilai pada PHP

1. a) Tampilan Input nilai dengan menggunakan kondisi


b) * Tampilan Output jika nilai >=65


* Tampilan Output jika nilai <=65


Array pada PHP

Pertanyaan :

1. Apa yang anda ketahui tentang array pada PHP?
2. Buatlah bentuk umum array pada php?
3. Buatlah program sederhana array pada php?

Jawaban :

1.Array adalah kumpulan beberapa data yang disimpan dalam sebuah variabel. Masing-masing data yang disimpan dalam array tersebut mempunyai index sebagai sebuah pengenal. Bagian yang menyusun array disebut elemen array, yang masing-masing elemen dapat diakses tersendiri melalui indeks array.

2. Bentuk Umum :
$namaArray = array(elemen_1,…., elemen_N);

3. Program sederhana array pada php ber-dimensi satu
<_PHP $kota[0] = "Jakarta"; $kota[1] = "Bogor"; $kota[2] = "Depok"; $kota[3] = "Tanggerang"; $kota[4] = "Bekasi"; print ("Kota tempat saya tinggal adalah$kota[2]"); ?>


Sumber : http://astrobo-yeah.blogspot.com/2012/05/php-laporan-akhir-3.html

Tampilan Luas Persegi Panjang, Balok, dan Segitiga pada PHP

1. Membuat Nama
a) Tampilan Input


b) Tampilan Output


2. Menampilkan Luas Persegi Panjang
a) Tampilan Input


b) Tampilan Output

3. Menapilkan Luas Balok
a) Tampilan Input


b) Tampilan Output

4. Menampilkan Luas Segitiga
a) Tampilan Input



b) Tampilan Output



Kondisi dan Perulangan pada PHP


Pertanyaan :

1. Sebutkan dan jelaskan kondisi dan perulangan pada PHP?
2. Sebutkan Bentuk umum kondisi dan perulangan pada PHP?
3. Buat Program sederahananya?

Jawaban :

1. a. Kondisi pada PHP digunakan untuk menyeleksi suatu kondisi akan dijalankan atau tidak. Contohnya dalam proses login di email, jika username dan password yang dimasukkan benar maka kita dapat masuk melihat inbox email kita, tapi jika salah maka tidak akan bisa masuk. Pengeleksian kondisi ini (apakah username benar atau salah) menggunakan STRUKTUR KONDISI.

b. Perulangan pada PHP digunakan untuk mengulang suatu proses yang dieksekusi beberapa kali sekaligus. Contohnya jika akan menampilkan bilangan dari 1-100, maka akan lebih efektif jika menggunakan perulangan.

2. - Macam² Bentuk Umum pada Kondisi:
a. If
If (ekspresi)
Pernyataan

b. If-else
if :
if (ekspresi)
pernyataan_1
elseif pernyataan_2
else pernyataan_3

c. If-elseif
if (ekspresi)
pernyataan_1
else pernyataan_2

d. Switch..Case..
Switch..Case.. :
switch ($var) {
case 1 : statement-1; break;
case 2 : statement-2; break;

}

- Macam² Bentuk Umum pada Perulangan:
a. For
for (awal; batas-akhir; increment) {
statemen-yang-diulang; }

b. While
inisialisasi-awal;
while (batas-akhir) {
statemen-yang-diulang;
increment; }

c. Do..While..
inisialisasi-awal;
do {
statemen-yang-diulang;
increment;
} while (kondisi-akhir);

d. Foreach
foreach (array as $var) {
statemen-yang-diulang;
}


3. Contoh program sederahana pada Kondisi dan Perulangan !

a. Kondisi :
?php
$username="admin";
if($username=="admin")
{
echo'Selamat Datang Admin';
}
else
{
echo"Masukan username yang benar";
}
?>



b. Perulangan :
?php
for ($i=1; $i<=10; $i++) { echo $i; } ?>


Jumat, 13 April 2012

Kriteria Manager Proyek yang Baik

Manager Yang Baik dimaksud dengan manager adalah orang atau seseorang yang harus mampu membuat orang-orang dalam organisasi yang berbagai karakteristik, latar belakang budaya, akan tetapi memiliki ciri yang sesuai dengan tujuan (goals) dan teknologi (technology).

Dan tugas seorang manager adalah bagaimana mengintegrasikan berbagai macam variabel (karakteristik, budaya, pendidikan dan lain sebagainya) kedalam suatu tujuan organisasi yang sama dengan cara melakukan mekanisme penyesuaian.
Adapun mekanisme yang diperlukan untuk menyatukan variabel diatas adalah sebagai berikut:

* Pengarahan (direction) yang mencakup pembuatan keputusan, kebijaksanaan, supervisi, dan lain-lain.
* Rancangan organisasi dan pekerjaan.
* Seleksi, pelatihan, penilaian, dan pengembangan.
* Sistem komunikasi dan pengendalian.
* Sistem reward.

Hal tersebut memang tidak mengherankan karena posisi Manajer Proyek memegang peranan kritis dalam keberhasilan sebuah proyek terutama di bidang teknologi informasi. Berikut ini kualifikasi teknis maupun nonteknis yang harus dipenuhi seorang Manajer Proyek yang saya sarikan dari IT Project Management Handbook.

Setidaknya ada 3 (tiga) karakteristik yang dapat digunakan untuk mengukur tingkat kualifikasi seseorang untuk menjadi Manajer Proyek yaitu:

* Karakter Pribadinya
* Karakteristik Kemampuan Terkait dengan Proyek yang Dikelola
* Karakteristik Kemampuan Terkait dengan Tim yang Dipimpin

Karakter Pribadinya

1. Memiliki pemahaman yang menyeluruh mengenai teknis pekerjaan dari proyek yang dikelola olehnya.
2. Mampu bertindak sebagai seorang pengambil keputusan yang handal dan bertanggung jawab.
3. Memiliki integritas diri yang baik namun tetap mampu menghadirkan suasana yang mendukung di lingkungan tempat dia bekerja.
4. Asertif
5. Memiliki pengalaman dan keahlian yang memadai dalam mengelola waktu dan manusia.

Karakteristik Kemampuan Terkait dengan Proyek yang Dikelola

1. Memiliki komitmen yang kuat dalam meraih tujuan dan keberhasilan proyek dalam jadwal, anggaran dan prosedur yang dibuat.
2. Pelaksanakan seluruh proses pengembangan proyek IT sesuai dengan anggaran dan waktu yang dapat memuaskan para pengguna/klien.
3. Pernah terlibat dalam proyek yang sejenis.
4. Mampu mengendalikan hasil-hasil proyek dengan melakukan pengukuran dan evaluasi kinerja yang disesuaikan dengan standar dan tujuan yang ingin dicapai dari proyek yang dilaksanakan.
5. Membuat dan melakukan rencana darurat untuk mengantisipasi hal-hal maupun masalah tak terduga.
6. Membuat dan menerapkan keputusan terkait dengan perencanaan.
7. Memiliki kemauan untuk mendefinisikan ulang tujuan, tanggung jawab dan jadwal selama hal tersebut ditujukan untuk mengembalikan arah tujuan dari pelaksanaan proyek jika terjadi jadwal maupun anggaran yang meleset.
8. Membangun dan menyesuaikan kegiatan dengan prioritas yang ada serta tenggat waktu yang ditentukan sebelumnya.
9. Memiliki kematangan yang tinggi dalam perencanaan yang baik dalam upaya mengurangi tekanan dan stres sehingga dapat meningkatkan produktifitas kerja tim.
10. Mampu membuat perencanaan dalam jangka panjang dan jangka pendek.

Karakteristik Kemampuan Terkait dengan Tim yang Dipimpin

1. Memiliki kemampuan dan keahlian berkomunikasi serta manajerial.
2. Mampu menyusun rencana, mengorganisasi, memimpin, memotivasi serta mendelegasikan tugas secara bertanggung jawab kepada setiap anggota tim.
3. Menghormati para anggota tim kerjanya serta mendapat kepercayaan dan penghormatan dari mereka.
4. Berbagi sukses dengan seluruh anggota tim.
5. Mampu menempatkan orang yang tepat di posisi yang sesuai.
6. Memberikan apresiasi yang baik kepada para anggota tim yang bekerja dengan baik.
7. Mampu mempengaruhi pihak-pihak lain yang terkait dengan proyek yang dipimpinnya untuk menerima pendapat-pendapatnya serta melaksanakan rencana-rencana yang disusunnya.
8. Mendelegasikan tugas-tugas namun tetap melakukan pengendalian melekat.
9. Memiliki kepercayaan yang tinggi kepada para profesional terlatih untuk menerima pekerjaan-pekerjaan yang didelegasikan darinya.
10. Menjadikan dirinya sebagai bagian yang terintegrasi dengan tim yang dipimpinnya.
11. Mampu membangun kedisiplinan secara struktural.
12. Mampu mengidentifikasi kelebihan-kelebihan dari masing-masing anggota tim serta memanfaatkannya sebagai kekuatan individual.
13. Mendayagunakan setiap elemen pekerjaan untuk menstimulasi rasa hormat dari para personil yang terlibat dan mengembangkan sisi profesionalisme mereka.
14. Menyediakan sedikit waktu untuk menerima setiap ide yang dapat meningkatkan kematangan serta pengembangan dirinya.
15. Selalu terbuka atas hal-hal yang mendorong kemajuan.
16. Memahami secara menyeluruh para anggota tim yang dipimpinnya dan mengembangkan komunikasi efektif di dalamnya.


Sumber : http://www.setiabudi.name/archives/990

http://belajarmanagement.wordpress.com/2009/03/23/pengertian-dan-tugas-manager/

Pengertian COCOMO

COCOMO merupakan singkatan dari Constructive Cost Model, yang berarti sebuah model parametris pengestimasian yang menghitung jumlah FP dalam perencanaan serta pengembangan perangkat lunak, COCOMO sendiri memiliki 3 jenis pengimplementasian dalam evolusinya sejak awal kejadiannya hingga kini, yaitu:

1. Basic (COCOMO I 1981)

Menghitung dari estimasi jumlah LOC (Lines of Code);
Pengenalan Cocomo ini diawali tahun 70-an akhir. Sang pelopor Boehm, melakukan riset dengan mengambil kasus dari 63 proyek perangkat lunak untuk membuat model matematisnya. Model dasar dari model ini adalah sebuah persamaan sebagai baerikut :
effort = C * size^M
ket :
effort
adalah usaha yang dibutuhkan selama proyek, diukur dalam person-months;

c dan M
adalah konstanta-konstanta yang dihasilkan dalam riset Boehm dan tergantung pada penggolongan besarnya proyek perangkat lunak;

size
adalah estimasi jumlah baris kode yang dibutuhkan untuk implementasi, dalam satuan KLOC (kilo lines of code)


2. Intermediate (COCOMO II 1999)

Menghitung dari besarnya program dan “cost drivers” (faktor-faktor yang berpengaruh langsung kepada proyek), seperti: perangkat keras, personal, dan atribut-atribut proyek lainnya. Selain itu pada jenis ini, COCOMO mempergunakan data-data historis dari proyek-proyek yang pernah menggunakan COCOMO I, dan terdaftar pengelolaan proyeknya dalam COCOMO database. yang dijabarkan dalam kategori dan subkatagori sebagai berikut :
a. Atribut produk (product attributes)

1. Reliabilitas perangkat lunak yang diperlukan (RELY)
2. Ukuran basis data aplikasi (DATA)
3. Kompleksitas produk (CPLX)

b. Atribut perangkat keras (computer attributes)

1. Waktu eksekusi program ketika dijalankan (TIME)
2. Memori yang dipakai (STOR)
3. Kecepatan mesin virtual (VIRT)
4. Waktu yang diperlukan untuk mengeksekusi perintah (TURN)

c. Atribut sumber daya manusia (personnel attributes)

1. Kemampuan analisis (ACAP)
2. Kemampuan ahli perangkat lunak (PCAP)
3. Pengalaman membuat aplikasi (AEXP)
4. Pengalaman penggunaan mesin virtual (VEXP)
5. Pengalaman dalam menggunakan bahasa pemrograman (LEXP)

d. Atribut proyek (project attributes)

1. Penggunaan sistem pemrograman modern(MODP)
2. Penggunaan perangkat lunak (TOOL)
3. Jadwal pengembangan yang diperlukan (SCED)


3. Advanced

Memperhitungkan semua karakteristik dari “intermediate” di atas dan “cost drivers” dari setiap fase (analisis, desain, implementasi, dsb) dalam siklus hidup pengembangan perangkat lunak.


wwww.pu2t.blogger.com

Kamis, 08 Maret 2012

Kejahatan dalam Teknologi Informasi

1. Kejahatan Teknologi Informasi (Cybercrime)

Kejahatan Teknologi Informasi (CyberCrime) merupakan perbuatan melawan hukum yang dilakukan dengan menggunakan internet yang berbasis pada kecanggihan teknologi komputer dan telekomunikasi. Kejahatan yang terjadi di dunia maya saat ini sudah menjadi salah satu kegiatan bisnis yang bertumbuh sangat cepat sering dengan pertumbuhan teknologi informasi.

2. Karakteristik Cybercrime

Selama ini dalam kejahatan konvensional, dikenal adanya dua jenis kejahatan sebagai berikut:

a. Kejahatan kerah biru (blue collar crime)

Kejahatan ini merupakan jenis kejahatan atau tindak kriminal yang dilakukan secara konvensional seperti misalnya perampokkan, pencurian, pembunuhan dan lain-lain.

b. Kejahatan kerah putih (white collar crime)

Kejahatan jenis ini terbagi dalam empat kelompok kejahatan, yakni kejahatan korporasi, kejahatan birokrat, malpraktek, dan kejahatan individu.Cybercrime sendiri sebagai kejahatan yang muncul sebagai akibat adanya komunitas dunia maya di internet, memiliki karakteristik tersendiri yang berbeda dengan kedua model di atas. Karakteristik unik dari kejahatan di dunia maya tersebut antara lain menyangkut lima hal berikut:

• Ruang lingkup kejahatan
• Sifat kejahatan
• Pelaku kejahatan
• Modus Kejahatan
• Jenis kerugian yang ditimbulkan

3. Jenis Cybercrime

Berdasarkan jenis aktifitas yang dilakukannya, cybercrime dapat digolongkan menjadi beberapa jenis sebagai berikut :


a. Unauthorized Access

Merupakan kejahatan yang terjadi ketika seseorang memasuki atau menyusup ke dalam suatu sistem jaringan komputer secara tidak sah, tanpa izin, atau tanpa sepengetahuan dari pemilik sistem jaringan komputer yang dimasukinya. Probing dan port merupakan contoh kejahatan ini.

b. Illegal Contents

Merupakan kejahatn yang dilakukan dengan memasukkan data atau informasi ke internet tentang suatu hal yang tidak benar, tidak etis, dan dapat dianggap melanggar hukum atau menggangu ketertiban umum, contohnya adalah penyebaran pornografi.

c. Penyebaran virus secara sengaja

Penyebaran virus pada umumnya dilakukan dengan menggunakan email. Sering kali orang yang sistem emailnya terkena virus tidak menyadari hal ini. Virus ini kemudian dikirimkan ke tempat lain melalui emailnya.

d. Data Forgery

Kejahatan jenis ini dilakukan dengan tujuan memalsukan data pada dokumen-dokumen penting yang ada di internet. Dokumen-dokumen ini biasanya dimiliki oleh institusi atau lembaga yang memiliki situs berbasis web database.

e. Cyber Espionage, Sabotage, and Extortion

Cyber Espionage merupakan kejahatan yang memanfaatkan jaringan internet untuk melakukan kegiatan mata-mata terhadap pihak lain, dengan memasuki sistem jaringan komputer pihak sasaran. Sabotage and Extortion merupakan jenis kejahatan yang dilakukan dengan membuat gangguan, perusakan atau penghancuran terhadap suatu data, program komputer atau sistem jaringan komputer yang terhubung dengan internet.

f. Cyberstalking

Kejahatan jenis ini dilakukan untuk mengganggu atau melecehkan seseorang dengan memanfaatkan komputer, misalnya menggunakan e-mail dan dilakukan berulang-ulang. Kejahatan tersebut menyerupai teror yang ditujukan kepada seseorang dengan memanfaatkan media internet. Hal itu bisa terjadi karena kemudahan dalam membuat email dengan alamat tertentu tanpa harus menyertakan identitas diri yang sebenarnya.

g. Carding

Carding merupakan kejahatan yang dilakukan untuk mencuri nomor kartu kredit milik orang lain dan digunakan dalam transaksi perdagangan di internet.

h. Hacking dan Cracker

Istilah hacker biasanya mengacu pada seseorang yang punya minat besar untuk mempelajari sistem komputer secara detail dan bagaimana meningkatkan kapabilitasnya. Adapun mereka yang sering melakukan aksi-aksi perusakan di internet lazimnya disebut cracker. Boleh dibilang cracker ini sebenarnya adalah hacker yang yang memanfaatkan kemampuannya untuk hal-hal yang negatif.

i. Cybersquatting and Typosquatting

Cybersquatting merupakan kejahatan yang dilakukan dengan mendaftarkan domain nama perusahaan orang lain dan kemudian berusaha menjualnya kepada perusahaan tersebut dengan harga yang lebih mahal. Adapun typosquatting adalah kejahatan dengan membuat domain plesetan yaitu domain yang mirip dengan nama domain orang lain. Nama tersebut merupakan nama domain saingan perusahaan.

j. Hijacking
Hijacking merupakan kejahatan melakukan pembajakan hasil karya orang lain. Yang paling sering terjadi adalah Software Piracy (pembajakan perangkat lunak).

k. Cyber Terorism
Suatu tindakan cybercrime termasuk cyber terorism jika mengancam pemerintah atau warganegara, termasuk cracking ke situs pemerintah atau militer.

4. Berdasarkan Sasaran Kejahatan

Sedangkan berdasarkan sasaran kejahatan, cybercrime dapat dikelompokkan menjadi beberapa kategori seperti berikut ini :


a. Cybercrime yang menyerang individu (Against Person)

Beberapa contoh kejahatan ini antara lain :

• Pornografi
Kegiatan yang dilakukan dengan membuat, memasang, mendistribusikan, dan menyebarkan material yang berbau pornografi, cabul, serta mengekspos hal-hal yang tidak pantas.

• Cyberstalking
Kegiatan yang dilakukan untuk mengganggu atau melecehkan seseorang dengan memanfaatkan komputer, misalnya dengan menggunakan e-mail yang dilakukan secara berulang-ulang seperti halnya teror di dunia cyber. Gangguan tersebut bisa saja berbau seksual, religius, dan lain sebagainya.

• Cyber-Tresspass
Kegiatan yang dilakukan melanggar area privasi orang lain seperti misalnya Web Hacking. Breaking ke PC, Probing, Port Scanning dan lain sebagainya.


b. Cybercrime menyerang hak milik (Againts Property)
Cybercrime yang dilakukan untuk menggangu atau menyerang hak milik orang lain. Beberapa contoh kejahatan jenis ini misalnya pengaksesan komputer secara tidak sah melalui dunia cyber, pemilikan informasi elektronik secara tidak sah/pencurian informasi, carding, cybersquating, hijacking, data forgery dan segala kegiatan yang bersifat merugikan hak milik orang lain.

c. Cybercrime menyerang pemerintah (Againts Government)
Cybercrime Againts Government dilakukan dengan tujuan khusus penyerangan terhadap pemerintah. Kegiatan tersebut misalnya cyber terorism sebagai tindakan yang mengancam pemerintah termasuk juga cracking ke situs resmi pemerintah atau situs militer.




Sumber :
-http://balianzahab.wordpress.com/cybercrime/modus-modus-kejahatan-dalam-teknologi-informasi/
- http://laluilmi.blogspot.com/2010/05/modus-modus-kejahatan-dalam-it.html
-http://obyramadhani.wordpress.com/2010/02/26/bab-3-modus-modus-kejahatan-dalam-teknologi-informasi/

Jumat, 28 Oktober 2011

Langkah-langkah pembuatan New Record sebanyak 5 kali pada Business Partner

1. Jelaskan langkah-langkah membuat new record sebanyak 5 kali dalam Business Partner !

- Buka program Compiere.
- Pada pilihan Menu, pilih Partner Relations.
- Lalu pilih tampilan Business Partner.


- Masukkan ketentuan seperti Tentukan Tenant, Search Key, Greeting, Name, Name2, Credit Status, Tax ID, Industry Code, BP Status, dan Business Partner Group yang dibutuhkan untuk memasukkan data customer.
- Lalu klik tampilan menu Save.

Record 1


Record 2


Record 3


Record 4


Record 5




- Untuk mengubah alamat yang diinginkan, maka setelah memasukkan kelima record tersebut pilihlah menu Sales and Marketing.
- Lalu ubah alamat yang diperlukan seperti gambar berikut :



- Setelah menuliskan alamat, klik tandak checklist (OK).
- Buka folder Sales Order.
- Lalu hapus Name pada Business Partner Info.
- Klik kanan pada mouse, lalu pilih Requery.
- Maka akan tampil data-data yang telah dibuat seperti gambar berikut :



Selasa, 25 Oktober 2011

Salah Satu Bentuk Telematika di Bidang E-Learning

A. Pengertian Telematika

Telematika pertama kali digunakan pada tahun 1978 oleh Simon Nora dan Alain Minc dalam bukunya L’informatisation de la Societe. Waww dari nama bukunya saja sudah sangat susah dimengerti ya, tetap pada dasarnya Telematika merupakan bidang yang dapat dipahami jika kita benar – benar ingin mendalami ilmu telematika. Istilah telematika yang berasal dari kata dalam bahasa Perancis telematique yang merupakan gabungan dua kata yaitu telekomunikasi dan informatika. Dengan penjelasan tersebut dapat disimpulkan pengertian Telematika sendiri lebih mengacu kepada industri yang berhubungan dengan penggunakan komputer dalam sistem telekomunikasi.

B. Contoh Telematika

Ragam bentuk yang akan disajikan merupakan aplikasi yang sudah berkembang diberbagai sektor, maka tidak menutup kemungkinan terjadi tumpang tindih. Semua kegiatan dengan istilah work and play dapat menggunakan telematika sebagai penunjang kinerja usaha semua usaha dalam semua sektor, sosial, ekonomi dan budaya. Bentuk-bentuk yang terdapat dalam sistem telematika yaitu E-Government, E-Learning, E-Commerce, dan lain sebagainya. Salah satu bentuk telematika yang akan dibahas adalah bentuk E-Learning.

E-learning

Globalisasi telah menghasilkan pergeseran dalam dunia pendidikan, dalri pendidikan tatap muka yang konvensional ke arah pendidikan yang lebih terbuka. Di Indonesia sudah berkembang pendidikan terbuka dengan modus belajar jarah jauh (distance lesrning) dengan media internet berbasis web atau situs.

Kenyataan tersebut dapat dimungkinkan dengan adanya teknologi telematika, yang dapat menghubungkan guru dengan muridnya, dan mahasiswa dengan dosennya. Melihat hasil perolehan belajar berupa nilai secara online, mengecek jadwal kuliah, dan mengirim naskah tugas, dapat dilakukan.

Peranan web kampus atau sekolah termasuk cukup sentral dalam kegiatan pembelajaran ini. Selain itu, web bernuansa pendidikan non-institusi, perpustakaan online, dan interaksi dalam group, juga sangatlah mendukung. Selain murid atau mahasiswa, portal e-learning dapat diakses oleh siapapun yang memerlukan tanpa pandang faktor jenis usia, maupun pengalaman pendidikan sebelumnya.

Hampir seluruh kampus di Indonesia, dan beberapa Sekolah Menegah Atas (SMA), telah memiliki web. Di DKI Jakarta, proses perencanaan pembelajaran dan penilaian sudah melalui sarana internet yang dikenal sebagai Sistem Administrasi Sekolah (SAS) DKI, dan ratusan web yang menyediakan modul-modul belajar, bahan kuliah, dan hasil penelitian tersebar di dunia internet.

Bentuk telematika lainnya masih banyak lagi, antara lain ada e-medicine, e-laboratory, e-technology, e-research, dan ribuan situs yang memberikan informasi sesuai bidangnya. Di luar berbasis web, telematika dapat berwujud hasil dari kerja satelit, contohnya ialah GPS (Global Position System), atau sejenisnya seperti GLONAS dan GALILEO, Google Earth, 3G, dan kini 4G, kompas digital, sitem navigasi digital untuk angkutan laut dan udara, serta teleconference.



Sumber : www.google.com