Advertisement
loading...

MATERI PELATIHAN BERBASIS KOMPETENSI

SEKTOR TEKNOLOGI INFORMASI DAN KOMUNIKASI

Advertisement

 

 

 

MEMBUAT DOKUMEN

KODE PROGRAM

TIK.PR02.019.01

 

 

 

 

 

 

 

 

 

BUKU INFORMASI

 

 

 

 

 

DEPARTEMEN TENAGA KERJA DAN TRANSMIGRASI R.I.

DIREKTORAT JENDERAL PEMBINAAN PELATIHAN DAN PRODUKTIVITAS

Jl. Jend. Gatot Subroto Kav.51 Lt.7.B Jakarta Selatan

 

 

 

DAFTAR ISI

 

 

 

 

DAFTAR ISI. 1

BAB I   3

1.1    Konsep Dasar Pelatihan Berbasis Kompetensi 3

1.2    Penjelasan Modul 3

1.2.1   Desain Modul 3

1.2.2   Isi Modul 4

1.2.3   Pelaksanaan Modul 4

1.3    Pengakuan Kompetensi Terkini 5

1.4    Pengertian Istilah-Istilah. 5

BAB II   7

2.1    Peta Paket Pelatihan. 7

2.2    Pengertian Unit Standar 7

2.3    Unit Kompetensi Yang Dipelajari 8

2.3.1   Judul Unit Kompetensi 8

2.3.2   Kode Unit Kompetensi 8

2.3.3   Deskripsi Unit 8

2.3.4   Elemen Kompetensi 8

2.3.5   Batasan Variabel 9

2.3.6   Panduan Penilaian. 9

2.3.7   Kompetensi Kunci 10

BAB III  11

3.1    Strategi Pelatihan. 11

3.2    Metode Pelatihan. 12

BAB IV    13

4.1    Tujuan Instruksional Umum.. 13

4.2    Tujuan Instruksional Khusus 13

4.3    Uraian Singkat Materi : 14

4.4    Beberapa Pengertian dalam Unit Kompetensi Ini : 15

4.5    Informasi masing-masing elemen kompetensi 16

4.5.1 Mengidentifikasi kode program.. 16

4.5.2 Membuat Dokumentasi Modul Program.. 19

4.5.3 Membuat Dokumentasi Fungsi atau Prosedur Program.. 29

4.5.4 Mengevaluasi Dokumen Kode Program.. 35

BAB V    40

5.1    Sumber Daya Manusia. 40

5.2    Sumber-Sumber Kepustakaan. 41

5.3    Daftar Peralatan dan Bahan. 41

DAFTAR PUSTAKA. 42

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


BAB I

PENGANTAR

 

 

 

 

1.1     Konsep Dasar Pelatihan Berbasis Kompetensi

 

  • Apakah pelatihan berdasarkan kompetensi?

Pelatihan berdasarkan kompetensi adalah pelatihan yang memperhatikan pengetahuan, keterampilan dan sikap yang diperlukan di tempat kerja agar dapat melakukan pekerjaan dengan kompeten. Standar Kompetensi dijelaskan oleh Kriteria Unjuk Kerja (KUK).

 

  • Apakah artinya menjadi kompeten ditempat kerja?

Jika Anda kompeten dalam pekerjaan tertentu, Anda memiliki seluruh keterampilan, pengetahuan dan sikap yang perlu untuk ditampilkan secara efektif ditempat kerja, sesuai dengan standar yang telah disetujui.

 

 

1.2     Penjelasan Modul

 

Modul ini dikonsep agar dapat digunakan pada proses Pelatihan Konvensional/Klasikal dan Pelatihan Individual/Mandiri. Yang dimaksud dengan Pelatihan Konvensional/Klasikal, yaitu pelatihan yang dilakukan dengan melibatkan bantuan seorang pembimbing atau guru seperti proses belajar mengajar sebagaimana biasanya dimana materi hampir sepenuhnya dijelaskan dan disampaikan pelatih/pembimbing yang bersangkutan.

 

Sedangkan yang dimaksud dengan Pelatihan Mandiri/Individual adalah pelatihan yang dilakukan secara mandiri oleh peserta sendiri berdasarkan materi dan sumber-sumber informasi dan pengetahuan yang bersangkutan. Pelatihan mandiri cenderung lebih menekankan pada kemauan belajar peserta itu sendiri. Singkatnya pelatihan ini dilaksanakan peserta dengan menambahkan unsur-unsur atau sumber-sumber yang diperlukan baik dengan usahanya sendiri maupun melalui bantuan dari pelatih.

 

1.2.1      Desain Modul

 

Modul ini dirancang untuk dapat digunakan pada Pelatihan Klasikal dan Pelatihan Individual/mandiri :

  • Pelatihan klasikal adalah pelatihan yang disampaikan oleh seorang pelatih.
  • Pelatihan individual/mandiri adalah pelatihan yang dilaksanakan oleh peserta dengan menambahkan unsur-unsur/sumber-sumber yang diperlukan dengan bantuan dari pelatih.

 

1.2.2      Isi Modul

 

a.   Buku Informasi

Buku informasi ini adalah sumber pelatihan untuk pelatih maupun peserta pelatihan.

 

b.   Buku Kerja

Buku kerja ini harus digunakan oleh peserta pelatihan untuk mencatat setiap pertanyaan dan kegiatan praktik baik dalam Pelatihan Klasikal maupun Pelatihan Individual / mandiri.

Buku ini diberikan kepada peserta pelatihan dan berisi :

  • Kegiatan-kegiatan yang akan membantu peserta pelatihan untuk mempelajari dan memahami informasi.
  • Kegiatan pemeriksaan yang digunakan untuk memonitor pencapaian keterampilan peserta pelatihan.
  • Kegiatan penilaian untuk menilai kemampuan peserta pelatihan dalam melaksanakan praktik kerja.

 

c.   Buku Penilaian

Buku penilaian ini digunakan oleh pelatih untuk menilai jawaban dan tanggapan peserta pelatihan pada Buku Kerja dan berisi :

  • Kegiatan-kegiatan yang dilakukan oleh peserta pelatihan sebagai pernyataan keterampilan.
  • Metode-metode yang disarankan dalam proses penilaian keterampilan peserta pelatihan.
  • Sumber-sumber yang digunakan oleh peserta pelatihan untuk mencapai keterampilan.
  • Semua jawaban pada setiap pertanyaan yang diisikan pada Buku Kerja.
  • Petunjuk bagi pelatih untuk menilai setiap kegiatan praktik.
  • Catatan pencapaian keterampilan peserta pelatihan.

 

1.2.3      Pelaksanaan Modul

 

Pada pelatihan klasikal, pelatih akan :

  • Menyediakan Buku Informasi yang dapat digunakan peserta pelatihan sebagai sumber pelatihan.
  • Menyediakan salinan Buku Kerja kepada setiap peserta pelatihan.
  • Menggunakan Buku Informasi sebagai sumber utama dalam penyelenggaraan pelatihan.
  • Memastikan setiap peserta pelatihan memberikan jawaban / tanggapan dan menuliskan hasil tugas praktiknya pada Buku Kerja.

 

 

 

 

Pada Pelatihan individual / mandiri, peserta pelatihan akan :

  • Menggunakan Buku Informasi sebagai sumber utama pelatihan.
  • Menyelesaikan setiap kegiatan yang terdapat pada buku Kerja.
  • Memberikan jawaban pada Buku Kerja.
  • Mengisikan hasil tugas praktik pada Buku Kerja.
  • Memiliki tanggapan-tanggapan dan hasil penilaian oleh pelatih.

 

 

1.3     Pengakuan Kompetensi Terkini

 

  • Apakah Pengakuan Kompetensi Terkini (Recognition of Current Competency).

Jika Anda telah memiliki pengetahuan dan keterampilan yang diperlukan untuk elemen unit kompetensi tertentu, Anda dapat mengajukan pengakuan kompetensi terkini (RCC). Berarti Anda tidak akan dipersyaratkan untuk belajar kembali.

 

  • Anda mungkin sudah memiliki pengetahuan dan keterampilan, karena Anda telah :
  1. Bekerja dalam suatu pekerjaan yang memerlukan suatu pengetahuan dan keterampilan yang sama atau
  2. Berpartisipasi dalam pelatihan yang mempelajari kompetensi yang sama atau
  3. Mempunyai pengalaman lainnya yang mengajarkan pengetahuan dan keterampilan yang sama.

 

 

1.4     Pengertian Istilah-Istilah

 

Profesi

Profesi adalah suatu bidang pekerjaan yang menuntut sikap, pengetahuan serta keterampilan/keahlian kerja tertentu yang diperoleh dari proses pendidikan, pelatihan serta pengalaman kerja atau penguasaan sekumpulan kompetensi tertentu yang dituntut oleh suatu pekerjaan/jabatan.

 

Standardisasi

Standardisasi adalah proses merumuskan, menetapkan serta menerapkan suatu standar tertentu.

 

Penilaian / Uji Kompetensi

Penilaian atau Uji Kompetensi adalah proses pengumpulan bukti melalui perencanaan, pelaksanaan dan peninjauan ulang (review) penilaian serta keputusan mengenai apakah kompetensi sudah tercapai dengan membandingkan bukti-bukti yang dikumpulkan terhadap standar yang dipersyaratkan.

 

Pelatihan

Pelatihan adalah proses pembelajaran yang dilaksanakan untuk mencapai suatu kompetensi tertentu dimana materi, metode dan fasilitas pelatihan serta lingkungan belajar yang ada terfokus kepada pencapaian unjuk kerja pada kompetensi yang dipelajari.

 

Kompetensi Kerja

Kompetensi  Kerja adalah kemampuan kerja setiap individu  yang mencakup aspek  pengetahuan ,  keterampilan dan sikap kerja  yang sesuai dengan standar yang ditetapkan

 

Pelatihan Berbasis Kompetensi Kerja.

Pelatihan Berbasisi Kompetensi Kerja adalah  pelatihan kerja yang menitikberatkan pada penguasaan kemampuan kerja yang mencakup pengetahuan, keterampilan dan sikap sesuai dengan standar yang ditetapkan dan persyaratan di tempat kerja.

 

Standar Kompetensi Kerja Nasional Indonesia

Standar Kompetensi Kerja Nasional Indonesia adalah rumusan kemampuan kerja yang mencakup aspek pengetahuan, keterampilan dan / atau keahlian serta sikap kerja yang relevan dengan pelksanaan tugas dan syarat jabatan yang ditetapkan sesuai dengan ketentuan peraturan perundang-undangan yang berlaku.

 

Sertifikasi Kompetensi Kerja.

Sertifikasi kompetensi Kerja adalah proses pemberian sertifikat kompetensi yang

dilakukan secara sitematis dan obyektif melalui uji kompetensi sesuai standar kompetensi kerja nasional Indonesia, standar internasional dan /atau standar khusus.

 

Sertifikat Kompetensi Kerja

Sertifikat Kompetensi Kerja adalah bukti tertulis yang diterbitkan oleh lembaga sertifikasi profesi terakreditasi yang menerangkan bahwa seseorang telah menguasai kompetensi kerja tertentu sesuai dengan SKKNI.

 

 

 

 

 

 

 

 

 

 


BAB II

STANDAR KOMPETENSI

 

 

 

 

2.1     Peta Paket Pelatihan

 

Modul yang sedang Anda pelajari ini adalah untuk mencapai satu unit kompetensi, yang termasuk dalam satu paket pelatihan, yang terdiri atas unit-unit kompetensi berikut:

  1. TIK.PR02.004.01  Menggunakan Spesifikasi Program
  2. TIK.PR02.006.01  Menulis Program Lanjut
  3. TIK.PR02.012.01  Mengkompilasi dan Menjalankan Sebuah Aplikasi
  4. TIK.PR02.013.01  Menulis dan Mengkompilasi Kode Sesuai Kebutuhan
  5. TIK.PR02.019.01  Membuat Dokumen Kode Program

 

 

2.2     Pengertian Unit Standar

 

Apakah Standar Kompetensi?

Setiap Standar Kompetensi menentukan :

  1. Pengetahuan dan keterampilan yang diperlukan untuk mencapai kompetensi.
  2. Standar yang diperlukan untuk mendemonstrasikan kompetensi.
  3. Kondisi dimana kompetensi dicapai.

 

Apakah yang akan anda pelajari dari Unit Kompetensi ini ?

Di dalam unit kompetensi ini, Anda akan mempelajari bagaimana membuat dokumen kode program untuk melengkapi pengetahuan yang telah Anda kuasai pada pelatihan unit-unit kompetensi terkait sebelumnya.

 

Berapa lama unit kompetensi ini dapat diselesaikan ?

Sistem pelatihan berbasis kompetensi terfokus pada pencapaian kompetensi, bukan pada lamanya waktu. Namun diharapkan pelatihan ini dapat dilaksanakan dan dicapai dalam jangka waktu tidak lebih dari seminggu, tiga sampai lima hari. Pelatihan ini diperuntukkan bagi programmer dan system analyst.

 

Berapa banyak/kesempatan yang anda miliki untuk mencapai kompetensi ?

Jika Anda belum mencapai kompetensi pada usaha/kesempatan pertama, Pelatih Anda akan mengatur rencana pelatihan dengan Anda. Rencana ini akan memberikan Anda kesempatan kembali untuk meningkatkan level kompetensi Anda sesuai dengan level yang diperlukan. Jumlah maksimum usaha/kesempatan yang disarankan adalah 3 (tiga) kali.

 

 

2.3     Unit Kompetensi Yang Dipelajari

 

Dalam sistem pelatihan, Standar Kompetensi diharapkan menjadi panduan bagi peserta pelatihan  untuk dapat :

  1. Mengidentifikasikan apa yang harus dikerjakan peserta pelatihan.
  2. Memeriksa kemajuan peserta pelatihan.
  3. Menyakinkan bahwa semua elemen (sub-kompetensi) dan kriteria unjuk   kerja telah dimasukkan dalam pelatihan dan penilaian.

 

2.3.1      Judul Unit Kompetensi

 

Judul Unit   :  Membuat Dokumen Kode Program

 

2.3.2      Kode Unit Kompetensi

 

Kode Unit   :  TIK.PR02.019.01

 

2.3.3      Deskripsi Unit

 

Unit ini menentukan kompetensi yang diperlukan untuk membuat dokumentasi dari kode program yang telah di tulis. Dokumen kode program merupakan bentuk hard copy dari modul program yang telah di tulis termasuk property dari kode program tersebut (tanggal dibuat, versi, nama modul, pembuat, nomor dsb).

 

2.3.4      Elemen Kompetensi

 

Berikut adalah tabel yang menunjukkan kriteria unjuk kerja (KUK) untuk masing-masing elemen :

 

 

ELEMEN KOMPETENSI
KRITERIA UNJUK KERJA
01  Mengidentifikasi kode program 1.1     Modul program berdasarkan fungsi, prosedur dan data di identifikasi

1.2     Parameter data yang menjadi masukan dan keluaran pada fungsi atau prosedur di ketahui

1.3     Data dan algoritma pada deskripsi fungsi dan prosedur di jelaskan

02 Membuat dokumentasi modul program 2.1     Dokumentasi modul di buat sesuai dengan identitas untuk memudahkan pelacakan

2.2     Nama fungsi dan prosedur yang ada di dalam modul di jelaskan pada dokumentasi modul

03 Membuat dokumentasi fungsi atau prosedur       program 3.1    Dokumentasi fungsi dan prosedur sesuai dengan identitas fungsi atau prosedur di buat

3.2    Parameter data masukan dan keluaran di jelaskan pada dokumen

3.3    Data dan tipe data yang ada fungsi atau prosedur di jelaskan pada dokumen

04 Mengevaluasi dokumen           kode program 4.1    Dokumen direvisi berdasarkan standar dokumen

4.2 Dokumen dikoreksi untuk menjamin kesempurnaan teknis dan tata bahasa

4.3 Dokumen dilengkapi untuk memenuhi kebutuhan dokumen teknis

 

 

2.3.5      Batasan Variabel

 

Batasan variabel unit kompetensi ini adalah sebagai berikut:

  1. Unit ini berlaku untuk seluruh sektor teknologi informasi dan komunikasi.
  2. Membuat dokumen kode program bersifat internal pada bidang teknologi informasi dan komunikasi.

 

 

2.3.6      Panduan Penilaian

 

Panduan penilaian terdiri dari :

  1. 1.     Pengetahuan dan keterampilan penunjang

Untuk dapat mendemontrasikan kompetensi, diperlukan bukti keterampilan dan pengetahuan di bidang berikut ini :

1.1     Pengetahuan Dasar:

1.1.1       Memahami spesifikasi program

1.1.2       Standar unjuk kerja

 

2.   Konteks penilaian

Unit ini dapat di nilai di dalam tempat kerja atau tempat lain secara praktek   komputer dengan kondisi kerja sesuai dengan keadaan normal

 

3.   Aspek penting penilaian

Aspek yang harus diperhatikan

3.1     Kemampuan membuat dokumentasi kode program

3.2     Kemampuan membuat dokumentasi fungsi dan prosedur sesuai dengan identitas

3.3     Kemampuan mengevaluasi dokumen kode program sesuai dengan standar

 

4.   Kaitan dengan unit-unit lainnya

4.1     Unit ini di dukung oleh pengetahuan dan keterampilan dalam unit-unit kompetensi yang berkaitan dengan dasar-dasar teknologi informasi

4.1.1       TIK.PR02.004.01   Menggunakan spesifikasi program

4.1.2       TIK.PR02.006.01   Menulis program lanjut

4.1.3       TIK.PR02.012.01 Mengkompilasi dan menjalankan sebuah aplikasi

4.1.4       TIK.PR02.013.01 Menulis dan mengkompilasi kode sesuai kebutuhan

4.2     Unit ini juga mendukung kinerja dalam unit-unit kompetensi yang berkaitan dengan :

4.2.1       Bidang pengembangan program

4.2.2       Konfigurasi pengelolaan program

4.2.3       Quality assurance

4.2.4       Mengoperasikan aplikasi pengolah data

4.3     Pengembangan pelatihan untuk memenuhi persyaratan dalam unit ini perlu dilakukan dengan hati-hati. Untuk pelatihan pra-kejuruan umum, institusi harus menyediakan pelatihan yang mempertimbangkan serangkaian konteks industri seutuhnya tanpa bisa terhadap sektor tertentu. Batasan variabel akan membantu dalam hal ini. Untuk sektor tertentu/khusus, pelatihan harus disesuaikan untuk memenuhi kebutuhan sektor tersebut.

 

 

2.3.7      Kompetensi Kunci

 

NO KOMPETENSI KUNCI DALAM UNIT INI TINGKAT

1

Mengumpulkan, mengorganisir dan menganalisa informasi

2

2

Mengkomunikasikan ide-ide dan informasi

2

3

Merencanakan dan mengorganisir aktivitas-aktivitas

1

4

Bekerja dengan orang lain dan kelompok

1

5

Menggunakan ide-ide dan tehnik matematika

1

6

Memecahkan masalah

1

7

Menggunakan teknologi

1

 

 

 

 

 

 

BAB III

STRATEGI DAN METODE PELATIHAN

 

 

 

 

3.1     Strategi Pelatihan

 

Belajar dalam suatu sistem Berdasarkan Kompetensi berbeda dengan yang sedang “diajarkan” di kelas oleh Pelatih. Pada sistem ini Anda akan bertanggung jawab terhadap belajar Anda sendiri, artinya bahwa Anda perlu merencanakan belajar Anda dengan Pelatih dan kemudian melaksanakannya dengan tekun sesuai dengan rencana yang telah dibuat.

 

Persiapan/perencanaan

  1. Membaca bahan/materi yang telah diidentifikasi dalam setiap tahap belajar dengan tujuan mendapatkan tinjauan umum mengenai isi proses belajar Anda.
  2. Membuat catatan terhadap apa yang telah dibaca.
  3. Memikirkan bagaimana pengetahuan baru yang diperoleh berhubungan dengan pengetahuan dan pengalaman yang telah Anda miliki.
  4. Merencanakan aplikasi praktik pengetahuan dan keterampilan Anda.

 

Permulaan dari proses pembelajaran

  1. Mencoba mengerjakan seluruh pertanyaan dan tugas praktik yang terdapat pada tahap belajar.
  2. Merevisi dan meninjau materi belajar agar dapat menggabungkan pengetahuan Anda.

 

Pengamatan terhadap tugas praktik

  1. Mengamati keterampilan praktik yang didemonstrasikan oleh Pelatih atau orang yang telah berpengalaman lainnya.
  2. Mengajukan pertanyaan kepada Pelatih tentang konsep sulit yang Anda temukan.

 

Implementasi

  1. Menerapkan pelatihan kerja yang aman.
  2. Mengamati indikator kemajuan personal melalui kegiatan praktik.
  3. Mempraktikkan keterampilan baru yang telah Anda peroleh.

 

Penilaian

Melaksanakan tugas penilaian untuk penyelesaian belajar Anda.

 

 

 

 

 

3.2     Metode Pelatihan

 

Terdapat tiga prinsip metode belajar yang dapat digunakan. Dalam beberapa kasus, kombinasi metode belajar mungkin dapat digunakan.

 

Belajar secara mandiri

Belajar secara mandiri membolehkan Anda untuk belajar secara individual, sesuai dengan kecepatan belajarnya masing-masing. Meskipun proses belajar dilaksanakan secara bebas, Anda disarankan untuk menemui Pelatih setiap saat untuk mengkonfirmasikan kemajuan dan mengatasi kesulitan belajar.

 

Belajar berkelompok

Belajar berkelompok memungkinkan peserta untuk dating bersama secara teratur dan berpartisipasi dalam sesi belajar berkelompok. Walaupun proses belajar memiliki prinsip sesuai dengan kecepatan belajar masing-masing, sesi kelompok memberikan interaksi antar peserta, Pelatih dan pakar/ahli dari tempat kerja.

 

Belajar terstruktur

Belajar terstruktur meliputi sesi pertemuan kelas secara formal yang dilaksanakan oleh Pelatih atau ahli lainnya. Sesi belajar ini umumnya mencakup topik tertentu.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BAB IV

MATERI UNIT KOMPETENSI

 

 

 

 

4.1     Tujuan Instruksional Umum

 

  • Siswa mengetahui pentingnya dokumentasi program
  • Siswa dapat membuat dokumentasi kode program yang baik dan benar

 

 

 

4.2     Tujuan Instruksional Khusus

 

  • Siswa mampu menjelaskan manfaat dari pembuatan dokumentasi program
  • Siswa dapat memahami, mengidentifikasi data, fungsi, prosedur dan modul dalam program
  • Siswa dapat menjelaskan alur data dan algoritma pemrograman pada modul program
  • Siswa mengerti bagaimana cara membuat dokumentasi kode program
  • Siswa mampu mengevaluasi sebuah dokumen kode program
  • Siswa mampu melengkapi dan melakukan perbaikan pada dokumentasi kode program

 

 

4.3    Uraian Singkat Materi :

 

Membuat Dokumen Kode Program

 

Ada banyak alasan dan aspek mengapa dokumentasi kode program sangat penting dan diperlukan. Secara garis besar, dokumentasi menyediakan kita sebuah jalan pintas untuk mengetahui sebuah sistem dalam gambaran besar atau agar kita mengerti kode-kode program pada fungsi, prosedur atau modul-modul tertentu.

 

Ketika kita berbicara tentang dokumentasi kode program maka kita tidak hanya berbicara tentang satu bahasa pemrograman, tetapi untuk seluruh bahasa pemrograman yang ada. Salah satu bentuk dokumentasi yang paling sederhana adalah “comment” pada program. Fungsi dari comment ini sendiri sangat signifikan untuk menjelaskan dan mengklarifikasikan kode program kita baik untuk mengingatkan kita sendiri maupun orang lain yang memeriksanya.

4.4    Beberapa Pengertian dalam Unit Kompetensi Ini :

 

Beberapa pengertian yang dipergunakan di dalam unit kompetensi ini, yaitu :

 

  • Dokumentasi kode program adalah suatu bagian penting dalam pemrograman yang seringkali terabaikan, dianggap tidak perlu atau bahkan hanya menambah beban kerjaan. Namun, dokumentasi ini sebenarnya tidak boleh dihilangkan.

 

4.5    Informasi masing-masing elemen kompetensi

4.5.1 Mengidentifikasi kode program

 

1) Pengetahuan Kerja

 

Dahulu banyak perusahaan menganut konsep “Hero Programmer”, yaitu seorang programmer  yang menulis kode program untuk satu kesatuan perusahaan. Tetapi sekarang, mereka telah berpindah pada konsep tim dimana ada beberapa programmer yang bekerja di dalamnya. Sehingga kini programmer tidak lagi bekerja sendiri untuk menyelesaikan sebuah proyek, tetapi proyek tersebut dibagi ke dalam unit-unit kecil dan masing-masing di kerjakan secara tim. Untuk kasus ini, dokumentasi menjadi sangat penting karena:

  1. Programmer lain mungkin ditugaskan untuk mengembangkan proyek Anda
  2. Proyek yang Anda selesaikan mungkin saja digunakan lagi sebagai bagian untuk penyempurnaan proyek lain
  3. Programmer lain mungkin perlu untuk membaca dan memahami kode program Anda.

 

Apakah hanya ini saja alasan mengapa dokumentasi itu penting? Tentu tidak. Ketika Anda menulis program, Anda mungkin dapat menyelesaikannya dalam waktu beberapa jam saja. Namun untuk program-program yang lebih komplek tentu Anda membutuhkan waktu lebih lama, misalnya beberapa hari, beberapa minggu atau beberapa bulan. Untuk kasus ini, sekali lagi dokumentasi menjadi penting, karena:

  1. Anda tidak mungkin mengerjakan proyek Anda hanya dalam sekali duduk
  2. Dokumentasi dapat memberitahu Anda apa yang telah Anda lakukan terakhir kali pada kode-kode program Anda
  3. Dokumentasi memungkinkan Anda untuk mencatat mengapa Anda memutuskan untuk menulis kode tersebut, atau mengapa Anda memilih untuk tidak mencari solusi tertentu lainnya.
  4. Dokumentasi memberitahu Anda keterbatasan atau bug yang ada untuk perbaikan selanjutnya
  5. Dokumentasi memungkinkan pencarian dan referensi yang lebih mudah di dalam program
  6. Dokumentasi adalah praktek pemrograman yang dianjurkan

 

2) Ketrampilan Kerja

 

Nah, sekarang Anda sudah tahu mengapa dokumentasi kode program itu sangat penting. Sekarang mari kita lanjutkan dengan bagaimana langkah-langkah yang baik untuk membuat dokumentasi kode program tersebut. Dokumentasi program sendiri bisa menggunakan comment pada program, notasi algoritma atau tabel keputusan yang akan dibahas pada sub-bab berikutnya.

 

Identifikasi Modul Program

 

Sebelum memulai sebuah dokumentasi, Anda perlu mengidentifikasi dulu modul program Anda. Sebuah program bisa terdiri dari satu modul atau lebih. Yang dimaksud dengan modul program adalah sekumpulan fungsi dan atau prosedur dalam sebuah program yang memiliki tujuan yang sebangun.

 

Contohnya: modul program untuk membaca data dari basis data. Di dalam modul program ini terdapat fungsi atau prosedur untuk melakukan dan memutuskan koneksi ke basis data. Modul program ini juga memiliki fungsi atau prosedur untuk meng-ekstrak data dari basis data dan mungkin juga fungsi atau prosedur untuk menampilkan data yang telah di-ekstrak tersebut. Artinya fungsi dan prosedur inilah yang membentuk modul program untuk membaca data dari basis data.

 

Parameter Data I/O Pada Fungsi atau Prosedur

 

Jika tadi kita membahas bagaimana mengidentifikasi modul program maka sekarang kita melihat ke dalam modul tersebut, yaitu pada fungsi atau prosedur yang terdapat di dalam modul tersebut.

 

Anda tentu sudah mengetahui perbedaan antara fungsi dan prosedur. Secara singkat, perbedaannya adalah bahwa fungsi dapat mengembalikan nilai sedangkan prosedur tidak mengembalikan nilai. Namun keduanya dapat memiliki parameter data masukan atau keluaran (Input/Output). Agar lebih jelas, marilah kita perhatikan fungsi C++ dibawah ini!

 

long fibonacci (unsigned long n) {

if (n <= 1) {

return n;

} else {

return fibonacci(n – 1) + fibonacci(n – 2);

}

}

 

Fungsi diatas adalah fungsi untuk menampilkan bilangan fibonacci, yaitu bilangan yang setiap angkanya merupakan penjumlahan dari dua angka di depannya. Urutan bilangan fibonacci adalah sebagai berikut: 1, 1, 2, 3, 5, 8, 13, 21, …

 

Tapi yang ingin kita bahas bukanlah fungsi fibonacci ini, mengidentifikasi parameter di dalam fungsi tersebut. Fungsi fibonacci ini memiliki 1 parameter data masukan/input yaitu n yang memiliki tipe data unsigned long (bilangan bulat positif) dan mengembalikan 1 nilai keluaran/output.

 

Jika Anda memanggil fungsi fibonacci(8), maka hasilnya adalah 21. Angka 8 merupakan parameter yang menjadi data masukan dan angka 21 merupakan data keluaran dari fungsi tersebut dimana bilangan ke-8 dari deret fibonacci adalah 21.

 

 

 

Data dan Algoritma Pada Fungsi atau Prosedur

 

Ketika Anda menulis sebuah kode program, baik itu berupa suatu fungsi atau prosedur, Anda tentu memikirkan algoritma pemrograman atau alur proses dari fungsi maupun prosedur tersebut. Algoritma itu sendiri merupakan urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis.

 

Ketika Anda menulis kode program anda juga tidak akan pernah terlepas dari data. Dan data ini juga secara tidak langsung Anda pikirkan dan gunakan di dalam algoritma Anda. Misalkan Anda diminta untuk membuat fungsi yang dapat menampilkan bilangan fibonacci seperti yang kita bahas sebelumnya. Maka langkah yang Anda ambil tentu saja:

  1. Perlu tahu terlebih dahulu apakah yang dimaksud dengan bilangan fibonacci tersebut.
  2. Setelah Anda tahu bahwa bilangan fibonacci adalah urutan angka dimana sebuah angka merupakan hasil jumlah 2 angka sebelumnya, maka Anda mulai memikirkan logika pemrogramannya.
  3. Pertama, Anda tentu menentukan apa yang menjadi data masukan.
  4. Kedua, Anda memikirkan proses bagaimana data yang menjadi masukan dapat menghasilkan data keluaran yang benar. Dalam hal ini proses itu adalah bagaimana kode program untuk menjumlahkan 2 angka sebelumnya berdasarkan data masukan Anda.
  5. Terakhir, Anda mengevaluasi kode di dalam fungsi atau prosedur Anda untuk melihat apakah hasilnya sudah benar.

 

Lalu, apakah yang dapat kita simpulkan dalam hal ini? Jika kita lihat secara garis besar maka suatu fungsi, prosedur, program adalah hanya menyangkut 3 unsur dasar yang sering disebut IPO, yakni:

  1. Masukan (Input )
  2. Proses (Process )
  3. Keluaran (Output )

Maka dari itu, sebuah algoritma tak lebih merupakan sekumpulan logika untuk memproses data masukan sehingga menghasilkan data keluaran yang diinginkan.

 

 

 

 

 

 

 

 

Gambar Model Elemen-Elemen Pembentuk Aplikasi

 

3) Sikap Kerja

Sikap kerja perlu diperhatikan dalam lingkungan kerja, yaitu :

  1. Mengidentifikasi modul sesuai dengan fungsi dan prosedur dengan benar.
  2. Meninjau parameter data yang menjadi masukkan dengan tepat.
  3. Menjelaskan data dan algoritma sesuai dengan deskripsi fungsinya.

 

4.5.2 Membuat Dokumentasi Modul Program

 

1) Pengetahuan Kerja

 

Anda sudah mengerti bagaimana mengidentifikasi modul program, menentukan parameter data pada fungsi dan prosedur serta telah mampu menjelaskan data dan algoritma pemrograma pada fungsi dan prosedur. Maka saat ini kita akan mulai menyusun dokumentasi untuk modul program.

 

Seperti yang telah disebutkan pada sub-bab sebelumnya, modul program merupakan kumpulan dari beberapa fungsi atau prosedur dengan tujuan sama. Modul juga memiliki data-data berupa variabel-variabel, referensi dan sebagainya untuk mendukung komunikasi atau interaksi antara fungsi-fungsi dan atau prosedur-prosedur di dalamnya.

 

Oleh karena itu dalam dokumentasi modul, kita menjelaskan secara garis besar kegunaan dari modul ini. Dokumentasi dapat dibuat dengan menambahkan comment-comment  secara langsung bersama kode-kode lain di dalam program. Keuntungan penggunaan comment adalah Anda dapat sekaligus memahami kode-kode di dalam program tersebut.

 

Bentuk penulisan comment ini sendiri bergantung pada bahasa pemrograman masing-masing. Berikut adalah contoh penulisan comment pada beberapa bahasa pemrograman:

  1. Pada Microsoft Visual Basic, comment dapat dideklarasikan dengan diawali simbol apostrophe ( ‘ ) atau keyword  “REM”.
  2. Pada bahasa pemrograman Java, JavaScript, ActionScript,C, C++ dan C#, comment dideklarasikan dengan simbol double-slash ( // ) untuk comment dalam 1 baris dan dengan notasi /*  comment  */ untuk comment 1 baris atau lebih.
  3. Pada bahasa scripting seperti HTML, comment dapat dideklarasikan dengan notasi <!– comment –>.
  4. Pada CSS, anda bisa menggunakan notasi /* comment */ untuk mendeklarasikan comment.
  5. Pada PHP, anda dapat mendeklarasikan comment dengan menggunakan simbol dan notasi seperti pada Java dan C pada poin b diatas. Untuk comment dalam 1 baris, PHP juga mendukung penggunaan simbol ( # ) seperti bahasa pemrograman Perl dan Shell.
  6. Pada bahasa rakitan atau Assembly, Anda dapat mendeklarasikan comment dengan diawali simbol titik koma / semicolon ( ; ).
  7. Pada SQL Server, Anda dapat menggunakan  notasi /* comment */ atau simbol ( — ) untuk mendeklarasikan comment.

 

Tentang bagaimana format penulisan comment, Anda dapat mengacu pada referensi manual atau dokumentasi dari bahasa pemrograman yang Anda gunakan. Referensi ini biasanya dapat Anda temukan pada dokumen bantuan bahasa pemrograman yang bersangkutan.

 

Dokumentasi juga dapat dibuat terpisah dari kode program, menggunakan beberapa notasi algoritma berikut:

  1. Notasi I – Menyatakan algoritma dengan kalimat-kalimat deskriptif

Dengan notasi kalimat deskriptif, penjelasan setiap langkah akan menjadi lebih mudah dan tidak dibatasi oleh bahasa. Misalnya proses diawali dengan kata kerja seperti “baca”, “cetak”, “tulis”, “ganti”, “set” dan sebagainya. Sedangkan untuk pernyataan kondisional dinyatakan dengan “jika …”, “maka …”, dan sebagainya. Untuk algoritma yang pendek, notasi ini masih layak untuk dipergunakan. Namun, untuk masalah yang lebih komplek, notasi ini tidak dianjurkan. Selain itu, proses pengubahan dari notasi algoritma ini ke dalam bahasa pemrograman cenderung sulit untuk dilakukan.

  1. Notasi II – Menyatakan algoritma dengan Pseudo-code

Pseudo artinya tidak sebenarnya atau semu. Jadi yang dimaksud dengan Pseudo-code  adalah notasi-notasi yang menyerupai bahasa pemrograman tetapi bukan kode program itu sendiri. Jika Anda mengamati secara seksama, maka Anda akan menjumpai bahwa bahasa pemrograman umumnya memiliki sintaks atau notasi yang hampir sama untuk beberapa instruksi umum.

 

Contohnya if-then-else, while-do, repeat-until, read, write, print, dan sebagainya. Dari pengamatan inilah berawal notasi algoritma pseudo-code yang dapat menjelaskan langkah-langkah algoritma secara lebih jelas tanpa membingungkan pembaca dan sekaligus lebih dekat dengan bahasa pemrograman.

  1. Notasi III – Menyatakan algoritma dengan diagram

Notasi bentuk ketiga ini menggunakan diagram untuk menggambarkan langkah-langkah algoritma pemrograman sebagai dokumentasi kode program. Pada awal era pemrograman salah satu diagram yang paling populer adalah Diagram Alir ( Flow Chart ). Diagram ini cenderung menjelaskan aliran instruksi di dalam program secara visual dibanding memperlihatkan struktur program. Diagram ini cocok untuk algoritma sederhana. Untuk algoritma yang lebih komplek, penggunaan diagram ini menjadi kurang efektif karena perlu berlembar-lembar halaman hanya untuk menggambarkan aliran proses program. Saat ini, penggunaan diagram alir ( Flow Chart ) sudah mulai ditinggalkan dan mungkin hanya digunakan untuk proses-proses yang sederhana. Sedangkan untuk proses-proses yang lebih komplek, kini cenderung menggunakan konsep UML (Unified Modeling Language).

 

2) Ketrampilan Kerja

 

Dokumentasi Modul

 

Yang perlu dijelaskan atau diikut sertakan dalam dokumentasi modul adalah sebagai berikut:

  1. Informasi programmer, seperti identitas misalnya.
  2. Informasi lisensi jika perlu, misalnya hak cipta.
  3. Penjelasan/deskripsi mengenai konteks atau kegunaan modul
  4. Uraian tentang data-data dan referensi-referensi yang digunakan di dalam modul
  5. Spesifikasi modul berupa versi, tanggal pembuatan, revisi dan sebagainya
  6. Penjelasan singkat mengenai fungsi-fungsi dan prosedur-prosedur yang ada, meliputi kegunaan dan cara penggunaannya

 

Contoh:

Berikut adalah contoh modul program Metalworks.java dari Sun Microsystem yang menyertakan dokumentasi penjelasan dengan bentuk comment.

 

 

 

 

/*

* @(#)Metalworks.java  1.17 05/11/17

*

* Copyright (c) 2006 Sun Microsystems, Inc.

* All Rights Reserved.

*

* Redistribution and use in source and binary forms,

* with  or without modification, are permitted provided

* that the following conditions are met:

*

* -Redistribution of source code must retain the above

*  copyright notice, this list of conditions and the

*  following disclaimer.

*

* -Redistribution in binary form must reproduce the above

*  copyright notice, this list of conditions and the

*  following disclaimer in the documentation and/or other

*  materials provided with the distribution.

*

* Neither the name of Sun Microsystems, Inc. or the names

* of contributors may be used to endorse or promote

* products derived from this software without specific

* prior written permission.

*

* This software is provided “AS IS,” without a warranty of

* any kind. ALL EXPRESS OR IMPLIED CONDITIONS,

* REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED

* WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR

* PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN

* MIDROSYSTEMS, INC. (“SUN”) AND ITS LICENSORS SHALL NOT BE

* LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT

* OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS

* DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE

* LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR

* DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR

* PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE

* THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR

* INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN

* ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

*

* You acknowledge that this software is not designed,

* licensed or intended for use in the design, construction,

* operation or maintenance of any nuclear facility.

*/

 

/* @(#)Metalworks.java  1.17 05/11/17 */

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

import java.awt.*;

import javax.swing.*;

import javax.swing.border.*;

import javax.swing.plaf.metal.MetalLookAndFeel;

 

/**

* This application is a demo of the Metal Look & Feel

*

* @version 1.17 11/17/05

* @author Steve Wilson

*/

 

public class Metalworks {

 

public static void main( String[] args ) {

UIManager.put(“swing.boldMetal”, Boolean.FALSE);

JDialog.setDefaultLookAndFeelDecorated(true);

JFrame.setDefaultLookAndFeelDecorated(true);

Toolkit.getDefaultToolkit().setDynamicLayout(true);

System.setProperty(“sun.awt.noerasebackground”,”true”);

try {

UIManager.setLookAndFeel(new MetalLookAndFeel());

}

catch ( UnsupportedLookAndFeelException e ) {

System.out.println (“Metal Look & Feel

not supported on this platform. \nProgram

Terminated”);

System.exit(0);

}

JFrame frame = new MetalworksFrame();

frame.setVisible(true);

}

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Dari contoh diatas Anda akan mendapatkan informasi nama modul tersebut adalah Metalworks.java, versinya adalah 1.17 dengan tanggal rilis 17 November 2005. Programmer-nya adalah Steve Wilson. Tujuan dari modul tersebut adalah sebagai demo untuk menampilkan antarmuka “Metal ”. Anda juga melihat lisensi dari Sun Microsystem menyangkut hak cipta dan penggunaan modul tersebut.

 

Penjelasan Fungsi Dan Prosedur Dalam Dokumentasi Modul

 

Bila Anda sudah membuat deskripsi tentang modul program, maka yang perlu Anda lakukan sekarang adalah menjelaskan bagian bagian yang terdapat dalam modul program itu yaitu berupa penjelasan

 

singkat mengenai fungsi-fungsi dan prosedur-prosedur di dalamnya berupa kegunaan dan atau cara penggunaannya. Jika terdapat data-data yang berada dalam ruang lingkup modul, maka kegunaan data-data tersebut juga dijelaskan.

 

Untuk lebih jelasnya mari kita tinjau bersama-sama contoh dokumentasi modul PropertiesMetalTheme.java berikut.

 

 

/*

* @(#)PropertiesMetalTheme.java  1.12 05/11/17

*/

 

/*

* Import class using in this module from packages

* swing and awt for user interface

* io for file input/output operation

* util for utilities

*/

 

import javax.swing.plaf.*;

import javax.swing.plaf.metal.*;

import javax.swing.*;

import javax.swing.border.*;

import java.awt.*;

import java.io.*;

import java.util.*;

 

/**

* This class allows you to load a theme from a file.

* It uses the standard Java Properties file format.

* To create a theme you provide a text file which contains

* tags corresponding to colors of the theme along with a

* value for that color.  For example:

*

* name=My Ugly Theme

* primary1=255,0,0

* primary2=0,255,0

* primary3=0,0,255

*

* This class only loads colors from the properties file,

* but it could easily be extended to load fonts or even

* icons.

*

* @version 1.12 11/17/05

* @author Steve Wilson

*/

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

public class PropertiesMetalTheme extends DefaultMetalTheme {

 

private String name = “Custom Theme”;

 

private ColorUIResource primary1;

private ColorUIResource primary2;

private ColorUIResource primary3;

 

private ColorUIResource secondary1;

private ColorUIResource secondary2;

private ColorUIResource secondary3;

 

private ColorUIResource black;

private ColorUIResource white;

 

 

/**

* pass an inputstream pointing to a properties file.

* Colors will be initialized to be the same as the

* DefaultMetalTheme, and then any colors provided in

* the properties file will override that.

*/

 

public PropertiesMetalTheme( InputStream stream ) {

initColors();

loadProperties(stream);

}

 

/**

* Initialize all colors to be the same as the

* DefaultMetalTheme.

*/

 

private void initColors() {

primary1 = super.getPrimary1();

primary2 = super.getPrimary2();

primary3 = super.getPrimary3();

 

secondary1 = super.getSecondary1();

secondary2 = super.getSecondary2();

secondary3 = super.getSecondary3();

 

black = super.getBlack();

white = super.getWhite();

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

/**

* Load the theme name and colors from the properties

* file

* Items not defined in the properties file are ignored

*/

 

private void loadProperties(InputStream stream) {

Properties prop = new Properties();

try {

prop.load(stream);

} catch (IOException e) {

System.out.println(e);

}

 

Object tempName = prop.get(“name”);

if (tempName != null) {

name = tempName.toString();

}

 

Object colorString = null;

 

colorString = prop.get(“primary1″);

if (colorString != null){

primary1 = parseColor(colorString.toString());

}

 

colorString = prop.get(“primary2″);

if (colorString != null) {

primary2 = parseColor(colorString.toString());

}

 

colorString = prop.get(“primary3″);

if (colorString != null) {

primary3 = parseColor(colorString.toString());

}

 

colorString = prop.get(“secondary1″);

if (colorString != null) {

secondary1 = parseColor(colorString.toString());

}

 

colorString = prop.get(“secondary2″);

if (colorString != null) {

secondary2 = parseColor(colorString.toString());

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

colorString = prop.get(“secondary3″);

if (colorString != null) {

secondary3 = parseColor(colorString.toString());

}

 

colorString = prop.get(“black”);

if (colorString != null) {

black = parseColor(colorString.toString());

}

 

colorString = prop.get(“white”);

if (colorString != null) {

white = parseColor(colorString.toString());

}

 

}

 

public String getName() { return name; }

 

protected ColorUIResource getPrimary1()

{ return primary1; }

protected ColorUIResource getPrimary2()

{ return primary2; }

protected ColorUIResource getPrimary3()

{ return primary3; }

 

protected ColorUIResource getSecondary1()

{ return secondary1; }

protected ColorUIResource getSecondary2()

{ return secondary2; }

protected ColorUIResource getSecondary3()

{ return secondary3; }

 

protected ColorUIResource getBlack()

{ return black; }

protected ColorUIResource getWhite()

{ return white; }

 

/**

* parse a comma delimited list of 3 strings into color

*/

 

private ColorUIResource parseColor(String s) {

int red = 0;

int green = 0;

int blue = 0;

try {

StringTokenizer st = new StringTokenizer(s, “,”);

 

red = Integer.parseInt(st.nextToken());

green = Integer.parseInt(st.nextToken());

blue = Integer.parseInt(st.nextToken());

 

} catch (Exception e) {

System.out.println(e);

System.out.println(“Couldn’t parse color :” + s);

}

 

return new ColorUIResource(red, green, blue);

}

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Modul ini adalah modul yang bertujuan untuk membaca konfigurasi tampilan dari file properties. Pada modul ini, Anda akan menemukan penjelasan pada setiap fungsi dan prosedur yang mendeskripsikan kegunaan dari masing-masing fungsi dan prosedur tersebut. Misalnya :

 

 

/**

* Load the theme name and colors from the properties

* file

* Items not defined in the properties file are ignored

*/

 

private void loadProperties(InputStream stream)

….

 

 

 

 

 

 

 

 

 

 

 

Dari keterangan yang diberikan, kita dapat mengetahui bahwa kegunaan dari prosedur loadProperties adalah untuk mengambil nama theme dan warna dari file properties. Bayangkan jika tidak ada keterangan mengenai prosedur ini. Dari nama prosedur, mungkin Anda tahu bahwa fungsinya adalah untuk me-load properties. Tetapi bagaimana jika nama prosedur yang dibuat tidak jelas sedangkan nama prosedur yang jelas seperti ini saja akan memunculkan pertanyaan seputar properties apa yang di-load. Jika tidak ada penjelasan seperti diatas, maka Anda terpaksa harus menelusuri kode program di dalam prosedur ini baris demi baris hanya untuk mengetahui apa sebenarnya yang diproses oleh prosedur bersangkutan. Tentu ini sudah menghabiskan waktu dan tenaga Anda.

 

3) Sikap Kerja

Beberapa sikap kerja yang perlu diperhatikan saat berada di lingkungan kerja, yaitu :

  1. Membuat dokumentasi modul untuk memudahkan pelacakan
  2. Menjelaskan fungsi dan prosedur dalam modul

 

4.5.3 Membuat Dokumentasi Fungsi atau Prosedur Program

 

1) Pengetahuan Kerja

 

Sama halnya dengan dokumentasi modul program, dokumentasi fungsi dan prosedur program, menjelaskan isi dari fungsi dan prosedur yang bersangkutan mulai dari data masukan dan keluaran, tipe data hingga proses di dalamnya.

 

Dokumentasi untuk fungsi dan prosedur program dapat dibuat dengan menggunakan paduan antara comment dengan notasi algoritma kalimat deskriptif misalnya. Jika perlu Anda juga dapat membuat dokumen terpisah berupa diagram yang menjelaskan aliran proses prosedur atau fungsi yang bersangkutan atau menggunakan metode standar, UML.

 

Dalam pelatihan ini, kita akan coba mempelajari keduanya yaitu mengggunakan comment dan menggunakan diagram. Jika Anda menggunakan comment, seperti yang sudah dijelaskan sebelumnya, maka harus menjelaskan fungsi dan prosedur itu, nama-nama variabel (yaitu data masukan dan keluaran) atau menjelaskan alasan mengapa pilihan atas metode tertentu  digunakan dalam fungsi dan atau prosedur yang bersangkutan.

 

Comment di dalam kode program akan sangat membantu, menghemat waktu dan energi serta memastikan baik penulis program dan orang lain memahami struktur dan tujuan program secara keseluruhan.

 

2) Ketrampilan Kerja

 

Dokumentasi Fungsi dan Prosedur

 

Di dalam dokumentasi fungsi dan prosedur, selain menjelaskan kegunaan, Anda juga menjelaskan detil di dalamnya meliputi:

  1. Penyataan-pernyataan (statement) baik yang berupa:
  • Assignment
  • Perulangan (Looping )
  • Seleksi atau kondisional ( Selection /Conditional )
  1. Bagian Public dan Private di dalam Class
  2. Implementasi
  3. Algoritma jika dibutuhkan
  4. Informasi-informasi lain yang dianggap perlu.

 

Perhatikan contoh berikut!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Dari contoh ini, Anda dapat melihat penjelasan pada setiap pernyataan-pernyataan yang dianggap penting. Misalnya:

 

 

// put the themes in a menu

JMenu themeMenu = new MetalThemeMenu(“Theme”, themes);

menuBar.add(file);

menuBar.add(edit);

menuBar.add(views);

menuBar.add(themeMenu);

 

 

 

 

 

 

 

 

 

 

Dari penjelasan itu, kita tahu bahwa pernyataan tersebut berguna untuk mem-format menu yang dibuat sesuai dengan tema yang dipilih. Demikian halnya dengan pernyataan-pernyataan lainnya.

 

Penjelasan Parameter Data I/O

 

Jika fungsi atau prosedur Anda memiliki parameter maka parameter ini juga harus dijelaskan. Mengapa parameter ini diperlukan? Yang perlu dijelaskan dalam bagian ini adalah aliran data masukan dari parameter hingga mendapatkan hasil keluaran. Perhatikan fungsi berikut:

 

 

// Menghitung luas segitiga dan mengembalikan nilai integer

// Fungsi menerima 2 parameter bertipe float

// fBase sebagai nilai alas segitiga

// fHeight sebagai nilai tinggi segitiga

// Contoh: Print iTriangleArea(3.2, 4.3)

//         Hasilnya adalah 7  (6.88 di-cast ke int)

 

int iTriangleArea(float fBase, float fHeight)

{

// Luas Segitiga = alas x tinggi / 2

// Hasil kali diubah dari float ke integer

return (int) fBase * fHeight / 2;

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Dengan membaca penjelasan tersebut maka orang lain akan mengerti bagaimana aliran data dan bagaimana parameter data tersebut diproses sehingga menghasilkan output seperti itu.

 

 

 

 

Penjelasan Data dan Tipe Data Pada Fungsi atau Prosedur

 

Seperti yang telah diuraikan, semua fungsi dan prosedur akan selalu berhubungan dengan pengolahan data yang dinyatakan sebagai variabel-variabel dalam kode program. Variabel-variabel inilah yang mengacu pada memori komputer dimana data-data yang dimanipulasi oleh fungsi dan prosedur itu tersimpan.

 

Sebagaimana kita ketahui, bentuk data cukuplah bervariasi. Ada yang berupa angka, karakter, teks, tabel dan sebagainya. Bentuk-bentuk data inilah yang kemudian dikenal sebagai tipe data. Data-data yang digunakan di dalam fungsi dan prosedur harus dijelaskan tipenya.

 

Tipe data dibedakan ke dalam 2 kelompok yaitu tipe data dasar dan tipe data bentukan. Yang merupakan tipe data dasar adalah:

  1. Bilangan bulat (integer, long, short, dsb)
  2. Bilangan riil (decimal, single, float, double, dsb)
  3. Bilangan Logika (boolean)
  4. Karakter (char)
  5. Teks (string)

 

Sedangkan tipe data bentukan adalah tipe data yang didefiniskan sendiri oleh pemrogram menggunakan satu atau lebih tipe data dasar. Tipe data ini sering kita kenal dengan User-defined Type. Contoh, kita ingin membuat tipe data yang dapat menampung posisi x dan y.

 

Public Type POINTAPI

x As Long

y As Long

End Type

 

Tipe data diatas ditulis dalam Visual Basic dan diberi nama POINTAPI. Artinya jika kita mendeklarasikan sebuah variabel Z dengan tipe data ini, maka variabel Z akan menyimpan nilai x dan y.

 

Cara-cara pembuatan tipe data bentukan dapat Anda pelajari pada bahasa pemrograman masing-masing. Nah, apa kaitan antara tipe data dengan dokumentasi fungsi dan prosedur.

 

Anda tentu harus menjelaskan secara rinci data dan tipe data yang digunakan untuk mendeskripsikan proses di dalam fungsi dan prosedur tersebut. Misalnya: Anda tentu harus menjelaskan tipe data parameter yang dapat diterima oleh fungsi atau prosedur Anda, termasuk data hasil keluaran yang diterima. Bisa saja parameter yang menjadi masukan harus berupa bilangan bulat integer.

 

Dan keluarannya bisa berupa tipe data logika, benar atau salah (True or False).

 

Marilah kita buat sebuah program sederhana untuk menghitung harga total dari jumlah barang yang dibeli sekaligus mencoba membuat dokumentasi untuk program tersebut. Misalnya kita menggunakan C#.

 

 

/*

*  TotalHarga  1.0  13/09/2007

*  Oleh by SHa

*  Menghitung total harga dengan C#

*  Untuk TIK.PR02.019.01 – Membuat Dokumen Kode Program

*/

 

// Menggunakan Class Package System

using System;

 

namespace TotalHarga

{

class Program

{

// Fungsi untuk menghitung harga total

// dan mengembalikan hasilnya dalam string

// parameter jb untuk jumlah barang

// dengan tipe short

// dan hs untuk harga satuan dengan tipe single

// tipe disamakan dengan data masukan yang dikirim

static String hargaTotal(short jb, Single hs)

{

return Convert.ToString(jb * hs);

// Konversi ke string sebelum dikembalikan

}

// Fungsi utama

static void Main(string[] args)

{

// Minta input jumlah barang yang

// dibeli dari Console

Console.Write(“Masukkan jumlah barang yang

di beli: “);

// Simpan input ke dalam variabel n

// dengan tipe short

// Karena input kita adalah string maka

// diubah ke Int16

// Int16 identik dengan tipe short

short n = Convert.ToInt16(Console.ReadLine());

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

// Minta input harga satuan

Console.Write (“Masukkan harga satuan: “);

// Simpan input ke dalam variabel harga

// dengan tipe single

// single berarti dapat menerima bilangan

// pecahan (desimal)

Single harga =

Convert.ToSingle(Console.ReadLine());

 

// Panggil fungsi hargaTotal dengan

// mengirimkan parameter

// n sebagai jb dan harga sebagai hs

// Hasil yang dikembalikan di cetak ke

// layar Console

Console.Write(“\nTotal harga yang harus

dibayar: ” + hargaTotal(n, harga));

 

// Minta input apa saja untuk keluar

// dari program

Console.ReadKey();

}

}

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Contoh diatas menunjukkan bagaimana kita menjelaskan modul program, data dan tipe data, fungsi dan prosedur dalam bentuk comment. Bagaimana jika kita ingin menggambarkan aliran prosesnya dengan diagram alir misalnya? Diagram alir untuk modul diatas dapat digambarkan seperti gambar berikutnya.

 

Gambar Diagram Alir ( Flow Chart ) Program Total Harga

 

Jika Anda menggunakan UML maka Class Program di dalam modul TotalHarga Anda akan digambarkan sebagai berikut:

 

Gambar Class Program dalam Modul Total Harga

 

Pembahasan mengenai UML dapat Anda dapatkan dari buku-buku lain mengenai UML. Dalam pelatihan ini kita hanya membahas pembuatan dokumen kode program dalam lingkup internal program itu sendiri. UML sendiri umumnya digunakan untuk perancangan (Architecture/Design Documentation).

 

3) Sikap Kerja

Memperhatikan sikap kerja sangat diperlukan dalam lingkungan kerja, yaitu :

  1. Membuat dokumentasi fungsi dan prosedur sesuai dengan identitasnya
  2. Menjelaskan parameter data keluaran dan masukkan pada dokumen
  3. Menjelaskan data dan tipe datanya pada dokumen

 

4.5.4 Mengevaluasi Dokumen Kode Program

 

1) Pengetahuan Kerja

 

Apabila seluruh kode program (fungsi, prosedur dan modul program) telah terdokumentasi, maka langkah terakhir adalah melakukan evaluasi terhadap dokumentasi tersebut. Pada tahap ini, Anda harus memeriksa kelengkapan, kebenaran dan tata bahasa di dalam dokumentasi Anda. Mungkin saja ketika Anda membuat dokumentasi, comment misalnya, Anda hanya menulis secara singkat dengan bahasa atau simbol yang mungkin hanya Anda sendiri yang mengerti. Jika demikian, maka di tahap inilah Anda harus memperbaikinya agar dapat dibaca dan dimengerti oleh orang lain.

 

Agar dokumentasi yang ditulis dapat dipahami oleh semua pihak yang terkait, maka diperlukanlah suatu standar dokumentasi baik dari sisi penulisan (berupa notasi, tata bahasa), bahkan suatu konvensi penulisan kode, seperti penamaan fungsi, prosedur, variabel, modul, dsb. Konvensi penulisan kode ini selalu Anda jumpai pada manual bahasa pemrograman. Memang bukan sesuatu aturan yang wajib diikuti. Namun, akan sangat membantu dalam kaitannya dengan dokumentasi kode program. Penamaan yang jelas, jelas akan memudahkan pembaca. Ditambah dengan dokumentasi yang baik tentu akan semakin baik lagi.

 

2) Ketrampilan Kerja

 

Standar Dokumen

 

Dokumen kode program dikenal sebagai dokumen teknis (Technical Documentation) yang merupakan bagian dari dokumentasi piranti lunak (software documentation). Umumnya dikenal 3 metode dokumentasi program yaitu penggunaan comment, diagram dan tabel keputusan (decision table).

 

Ketika Anda mulai membuat dokumentasi, baik dengan metode apapun, maka Anda harus mengikuti aturan standar penulisan yang telah disepakati bersama oleh tim atau mengikuti standar internasional yang diakui.

 

Jika Anda menggunakan comment di dalam program, maka standar penulisan comment ini dapat Anda tentukan sendiri bersama tim Anda mengikuti panduan dari bahasa pemrograman yang bersangkutan dengan tambahan misalnya seperti berikut:

  1. Semua modul harus diberi informasi tentang penulis dan versi / tanggal agar dapat diketahui proses perkembangan atau revisi-nya
  2. Setiap fungsi/prosedur harus dijelaskan secara rinci alur data dan prosesnya
  3. Jika ada kode program yang diubah, maka kode yang lama tidak boleh dihapus tetapi diberi komentar, serta ditambahkan alasan perubahan, dan siapa yang mengubah. Tujuannya agar jika sewaktu-waktu kode itu diperlukan kembali maka kode tersebut masih ada.
  4. Penulisan menggunakan format seperti dibawah ini:
  • Modul

// ————- nama modul ————– //

// informasi mengenai modul ………….. //

// ………………………………… //

// ————————————— //

 

  • Fungsi/Prosedur

/** nama fungsi atau prosedur **/

/** penjelasan mengenai fungsi atau prosedur

* …..

*/

  1.  Dan sebagainya

 

Pilihan lain, Anda juga dapat menggunakan alat-alat bantu dokumentasi yang sudah banyak tersedia saat ini, diantaranya Doxygen, JavaDoc, ROBODOC, GenHelp, TwinText, Document!X, dan lain-lain. Aplikasi-aplikasi ini tersedia dan memiliki dukungan bahasa pemrograman yang bervariasi serta beberapa fitur untuk mengekspor dokumentasi ke beberapa format seperti file teks atau file HTML.

 

Bila Anda menggunakan diagram alir (Flow Chart ), maka Anda perlu memperhatikan standar penggunaan simbol-simbol seperti ditunjukkan dalam tabel berikut ini:

 

 

 

 

 

 

SIMBOL

NAMA

FUNGSI

TERMINATOR

Permulaan/akhir program

GARIS ALIR

(FLOW LINE)

Arah aliran program

PREPARATION

Proses inisialisasi/pemberian harga awal

PROSES

Proses perhitungan/proses pengolahan data

DATA I/O

Proses input/output data, parameter, informasi

PREDEFINED PROCESS

(SUB PROGRAM)

Permulaan sub program/proses menjalankan sub program

DECISION

Perbandingan pernyataan, penyeleksian data yang memberikan pilihan untuk langkah selanjutnya

ON PAGE CONNECTOR

Penghubung bagian-bagian flowchart yang berada pada satu halaman

OFF PAGE CONNECTOR

Penghubung bagian-bagian flowchart yang berada pada halaman berbeda

 

Jika Anda juga ingin menggunakan decision table (tabel keputusan), yaitu suatu alat bantu untuk memodelkan logika-logika yang komplek dalam program, untuk melengkapi dokumen Anda, maka perhatikan format standar berikut ini.

 

 

  Rules
1 2 3 4 …                                 N
 

Condition Stub

         

Condition Entry

 

 

Action Stub

 

         

Action Entry

 

Misalnya kita ingin membuat tabel keputusan untuk kasus menghitung harga total seperti pada sub-bab 4.5 tapi dengan tambahan validasi terhadap persediaan dan pembelian tidak boleh lebih dari 5 unit. Berikut adalah tabel keputusan untuk menunjukkan kemungkinan apa saja yang akan terjadi jika terdapat kondisi-kondisi seperti ini.

 

  Rules
1 2 3 4 5 6 7
a. Apakah 0< jumlah barang yang dibeli < 6?

b. Apakah persediaan mencukupi?

c. Apakah harga satuan > 0?

Y

Y

Y

Y

Y

T

Y

T

Y

Y

T

T

T

Y

T

T

T

Y

T

T

T

a. Hitung harga total

b. Jual semua yang dibeli

c. Jual yang ada saja

d. Buat catatan kekurangannya

X

X

-

-

-

-

-

-

-

-

X

X

 -

-

-

X

-

-

-

-

-

-

-

X

-

-

-

X

 

Kesempurnaan Teknis dan Tata Bahasa Dokumen

 

Memastikan kesempurnaan teknis dan tata bahasa juga merupakan bagian dari evaluasi dokumen kode program. Jika Anda sudah menggunakan standar yang ditetapkan, maka tinjaulah kembali format teknis dan penggunaan tata bahasa pada penjelasan-penjelasan di dalam dokumen Anda. Pastikan bahasa yang digunakan memenuhi beberapa kriteria berikut:

  1. Jelas, artinya menyampaikan arti dan maksud yang ingin disampaikan.
  2. Mudah, artinya penyampaiannya mudah dipahami, tepat dan tidak bertele-tele.

 

 

  1. Lengkap, artinya semua penjelasan sudah mencakup keseluruhan kode program.

 

Pada tahap inilah, Anda harus memperbaiki dan memastikan dokumen Anda telah benar-benar siap dan sempurna.

 

Kelengkapan Dokumen

 

Bila dokumen Anda telah sempurna secara teknis, baik dari sisi standar, format penulisan dan tata bahasa, maka langkah terakhir adalah memeriksa kelengkapan dokumen kode program Anda.

 

Yang dimaksud lengkap disini selain kelengkapan isi dokumentasi seperti yang dijelaskan pada sub-bab sebelumnya, juga mencakup kelengkapan seluruh dokumen kode program yang Ada, misalnya diagram dan tabel keputusan disamping comment di dalam program.

 

Semua dokumen ini kemudian dikelompokkan menjadi satu sehingga menjadi satu dokumentasi kode program yang lengkap dan sempurna.

 

3) Sikap Kerja

Sikap kerja perlu diperhatikan dalam lingkungan kerja, berupa :

  1. Merevisi dokumen sesuai dengan standar kerja
  2. Memperbaiki dokumen untuk menjamin kesempurnaan tata bahasa
  3. Melengkapi dokumen sehingga memenuhi syarat teknis

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


BAB V

SUMBER – SUMBER YANG DIPERLUKAN

UNTUK PENCAPAIAN KOMPETENSI

 

 

 

5.1     Sumber Daya Manusia

 

Dalam proses pencapaian kompetensi sumber yang dapat diandalkan adalah sumber daya manusia. Sumber daya manusia yang dimaksud disiini adalah orang-orang yang dapat mendukung proses pencapaian kompetensi yang dimaksud, antara lain:

 

  • Pembimbing

Pembimbing Anda merupakan orang yang dapat diandalkan karena beliau memiliki pengalaman. Peran Pembimbing adalah untuk :

  1. Membantu Anda untuk merencanakan proses belajar.
  2. Membimbing Anda melalui tugas-tugas pelatihan yang dijelaskan dalam tahap belajar.
  3. Membantu Anda untuk memahami konsep dan praktik baru dan untuk menjawab pertanyaan Anda mengenai proses belajar Anda.
  4. Membantu Anda untuk menentukan dan mengakses sumber tambahan lain yang Anda perlukan untuk belajar Anda.
  5. Mengorganisir kegiatan belajar kelompok jika diperlukan.
  6. Merencanakan seorang ahli dari tempat kerja untuk membantu jika diperlukan.

 

  • Penilai

Penilai Anda melaksanakan program pelatihan terstruktur untuk penilaian di tempat kerja. Penilai akan :

  1. Melaksanakan penilaian apabila Anda telah siap dan merencanakan proses belajar dan penilaian selanjutnya dengan Anda.
  2. Menjelaskan kepada Anda mengenai bagian yang perlu untuk diperbaiki dan merundingkan rencana pelatihan selanjutnya dengan Anda.
  3. Mencatat pencapaian / perolehan Anda.

 

  • Teman kerja/sesama peserta pelatihan

Teman kerja Anda/sesama peserta pelatihan juga merupakan sumber dukungan dan bantuan. Anda juga dapat mendiskusikan proses belajar dengan mereka. Pendekatan ini akan menjadi suatu yang berharga dalam membangun semangat tim dalam lingkungan belajar/kerja Anda dan dapat meningkatkan pengalaman belajar Anda.

 

 

 

 

5.2     Sumber-Sumber Kepustakaan

 

Pengertian sumber-sumber kepustakaan adalah material yang menjadi pendukung proses pembelajaran ketika peserta pelatihan sedang menggunakan Pedoman Belajar ini.

 

Sumber-sumber tersebut dapat meliputi :

1.   Buku referensi (text book)

2.   Lembar kerja

3.   Diagram-diagram, gambar

4.   Contoh tugas kerja

5.   Rekaman dalam bentuk kaset, video, film dan lain-lain.

 

Ada beberapa sumber yang disebutkan dalam pedoman belajar ini untuk membantu peserta pelatihan mencapai unjuk kerja yang tercakup pada suatu unit kompetensi. Prinsip-prinsip dalam CBT mendorong kefleksibilitasan dari penggunaan sumber-sumber yang terbaik dalam suatu unit kompetensi tertentu, dengan mengijinkan peserta untuk menggunakan sumber-sumber alternatif lain yang lebih baik atau jika ternyata sumber-sumber yang direkomendasikan dalam pedoman belajar ini tidak tersedia/tidak ada.

 

Untuk referensi mengenai materi-materi yang dapat digunakan, Anda dapat melihat dari Daftar Pustaka yang terlampir dihalaman terakhir modul ini.

 

 

5.3     Daftar Peralatan dan Bahan

 

  1. Judul/Nama Pelatihan      :   Membuat Dokumen Kode Program
    1. Kode Program Pelatihan  :   TIK.PR02.019.01

 

NO

UNIT

KOMPETENSI

KODE UNIT

DAFTAR PERALATAN DAFTAR BAHAN

KETERANGAN

1.

Membuat Dokumen Kode Program

TIK.PR02.019.01

Satu unit komputer dengan spesifikasi standar Aplikasi dokumentasi (seperti Doxygen, JavaDoc, dll) dan aplikasi CASE (seperti Microsoft Visio atau IBM Rational Rose, dll) Aplikasi dokumentasi dan CASE (Computer Aided Systems and Software Engineering ) bersifat opsional.

 

Alat-alat tulis
Kertas kerja

 

DAFTAR PUSTAKA

 

 

 

Buku

  • Bass, L. Clements, P. Kazman, R. 1998. Software Architecture in Practice. Addison-Wesley

 

  • Arensburger, Andrew. 2001. You Are Expected to Understand This. OSTG

 

  • McConnell, Jeffrey J. 1997. Coding and Documentation Standard.

 

  • Sikora, Drew. The Art of Code Documentation. Gdev.net

 

Website

  • http://www.wikipedia.org
  • http://www.freshmeat.net

Testimoni

Filed under : blog, tags:
SLIDESERAGAMBATIK