Welcome To My Blog.

Kamis, 13 Januari 2011

Konsep Subnetting, Siapa Takut?

by Romi Satria Wahono
subnetrouter.JPGSubnetting adalah termasuk materi yang banyak keluar di ujian CCNA dengan berbagai variasi soal. Juga menjadi momok bagi student atau instruktur yang sedang menyelesaikan kurikulum CCNA 1 program CNAP (Cisco Networking Academy Program). Untuk menjelaskan tentang subnetting, saya biasanya menggunakan beberapa ilustrasi dan analogi yang sudah kita kenal di sekitar kita. Artikel ini sengaja saya tulis untuk rekan-rekan yang sedang belajar jaringan, yang mempersiapkan diri mengikuti ujian CCNA, dan yang sedang mengikuti pelatihan CCNA 1.Setelah selesai membaca ini, silakan lanjutkan dengan artikel Penghitungan Subnetting, Siapa Takut?.
Sebenarnya subnetting itu apa dan kenapa harus dilakukan? Pertanyaan ini bisa dijawab dengan analogi sebuah jalan. Jalan bernama Gatot Subroto terdiri dari beberapa rumah bernomor 01-08, dengan rumah nomor 08 adalah rumah Ketua RT yang memiliki tugas mengumumkan informasi apapun kepada seluruh rumah di wilayah Jl. Gatot Subroto.
jalan.jpg
Ketika rumah di wilayah itu makin banyak, tentu kemungkinan menimbulkan keruwetan dan kemacetan. Karena itulah kemudian diadakan pengaturan lagi, dibuat gang-gang, rumah yang masuk ke gang diberi nomor rumah baru, masing-masing gang ada Ketua RTnya sendiri-sendiri. Sehingga ini akan memecahkan kemacetan, efiesiensi dan optimalisasi transportasi, serta setiap gang memiliki previledge sendiri-sendiri dalam mengelola wilayahnya. Jadilah gambar wilayah baru seperti di bawah:
gang.jpg
Konsep seperti inilah sebenarnya konsep subnetting itu. Disatu sisi ingin mempermudah pengelolaan, misalnya suatu kantor ingin membagi kerja menjadi 3 divisi dengan masing-masing divisi memiliki 15 komputer (host). Disisi lain juga untuk optimalisasi dan efisiensi kerja jaringan, karena jalur lalu lintas tidak terpusat di satu network besar, tapi terbagi ke beberapa ruas-ruas gang. Yang pertama analogi Jl Gatot Subroto dengan rumah disekitarnya dapat diterapkan untuk jaringan adalah seperti NETWORK ADDRESS (nama jalan) dan HOST ADDRESS (nomer rumah). Sedangkan Ketua RT diperankan oleh BROADCAST ADDRESS (192.168.1.255), yang bertugas mengirimkan message ke semua host yang ada di network tersebut.
network.jpg
Masih mengikuti analogi jalan diatas, kita terapkan ke subnetting jaringan adalah seperti gambar di bawah. Gang adalah SUBNET, masing-masing subnet memiliki HOST ADDRESS dan BROADCAST ADDRESS.
subnet.jpg
Terus apa itu SUBNET MASK? Subnetmask digunakan untuk membaca bagaimana kita membagi jalan dan gang, atau membagi network dan hostnya. Address mana saja yang berfungsi sebagai SUBNET, mana yang HOST dan mana yang BROADCAST. Semua itu bisa kita ketahui dari SUBNET MASKnya. Jl Gatot Subroto tanpa gang yang saya tampilkan di awal bisa dipahami sebagai menggunakan SUBNET MASK DEFAULT, atau dengan kata lain bisa disebut juga bahwa Network tersebut tidak memiliki subnet (Jalan tanpa Gang). SUBNET MASK DEFAULT ini untuk masing-masing Class IP Address adalah sbb:
CLASS OKTET PERTAMA SUBNET MAS DEFAULT PRIVATE ADDRESS
A 1-127 255.0.0.0 10.0.0.0-10.255.255.255
B 128-191 255.255.0.0 172.16.0.0-172.31.255.255
C 192-223 255.255.255.0 192.168.0.0-192.168.255.255
Setelah anda selesai membaca artikel ini, silakan lanjutkan dengan membaca artikel Penghitungan Subnetting, Siapa Takut?.

Konsep Subnetting, Siapa Takut?

subnetrouter.JPGSubnetting adalah termasuk materi yang banyak keluar di ujian CCNA dengan berbagai variasi soal. Juga menjadi momok bagi student atau instruktur yang sedang menyelesaikan kurikulum CCNA 1 program CNAP (Cisco Networking Academy Program). Untuk menjelaskan tentang subnetting, saya biasanya menggunakan beberapa ilustrasi dan analogi yang sudah kita kenal di sekitar kita. Artikel ini sengaja saya tulis untuk rekan-rekan yang sedang belajar jaringan, yang mempersiapkan diri mengikuti ujian CCNA, dan yang sedang mengikuti pelatihan CCNA 1.Setelah selesai membaca ini, silakan lanjutkan dengan artikel Penghitungan Subnetting, Siapa Takut?.
Sebenarnya subnetting itu apa dan kenapa harus dilakukan? Pertanyaan ini bisa dijawab dengan analogi sebuah jalan. Jalan bernama Gatot Subroto terdiri dari beberapa rumah bernomor 01-08, dengan rumah nomor 08 adalah rumah Ketua RT yang memiliki tugas mengumumkan informasi apapun kepada seluruh rumah di wilayah Jl. Gatot Subroto.
jalan.jpg
Ketika rumah di wilayah itu makin banyak, tentu kemungkinan menimbulkan keruwetan dan kemacetan. Karena itulah kemudian diadakan pengaturan lagi, dibuat gang-gang, rumah yang masuk ke gang diberi nomor rumah baru, masing-masing gang ada Ketua RTnya sendiri-sendiri. Sehingga ini akan memecahkan kemacetan, efiesiensi dan optimalisasi transportasi, serta setiap gang memiliki previledge sendiri-sendiri dalam mengelola wilayahnya. Jadilah gambar wilayah baru seperti di bawah:
gang.jpg
Konsep seperti inilah sebenarnya konsep subnetting itu. Disatu sisi ingin mempermudah pengelolaan, misalnya suatu kantor ingin membagi kerja menjadi 3 divisi dengan masing-masing divisi memiliki 15 komputer (host). Disisi lain juga untuk optimalisasi dan efisiensi kerja jaringan, karena jalur lalu lintas tidak terpusat di satu network besar, tapi terbagi ke beberapa ruas-ruas gang. Yang pertama analogi Jl Gatot Subroto dengan rumah disekitarnya dapat diterapkan untuk jaringan adalah seperti NETWORK ADDRESS (nama jalan) dan HOST ADDRESS (nomer rumah). Sedangkan Ketua RT diperankan oleh BROADCAST ADDRESS (192.168.1.255), yang bertugas mengirimkan message ke semua host yang ada di network tersebut.
network.jpg
Masih mengikuti analogi jalan diatas, kita terapkan ke subnetting jaringan adalah seperti gambar di bawah. Gang adalah SUBNET, masing-masing subnet memiliki HOST ADDRESS dan BROADCAST ADDRESS.
subnet.jpg
Terus apa itu SUBNET MASK? Subnetmask digunakan untuk membaca bagaimana kita membagi jalan dan gang, atau membagi network dan hostnya. Address mana saja yang berfungsi sebagai SUBNET, mana yang HOST dan mana yang BROADCAST. Semua itu bisa kita ketahui dari SUBNET MASKnya. Jl Gatot Subroto tanpa gang yang saya tampilkan di awal bisa dipahami sebagai menggunakan SUBNET MASK DEFAULT, atau dengan kata lain bisa disebut juga bahwa Network tersebut tidak memiliki subnet (Jalan tanpa Gang). SUBNET MASK DEFAULT ini untuk masing-masing Class IP Address adalah sbb:
CLASS OKTET PERTAMA SUBNET MAS DEFAULT PRIVATE ADDRESS
A 1-127 255.0.0.0 10.0.0.0-10.255.255.255
B 128-191 255.255.0.0 172.16.0.0-172.31.255.255
C 192-223 255.255.255.0 192.168.0.0-192.168.255.255
Setelah anda selesai membaca artikel ini, silakan lanjutkan dengan membaca artikel Penghitungan Subnetting, Siapa Takut?.

Konsep Subnetting, Siapa Takut?

by Romi Satria Wahono
subnetrouter.JPGSubnetting adalah termasuk materi yang banyak keluar di ujian CCNA dengan berbagai variasi soal. Juga menjadi momok bagi student atau instruktur yang sedang menyelesaikan kurikulum CCNA 1 program CNAP (Cisco Networking Academy Program). Untuk menjelaskan tentang subnetting, saya biasanya menggunakan beberapa ilustrasi dan analogi yang sudah kita kenal di sekitar kita. Artikel ini sengaja saya tulis untuk rekan-rekan yang sedang belajar jaringan, yang mempersiapkan diri mengikuti ujian CCNA, dan yang sedang mengikuti pelatihan CCNA 1.Setelah selesai membaca ini, silakan lanjutkan dengan artikel Penghitungan Subnetting, Siapa Takut?.
Sebenarnya subnetting itu apa dan kenapa harus dilakukan? Pertanyaan ini bisa dijawab dengan analogi sebuah jalan. Jalan bernama Gatot Subroto terdiri dari beberapa rumah bernomor 01-08, dengan rumah nomor 08 adalah rumah Ketua RT yang memiliki tugas mengumumkan informasi apapun kepada seluruh rumah di wilayah Jl. Gatot Subroto.
jalan.jpg
Ketika rumah di wilayah itu makin banyak, tentu kemungkinan menimbulkan keruwetan dan kemacetan. Karena itulah kemudian diadakan pengaturan lagi, dibuat gang-gang, rumah yang masuk ke gang diberi nomor rumah baru, masing-masing gang ada Ketua RTnya sendiri-sendiri. Sehingga ini akan memecahkan kemacetan, efiesiensi dan optimalisasi transportasi, serta setiap gang memiliki previledge sendiri-sendiri dalam mengelola wilayahnya. Jadilah gambar wilayah baru seperti di bawah:
gang.jpg
Konsep seperti inilah sebenarnya konsep subnetting itu. Disatu sisi ingin mempermudah pengelolaan, misalnya suatu kantor ingin membagi kerja menjadi 3 divisi dengan masing-masing divisi memiliki 15 komputer (host). Disisi lain juga untuk optimalisasi dan efisiensi kerja jaringan, karena jalur lalu lintas tidak terpusat di satu network besar, tapi terbagi ke beberapa ruas-ruas gang. Yang pertama analogi Jl Gatot Subroto dengan rumah disekitarnya dapat diterapkan untuk jaringan adalah seperti NETWORK ADDRESS (nama jalan) dan HOST ADDRESS (nomer rumah). Sedangkan Ketua RT diperankan oleh BROADCAST ADDRESS (192.168.1.255), yang bertugas mengirimkan message ke semua host yang ada di network tersebut.
network.jpg
Masih mengikuti analogi jalan diatas, kita terapkan ke subnetting jaringan adalah seperti gambar di bawah. Gang adalah SUBNET, masing-masing subnet memiliki HOST ADDRESS dan BROADCAST ADDRESS.
subnet.jpg
Terus apa itu SUBNET MASK? Subnetmask digunakan untuk membaca bagaimana kita membagi jalan dan gang, atau membagi network dan hostnya. Address mana saja yang berfungsi sebagai SUBNET, mana yang HOST dan mana yang BROADCAST. Semua itu bisa kita ketahui dari SUBNET MASKnya. Jl Gatot Subroto tanpa gang yang saya tampilkan di awal bisa dipahami sebagai menggunakan SUBNET MASK DEFAULT, atau dengan kata lain bisa disebut juga bahwa Network tersebut tidak memiliki subnet (Jalan tanpa Gang). SUBNET MASK DEFAULT ini untuk masing-masing Class IP Address adalah sbb:
CLASS OKTET PERTAMA SUBNET MAS DEFAULT PRIVATE ADDRESS
A 1-127 255.0.0.0 10.0.0.0-10.255.255.255
B 128-191 255.255.0.0 172.16.0.0-172.31.255.255
C 192-223 255.255.255.0 192.168.0.0-192.168.255.255
Setelah anda selesai membaca artikel ini, silakan lanjutkan dengan membaca artikel Penghitungan Subnetting, Siapa Takut?.

Pola Soal Subnetting dan Teknik Mengerjakannya

Pada saat mengajar dan memahamkan materi subnetting di kelas networking atau CCNA, saya biasanya menggunakan metode seperti yang saya tulis di dua artikel sebelumnya:
  1. Memahami Konsep Subnetting
  2. Penghitungan Subnetting
Selama ini lancar-lancar saja dan tingkat pemahaman siswa cukup bagus. Kebetulan kemarin (6 Mei 2007) saya berkesempatan mencoba metode yang sama untuk ngajar adik-adik SMKN 1 Rangkasbitung. Pemahaman bisa masuk, hanya ada sedikit permasalahan pada saat mengerjakan soal karena variasi soal yang beragam. Supaya lebih tajam lagi, saya perlu sajikan satu topik khusus teknik mengerjakan soal-soal subnetting dengan berbagai pola yang ada. Anggap saja ini adalah materi berikutnya dari dua materi sebelumnya. Contoh-contoh soal lengkap bisa download dari sini.
1. SOAL MENANYAKAN SUBNETMASK DENGAN PERSYARATAN JUMLAH HOST ATAU SUBNET
Soal yang menanyakan subnetmask apa yang sebaiknya digunakan dengan batasan jumlah host atau subnet yang ditentukan dalam soal. Untuk menjawab soal seperti ini kita gunakan rumus menghitung jumlah host per subnet, yaitu 2y – 2, dimana y adalah banyaknya binari 0 pada oktet terakhir subnetmask. Dan apabila yang ditentukan adalah jumlah subnet, kita menggunakan rumus 2x (cara setelah 2005) atau 2x – 2 (cara sebelum 2005), dimana x adalah banyaknya binari 1 pada oktet terakhir subnetmask.
  • Soal: A company is planning to subnet its network for a maximum of 27 hosts. Which subnetmask would provide the needed hosts and leave the fewest unused addresses in each subnet?

    Jawab
    : Karena kebutuhan host adalah 27,  kita tinggal masukkan ke rumus 2y – 2, dimana jawabannya tidak boleh kurang dari (atau sama dengan) 27. Jadi 2y – 2 >= 27, sehingga nilai y yang tepat adalah 5 (30 host). Sekali lagi karena y adalah banyaknya binari 0 pada oktet terakhir subnetmask, maka kalau kita susun subnetmasknya menjadi 11111111.11111111.11111111.11100000 atau kalau kita desimalkan menjadi 255.255.255.224. Itulah jawabannya :)
  • Soal: You have a Class B network ID and need about 450 IP addresses per subnet. What is the best mask for this network?

    Jawab
    2y – 2 >= 450. Nilai y yang tepat adalah 9 (510 host). Jadi subnetmasknya adalah: 11111111.11111111.11111110.00000000 atau kalau didesimalkan menjadi 255.255.254.0 (itulah jawabannya! ;) ).
  • subnettighost.jpgSoal: Refer to the exhibit. The internetwork in the exhibit has been assigned the IP address 172.20.0.0. What would be the appropriate subnet mask to maximize the number of networks available for future growth?

    Jawab
    : Cari jumlah host per subnet yang paling besar, jadikan itu rujukan karena kalau kita ambil terkecil ada kemungkinan kebutuhan host yang lebih besar tidak tercukupi. Jadi untuk soal ini 2y – 2 >= 850. Nilai y yang paling tepat adalah 10 (1022 host). Jadi subnetmasknya adalah 11111111.11111111.11111100.00000000 atau 255.255.252.0
2. SOAL MENGIDENTIFIKASI JENIS ALAMAT IP
Soal mengidentifikasi jenis alamat IP bisa kita jawab dengan menghitung blok subnet dan mencari kelipatannya blok subnet yang paling dekat dengan alamat IP yang ditanyakan.
  • Soal: Which type of address is 223.168.17.167/29?

    Jawab
    : Subnetmask dengan CIDR /29 artinya 255.255.255. 248. Blok subnet= 256-248 = 8, alias urutan subnetnya adalah kelipatan 8 yaitu 0, 8, 16, 24, 32, …, 248. Tidak perlu mencari semu subnet (kelipatan blok subnet), yang penting kita cek kelipatan 8 yang paling dekat dengan 167 (sesuai soal), yaitu 160 dan 168. Kalau kita susun seperti yang dulu kita lakukan di penghitungan subnetting adalah seperti di bawah. Dari situ ketahuan bahwa 223.168.17.167 adalah alamat broadcast.
  • Subnet
    223.168.17.160 223.168.17.168
    Host Pertama 223.168.17.161 223.168.17.169
    Host Terakhir 223.168.17.166 223.168.17.174
    Broadcast 223.168.17.167 223.168.17.175
3. SOAL MENGIDENTIFIKASI KESALAHAN SETTING JARINGAN
Teknik mengerjakan soal yang berhubungan dengan kesalahan setting jaringan adalah kita harus menganalisa alamat IP, gateway dan netmasknya apakah sudah bener. Sudah benar ini artinya:
  1. Apakah subnetmask yang digunakan di host dan di router sudah sama
  2. Apakah alamat IP tersebut masuk diantara host pertama dan terakhir. Perlu dicatat bahwa alamat subnet dan broadcast tidak bisa digunakan untuk alamat IP host
  3. Biasanya alamat host pertama digunakan untuk alamat IP di router untuk subnet tersebut
  • subnettingidentifikasi.jpgSoal: Host A is connected to the LAN, but it cannot connect to the Internet. The host configuration is shown in the exhibit. What are the two problems with this configuration?
  • Jawab: CIDR /27 artinya netmask yang digunakan adalah 255.255.255.224. Dari sini kita tahu bahwa isian netmask di host adalah berbeda, jadi salah setting di netmask. Yang kedua blok subnet = 256-224 = 32, jadi subnetnya adalah kelipatan 32 (0, 32, 64, 86, 128, …, 224). Artinya di bawah Router 1, masuk di subnet 198.18.166.32. Alamat gateway sudah benar, karena biasa digunakan alamat host pertama. Hanya alamat IP hostnya salah karena 198.18.166.65 masuk di alamat subnet 198.18.166.64 dan bukan 198.18.166.32.
4. SOAL MENGIDENTIFIKASI ALAMAT SUBNET DAN HOST YANG VALID
Termasuk jenis soal yang paling banyak keluar, baik di ujian CCNA akademi (CNAP) atau CCNA 604-801. Teknik mengerjakan soal yang menanyakan alamat subnet dan host yang valid dari suatu subnetmask adalah dimulai dengan mencari blok subnetnya, menyusun alamat subnet, host pertama, host terakhir dan broadcastnya, serta yang terakhir mencocokkan susunan alamat tersebut dengan soal ataupun jawaban yang dipilih.
  • Soal: What is the subnetwork number of a host with an IP address of 172.16.66.0/21?Jawab: CIDR /21 berarti 255.255.248.0. Blok subnet = 256- 248 = 8, netmasknya adalah kelipatan 8 (0, 8, 16, 24, 32, 40, 48,  …, 248) dan karena ini adalah alamat IP kelas B, blok subnet kita “goyang” di oktet ke 3. Tidak perlu kita list semuanya, kita hanya perlu cari kelipatan 8 yang paling dekat dengan 66 (sesuai dengan soal), yaitu 64 dan 72. Jadi susunan alamat IP khusus untuk subnet 172.16.64.0 dan 172.16.72.0 adalah seperti di bawah. Jadi pertanyaan bisa dijawab bahwa 172.16.66.0 itu masuk di subnet 172.16.64.0
  • Subnet
    172.16.64.0 172.16.72.0
    Host Pertama 172.16.64.1 172.16.72.1
    Host Terakhir 172.16.71.254 172.16.79.254
    Broadcast 172.16.71.255 172.16.79.255
  • Soal: What is the subnetwork address for a host with the IP address 200.10.5.68/28?Jawab: CIDR /28 berarti 255.255.255.240. Blok subnet = 256-240 = 16, netmasknya adalah kelipatan 16 (0, 16, 32, 48, 64, 80 …, 240). Kelipatan 16 yang paling dekat dengan 68 (sesuai soal) adalah 64 dan 80. Jadi alamat IP 200.10.5.68 masuk di alamat subnet 200.10.5.64. 
    Subnet
    200.10.5.64 200.10.5.80
    Host Pertama 200.10.5.65 200.10.5.81
    Host Terakhir 200.10.5.78 200.10.5.94
    Broadcast 200.10.5.79 200.10.5.95
5. SOAL-SOAL LAIN YANG UNIK
Selain 4 pola soal diatas, kadang muncul soal yang cukup unik, sepertinya sulit meskipun sebenarnya mudah. Saya coba sajikan secara bertahap soal-soal tersebut di sini, sambil saya analisa lagi soal-soal subnetting yang lain lagi :)
  • Soal: Which combination of network id and subnet mask correctly identifies all IP addresses from 172.16.128.0 through 172.16.159.255?Jawab: Teknik paling mudah mengerjakan soal diatas adalah dengan menganggap 172.16.128.0 dan 172.16.159.255 adalah satu blok subnet. Jadi kalau kita gambarkan seperti di bawah:
Subnet
172.16.128.0
Host Pertama  
Host Terakhir  
Broadcast 172.16.159.255
    Dari sini berarti kita bisa lihat bahwa alamat subnet berikutnya pasti 172.16.160.0, karena rumus alamat broadcast adalah satu alamat sebelum alamat subnet berikutnya. Nah sekarang jadi ketahuan blok subnetnya adalah 160-128 = 32 (kelipatan 32), terus otomatis juga ketahuan subnetmasknya karena rumus blok subnet adalah 256-oktet terakhir netmask. Artinya subnetmasknya adalah 255.255.224.0. Kok tahu kalau letak 224 di oktet ketiga? Ya karena yang kita kurangi (“goyang”) tadi adalah oktet ketiga.
Subnet
172.16.128.0 172.16.160.0
Host Pertama    
Host Terakhir    
Broadcast 172.16.159.255  

Pola Soal Subnetting dan Teknik Mengerjakannya

by Romi Satria Wahono
Pada saat mengajar dan memahamkan materi subnetting di kelas networking atau CCNA, saya biasanya menggunakan metode seperti yang saya tulis di dua artikel sebelumnya:
  1. Memahami Konsep Subnetting
  2. Penghitungan Subnetting
Selama ini lancar-lancar saja dan tingkat pemahaman siswa cukup bagus. Kebetulan kemarin (6 Mei 2007) saya berkesempatan mencoba metode yang sama untuk ngajar adik-adik SMKN 1 Rangkasbitung. Pemahaman bisa masuk, hanya ada sedikit permasalahan pada saat mengerjakan soal karena variasi soal yang beragam. Supaya lebih tajam lagi, saya perlu sajikan satu topik khusus teknik mengerjakan soal-soal subnetting dengan berbagai pola yang ada. Anggap saja ini adalah materi berikutnya dari dua materi sebelumnya. Contoh-contoh soal lengkap bisa download dari sini.
1. SOAL MENANYAKAN SUBNETMASK DENGAN PERSYARATAN JUMLAH HOST ATAU SUBNET
Soal yang menanyakan subnetmask apa yang sebaiknya digunakan dengan batasan jumlah host atau subnet yang ditentukan dalam soal. Untuk menjawab soal seperti ini kita gunakan rumus menghitung jumlah host per subnet, yaitu 2y – 2, dimana y adalah banyaknya binari 0 pada oktet terakhir subnetmask. Dan apabila yang ditentukan adalah jumlah subnet, kita menggunakan rumus 2x (cara setelah 2005) atau 2x – 2 (cara sebelum 2005), dimana x adalah banyaknya binari 1 pada oktet terakhir subnetmask.
  • Soal: A company is planning to subnet its network for a maximum of 27 hosts. Which subnetmask would provide the needed hosts and leave the fewest unused addresses in each subnet?

    Jawab
    : Karena kebutuhan host adalah 27,  kita tinggal masukkan ke rumus 2y – 2, dimana jawabannya tidak boleh kurang dari (atau sama dengan) 27. Jadi 2y – 2 >= 27, sehingga nilai y yang tepat adalah 5 (30 host). Sekali lagi karena y adalah banyaknya binari 0 pada oktet terakhir subnetmask, maka kalau kita susun subnetmasknya menjadi 11111111.11111111.11111111.11100000 atau kalau kita desimalkan menjadi 255.255.255.224. Itulah jawabannya :)
  • Soal: You have a Class B network ID and need about 450 IP addresses per subnet. What is the best mask for this network?

    Jawab
    2y – 2 >= 450. Nilai y yang tepat adalah 9 (510 host). Jadi subnetmasknya adalah: 11111111.11111111.11111110.00000000 atau kalau didesimalkan menjadi 255.255.254.0 (itulah jawabannya! ;) ).
  • subnettighost.jpgSoal: Refer to the exhibit. The internetwork in the exhibit has been assigned the IP address 172.20.0.0. What would be the appropriate subnet mask to maximize the number of networks available for future growth?

    Jawab
    : Cari jumlah host per subnet yang paling besar, jadikan itu rujukan karena kalau kita ambil terkecil ada kemungkinan kebutuhan host yang lebih besar tidak tercukupi. Jadi untuk soal ini 2y – 2 >= 850. Nilai y yang paling tepat adalah 10 (1022 host). Jadi subnetmasknya adalah 11111111.11111111.11111100.00000000 atau 255.255.252.0
2. SOAL MENGIDENTIFIKASI JENIS ALAMAT IP
Soal mengidentifikasi jenis alamat IP bisa kita jawab dengan menghitung blok subnet dan mencari kelipatannya blok subnet yang paling dekat dengan alamat IP yang ditanyakan.
  • Soal: Which type of address is 223.168.17.167/29?

    Jawab
    : Subnetmask dengan CIDR /29 artinya 255.255.255. 248. Blok subnet= 256-248 = 8, alias urutan subnetnya adalah kelipatan 8 yaitu 0, 8, 16, 24, 32, …, 248. Tidak perlu mencari semu subnet (kelipatan blok subnet), yang penting kita cek kelipatan 8 yang paling dekat dengan 167 (sesuai soal), yaitu 160 dan 168. Kalau kita susun seperti yang dulu kita lakukan di penghitungan subnetting adalah seperti di bawah. Dari situ ketahuan bahwa 223.168.17.167 adalah alamat broadcast.
  • Subnet
    223.168.17.160 223.168.17.168
    Host Pertama 223.168.17.161 223.168.17.169
    Host Terakhir 223.168.17.166 223.168.17.174
    Broadcast 223.168.17.167 223.168.17.175
3. SOAL MENGIDENTIFIKASI KESALAHAN SETTING JARINGAN
Teknik mengerjakan soal yang berhubungan dengan kesalahan setting jaringan adalah kita harus menganalisa alamat IP, gateway dan netmasknya apakah sudah bener. Sudah benar ini artinya:
  1. Apakah subnetmask yang digunakan di host dan di router sudah sama
  2. Apakah alamat IP tersebut masuk diantara host pertama dan terakhir. Perlu dicatat bahwa alamat subnet dan broadcast tidak bisa digunakan untuk alamat IP host
  3. Biasanya alamat host pertama digunakan untuk alamat IP di router untuk subnet tersebut
  • subnettingidentifikasi.jpgSoal: Host A is connected to the LAN, but it cannot connect to the Internet. The host configuration is shown in the exhibit. What are the two problems with this configuration?
  • Jawab: CIDR /27 artinya netmask yang digunakan adalah 255.255.255.224. Dari sini kita tahu bahwa isian netmask di host adalah berbeda, jadi salah setting di netmask. Yang kedua blok subnet = 256-224 = 32, jadi subnetnya adalah kelipatan 32 (0, 32, 64, 86, 128, …, 224). Artinya di bawah Router 1, masuk di subnet 198.18.166.32. Alamat gateway sudah benar, karena biasa digunakan alamat host pertama. Hanya alamat IP hostnya salah karena 198.18.166.65 masuk di alamat subnet 198.18.166.64 dan bukan 198.18.166.32.
4. SOAL MENGIDENTIFIKASI ALAMAT SUBNET DAN HOST YANG VALID
Termasuk jenis soal yang paling banyak keluar, baik di ujian CCNA akademi (CNAP) atau CCNA 604-801. Teknik mengerjakan soal yang menanyakan alamat subnet dan host yang valid dari suatu subnetmask adalah dimulai dengan mencari blok subnetnya, menyusun alamat subnet, host pertama, host terakhir dan broadcastnya, serta yang terakhir mencocokkan susunan alamat tersebut dengan soal ataupun jawaban yang dipilih.
  • Soal: What is the subnetwork number of a host with an IP address of 172.16.66.0/21?Jawab: CIDR /21 berarti 255.255.248.0. Blok subnet = 256- 248 = 8, netmasknya adalah kelipatan 8 (0, 8, 16, 24, 32, 40, 48,  …, 248) dan karena ini adalah alamat IP kelas B, blok subnet kita “goyang” di oktet ke 3. Tidak perlu kita list semuanya, kita hanya perlu cari kelipatan 8 yang paling dekat dengan 66 (sesuai dengan soal), yaitu 64 dan 72. Jadi susunan alamat IP khusus untuk subnet 172.16.64.0 dan 172.16.72.0 adalah seperti di bawah. Jadi pertanyaan bisa dijawab bahwa 172.16.66.0 itu masuk di subnet 172.16.64.0
  • Subnet
    172.16.64.0 172.16.72.0
    Host Pertama 172.16.64.1 172.16.72.1
    Host Terakhir 172.16.71.254 172.16.79.254
    Broadcast 172.16.71.255 172.16.79.255
  • Soal: What is the subnetwork address for a host with the IP address 200.10.5.68/28?Jawab: CIDR /28 berarti 255.255.255.240. Blok subnet = 256-240 = 16, netmasknya adalah kelipatan 16 (0, 16, 32, 48, 64, 80 …, 240). Kelipatan 16 yang paling dekat dengan 68 (sesuai soal) adalah 64 dan 80. Jadi alamat IP 200.10.5.68 masuk di alamat subnet 200.10.5.64. 
    Subnet
    200.10.5.64 200.10.5.80
    Host Pertama 200.10.5.65 200.10.5.81
    Host Terakhir 200.10.5.78 200.10.5.94
    Broadcast 200.10.5.79 200.10.5.95
5. SOAL-SOAL LAIN YANG UNIK
Selain 4 pola soal diatas, kadang muncul soal yang cukup unik, sepertinya sulit meskipun sebenarnya mudah. Saya coba sajikan secara bertahap soal-soal tersebut di sini, sambil saya analisa lagi soal-soal subnetting yang lain lagi :)
  • Soal: Which combination of network id and subnet mask correctly identifies all IP addresses from 172.16.128.0 through 172.16.159.255?Jawab: Teknik paling mudah mengerjakan soal diatas adalah dengan menganggap 172.16.128.0 dan 172.16.159.255 adalah satu blok subnet. Jadi kalau kita gambarkan seperti di bawah:
Subnet
172.16.128.0
Host Pertama  
Host Terakhir  
Broadcast 172.16.159.255
    Dari sini berarti kita bisa lihat bahwa alamat subnet berikutnya pasti 172.16.160.0, karena rumus alamat broadcast adalah satu alamat sebelum alamat subnet berikutnya. Nah sekarang jadi ketahuan blok subnetnya adalah 160-128 = 32 (kelipatan 32), terus otomatis juga ketahuan subnetmasknya karena rumus blok subnet adalah 256-oktet terakhir netmask. Artinya subnetmasknya adalah 255.255.224.0. Kok tahu kalau letak 224 di oktet ketiga? Ya karena yang kita kurangi (“goyang”) tadi adalah oktet ketiga.
Subnet
172.16.128.0 172.16.160.0
Host Pertama    
Host Terakhir    
Broadcast 172.16.159.255  

Pola Soal Subnetting dan Teknik Mengerjakannya

by Romi Satria Wahono
Pada saat mengajar dan memahamkan materi subnetting di kelas networking atau CCNA, saya biasanya menggunakan metode seperti yang saya tulis di dua artikel sebelumnya:
  1. Memahami Konsep Subnetting
  2. Penghitungan Subnetting
Selama ini lancar-lancar saja dan tingkat pemahaman siswa cukup bagus. Kebetulan kemarin (6 Mei 2007) saya berkesempatan mencoba metode yang sama untuk ngajar adik-adik SMKN 1 Rangkasbitung. Pemahaman bisa masuk, hanya ada sedikit permasalahan pada saat mengerjakan soal karena variasi soal yang beragam. Supaya lebih tajam lagi, saya perlu sajikan satu topik khusus teknik mengerjakan soal-soal subnetting dengan berbagai pola yang ada. Anggap saja ini adalah materi berikutnya dari dua materi sebelumnya. Contoh-contoh soal lengkap bisa download dari sini.
1. SOAL MENANYAKAN SUBNETMASK DENGAN PERSYARATAN JUMLAH HOST ATAU SUBNET
Soal yang menanyakan subnetmask apa yang sebaiknya digunakan dengan batasan jumlah host atau subnet yang ditentukan dalam soal. Untuk menjawab soal seperti ini kita gunakan rumus menghitung jumlah host per subnet, yaitu 2y – 2, dimana y adalah banyaknya binari 0 pada oktet terakhir subnetmask. Dan apabila yang ditentukan adalah jumlah subnet, kita menggunakan rumus 2x (cara setelah 2005) atau 2x – 2 (cara sebelum 2005), dimana x adalah banyaknya binari 1 pada oktet terakhir subnetmask.
  • Soal: A company is planning to subnet its network for a maximum of 27 hosts. Which subnetmask would provide the needed hosts and leave the fewest unused addresses in each subnet?

    Jawab
    : Karena kebutuhan host adalah 27,  kita tinggal masukkan ke rumus 2y – 2, dimana jawabannya tidak boleh kurang dari (atau sama dengan) 27. Jadi 2y – 2 >= 27, sehingga nilai y yang tepat adalah 5 (30 host). Sekali lagi karena y adalah banyaknya binari 0 pada oktet terakhir subnetmask, maka kalau kita susun subnetmasknya menjadi 11111111.11111111.11111111.11100000 atau kalau kita desimalkan menjadi 255.255.255.224. Itulah jawabannya :)
  • Soal: You have a Class B network ID and need about 450 IP addresses per subnet. What is the best mask for this network?

    Jawab
    2y – 2 >= 450. Nilai y yang tepat adalah 9 (510 host). Jadi subnetmasknya adalah: 11111111.11111111.11111110.00000000 atau kalau didesimalkan menjadi 255.255.254.0 (itulah jawabannya! ;) ).
  • subnettighost.jpgSoal: Refer to the exhibit. The internetwork in the exhibit has been assigned the IP address 172.20.0.0. What would be the appropriate subnet mask to maximize the number of networks available for future growth?

    Jawab
    : Cari jumlah host per subnet yang paling besar, jadikan itu rujukan karena kalau kita ambil terkecil ada kemungkinan kebutuhan host yang lebih besar tidak tercukupi. Jadi untuk soal ini 2y – 2 >= 850. Nilai y yang paling tepat adalah 10 (1022 host). Jadi subnetmasknya adalah 11111111.11111111.11111100.00000000 atau 255.255.252.0
2. SOAL MENGIDENTIFIKASI JENIS ALAMAT IP
Soal mengidentifikasi jenis alamat IP bisa kita jawab dengan menghitung blok subnet dan mencari kelipatannya blok subnet yang paling dekat dengan alamat IP yang ditanyakan.
  • Soal: Which type of address is 223.168.17.167/29?

    Jawab
    : Subnetmask dengan CIDR /29 artinya 255.255.255. 248. Blok subnet= 256-248 = 8, alias urutan subnetnya adalah kelipatan 8 yaitu 0, 8, 16, 24, 32, …, 248. Tidak perlu mencari semu subnet (kelipatan blok subnet), yang penting kita cek kelipatan 8 yang paling dekat dengan 167 (sesuai soal), yaitu 160 dan 168. Kalau kita susun seperti yang dulu kita lakukan di penghitungan subnetting adalah seperti di bawah. Dari situ ketahuan bahwa 223.168.17.167 adalah alamat broadcast.
  • Subnet
    223.168.17.160 223.168.17.168
    Host Pertama 223.168.17.161 223.168.17.169
    Host Terakhir 223.168.17.166 223.168.17.174
    Broadcast 223.168.17.167 223.168.17.175
3. SOAL MENGIDENTIFIKASI KESALAHAN SETTING JARINGAN
Teknik mengerjakan soal yang berhubungan dengan kesalahan setting jaringan adalah kita harus menganalisa alamat IP, gateway dan netmasknya apakah sudah bener. Sudah benar ini artinya:
  1. Apakah subnetmask yang digunakan di host dan di router sudah sama
  2. Apakah alamat IP tersebut masuk diantara host pertama dan terakhir. Perlu dicatat bahwa alamat subnet dan broadcast tidak bisa digunakan untuk alamat IP host
  3. Biasanya alamat host pertama digunakan untuk alamat IP di router untuk subnet tersebut
  • subnettingidentifikasi.jpgSoal: Host A is connected to the LAN, but it cannot connect to the Internet. The host configuration is shown in the exhibit. What are the two problems with this configuration?
  • Jawab: CIDR /27 artinya netmask yang digunakan adalah 255.255.255.224. Dari sini kita tahu bahwa isian netmask di host adalah berbeda, jadi salah setting di netmask. Yang kedua blok subnet = 256-224 = 32, jadi subnetnya adalah kelipatan 32 (0, 32, 64, 86, 128, …, 224). Artinya di bawah Router 1, masuk di subnet 198.18.166.32. Alamat gateway sudah benar, karena biasa digunakan alamat host pertama. Hanya alamat IP hostnya salah karena 198.18.166.65 masuk di alamat subnet 198.18.166.64 dan bukan 198.18.166.32.
4. SOAL MENGIDENTIFIKASI ALAMAT SUBNET DAN HOST YANG VALID
Termasuk jenis soal yang paling banyak keluar, baik di ujian CCNA akademi (CNAP) atau CCNA 604-801. Teknik mengerjakan soal yang menanyakan alamat subnet dan host yang valid dari suatu subnetmask adalah dimulai dengan mencari blok subnetnya, menyusun alamat subnet, host pertama, host terakhir dan broadcastnya, serta yang terakhir mencocokkan susunan alamat tersebut dengan soal ataupun jawaban yang dipilih.
  • Soal: What is the subnetwork number of a host with an IP address of 172.16.66.0/21?Jawab: CIDR /21 berarti 255.255.248.0. Blok subnet = 256- 248 = 8, netmasknya adalah kelipatan 8 (0, 8, 16, 24, 32, 40, 48,  …, 248) dan karena ini adalah alamat IP kelas B, blok subnet kita “goyang” di oktet ke 3. Tidak perlu kita list semuanya, kita hanya perlu cari kelipatan 8 yang paling dekat dengan 66 (sesuai dengan soal), yaitu 64 dan 72. Jadi susunan alamat IP khusus untuk subnet 172.16.64.0 dan 172.16.72.0 adalah seperti di bawah. Jadi pertanyaan bisa dijawab bahwa 172.16.66.0 itu masuk di subnet 172.16.64.0
  • Subnet
    172.16.64.0 172.16.72.0
    Host Pertama 172.16.64.1 172.16.72.1
    Host Terakhir 172.16.71.254 172.16.79.254
    Broadcast 172.16.71.255 172.16.79.255
  • Soal: What is the subnetwork address for a host with the IP address 200.10.5.68/28?Jawab: CIDR /28 berarti 255.255.255.240. Blok subnet = 256-240 = 16, netmasknya adalah kelipatan 16 (0, 16, 32, 48, 64, 80 …, 240). Kelipatan 16 yang paling dekat dengan 68 (sesuai soal) adalah 64 dan 80. Jadi alamat IP 200.10.5.68 masuk di alamat subnet 200.10.5.64. 
    Subnet
    200.10.5.64 200.10.5.80
    Host Pertama 200.10.5.65 200.10.5.81
    Host Terakhir 200.10.5.78 200.10.5.94
    Broadcast 200.10.5.79 200.10.5.95
5. SOAL-SOAL LAIN YANG UNIK
Selain 4 pola soal diatas, kadang muncul soal yang cukup unik, sepertinya sulit meskipun sebenarnya mudah. Saya coba sajikan secara bertahap soal-soal tersebut di sini, sambil saya analisa lagi soal-soal subnetting yang lain lagi :)
  • Soal: Which combination of network id and subnet mask correctly identifies all IP addresses from 172.16.128.0 through 172.16.159.255?Jawab: Teknik paling mudah mengerjakan soal diatas adalah dengan menganggap 172.16.128.0 dan 172.16.159.255 adalah satu blok subnet. Jadi kalau kita gambarkan seperti di bawah:
Subnet
172.16.128.0
Host Pertama  
Host Terakhir  
Broadcast 172.16.159.255
    Dari sini berarti kita bisa lihat bahwa alamat subnet berikutnya pasti 172.16.160.0, karena rumus alamat broadcast adalah satu alamat sebelum alamat subnet berikutnya. Nah sekarang jadi ketahuan blok subnetnya adalah 160-128 = 32 (kelipatan 32), terus otomatis juga ketahuan subnetmasknya karena rumus blok subnet adalah 256-oktet terakhir netmask. Artinya subnetmasknya adalah 255.255.224.0. Kok tahu kalau letak 224 di oktet ketiga? Ya karena yang kita kurangi (“goyang”) tadi adalah oktet ketiga.
Subnet
172.16.128.0 172.16.160.0
Host Pertama    
Host Terakhir    
Broadcast 172.16.159.255  

Penghitungan Subnetting, Siapa Takut?


subnetrouter2.JPGSetelah anda membaca artikel Konsep Subnetting, Siapa Takut? dan memahami konsep Subnetting dengan baik. Kali ini saatnya anda mempelajari teknik penghitungan subnetting. Penghitungan subnetting bisa dilakukan dengan dua cara, cara binary yang relatif lambat dan cara khusus yang lebih cepat. Pada hakekatnya semua pertanyaan tentang subnetting akan berkisar di empat masalah: Jumlah Subnet, Jumlah Host per Subnet, Blok Subnet, dan Alamat Host- Broadcast.
Penulisan IP address umumnya adalah dengan 192.168.1.2. Namun adakalanya ditulis dengan 192.168.1.2/24, apa ini artinya? Artinya bahwa IP address 192.168.1.2 dengan subnet mask 255.255.255.0. Lho kok bisa seperti itu? Ya, /24 diambil dari penghitungan bahwa 24 bit subnet mask diselubung dengan binari 1. Atau dengan kata lain, subnet masknya adalah: 11111111.11111111.11111111.00000000 (255.255.255.0). Konsep ini yang disebut dengan CIDR (Classless Inter-Domain Routing) yang diperkenalkan pertama kali tahun 1992 oleh IEFT.
Pertanyaan berikutnya adalah Subnet Mask berapa saja yang bisa digunakan untuk melakukan subnetting? Ini terjawab dengan tabel di bawah:
Subnet Mask Nilai CIDR
255.128.0.0 /9
255.192.0.0 /10
255.224.0.0 /11
255.240.0.0 /12
255.248.0.0 /13
255.252.0.0 /14
255.254.0.0 /15
255.255.0.0 /16
255.255.128.0 /17
255.255.192.0 /18
255.255.224.0 /19
Subnet Mask Nilai CIDR
255.255.240.0 /20
255.255.248.0 /21
255.255.252.0 /22
255.255.254.0 /23
255.255.255.0 /24
255.255.255.128 /25
255.255.255.192 /26
255.255.255.224 /27
255.255.255.240 /28
255.255.255.248 /29
255.255.255.252 /30

SUBNETTING PADA IP ADDRESS CLASS C
Ok, sekarang mari langsung latihan saja. Subnetting seperti apa yang terjadi dengan sebuah NETWORK ADDRESS 192.168.1.0/26 ?
Analisa: 192.168.1.0 berarti kelas C dengan Subnet Mask /26 berarti 11111111.11111111.11111111.11000000 (255.255.255.192).
Penghitungan: Seperti sudah saya sebutkan sebelumnya semua pertanyaan tentang subnetting akan berpusat di 4 hal, jumlah subnet, jumlah host per subnet, blok subnet, alamat host dan broadcast yang valid. Jadi kita selesaikan dengan urutan seperti itu:
  1. Jumlah Subnet = 2x, dimana x adalah banyaknya binari 1 pada oktet terakhir subnet mask (2 oktet terakhir untuk kelas B, dan 3 oktet terakhir untuk kelas A). Jadi Jumlah Subnet adalah 22 = 4 subnet
  2. Jumlah Host per Subnet = 2y – 2, dimana y adalah adalah kebalikan dari x yaitu banyaknya binari 0 pada oktet terakhir subnet. Jadi jumlah host per subnet adalah 26 – 2 = 62 host
  3. Blok Subnet = 256 – 192 (nilai oktet terakhir subnet mask) = 64. Subnet berikutnya adalah 64 + 64 = 128, dan 128+64=192. Jadi subnet lengkapnya adalah 0, 64, 128, 192.
  4. Bagaimana dengan alamat host dan broadcast yang valid? Kita langsung buat tabelnya. Sebagai catatan, host pertama adalah 1 angka setelah subnet, dan broadcast adalah 1 angka sebelum subnet berikutnya.
  5. Subnet
    192.168.1.0
    192.168.1.64
    192.168.1.128
    192.168.1.192
    Host Pertama
    192.168.1.1
    192.168.1.65
    192.168.1.129
    192.168.1.193
    Host Terakhir
    192.168.1.62
    192.168.1.126
    192.168.1.190
    192.168.1.254
    Broadcast
    192.168.1.63
    192.168.1.127
    192.168.1.191
    192.168.1.255
Kita sudah selesaikan subnetting untuk IP address Class C. Dan kita bisa melanjutkan lagi untuk subnet mask yang lain, dengan konsep dan teknik yang sama. Subnet mask yang bisa digunakan untuk subnetting class C adalah seperti di bawah. Silakan anda coba menghitung seperti cara diatas untuk subnetmask lainnya.
Subnet Mask Nilai CIDR
255.255.255.128 /25
255.255.255.192 /26
255.255.255.224 /27
255.255.255.240 /28
255.255.255.248 /29
255.255.255.252 /30

SUBNETTING PADA IP ADDRESS CLASS B
Berikutnya kita akan mencoba melakukan subnetting untuk IP address class B. Pertama, subnet mask yang bisa digunakan untuk subnetting class B adalah seperti dibawah. Sengaja saya pisahkan jadi dua, blok sebelah kiri dan kanan karena masing-masing berbeda teknik terutama untuk oktet yang “dimainkan” berdasarkan blok subnetnya. CIDR /17 sampai /24 caranya sama persis dengan subnetting Class C, hanya blok subnetnya kita masukkan langsung ke oktet ketiga, bukan seperti Class C yang “dimainkan” di oktet keempat. Sedangkan CIDR /25 sampai /30 (kelipatan) blok subnet kita “mainkan” di oktet keempat, tapi setelah selesai oktet ketiga berjalan maju (coeunter) dari 0, 1, 2, 3, dst.
Subnet Mask Nilai CIDR
255.255.128.0 /17
255.255.192.0 /18
255.255.224.0 /19
255.255.240.0 /20
255.255.248.0 /21
255.255.252.0 /22
255.255.254.0 /23
255.255.255.0 /24
Subnet Mask Nilai CIDR
255.255.255.128 /25
255.255.255.192 /26
255.255.255.224 /27
255.255.255.240 /28
255.255.255.248 /29
255.255.255.252 /30
Ok, kita coba dua soal untuk kedua teknik subnetting untuk Class B. Kita mulai dari yang menggunakan subnetmask dengan CIDR /17 sampai /24. Contoh network address 172.16.0.0/18.
Analisa: 172.16.0.0 berarti kelas B, dengan Subnet Mask /18 berarti 11111111.11111111.11000000.00000000 (255.255.192.0).
Penghitungan:
  1. Jumlah Subnet = 2x, dimana x adalah banyaknya binari 1 pada 2 oktet terakhir. Jadi Jumlah Subnet adalah 22 = 4 subnet
  2. Jumlah Host per Subnet = 2y – 2, dimana y adalah adalah kebalikan dari x yaitu banyaknya binari 0 pada 2 oktet terakhir. Jadi jumlah host per subnet adalah 214 – 2 = 16.382 host
  3. Blok Subnet = 256 – 192 = 64. Subnet berikutnya adalah 64 + 64 = 128, dan 128+64=192. Jadi subnet lengkapnya adalah 0, 64, 128, 192.
  4. Alamat host dan broadcast yang valid?
  5. Subnet
    172.16.0.0
    172.16.64.0
    172.16.128.0
    172.16.192.0
    Host Pertama
    172.16.0.1
    172.16.64.1
    172.16.128.1
    172.16.192.1
    Host Terakhir
    172.16.63.254
    172.16.127.254
    172.16.191.254
    172.16.255.254
    Broadcast
    172.16.63.255
    172.16.127.255
    172.16.191.255
    172.16..255.255
Berikutnya kita coba satu lagi untuk Class B khususnya untuk yang menggunakan subnetmask CIDR /25 sampai /30. Contoh network address 172.16.0.0/25.
Analisa: 172.16.0.0 berarti kelas B, dengan Subnet Mask /25 berarti 11111111.11111111.11111111.10000000 (255.255.255.128).
Penghitungan:
  1. Jumlah Subnet = 29 = 512 subnet
  2. Jumlah Host per Subnet = 27 – 2 = 126 host
  3. Blok Subnet = 256 – 128 = 128. Jadi lengkapnya adalah (0, 128)
  4. Alamat host dan broadcast yang valid?
Subnet
172.16.0.0 172.16.0.128 172.16.1.0 172.16.255.128
Host Pertama 172.16.0.1 172.16.0.129 172.16.1.1 172.16.255.129
Host Terakhir 172.16.0.126 172.16.0.254 172.16.1.126 172.16.255.254
Broadcast 172.16.0.127 172.16.0.255 172.16.1.127 172.16.255.255
Masih bingung juga? Ok sebelum masuk ke Class A, coba ulangi lagi dari Class C, dan baca pelan-pelan ;)

SUBNETTING PADA IP ADDRESS CLASS A
Kalau sudah mantab dan paham, kita lanjut ke Class A. Konsepnya semua sama saja. Perbedaannya adalah di OKTET mana kita mainkan blok subnet. Kalau Class C di oktet ke 4 (terakhir), kelas B di Oktet 3 dan 4 (2 oktet terakhir), kalau Class A di oktet 2, 3 dan 4 (3 oktet terakhir). Kemudian subnet mask yang bisa digunakan untuk subnetting class A adalah semua subnet mask dari CIDR /8 sampai /30.
Kita coba latihan untuk network address 10.0.0.0/16.
Analisa: 10.0.0.0 berarti kelas A, dengan Subnet Mask /16 berarti 11111111.11111111.00000000.00000000 (255.255.0.0).
Penghitungan:
  1. Jumlah Subnet = 28 = 256 subnet
  2. Jumlah Host per Subnet = 216 – 2 = 65534 host
  3. Blok Subnet = 256 – 255 = 1. Jadi subnet lengkapnya: 0,1,2,3,4, etc.
  4. Alamat host dan broadcast yang valid?
Subnet
10.0.0.0 10.1.0.0 10.254.0.0 10.255.0.0
Host Pertama 10.0.0.1 10.1.0.1 10.254.0.1 10.255.0.1
Host Terakhir 10.0.255.254 10.1.255.254 10.254.255.254 10.255.255.254
Broadcast 10.0.255.255 10.1.255.255 10.254.255.255 10.255.255.255
Mudah-mudahan sudah setelah anda membaca paragraf terakhir ini, anda sudah memahami penghitungan subnetting dengan baik. Kalaupun belum paham juga, anda ulangi terus artikel ini pelan-pelan dari atas. Untuk teknik hapalan subnetting yang lebih cepat, tunggu di artikel berikutnya ;)
Catatan: Semua penghitungan subnet diatas berasumsikan bahwa IP Subnet-Zeroes (dan IP Subnet-Ones) dihitung secara default. Buku versi terbaru Todd Lamle dan juga CCNA setelah 2005 sudah mengakomodasi masalah IP Subnet-Zeroes (dan IP Subnet-Ones) ini. CCNA pre-2005 tidak memasukkannya secara default (meskipun di kenyataan kita bisa mengaktifkannya dengan command ip subnet-zeroes), sehingga mungkin dalam beberapa buku tentang CCNA serta soal-soal test CNAP, anda masih menemukan rumus penghitungan Jumlah Subnet = 2x – 2
Tahap berikutnya adalah silakan download dan kerjakan soal latihan subnetting. Jangan lupa mengikuti artikel tentang Teknik Mengerjakan Soal Subnetting untuk memperkuat pemahaman anda dan meningkatkan kemampuan dalam mengerjakan soal dalam waktu terbatas.
REFERENSI
  1. Todd Lamle, CCNA Study Guide 5th Edition, Sybex, 2005.
  2. Module CCNA 1 Chapter 9-10, Cisco Networking Academy Program (CNAP), Cisco Systems.
  3. Hendra Wijaya, Cisco Router, Elex Media Komputindo, 2004.

Aspek dan Kriteria Penilaian Media Pembelajaran

Diskusi menarik terjadi di acara penyusunan kriteria penilaian lomba pembuatan media pembelajaran berbasis Teknologi Informasi dan Komunikasi (TIK) untuk SMA dan sederajat yang diselenggarakan Dikmenum. Tujuan diskusi sebenarnya adalah menentukan aspek dan kriteria apa yang akan digunakan untuk menilai sebuah media pembelajaran. Dalam bidang rekayasa perangkat lunak sebenarnya sudah ada teknik pengukuran perangkat lunak yang telah saya bahas di artikel sebelumnya. Tapi karena media pembelajaran termasuk jenis perangkat lunak yang melingkupi berbagai disiplin ilmu (pembelajaran, desain, komunikasi, dsb), maka pendapat dari berbagai domain expert menjadi wacana yang menyegarkan.
Saya mengusulkan modifikasi aspek penilaian dari tahun sebelumnya yang terdiri dari 4-5 aspek menjadi hanya 3 aspek, yaitu aspek rekayasa perangkat lunak, aspek instructional design (desain pembelajaran) dan aspek komunikasi visual. Kriteria penilaian termasuk mekanisme penjurian tidak digabungkan menjadi satu, tetapi dipisah dan tiap aspek dinilai oleh orang yang kompeten di aspek tersebut. Saya beserta beberapa rekan dari LIPI, IlmuKomputer.Com, dan Pustekkom kemudian menyusun kriteria penilaian dalam aspek rekayasa perangkat lunak. Untuk aspek instructional design (desain pembelajaran), rekan-rekan dari bidang pembelajaran dan pendidikan yang berperan, diantaranya ada mas Ridwan dan mas Uwes dari UNJ, dsb. Sedangkan aspek komunikasi visual dimanage oleh beberapa rekan dari ITB fakultas seni rupa, khususnya program studi desain dan komunikasi visual, diantaranya mas Indarsjah dan mas Agung.
Hasil dari penyusunan dan diskusi tentang aspek dan kriteria penilaian media pembelajaran saya share di bawah. Penjelasan lengkap tentang aspek yang susun akan saya tulis di artikel terpisah. Mudah-mudahan bisa menjadi acuan dan persiapan bagi rekan-rekan guru SMA di seluruh Indonesia yang ingin mengikuti lomba pembuatan media pembelajaran yang diselenggarakan Dikmenum tahun 2006 ini. Kriteria ini rencananya akan kita gunakan juga untuk menilai karya yang masuk pada program Smart Teacher yang baru saja kita launching.
Aspek Rekayasa Perangkat Lunak
  • Efektif dan efisien dalam pengembangan maupun penggunaan media pembelajaran
  • Reliable (handal)
  • Maintainable (dapat dipelihara/dikelola dengan mudah)
  • Usabilitas (mudah digunakan dan sederhana dalam pengoperasiannya)
  • Ketepatan pemilihan jenis aplikasi/software/tool untuk pengembangan
  • Kompatibilitas (media pembelajaran dapat diinstalasi/dijalankan di berbagai hardware dan software yang ada)
  • Pemaketan program media pembelajaran terpadu dan mudah dalam eksekusi
  • Dokumentasi program media pembelajaran yang lengkap meliputi: petunjuk instalasi (jelas, singkat, lengkap), trouble shooting (jelas, terstruktur, dan antisipatif), desain program (jelas, menggambarkan alur kerja program)
  • Reusable (sebagian atau seluruh program media pembelajaran dapat dimanfaatkan kembali untuk mengembangkan media pembelajaran lain)
Aspek Desain Pembelajaran
  • Kejelasan tujuan pembelajaran (rumusan, realistis)
  • Relevansi tujuan pembelajaran dengan SK/KD/Kurikulum
  • Cakupan dan kedalaman tujuan pembelajaran
  • Ketepatan penggunaan strategi pembelajaran
  • Interaktivitas
  • Pemberian motivasi belajar
  • Kontekstualitas dan aktualitas
  • Kelengkapan dan kualitas bahan bantuan belajar
  • Kesesuaian materi dengan tujuan pembelajaran
  • Kedalaman materi
  • Kemudahan untuk dipahami
  • Sistematis, runut, alur logika jelas
  • Kejelasan uraian, pembahasan, contoh, simulasi, latihan
  • Konsistensi evaluasi dengan tujuan pembelajaran
  • Ketepatan dan ketetapan alat evaluasi
  • Pemberian umpan balik terhadap hasil evaluasi
Aspek Komunikasi Visual
  • Komunikatif; sesuai dengan pesan dan dapat diterima/sejalan dengan keinginan sasaran
  • Kreatif dalam ide berikut penuangan gagasan
  • Sederhana dan memikat
  • Audio (narasi, sound effect, backsound,musik)
  • Visual (layout design, typography, warna)
  • Media bergerak (animasi, movie)
  • Layout Interactive (ikon navigasi)
Penjelasan lengkap untuk penilaian dalam aspek rekayasa perangkat lunak dapat dinikmati dari artikel dalam situs ini berjudul Aspek Rekayasa Perangkat Lunak dalam Media Pembelajaran.

Teknik Pengukuran Kualitas Perangkat Lunak

by Romi Satria Wahono
qualitysoftware.gifDeras masuknya produk perangkat lunak dari luar negeri di satu sisi menguntungkan pengguna karena banyaknya pilihan produk dan harga. Namun di sisi lain cukup mengkhawatirkan karena di Indonesia tidak ada institusi yang secara aktif bertugas membuat standard dalam pengukuran kualitas perangkat lunak yang masuk ke Indonesia. Demikian juga dengan produk-produk perangkat lunak lokal, tentu akan semakin meningkat daya saing internasionalnya apabila pengembang dan software house di Indonesia mulai memperhatikan masalah kualitas perangkat lunak ini.
Kualitas perangkat lunak (software quality) adalah tema kajian dan penelitian  turun temurun dalam sejarah ilmu rekayasa perangkat lunak (software engineering). Kajian dimulai dari apa yang akan diukur (apakah proses atau produk), apakah memang perangkat lunak bisa diukur, sudut pandang pengukur dan bagaimana menentukan parameter pengukuran kualitas perangkat lunak.
Bagaimanapun juga mengukur kualitas perangkat lunak memang bukan pekerjaan mudah. Ketika seseorang memberi nilai sangat baik terhadap sebuah perangkat lunak, orang lain belum tentu mengatakan hal yang sama. Sudut pandang seseorang tersebut mungkin berorientasi ke satu sisi masalah (misalnya tentang reliabilitas dan efisiensi perangkat lunak), sedangkan orang lain yang menyatakan bahwa perangkat lunak itu buruk menggunakan sudut pandang yang lain lagi (usabilitas dan aspek desain).
APA YANG DIUKUR?
Pertanyaan pertama yang muncul ketika membahas pengukuran kualitas perangkat lunak, adalah apa yang sebenarnya mau kita ukur. Kualitas perangkat lunak dapat dilihat dari sudut pandang proses pengembangan perangkat lunak (process) dan hasil produk yang dihasilkan (product). Dan penilaian ini tentu berorientasi akhir ke bagaimana suatu perangkat lunak dapat dikembangkan sesuai dengan yang diharapkan oleh pengguna. Hal ini berangkat dari pengertian kualitas (quality) menurut IEEE Standard Glossary of Software Engineering Technology [3] yang dikatakan sebagai:
    The degree to which a system, component, or process meets customer or user needs or expectation.
Dari sudut pandang produk, pengukuran kualitas perangkat lunak dapat menggunakan standard dari ISO 9126 atau best practice yang dikembangkan para praktisi dan pengembang perangkat lunak. Taksonomi McCall adalah best practice yang cukup terkenal dan diterima banyak pihak, ditulis oleh J.A. McCall  dalam technical report yang dipublikasikan tahun 1977 [1].
product-process.gif
Di lain pihak, dari sudut pandang proses, standard ISO 9001 dapat digunakan untuk mengukur kualitas perangkat lunak. Dan diskusi tentang ini berkembang dengan munculnya tema kajian tentang CMM (The Capability Maturity Model) yang dikembangkan di Software Engineering Institute, Carnegie Mellon University serta beberapa kajian lain seperti SPICE (Software Process Improvement and Capability dEtermination) dan BOOTSTRAP. CMM, SPICE dan BOOTSTRAP mengukur kualitas perangkat lunak dari seberapa matang proses pengembangannya.
Tulisan ini akan mencoba fokus ke bagaimana mengukur perangkat lunak dilihat dari sudut pandang produk. Untuk pengukuran proses pengembangan perangkat lunak akan dibahas pada tulisan lain.
PARAMETER DAN METODE PENGUKURAN
    When you can measure what you are speaking about, and express it in numbers, you know something about it. But when you can not measure it, when you can not express it in numbers, your knowledge is of a meagre and unsatisfactory kind. (Lord Kelvin)
Pendekatan engineering menginginkan bahwa kualitas perangkat lunak ini dapat diukur secara kuantitatif, dalam bentuk angka-angka yang mudah dipahami oleh manusia. Untuk itu perlu ditentukan parameter atau atribut pengukuran. Menurut taksonomi McCall [1], atribut tersusun secara hirarkis, dimana level atas (high-level attribute) disebut faktor (factor), dan level bawah (low-level attribute) disebut dengan kriteria (criteria). Faktor menunjukkan atribut kualitas produk dilihat dari sudut pandang pengguna. Sedangkan kriteria adalah parameter kualitas produk dilihat dari sudut pandang perangkat lunaknya sendiri. Faktor dan kriteria ini memiliki hubungan sebab akibat (cause-effect) [4][5]. Tabel 1 menunjukkan daftar lengkap faktor dan kriteria dalam kualitas perangkat lunak menurut McCall [1].
Tabel 1: Faktor dan Kriteria dalam Kualitas Perangkat Lunak
quality-factor.gif
Kualitas software diukur dengan metode penjumlahan dari keseluruhan kriteria dalam suatu faktor sesuai dengan bobot (weight) yang telah ditetapkan [2]. Rumus pengukuran yang digunakan adalah:
    Fa = w1c1 + w2c2 + … + wncn
Dimana:
    Fa adalah nilai total dari faktor a wi adalah bobot untuk kriteria i ci adalah nilai untuk kriteria i
Kemudian tahapan yang harus kita tempuh dalam pengukuran adalah sebagai berikut:
    Tahap 1: Tentukan kriteria yang digunakan untuk mengukur suatu faktor Tahap 2: Tentukan bobot (w) dari setiap kriteria (biasanya 0 <= w <= 1) Tahap 3: Tentukan skala dari nilai kriteria (misalnya, 0 <= nilai kriteria <= 10) Tahap 4: Berikan nilai pada tiap kriteria Tahap 5: Hitung nilai total dengan rumus Fa = w1c1 + w2c2 + … + wncn
CONTOH PENGUKURAN PERANGKAT LUNAK
Untuk mempermudah pemahaman, akan diberikan sebuah contoh pengukuran kualitas perangkat lunak dari faktor usabilitas (usability). Yang akan diukur adalah dua buah perangkat lunak yang memiliki fungsi untuk mengkontrol peralatan elektronik (electronic device). Perangkat lunak yang pertama bernama TukangKontrol, sedangkan kedua bernama Caktrol. Contoh dan hasil pengukuran dapat dilihat pada Table 2 dan 3.
Tabel 2: Contoh Pengukuran Usabilitas Dua Perangkat Lunak
tukangkontrol1.gif
Tabel 3: Hasil Pengukuran Usabilitas Dua Perangkat Lunak
tukangkontrol2.gif
Dari penghitungan yang ada di Tabel 3, dapat kita simpulkan bahwa dari faktor usabilitas, kualitas dari perangkat lunak bernama TukangKontrol lebih baik daripada Caktrol. Nilai total TukangKontrol untuk faktor usabilitas adalah 16.8, sedangkan Caktrol adalah 10.2 (dari maksimum total nilai 20).
Catatan: Edisi lengkap dari tulisan ini dapat dibaca di majalah SDA Magazine edisi Juni 2006.
REFERENSI
[1] J.A. McCall, P.K. Richards, and G.F. Walters, Factors in Software Quality, Tehnical Report RADC-TR-77-369, US Department of Commerce, 1977.
[2] T.P. Bowen, G.B Wigle, and J.T. Tsai, Specification of Software Quality Attributes: Software Quality Evaluation Guidebook, Technical Report RADC-TR-85-37, Rome Air Development Center, Griffiss Air Force Base, 1985.
[3] IEEE Standard Glossary of Software Engineering Technology, IEEE Std 610.12-1990, Institute of Electrical and Electronics Engineers, New York, 1990.
[4] Hans Van Vliet, Software Engineering – Principles and Practice, John Wiley & Sons, 2000.
[5] James F. Peters and Witold Pedrycz, Software Engineering: An Engineering Approach, John Wiley & Sons, 2000.

Teknik Pengukuran Kualitas Perangkat Lunak

by Romi Satria Wahono
qualitysoftware.gifDeras masuknya produk perangkat lunak dari luar negeri di satu sisi menguntungkan pengguna karena banyaknya pilihan produk dan harga. Namun di sisi lain cukup mengkhawatirkan karena di Indonesia tidak ada institusi yang secara aktif bertugas membuat standard dalam pengukuran kualitas perangkat lunak yang masuk ke Indonesia. Demikian juga dengan produk-produk perangkat lunak lokal, tentu akan semakin meningkat daya saing internasionalnya apabila pengembang dan software house di Indonesia mulai memperhatikan masalah kualitas perangkat lunak ini.
Kualitas perangkat lunak (software quality) adalah tema kajian dan penelitian  turun temurun dalam sejarah ilmu rekayasa perangkat lunak (software engineering). Kajian dimulai dari apa yang akan diukur (apakah proses atau produk), apakah memang perangkat lunak bisa diukur, sudut pandang pengukur dan bagaimana menentukan parameter pengukuran kualitas perangkat lunak.
Bagaimanapun juga mengukur kualitas perangkat lunak memang bukan pekerjaan mudah. Ketika seseorang memberi nilai sangat baik terhadap sebuah perangkat lunak, orang lain belum tentu mengatakan hal yang sama. Sudut pandang seseorang tersebut mungkin berorientasi ke satu sisi masalah (misalnya tentang reliabilitas dan efisiensi perangkat lunak), sedangkan orang lain yang menyatakan bahwa perangkat lunak itu buruk menggunakan sudut pandang yang lain lagi (usabilitas dan aspek desain).
APA YANG DIUKUR?
Pertanyaan pertama yang muncul ketika membahas pengukuran kualitas perangkat lunak, adalah apa yang sebenarnya mau kita ukur. Kualitas perangkat lunak dapat dilihat dari sudut pandang proses pengembangan perangkat lunak (process) dan hasil produk yang dihasilkan (product). Dan penilaian ini tentu berorientasi akhir ke bagaimana suatu perangkat lunak dapat dikembangkan sesuai dengan yang diharapkan oleh pengguna. Hal ini berangkat dari pengertian kualitas (quality) menurut IEEE Standard Glossary of Software Engineering Technology [3] yang dikatakan sebagai:
    The degree to which a system, component, or process meets customer or user needs or expectation.
Dari sudut pandang produk, pengukuran kualitas perangkat lunak dapat menggunakan standard dari ISO 9126 atau best practice yang dikembangkan para praktisi dan pengembang perangkat lunak. Taksonomi McCall adalah best practice yang cukup terkenal dan diterima banyak pihak, ditulis oleh J.A. McCall  dalam technical report yang dipublikasikan tahun 1977 [1].
product-process.gif
Di lain pihak, dari sudut pandang proses, standard ISO 9001 dapat digunakan untuk mengukur kualitas perangkat lunak. Dan diskusi tentang ini berkembang dengan munculnya tema kajian tentang CMM (The Capability Maturity Model) yang dikembangkan di Software Engineering Institute, Carnegie Mellon University serta beberapa kajian lain seperti SPICE (Software Process Improvement and Capability dEtermination) dan BOOTSTRAP. CMM, SPICE dan BOOTSTRAP mengukur kualitas perangkat lunak dari seberapa matang proses pengembangannya.
Tulisan ini akan mencoba fokus ke bagaimana mengukur perangkat lunak dilihat dari sudut pandang produk. Untuk pengukuran proses pengembangan perangkat lunak akan dibahas pada tulisan lain.
PARAMETER DAN METODE PENGUKURAN
    When you can measure what you are speaking about, and express it in numbers, you know something about it. But when you can not measure it, when you can not express it in numbers, your knowledge is of a meagre and unsatisfactory kind. (Lord Kelvin)
Pendekatan engineering menginginkan bahwa kualitas perangkat lunak ini dapat diukur secara kuantitatif, dalam bentuk angka-angka yang mudah dipahami oleh manusia. Untuk itu perlu ditentukan parameter atau atribut pengukuran. Menurut taksonomi McCall [1], atribut tersusun secara hirarkis, dimana level atas (high-level attribute) disebut faktor (factor), dan level bawah (low-level attribute) disebut dengan kriteria (criteria). Faktor menunjukkan atribut kualitas produk dilihat dari sudut pandang pengguna. Sedangkan kriteria adalah parameter kualitas produk dilihat dari sudut pandang perangkat lunaknya sendiri. Faktor dan kriteria ini memiliki hubungan sebab akibat (cause-effect) [4][5]. Tabel 1 menunjukkan daftar lengkap faktor dan kriteria dalam kualitas perangkat lunak menurut McCall [1].
Tabel 1: Faktor dan Kriteria dalam Kualitas Perangkat Lunak
quality-factor.gif
Kualitas software diukur dengan metode penjumlahan dari keseluruhan kriteria dalam suatu faktor sesuai dengan bobot (weight) yang telah ditetapkan [2]. Rumus pengukuran yang digunakan adalah:
    Fa = w1c1 + w2c2 + … + wncn
Dimana:
    Fa adalah nilai total dari faktor a wi adalah bobot untuk kriteria i ci adalah nilai untuk kriteria i
Kemudian tahapan yang harus kita tempuh dalam pengukuran adalah sebagai berikut:
    Tahap 1: Tentukan kriteria yang digunakan untuk mengukur suatu faktor Tahap 2: Tentukan bobot (w) dari setiap kriteria (biasanya 0 <= w <= 1) Tahap 3: Tentukan skala dari nilai kriteria (misalnya, 0 <= nilai kriteria <= 10) Tahap 4: Berikan nilai pada tiap kriteria Tahap 5: Hitung nilai total dengan rumus Fa = w1c1 + w2c2 + … + wncn
CONTOH PENGUKURAN PERANGKAT LUNAK
Untuk mempermudah pemahaman, akan diberikan sebuah contoh pengukuran kualitas perangkat lunak dari faktor usabilitas (usability). Yang akan diukur adalah dua buah perangkat lunak yang memiliki fungsi untuk mengkontrol peralatan elektronik (electronic device). Perangkat lunak yang pertama bernama TukangKontrol, sedangkan kedua bernama Caktrol. Contoh dan hasil pengukuran dapat dilihat pada Table 2 dan 3.
Tabel 2: Contoh Pengukuran Usabilitas Dua Perangkat Lunak
tukangkontrol1.gif
Tabel 3: Hasil Pengukuran Usabilitas Dua Perangkat Lunak
tukangkontrol2.gif
Dari penghitungan yang ada di Tabel 3, dapat kita simpulkan bahwa dari faktor usabilitas, kualitas dari perangkat lunak bernama TukangKontrol lebih baik daripada Caktrol. Nilai total TukangKontrol untuk faktor usabilitas adalah 16.8, sedangkan Caktrol adalah 10.2 (dari maksimum total nilai 20).
Catatan: Edisi lengkap dari tulisan ini dapat dibaca di majalah SDA Magazine edisi Juni 2006.
REFERENSI
[1] J.A. McCall, P.K. Richards, and G.F. Walters, Factors in Software Quality, Tehnical Report RADC-TR-77-369, US Department of Commerce, 1977.
[2] T.P. Bowen, G.B Wigle, and J.T. Tsai, Specification of Software Quality Attributes: Software Quality Evaluation Guidebook, Technical Report RADC-TR-85-37, Rome Air Development Center, Griffiss Air Force Base, 1985.
[3] IEEE Standard Glossary of Software Engineering Technology, IEEE Std 610.12-1990, Institute of Electrical and Electronics Engineers, New York, 1990.
[4] Hans Van Vliet, Software Engineering – Principles and Practice, John Wiley & Sons, 2000.
[5] James F. Peters and Witold Pedrycz, Software Engineering: An Engineering Approach, John Wiley & Sons, 2000.

Teknik Pengukuran Kualitas Perangkat Lunak

by Romi Satria Wahono
qualitysoftware.gifDeras masuknya produk perangkat lunak dari luar negeri di satu sisi menguntungkan pengguna karena banyaknya pilihan produk dan harga. Namun di sisi lain cukup mengkhawatirkan karena di Indonesia tidak ada institusi yang secara aktif bertugas membuat standard dalam pengukuran kualitas perangkat lunak yang masuk ke Indonesia. Demikian juga dengan produk-produk perangkat lunak lokal, tentu akan semakin meningkat daya saing internasionalnya apabila pengembang dan software house di Indonesia mulai memperhatikan masalah kualitas perangkat lunak ini.
Kualitas perangkat lunak (software quality) adalah tema kajian dan penelitian  turun temurun dalam sejarah ilmu rekayasa perangkat lunak (software engineering). Kajian dimulai dari apa yang akan diukur (apakah proses atau produk), apakah memang perangkat lunak bisa diukur, sudut pandang pengukur dan bagaimana menentukan parameter pengukuran kualitas perangkat lunak.
Bagaimanapun juga mengukur kualitas perangkat lunak memang bukan pekerjaan mudah. Ketika seseorang memberi nilai sangat baik terhadap sebuah perangkat lunak, orang lain belum tentu mengatakan hal yang sama. Sudut pandang seseorang tersebut mungkin berorientasi ke satu sisi masalah (misalnya tentang reliabilitas dan efisiensi perangkat lunak), sedangkan orang lain yang menyatakan bahwa perangkat lunak itu buruk menggunakan sudut pandang yang lain lagi (usabilitas dan aspek desain).
APA YANG DIUKUR?
Pertanyaan pertama yang muncul ketika membahas pengukuran kualitas perangkat lunak, adalah apa yang sebenarnya mau kita ukur. Kualitas perangkat lunak dapat dilihat dari sudut pandang proses pengembangan perangkat lunak (process) dan hasil produk yang dihasilkan (product). Dan penilaian ini tentu berorientasi akhir ke bagaimana suatu perangkat lunak dapat dikembangkan sesuai dengan yang diharapkan oleh pengguna. Hal ini berangkat dari pengertian kualitas (quality) menurut IEEE Standard Glossary of Software Engineering Technology [3] yang dikatakan sebagai:
    The degree to which a system, component, or process meets customer or user needs or expectation.
Dari sudut pandang produk, pengukuran kualitas perangkat lunak dapat menggunakan standard dari ISO 9126 atau best practice yang dikembangkan para praktisi dan pengembang perangkat lunak. Taksonomi McCall adalah best practice yang cukup terkenal dan diterima banyak pihak, ditulis oleh J.A. McCall  dalam technical report yang dipublikasikan tahun 1977 [1].
product-process.gif
Di lain pihak, dari sudut pandang proses, standard ISO 9001 dapat digunakan untuk mengukur kualitas perangkat lunak. Dan diskusi tentang ini berkembang dengan munculnya tema kajian tentang CMM (The Capability Maturity Model) yang dikembangkan di Software Engineering Institute, Carnegie Mellon University serta beberapa kajian lain seperti SPICE (Software Process Improvement and Capability dEtermination) dan BOOTSTRAP. CMM, SPICE dan BOOTSTRAP mengukur kualitas perangkat lunak dari seberapa matang proses pengembangannya.
Tulisan ini akan mencoba fokus ke bagaimana mengukur perangkat lunak dilihat dari sudut pandang produk. Untuk pengukuran proses pengembangan perangkat lunak akan dibahas pada tulisan lain.
PARAMETER DAN METODE PENGUKURAN
    When you can measure what you are speaking about, and express it in numbers, you know something about it. But when you can not measure it, when you can not express it in numbers, your knowledge is of a meagre and unsatisfactory kind. (Lord Kelvin)
Pendekatan engineering menginginkan bahwa kualitas perangkat lunak ini dapat diukur secara kuantitatif, dalam bentuk angka-angka yang mudah dipahami oleh manusia. Untuk itu perlu ditentukan parameter atau atribut pengukuran. Menurut taksonomi McCall [1], atribut tersusun secara hirarkis, dimana level atas (high-level attribute) disebut faktor (factor), dan level bawah (low-level attribute) disebut dengan kriteria (criteria). Faktor menunjukkan atribut kualitas produk dilihat dari sudut pandang pengguna. Sedangkan kriteria adalah parameter kualitas produk dilihat dari sudut pandang perangkat lunaknya sendiri. Faktor dan kriteria ini memiliki hubungan sebab akibat (cause-effect) [4][5]. Tabel 1 menunjukkan daftar lengkap faktor dan kriteria dalam kualitas perangkat lunak menurut McCall [1].
Tabel 1: Faktor dan Kriteria dalam Kualitas Perangkat Lunak
quality-factor.gif
Kualitas software diukur dengan metode penjumlahan dari keseluruhan kriteria dalam suatu faktor sesuai dengan bobot (weight) yang telah ditetapkan [2]. Rumus pengukuran yang digunakan adalah:
    Fa = w1c1 + w2c2 + … + wncn
Dimana:
    Fa adalah nilai total dari faktor a wi adalah bobot untuk kriteria i ci adalah nilai untuk kriteria i
Kemudian tahapan yang harus kita tempuh dalam pengukuran adalah sebagai berikut:
    Tahap 1: Tentukan kriteria yang digunakan untuk mengukur suatu faktor Tahap 2: Tentukan bobot (w) dari setiap kriteria (biasanya 0 <= w <= 1) Tahap 3: Tentukan skala dari nilai kriteria (misalnya, 0 <= nilai kriteria <= 10) Tahap 4: Berikan nilai pada tiap kriteria Tahap 5: Hitung nilai total dengan rumus Fa = w1c1 + w2c2 + … + wncn
CONTOH PENGUKURAN PERANGKAT LUNAK
Untuk mempermudah pemahaman, akan diberikan sebuah contoh pengukuran kualitas perangkat lunak dari faktor usabilitas (usability). Yang akan diukur adalah dua buah perangkat lunak yang memiliki fungsi untuk mengkontrol peralatan elektronik (electronic device). Perangkat lunak yang pertama bernama TukangKontrol, sedangkan kedua bernama Caktrol. Contoh dan hasil pengukuran dapat dilihat pada Table 2 dan 3.
Tabel 2: Contoh Pengukuran Usabilitas Dua Perangkat Lunak
tukangkontrol1.gif
Tabel 3: Hasil Pengukuran Usabilitas Dua Perangkat Lunak
tukangkontrol2.gif
Dari penghitungan yang ada di Tabel 3, dapat kita simpulkan bahwa dari faktor usabilitas, kualitas dari perangkat lunak bernama TukangKontrol lebih baik daripada Caktrol. Nilai total TukangKontrol untuk faktor usabilitas adalah 16.8, sedangkan Caktrol adalah 10.2 (dari maksimum total nilai 20).
Catatan: Edisi lengkap dari tulisan ini dapat dibaca di majalah SDA Magazine edisi Juni 2006.
REFERENSI
[1] J.A. McCall, P.K. Richards, and G.F. Walters, Factors in Software Quality, Tehnical Report RADC-TR-77-369, US Department of Commerce, 1977.
[2] T.P. Bowen, G.B Wigle, and J.T. Tsai, Specification of Software Quality Attributes: Software Quality Evaluation Guidebook, Technical Report RADC-TR-85-37, Rome Air Development Center, Griffiss Air Force Base, 1985.
[3] IEEE Standard Glossary of Software Engineering Technology, IEEE Std 610.12-1990, Institute of Electrical and Electronics Engineers, New York, 1990.
[4] Hans Van Vliet, Software Engineering – Principles and Practice, John Wiley & Sons, 2000.
[5] James F. Peters and Witold Pedrycz, Software Engineering: An Engineering Approach, John Wiley & Sons, 2000.

Entri Populer