Minggu, 05 Mei 2013

Software Implementation & Testing

  1. Implementasi Perangkat Lunak :
  • Hasil Rancangan detil yang ditranslasikan ke dalam suatu bahasa pemrograman, proses translasi dilanjutkan bila suatu kompiler menerima source code sebagai masukan dan mengkasilkan object code yang akan diterjemahkan menjadi machine code.
  • Bahasa pemrograman adalah alat yang digunakan untuk komunikasi anatara manusia dan komputer 

Pengertian Pengujian perangkat lunak
  • elemen kritis dari jaminan kualitas perangkat lunak dan merepresentasikan kajian pokok dari spesifikasi, desain, dan pengkodean 
  • proses menjalankan dan mengevaluasi sebuah perangkat lunak secara manual maupun otomatis untuk menguji apakah perangkat lunak sudah memenuhi persyaratan atau belum 
  • untuk menentukan perbedaan antara hasil yang diharapkan dengan hasil sebenarnya 

Prinsip pengujian yang harus diperhatikan.
  1. Dapat dilacak hingga ke persyaratan atau dokumen SRS
  2. Pengujian harus direncanakan sebelum pelaksanaan pengujian
  3. Pengujian harus dimulai dari hasl yang kecil, diteruskan ke hal-hal yang besar.
  4. Pengujian yang berlebihan tidak akan mungkin dapat dilaksanakan
  5. Pengujian sebaiknya dilakukan oleh pihak ketiga.

Tujuan Pengujian :
  1. Menilai apakah perangkat lunak yang dikembangkan telah memenuhi kebutuhan pemakai.
  2. Menilai apakah tahap pengembangan perangkat lunak telah sesuai dengan metodologi yang digunakan.
  3. Membuat dokumentasi hasil pengujian yang menginformasikan kesesuaian perangkat lunak yang diuji dengan spesifikasi yang telah ditentukan.

Strategi Pengujian :
  1. Pengujian unit program
    Pengujian difokuskan pada unit terkecil dari suatu modul program. Dilaksanakan dengan menggunakan driver dan stub. Driver adalah suatu program utama yang berfungsi mengirim atau menerima data kasus uji dan mencetak hasil dari modul yang diuji. Stub adalah modul yang menggantikan modul sub-ordinat dari modul yang diuji.
  2. Pengujian integrasi
    Pengujian terhadap unit-unit program yang saling berhubungan (terintegrasi) dengan fokus pada masalah interfacing. Dapat dilaksanakan secara top-down integration atau bottom-up integration.
  3. Pengujian validasi
    Pengujian ini dimulai jika pada tahap integrasi tidak ditemukan kesalahan. Suatu validasi dikatakan sukses jika perangkat lunak berfungsi pada suatu cara yang diharapkan oleh pemakai.
  4. Pengujian sistem
    Pengujian yang dilakukan sepenuhnya pada sistem berbasis komputer.
      Recovery testing
      Pengujian dilakukan dimana sistem diusahakan untuk gagal, kemudian diuji normalisasinya.
      Security testing
      Dilakukan untuk menguji mekanisme proteksi
      Stress testing
      Pengujian yang dirancang untuk menghadapkan suatu perangkat lunak kepada situasi Yang tidak normal.
Tahap-tahap Pengujian :
  1. Tentukan apa yang akan diukur melalui pengujian
  2. Bagaimana pengujian akan dilaksanakan
  3. Membangun suatu kasus uji (test case), yaitu sekumpulan data atau situasi yang akan digunakan dalam pengujian.
  4. Tentukan hasil yang diharapkan atau hasil sebenarnya
  5. Jalankan kasus pengujian
  6. bandingkan hasil pengujian dan hasil yang diharapkan.
Pengujian Tahap Analisis :
  • ditekankan pada validasi terhadap kebutuhan, untuk menjamin bahwa kebutuhan telah dispesifikasikan dengan benar
  • Tujuan pengujian pada tahap ini adalah untuk mendapatkan kebutuhan yang layak dan untuk memastikan apakah kebutuhan tersebut sudah dirumuskan dengan baik.
Faktor-faktor pengujian yang dilakukan meliputi :
  1. Kebutuhan yang berkaitan dengan metodelogi
  2. Pendefinisian spesifikasi fungsional
  3. Penentuan spesifikasi kegunaan
  4. Penentuan kebutuhan portabilitas
  5. Pendefinisian antar muka sistem
Pengujian Tahap Perancangan :
  • Bertujuan untuk menguji struktur perangkat lunak yang diturunkan dari kebutuhan
  • Kebutuhan yang bersifat umum dirinci menjadi bentuk yang lebih spesifik .
Faktor-faktor pengujian tahap perancangan meliputi :
  1. Perancangan yang berkaitan dengan kebutuhan
  2. Kesesuaian perancangan dengan metodologi dan teori.
  3. Portabilitas rancangan
  4. Perancangan yang dirawat
  5. Kebenaran rancangan berkaitan dengan fungsi dan aliran data.
  6. Kelengkapan perancangan antar muka.
Pengujian Tahap Implementasi
    Merupakan pengujian unit-unit yang dibuat sebelum diintegrasikan mejadi aplikasi keseluruhan
Faktor-faktor pengujian tahap implementasi meliputi :
    Kendali integritas data
    Kebenaran program
    kemudahan pemakaian
    Sifat coupling
    Pengembangan prosedur operasi.
Pengujian Tahap Pengujian
    untuk menilai apakah spesifikasi program telah ditulis menjadi instruksi-instruksi yang dapat dijalankan pada mesin.
    Selain itu, juga untuk menilai apakah instruksi yang ditulis tersebut telah sesuai dengan spesifikasi program
Faktor-faktor pengujian tahap ini meliputi :
  1. Pengujian fungsional
  2. Dukungan manual
  3. Kemudahan operasi
Pengujian dengan Kasus Uji
  1. Dilakukan meliputi pengujian unit (berupa prosedur atau fungsi) dan pengujian sistem.
  2. Dalam pengujian unit, unit-unit yang diuji meliputi unit-unit yang ada dalam sistem.
  3. Sedangkan pengujian sistem dilakukan terhadap sistem secara keseluruhan.
  4. Setiap pengujian dilakukan dengan menggunakan berbagai data masukan, baik data yang valid maupun tidak.
Teknik Pengujian :
    Ada Banyak teknik pengujian yang dapat digunakan untuk menguji perangkat lunak, seperti :
    Pengujian Black Box
    Pengujian White Box
Pengujian Black Box :
  • Digunakan untuk menguji fungsi-fungsi khusus dari perangkat lunak yang dirancang.
  • Kebenaran perangkat lunak yang diuji hanya dilihat berdasarkan keluaran yang dihasilkan dari data atau kondisi masukan yang diberikan untuk fungsi yang ada tanpa melihat bagaimana proses untuk mendapatkan keluaran tersebut.
  • Dari keluaran yang dihasilkan, kemampuan program dalam memenuhi kebutuhan pemakai dapat diukur sekaligus dapat diiketahui kesalahan-kesalahannya
Beberapa jenis kesalahan yang dapat diidentifikasi :
  • Fungsi tidak benar atau hilang
  • Kesalahan antar muka
  • Kesalahan pada struktur data (pengaksesan basis data)
  • Kesalahan inisialisasi dan akhir program
  • Kesalahan performasi.
Pengujian White Box :
  • digunakan untuk mengetahui cara kerja suatu perangkat lunak secara internal.
  • Pengujian dilakukan untuk menjamin operasi-operasi internal sesuai dengan spesifikasi yang telah ditetapkan dengan menggunakan struktur kendali dari prosedur yang dirancang.
Pelaksanaan pengujian white box :
  1. Menjamim seluruh independent path dieksekusi paling sedikit satu kali. Independent path adalah jalur dalam program yang menunjukkan paling sedikit satu kumpulan proses ataupun kondisi baru.
  2. Menjalani logical decision pada sisi true dan false
  3. Mengeksekusi pengulangan (looping) dalam batas-batas yang ditentukan
  4. Menguji struktur data internal

Jumat, 03 Mei 2013

Perangkat Keras untuk Akses Internet



I.          STANDAR KOMPETENSI
Menggunakan Internet untuk  keperluan informasi dan Komunikasi.
II.       KOMPENTENSI DASAR
Menjelaskan berbagai perangkat keras dan fungsinya untuk keperluan akses Internet

III.    INDIKATOR
a.  Menyebutkan Perangkat Keras untuk akses internet
b.  Menjelaskan fungsi peangkat keras utama untuk akses internet
c.  Menjelaskan berbagai jenis modem
d.  Menjelaskan fungsi hub dalam jaringan untuk akses internet
e.  Menjelaskan fungsi perangkat pendukung untuk akses internet dalam jaringan LAN

IV.    TUJUAN PEMBELAJARAN
a.    Peserta  didik dapat menyebutkan perangkat keras untuk akses interrnet
b.    Peserta  didik dapat menjelaskan fungsi perangkat  keras untuk akses internet
c.    Peserta  didik dapat menyebutkan beberapa jenis modem
d.   Peserta  didik dapat menjelaskan fungsi fungsi dari modem
e.     Peserta didik dapat menjelaskan perangkat pendukung untuk jaringan internet

V.       URAIAN MATERI 

PERANGKAT KERAS PADA KOMPUTER
            Perangkat keras (hardwere) merupakan yang mendukung kinerja komputer yang bisa dilihat secara langsung bentuknya secara fisik. Perengkat keras komputer dibagi dalam beberapa ketegori anatara lain perangkat masukan (input device), perangkat proses (processing device), perangkat penyimpanan data (strorage divice), perangkat keluaran (output device), dan perangkat pendukung lainnya.
1.        Komputer
Komputer merupakan komponen utama, karena digunakan sebagai antar muka dengan pengguna. Spesifikasi minimal sebuah komputer dalam akses internet  antara lain sebagai berikut :           
a.        Processor
Processor, merupakan otak dari komputer untuk menjalankan aplikasi-alikasi dalam komputer, untuk akses internet minimal Pentium III 500 MHz.

Processor merupakan pusat atau otak dari system komputer dimana tempat pemrosesan instruksi-instruksi program dan pengolahan  data dilakukan. Nama lain dari processor adalah CPU ( Central Processing Unit ), namun bagi sebagain orang CPU diartikan sebagai kotak dimana seluruh peripheral komputer dirangkai sebagai satu kesatuan yang utuh.
Processor atau CPU terderi dari dua bagian utama, yaitu unit kendali ( control unit ) dan unit aritmatik dan logic ( arithmetic and logical unit ).

Tugas dari control unit adalah sebagai berikut.
1)      Mengatur dan mengendalikan alat-alat input dan ouput.
2)      Mengambil instruksi-instruksi dari memory card.
3)      Mengambil data dari main memory kalau diperlukan oleh proses.
4)      Menyimpan hasil proses ke main memory.
Sedangkan tugas utama dari arithmetic and logic unti  adalah melakukan semua perhitungan aritmartika yang terjadi sesuai dengan instruksi program.
       b.  RAM (Random Akses Memory), yang berfungsi sebagai media      penyimpanan sementara untuk data, gambar, program aplikasi, dan            yang lainnya. RAM minimal yang digunakan untuk akses internet adalah 64 Mb.
RAM ( Random Access Memory ) merupakan memory utama yang berfungsi sebagai alat penyimpanan sementara pada komputer. Isi dari RAM adalah  berupa informasi selama komputer diaktifkan. RAM bersifat volatile, yaitu apabila sember daya (listrik) yang digunakan mati  maka semua data dan  informasi yang tersimpan didalam akan hilang. Isi data dan informasi dalam ram bisa berubah-ubah karena tergantung dengan pemakian.
b.    ROM ( Read Only Memory )
ROM ( Read Only Memory ) merupakan memory yang bisa dibaca namun isi didalamnya tidak bisa diubah-ubah. Isi dari ROM berupa sistem operasi yang terdiri dari program-program pokok yang dibutuhkan oleh komputer. ROM bersifat nonvolatile, sehingga tidak bisa hilang meskipun listrik dimatikan.
c.    Hardisk, berfungsi sebagai media penyimpanan data secara magnetik. Spesifikasi minimal hardisk adalah 10 Gb.
d.    VGA Card, berfungsi untuk menampilkan gambar pada layar.   
     Spesifikasi minimal VGA card adalah 4 Mb.VGA card atau bisa disebut Graphic Card merupakan perangkat  yang digunakan untuk mengatur tampilan grafis (gambar) pada minitor. VGA memiliki kapsitas memory tersendiri yang berpengaruh pada tampilan. Semakin besar kapasitas memory maka kualitas gambar akan semakin bagus, begitu juga sebaliknya.
e.    Monitor, merupakan perangkat output untuk menampilkan proses   kerja dari komputer. Monitor merupakan pernagkat keras yang digunakan untuk  menanpilkan hasil olahan komputer dengan cepat dan juga sebagai  alat interaksi dengan pengguna. Monitor dapat menghasilkan  teks maupun gambar di layer dengan cara menampilkan sejumlah titik cahaya (pixel) yang dikombinasikan  membentuk teks atau gambar  yang dimaksud. Jumlah pixel yang ditampilkan  akan menentukan  resolusi monitor.


Jenis monitor ada lima macam, yaitu :
1.    Monitor Monokrom
2.    Monitor CGA (Color Graphic Adapter)
3.    Monitor EGA (Echanced Graphic Adapter)
4.    Monitor VGA (Video Graphic Adapter )
5.    Monitor SVGA (Super Video Graphic Array)

untuk materi lebih detailnya silahkan download DISINI

Kamis, 02 Mei 2013

Kriptografi

 Kata cryptography berasal dari bahasa Yunani: krupto (hidden atau secret) dan grafh (writing) Artinya “secret writing”

Definisi lama: Kriptografi adalah ilmu dan seni untuk menjaga kerahasian pesan dengan cara menyandikannya ke dalam bentuk yang tidak dapat dimengerti lagi maknanya.
Kriptanalisis (cryptanalysis): ilmu dan seni untuk memecahkan chiperteks menjadi plainteks tanpa mengetahui kunci yang digunakan.
Pelakunya disebut kriptanalis (Perancang algoritma kriptografi: kriptografer) Kriptanalisis merupakan “lawan” kriptografi

Kriptologi (cryptology): studi mengenai kriptografi dan kriptanalisis
Persamaan kriptografer dan kriptanalis:
Keduanya sama-sama menerjemahkan cipherteks menjadi plainteks
Perbedaan kriptografer dan kriptanalis:
Kriptografer bekerja atas legitimasi pengirim atau penerima pesan
Kriptanalis bekerja tanpa legitimasi pengirim atau penerima pesan
criptografi 
simetri
kunci enkripsi dan deskripsi sama
asimetri
Kriptografi kunci-publik dapat dapat dianalogikan seperti kotak surat yang terkunci dan memiliki lubang untuk memasukkan surat.
Kotak surat digembok dengan kunci. Kunci hanya dimiliki oleh pemilik kotak surat.
Setiap orang dapat memasukkan surat ke dalam kotak surat tersebut, tetapi hanya pemilik kotak yang dapat membuka
kotak dan membaca surat di dalamnya karena ia yang memiliki kunci.
Keuntungan sistem ini:
Tidak ada kebutuhan untuk mendistribusikan kunci privat sebagaimana pada sistem kriptografi simetri.
Kunci publik dapat dikirim ke penerima melalui saluran yang sama dengan saluran yang digunakan untuk mengirim pesan. Saluran untuk mengirim pesan umumnya tidak aman
Kedua, jumlah kunci dapat ditekan.
 pendahuluan
Keseluruhan point dari kriptografi adalah menjaga kerahasiaan plainteks atau kunci dari penyadap (eavesdropper) atau kriptanalis (cryptanalyst). Kriptanalis berusaha memecahkan cipherteks dengan suatu serangan terhadap sistem kriptografi.
apa itu attack  Serangan:
setiap usaha (attempt) atau percobaan yang dilakukan oleh kriptanalis untuk menemukan kunci atau menemukan plainteks dari cipherteksnya. Asumsi: kriptanalis mengetahui algoritma kriptografi yang digunakan Prinsip Kerckhoff: Semua algoritma kriptografi harus publik; hanya kunci yang rahasia. Satu-satunya keamanan terletak pada kunci!

Berdasarkan keterlibatan penyerang dalam komunikasi


  1. Serangan pasif (passive attack)
  • penyerang tidak terlibat dalam komunikasi antara pengirim dan penerima - penyerang hanya melakukan penyadapan untuk memperoleh data atau informasi sebanyak-banyaknya
Metode penyadapan:
Wiretapping Electromagnetic eavesdropping Acoustic Eavesdropping
Serangan aktif (active attack)
penyerang mengintervensi komunikasi dan ikut mempengaruhi sistem untuk keuntungan dirinya -
penyerang mengubah aliran pesan seperti: menghapus sebagian cipherteks, mengubah cipherteks, menyisipkan potongan cipherteks palsu, me-replay pesan lama, mengubah informasi yang tersimpan, dsb




Keamana Jaringan

Kenapa keamanan jaringan komputer menjadi penting?
  • Evolusi dari teknologi berfokus pada kemudahan penggunaan.
  • Meningkatnya lingkungan berbasis jaringan dan aplikasi-aplikasi berbasis jaringan.
  • Quality control tidak berjalan dengan baik karena tidak dapat mendeteksi permasalahan secara dini,
Elemen-Elemen Keamanan
Keamanan terdiri atas 4 elemen yaitu:
  1. Confidentiality (C)=Kerahasiaan dari informasi atau sumber daya.
  2. Authenticity (A) =Identifikasi dan jaminan dari informasi yang asli.
  3. Integrity (I) =Keterjaminan bahwa data atau sumber daya sistem komputer hanya dapat dimodifikasi oleh pihak-pihak yang diotorisasi.
  4. Availability (A)=Ketersediaan atau keberadaan informasi atau sumber daya yang ingin digunakan.
Tahap Aktifitas Hacking
  1. Reconnaissance (pengintaian)
    adalah tahap mengumpulkan data dimana hacker akan mengumpulkan semua data sebanyak-banyaknya mengenai    target.
    Reconnaissance di bagi 2 yaitu active & Passive Reconnaissance.
    Active Reconnaissance adalah Reconnaissance yang dilakukan dengan berhubungan langsung dengan korban.
    Passive Reconnaissance adalah Reconnaissance yang dilakukan tanpa berhubungan secara langsung dengan korban.
  2. Scanning
    merupakan fase dimulainya sebuah serangan (pre-attack), dimana hacker mencari berbagai kemungkinan informasi yang bisa digunakan untuk mengambil alih komputer korban. Hacker melakukan scan untuk informasi tertentu berdasarkan informasi yang dikumpulkan selama Reconnaissance.
    Scanning dapat meliputi penggunaan tool port scanner, network mapping, sweeping, vulnerability scanner, dan lain-lain.
     
  3. Gaining Access
    disebut dengan fase penerobosan (penetration), dimana hacker melakukan exploit kelemahan (vulnerability) pada sistem untuk menguasai komputer korban.
    Eksploitasi dapat terjadi melalui LAN, Internet, atau sebagai penipuan (deception), atau pencurian (theft).
  4. Maintaining Access
    merupakan fase dimana hacker berusaha mempertahankan kekuasaannya terhadap komputer korban dengan berbagai cara.
    Seperti dengan menanamkan backdoor, rootkit, trojan, dan lain-lain.
    Untuk mempertahankan kekuasaannya, hacker bahkan bisa memperbaiki beberapa kelemahan yang terdapat pada komputer korban agar hacker lain tidak dapat memanfaatkannya untuk mengambil alih komputer yang sama.
  5. Covering Tracks
    merupakan aktivitas yang dilakukan oleh hacker untuk menutup jejak dengan cara menghapus atau mengubah   log file, steganography, dan lain-lain.
Pengelompokkan Jenis Serangan
  • Level Sistem Operasi
    Sistem operasi saat ini sangat kompleks.
    Sistem operasi menjalankan banyak services, port, dan mode akses dan diperlukan tweaking yang ekstensif untuk menguncinya.
    Default instalasi dari kebanyakan sistem operasi memiliki sejumlah besar services dan port-port yang terbuka.
    Menerapkan patches dan hotfixes tidaklah mudah di jaringan yang kompleks seperti saat ini.
    Penyerang mencari kelemahan pada sistem operasi dan mengeksploitasinya untuk memperoleh akses ke sistem jaringan
     
  • Level Aplikasi
    Kelemahan pada satu aplikasi yang digunakan dapat membawa implikasi yang sangat besar, karena hacker dapat masuk dan menguasai komputer Anda dari aplikasi tersebut.
    Pengembang perangkat lunak berada pada jadwal yang sangat ketat untuk mendistribusikan produknya.
    Aplikasi hadir dengan banyak sekali fungsi dan fitur-fitur.
    Tidak cukup waktu untuk melakukan testing secara lengkap sebelum melepaskan (release) produk.
    Security sering kali dipikirkan kemudian dan biasanya didistribusikan sebagai component “add-on
  • Shrink Wrap Code
    Untuk apa menemukan kembali roda yang sudah ditemukan?
    Anda tinggal menggunakan roda tersebut bukan?
    Ini adalah ungkapan untuk menunjukkan bahwa Anda seharusnya memanfaatkan peralatan atau alat bantu yang sudah ada daripada selalu memikirkan membuat yang baru.
    Ketika Anda menginstall sistem operasi atau aplikasi, berbagai contoh script yang dapat digunakan oleh Administrator untuk mempermudah pekerjaannya.
    Banyak pengguna yang memanfaatkan kode tersebut atau membiarkannya aktif apa adanya tanpa melakukan sedikitpun perubahan atau konfigurasi.
    Akibatnya dapat diduga, script tersebut dapat dimanfaatkan oleh hacker.
  • Kesalahan konfigurasi
    Semakin hari, aplikasi & sistem operasi semakin rumit dengan tambahan berbagai fitur yang terus berubah.
    Masalahnya sebagian orang-orang tidak memahami semua teknologi baru tersebut.
    Administrator hanya membuat konfigurasi sederhana dengan prinsip “yang penting program bisa dijalankan”.
    Hacker sering memanfaatkan kesalahan konfigurasi ini untuk mengambil alih sebuah komputer