Sabtu, 29 Desember 2018

Tugas Kelompok Audit Teknologi Sistem Informasi #3


AUDIT TEKNOLOGI SISTEM INFORMASI PADA LINGKUNGAN
SISTEM INFORMASI PERSONAL


A.      Sistem Informasi Personal

       Sistem Informasi Personal merupakan sistem yang memungkinkan seseorang mengumpulkan, mengatur, menyimpan, dan mengambil gagasan dan informasi yang berguna bagi individu. Sistem Informasi Personal mendukung terlaksananya fungsi Human Resoursces yang lain, bertanggung jawab terhadap employee Database, Payroll dan pembayaran benefit lainnya, pinjaman karyawan, absensi, dan pencatatan cuti tahunan.
Sistem informasi personal merupakan sistem informasi yang memberikan informasi kepada individu.  Ada 4 macam informasi yang dimaksud :

1.     Informasi pribadi seperti data riwayat medis dan performa tubuh individu di saat ini (denyut jantung, tekanan darah, keadaan paru-paru,dll).
2.     Informasi terkait preferensi seperti jenis buku favorit, jenis musik favorit, dan jenis makanan favorit.
3.     Informasi terkait kenyamanan seperti history pemakaian pakaian, kecocokan pakaian yang kita pakai dengan acara yang akan dihadiri. Selain itu, sistem informasi personal juga menyediakan informasi tentang cuaca hari ini di tempat tertentu.
4.     Informasi terkait keselamatan seperti apakah tempat wisata yang akan kita kunjungi termasuk tempat yang kena travel warning, history bencana alam di suatu tempat, dan pemberitahuan jika terjadi bencana alam di tempat yang kita sedang kunjungi.


Layanan yang diberikan kepada indivu oleh sistem informasi personal adalah sbb:

1.     Personal Health Service (PHS). PHS menyediakan data riwayat medis dari Individu. PHS sangat penting bagi individu karena bisa membantu menentukan apakah jenis olahraga yang dilakukan cocok dengan riwayat medis. Selain itu, PHS juga membantu individu memutuskan apakah makanan yang akan dibeli di sebuah supermarket bermanfaat bagi tubuh atau tidak. PHS adalah layanan yang disediakan oleh Sistem Informasi Departemen Kesehatan. Untuk menggunakannya, sistem informasi personal harus mengakses Application Programming Interface (API) yang disediakan oleh Sistem Informasi Departemen Kesehatan.
2.     Current Body Performance Service (CBPS). CBPS memberitahukan kepada individu performa dari tubuhnya saat ini. CBPS penting bagi individu, karena bisa membantu individu mengetahui kondisi terkini dari tubuhnya mulai dari tingkat stress, tekanan darah, denyut jantung, kondisi pernafasan, jantung sampai paru-parunya ketika sedang beraktivitas. Dengan mengetahui kondisi terkini dari tubuhnya, individu bisa memastikan apakah dia fit atau tidak ketika akan memulai sesuatu aktivitas. CBPS adalah layanan yang disediakan oleh perusahaan ROLEX. Perusahaan ROLEX membuat jam tangan khusus yang memiliki fitur bisa mengirimkan ke Web Application Server ROLEX kondisi tubuh terkini dari individu. Web Application Server Rolex akan mengolah data tersebut dan menghasilkan informasi. Informasi itu akan diagregasikan ke dalam sebuah mashup. Nah, mashup itulah yang diambil dan ditampilkan oleh sistem informasi personal kepada individu.
3.     Personal Preference Service (PPS). PPS memberitahukan kepada individu apa saja produk-produk yang disukainya. PPS penting bagi individu, karena memudahkan individu untuk mengetahui produk yang disukai dari sebuah toko buku / toko musik / tempat perbelanjaan. PPS juga memberitahukan kepada individu produk apa saja yang sudah pernah dibeli di suatu toko buku / toko musik. Dengan demikian, individu akan terhindar dari membeli produk yang sama tapi dikemasberbeda. PPS adalah layanan yang disediakan oleh e-commerce konsorsium pedagang retail. Setiap transaksi yang dilakukan oleh individu direkam oleh e-commerce ini untuk diolah menjadi personal preference information. Selanjutnya e-commerce mengemas personal preference information ke dalam PPS. Untuk bisa menggunakan PPS ini, maka sistem informasi personal mengakses API yang disediakan oleh e-commerce konsorsium pedagang retail.
4.     Personal Comfortable Service (PCS). PCS memberitahukan kepada individu history dari pakaian yang ada di lemari. Selain itu, PCS juga memberikan informasi cuaca di tempat individu berada pada saat ini. PCS penting bagi individu, karena bisa membantu individu memutuskan pakaian apa saja yang cocok dikenakan di acara tertentu. PCS juga akan mengingatkan individu untuk mengganti pilihan pakaian jika audiens dari acara yang akan dihadirinya pernah melihat pakaian tersebut. Selain itu PCS juga memberikan saran apa yang harus dipersiapkan individu menghadapi cuaca hari ini. PCS adalah agregator dari 2 layanan yaitu : Wardrobe Intelligent Service (WIS) dan Weather Forecast Service (WFS). WIS disediakan oleh Wardrobe Intelligent System. Setiap kali individu menggantung pakaian / meletakkan pakaian ke intelligent wardrobe (lemari pakaian pintar), maka Wardrobe Intelligent System akan mencatat informasi detail dari pakaian tersebut. Begitu juga ketika individu mengambil pakaian tertentu dari intelligent wardrobe, maka Wardrobe Intelligent System akan mengemas statistik pemakaian tersebut ke dalam WIS untuk digunakan oleh sistem informasi personal. WFS merupakan layanan yang disediakan oleh Sistem Informasi Pemantau Cuaca Badan Klimatologi, Meteorologi dan Geofisika (BKMG). sistem informasi personal memperoleh WFS dengan mengakses API yang disediakan oleh Sistem Informasi Pemantau Cuaca BKMG.
5.     Personal Safety Service (PSS). PSS memberitahukan kepada individu status dan informasi detail mengenai keamanan dari suatu tempat. PSS penting bagi individu karena bisa membantu individu untuk memutuskan apakah suatu tempat aman dikunjungi atau tidak. Bila terjadi bencana alam di tempat yang sedang dikunjungi individu, PSS juga akan memberitahukan hal tsb langsung kepada individu. PSS adalah agregator dari dua layanan yaitu : National Safety Service (NSS) dan Real-Time Disaster Tracking System (RDTS). sistem informasi personal menggunakan NSS dengan mengakses API yang disediakan oleh National Safety Department Information System. Sedangkan sistem informasi personal menggunakan RDTS dengan mengakses API yang disediakan oleh Real-Time Disaster Tracking Committee Information System.


B.      Sistem Informasi Sumbe Daya Manusia (SISDM) / Human Resource Information System (HRIS)
      Menurut Enslikopedia Wikipedia Sistem Informasi SDM (Sumber Daya Manusia)  merupakan sebuah bentuk interseksi atau pertemuan antara bidang ilmu manajemen sumber daya manusia (MSDM) dan teknologi informasi. Sistem Informasi SDM (Human Resources Information System) itu sendiri adalah prosedur sistematik untuk pengumpul, menyimpan, mempertahankan, menarik dan memvalidasi data yang dibutuhkan oleh sebuah perusahaan untuk mempunyai kemampuan untuk mendapatkan informasi yang dibutuhkan atau pilihan banyak orang yanglebih berhubungan dengan aktivitas perencanaan SDM baru.

 Sistem Informasi Sumber Daya Manusia memberikan informasi kepada seluruhmanajer perusahaan yang berkaitan dengan sumber daya manusia perusahaan. HRIS sebagaiunit organisasi yang terdiri dari personel yang mengolah data sumber daya manusia denganmenggunakan teknologi komputer dan non komputer. Tiap perusahaan memiliki sistem untuk mengumpulkan dan memelihara data yangmenjelaskan sumber daya manusia, mengubah data tersebut menjadi informasi, danmelaporkan informasi itu kepada pemakai. Sistem ini dinamakan sistem manajemen sumberdaya manusia (human resource information system) atau HRIS.

      Sistem Informasi Sumber Daya Manusia (SISDM/HRIS) merupakan sebuah bentuk interseksi/pertemuan antara bidang ilmu manajemen sumber daya manusia (MSDM) danteknologi informasi. sistem ini menggabungkan MSDM sebagai suatu disiplin yang utamanya mengaplikasikan bidang teknologi informasi ke dalam aktifitas-aktifitas MSDM seperti dalam hal perencanaan, dan menyusun sistem  pemrosesan data dalam serangkaian langkah-langkah yang terstandarisasi dan terangkum dalam aplikasi perencaan sumber daya  perusahaan/enterprise resource planning (ERP).


Studi Kasus
Audit Sistem Informasi Sumber Daya Manusia
Pada Perusahaan Elektronika di Surabaya

      Perusahaan Elektronika di Surabaya merupakan perusahaan yang bergerak di bidang usaha penjualan elektronik dengan cabang yang tersebar di beberapa kota-kota besar di Pulau Jawa. Kebutuhan tenaga kerja yang terus meningkat dan kegiatan ketenagakerjaan yang perlu terintegrasi antar cabang, memerlukan sebuah koordinasi melalui sebuah sistem informasi sumber daya manusia (SISDM). Untuk mengetahui tingkat pengelolaan proses SISDM dengan kebutuhan saat ini diperlukan pengukuran tingkat kapabilitas proses.

       Bagi perusahaan yang bergerak di penjualan barang elektronika ini, sistem informasi sumber daya manusia (SISDM) sudah menunjang integrasi informasi ketenagakerjaan sejak tahun 2007 yang dibangun salah satu vendor ternama di Indonesia. Selama implementasi sistem tersebut, terdapat kendala-kendala manual yang dihadapi, yaitu :

1.     Fitur dari sistem belum terintegrasi dengan data kepegawaian yang ada, sehingga data yang berkaitan dengan karyawan yang dimutasi diperbaiki satu per satu oleh divisi sumber daya manusia secara manual.
2.     Selama ini divisi sumber daya manusia juga mengalami masalah dalam proses penilaian masih menggunakan sistem Ms. Excel, dan belum terintegrasi dan menyebabkan tidak maksimalnya proses penilaian.
3.     Belum pernah dilakukannya pengevaluasian fungsi sumber daya manusia pada sumber daya manusia pada Perusahaan Elektronika, apakah sudah sejalan dengan sistem informasi sumber daya manusia (SISDM) yang sedang berjalan, sehingga apabila ada masalah bisa dijadikan tolak ukur untuk melakukan perubahaan di kemudian hari.

Untuk menunjang SISDM yang ada, maka penelitian ini memiliki 2 (dua) buah tujuan yakni:

1.     Proses mengevaluasi manajemen tingkat layanan pada sistem informasi sumber daya manusia (SDM) yang meliputi evaluasi kesenjangan layanan, standar layanan, perjanjian tingkat layanan (SLA), perjanjian tingkat operasional (OLA), katalog layanan (service katalog), laporan kinerja layanan, rencana tindakan peningkatan dan perbaikan dengan menggunakan level kemampuan (capability level).
2.     Untuk memberikan perbaikan mutu manajemen tingkat layanan dalam sistem informasi sumber daya manusia (SISDM).


      Pada penelitian ini digunakan kerangka kerja COBIT 5 dengan domain APO09 – Mengelola Perjanjian Layanan dan ITIL V3 2011 dengan domain SD 4.3. COBIT 5 merupakan kerangka kerja yang digunakan untuk mengukur tingkat kapabilitas proses SISDM dan telah dikombinasikan dengan ITIL V3 2011 untuk membantu pengumpulan data audit. Kombinasi kedua kerangka kerja ini yakni ITIL sangat sesuai untuk mendefinisikan strategi, konsep dan proses sebuah layanan TI, sedangkan COBIT sangat sesuai untuk mengevaluasi tingkat layanan, metriks, indikator dan audit.

  • Tentukan obyek audit yang akan dilakukan

       Obyek sistem informasi audit personal yang digunakan adalah pada studi kasus Audit Sistem Informasi Sumber Daya Manusia Pada Perusahaan Elektronika di Surabaya. Metode objek sistem informasi audit personal yang digunakan dalam kasus ini adalah Audit Around The Computer, karena kami tidak menguji langkah-langkah proses secara langsung tetapi membandingkan input dan output dari sistem.


  • Susun Instrumen Audit yang akan Digunakan

Berikut alur susun instrumen audit pada penelitian ini :





  • Melakukan Audit

      Tahap penelitian ini diawali dari tahap studi kepustakaan dengan melakukan telaah dokumen bisnis dan studi COBIT 5 dan ITIL V3 2011.  Tahap berikutnya adalah melakukan wawancara, observasi dan kuesioner pada tahap pengumpulan data dan melakukan pengelolaan data.  Dari hasil tersebut dilakukan proses penilaian tingkat kapabilitas dan analisa kesenjangan (gap analysis), sebelum akhirnya hasil audit akan diverifikasi dan melewati tahap strategi perbaikan dan tahap rekomendasi proses.

  • Hasil Audit

1.     Hasil Studi Kepustakaan

Pada penelitian ini, penulis melakukan 9 (sembilan) studi kepustakaan, yakni:

a.    Kondisi Bisnis pada Perusahaan Elektronika di Surabaya
b.    Sasaran Strategi Organisasi
c.    Analisis SWOT Sistem Informasi SDM
d.    Proses Bisnis Divisi SDM
e.    Kondisi dan Peranan Sistem Informasi SDM
f.     Struktur Organisasi
g.    Identifikasi RACI Chart APO09 (Mengelola Perjanjian Layanan)
h.    Identifkasi Proses APO09 (Mengelola Perjanjian Layanan)
i.     Identifikasi Output Proses SD 4.3 (Mengelola Perjanjian Layanan)

     2. Hasil Temuan Pengumpulan Data SISDM

     Berdasarkan studi kepustakaan dan identifikasi yang ada pada sub-bab sebelumnya, melalui aktivitas APO09 berdasarkan COBIT 5 dan aktivitas SD 4.3 berdasarkan ITIL V3 2011 dilakukan proses pemetaan terhadap aktivitas yang telah dilakukan pada Perusahaan Elektronika di Surabaya. Penulis melakukan proses pemetaan dengan membandingkan aktivitas berdasarkan kerangka kerja (COBIT 5 dan ITIL V3 2011) dengan aktivitas yang telah dilakukan, kemudian penulis melampirkan hasil pemetaan aktivitas tersebut.

    3. Hasil Rekapitulasi Tingkat Kapabilitas Kuesioner

     Data yang telah melewati tahap pengelolaan data akan dianalisis menggunakan perhitungan tingkat kapabilitas. Dalam menentukan nilai dan tingkat kapabilitas dari APO09 (Mengelola Perjanjian Layanan), rumus 3.1 dan 3.2 yang digunakan adalah metode perhitungan Likert yang digunakan oleh Kridanto Surendro.




Setelah nilai tingkat kapabilitas ditemukan, maka langkah berikutnya adalah analisa kesenjangan (gap analysis). Analisa gap bertujuan untuk mengukur kesenjangan antara kondisi saat ini dengan kondisi yang diharapkan, sehingga gap dapat teridentifikasi lewat hasil temuan yang belum tercapai dan dapat diperbaiki pada tahap berikutnya.

     4. Analisa dan Penentuan Tingkat Kapabilitas Kuesioner

        Pada analisis ini, penulis melakukan pemeriksaan terhadap bukti dan dokumen berkaitan dengan perjanjian layanan SISDM secara bertahap sesuai penilaian kategori tiap level 1 sampai level 5. Proses ini juga bertujuan untuk melakukan perbandingan dengan hasil pengumpulan data hasil temuan pengumpulan data SISDM dengan nilai kapabilitas berdasarkan kuesioner dengan standar Process Assessment Model atau (PAM) dari ISACA [5] dan ISO/IEC 15504-2.
       Masing-masing atribut proses akan dinilai berdasarkan skala penilaian ISO/IEC 15504-2 seperti yang telah tertera dibawah yakni:
  • N – Not Achieved: 0 – 15% achievement
  • P – Partially Achieved:  > 15% – 50% achievement
  • L – Largely Achieved: > 50% – 85% achievement
  • F – Fully Achieved: > 85% – 100% achievement

      Dari hasil penilaian kapabilitas proses APO09 – Mengelola Perjanjian Layanan dari Tingkat 1 sampai dengan Tingkat 5 yang telah disesuaikan dengan kondisi perusahaan, maka dapat dibuat kesimpulan hasil penilaian kapabilitas proses adalah Tingkat 2 (Managed Process) sesuai dengan standar yang telah ditetapkan di Gambar 2. Hasil penilaian kapabilitas proses dapat dilihat pada Tabel 1.


        
      Berdasarkan hasil penilaian kapabilitas terdapat kesenjangan (gap) antara tingkat kapabilitas yang tercapai yakni 2 (Managed Process) dengan tingkat kapabilitas yang diharapkan yakni 5 (Optimizing Process). Dari data tersebut diperoleh gap diantara setiap proses domain, seperti yang terlihat di Gambar 1.



       5. Verifikasi

      Proses verifikasi telah dilakukan penulis pada tanggal pada tanggal 16 November 2017 di Perusahaan Elektronika Surabaya, dengan menyerahkan transkrip wawancara, hasil kuesioner dan hasil observasi (diagram struktur organisasi, diagram proses bisnis dan SWOT) kepada perusahaan untuk   ditandatangani dan diperiksa keabsahannya.
       
       6. Strategi Perbaikan

Proses strategi perbaikan dilakukan dengan meninjau kebutuhan perusahaan sesuai dengan tujuan bisnis saat ini. Data yang ditinjau adalah berfokus pada strategi jangka panjang, jangka menengah dan jangka pendek perusahaan yang secara lebih detail terdapat pada tahap rekomendasi.

  • Rekomendasi Hasil Audit
     Pada penelitian guna menunjang kesenjangan (gap) terhadap proses APO09, maka dibuat rekomendasi berdasarkan panduan dokumen COBIT 5 dan ITIL V3 2011


a. Perusahaan Elektronika Surabaya diharapkan untuk membentuk divisi khusus audit SISDM atau sistem TI secara global perusahaan, guna menjembatani proses pengelolaan perjanjian layanan SISDM.

b. Proses bisnis agar selalu diinfokan perubahaannya dan ditinjau ulang oleh seluruh pengguna layanan SISDM, sehingga SISDM fungsinya dapat selalu terbaharukan. Selalu melakukan update pada katalog layanan pada proses layanan yang berbeda.

c.  Pengelolaan perjanjian layanan SISDM yang belum tercapai, diantaranya:

  • Penilaian tingkat layanan yang tidak hanya menggunakan parameter bug namun lebih kearah kinerja, kapasitas, kontinuitas SISDM sesuai ITIL V3 2011 (SLR), serta terjadwal proses penilaian tingkat layanan tersebut.
  • Katalog layanan sebagai panduan dalam menyediakan informasi khusus mengenai layanan SISDM sesuai ITIL V3 2011
  • Evaluasi kinerja layanan sebagai panduan pengelolaan layanan kedepannya, bila dibutuhkan pengembangan terhadap layanan baru.
  • Dokumen SLA sebagai panduan perjanjian tingkat layanan dengan pihak penyedia layanan (vendor ataupun divisi Sistem).


Kesimpulan
  • Pendekatan yang digunakan dalam penelitian ini adalah menggunakan kerangka kerja ITIL V3 2011 yakni Service Design dan COBIT 5 yakni APO09
  • Hasil pengukuran tingkat kapabilitas terhadap manajemen tingkat layanan pada SISDM dengan menggunakan PAM (Process Assessment Model) masih berada pada level 2 (Managed Process).
  • Tidak adanya katalog layanan, perjanjian tingkat layanan, evaluasi kinerja layanan dan pelaporan secara teratur dan formal sehingga bagian rekomedasi merupakan solusi terhadap pengelolaan perjanjian layanan di Perusahaan Elektronika di Surabaya.




Sumber :
publication.petra.ac.id
https://bagindokemas.wordpress.com/2009/04/22/personal-information-system/
http://whosisyourdady.blogspot.com/2018/01/audit-tsi-pada-lingkungan-personal.html
https://www.academia.edu/6273482/SISTEM_INFORMASI_SUMBER_DAYA_MANUSIA
https://bagindokemas.wordpress.com/2009/04/22/personal-information-system/

Kamis, 13 Desember 2018

Post Test Manajemen Kontrol Programming


Original File : https://drive.google.com/open?id=1x05jn8XZmVl6CTDvEvv3ac25GSLyfwX5

Nama   : Robby Rahman Kusuma
NPM    : 16115222
Kelas   : 4KA08
Matkul : Analisis Kinerja Sistem
V-Class ke-1 pengganti pertemuan minggu ke-10

Post Test Manajemen Kontrol Programming.

Pertanyaan:
Cara seorang programmer dalam menangani pekerjaan mereka sangat berpengaruh pada kualitas software yang mereka buat.  Alternatifnya, para programmer bisa diorganisasikan sebagai satu kesatuan   team. Mereka bekerja untuk periode waktu tertentu untuk menyelesaikan suatu proyek. Sebut dan jelaskan struktur team yang digunakan untuk mengorganisasikan para programmer, sebutkan juga tugas masing-masing anggota team.

Jawaban:
Struktur team yang digunakan untuk mengorganisasikan para programmer ada 3 yaitu:
1.    Chief Programmer Teams
2.    Adaptives Teams
3.    Controlled-Decentralized Teams

1.         Ketua Tim Programmer (Chief Programmer Teams)

Tim ini dibentuk dari programmer kepala atau senior yang banyak pengalaman dan pengetahuan pemrograman. Programmer kepala dapat berkomunikasi secara efektif dengan analis dan perancang sistem, pemakai, dan berbagai teknisi.
Programmer kepala didukung oleh asisten utama yang bertugas sebagai komunikator dengan orang lain pada tim atau penyampai informasi dari gagasan programmer kepala. Kedua orang tersebut didukung oleh Programmer pendukung/ yunior bertugas membantu programmer kepala dan asisten utama untuk proyek besar yang tidak dapat ditangani sendiri. Para programmer pendukung biasanya mengkode modul-modul tingkat rendah. Tim ini juga didukung oleh pustakawan, administrator, editor, dan klerk program.
Gambar 1 Struktur Organisasi Chief Programmers Team

Tugas masing-masing anggota team:

Chief Programmer:
·      Bertanggung jawab secara total/penuh untuk sistem dimana team bekerja
·      Harus seorang ahli
·      Seorang programmer yang sangat produktif
·      Bertanggungjawab dalam mendesain, coding, dan mengintegrasikan bagian yang kritis dalam sistem
·      Memberikan perintah kerja pada bagian back-up dan support programmers.
Back-up Programmers:
·      Seorang programmer senior yang bertanggungjawab dalam memberikan dukungan penuh pada chief programmer
·      Harus bisa mengambil alih tugas chief programmer setiap saat
Support Programmers:
·      Diperlukan pada saat proyek besar yang tidak bisa dikerjakan oleh chief programmer dan back-up programmer saja.
·      Menyediakan dukungan
·      Bekerja dalam pembuatan coding dan uji coba modul tingkat rendah (testing lower-level)
Librarian (penyedia data):
·      Bertanggungjawab dalam perawatan program production library.
·      Menyediakan input dan mengumpulkan keluaran untuk para programmer, file output dari hasil kompilasi dan ujicoba, mempertahankan agar source code dan object-code library tetap up to date.


2.         Penyesuaian Tim (Adaptives Teams)


Gambar 2 Struktur Organisasi Adaptive Team

Struktur ini diperuntukan untuk melayani 2 kebutuhan, yaitu:
1.    Keinginan organisasi untuk meningkatkan kualitas program
2.    Memenuhi kebutuhan sosial/ psikologi dari setiap anggota programmer dalam team.

Perbedaan dari struktur ini dengan struktur sebelumnya adalah:
·      Adaptive team tidak punya tigkat otoritas, dimana kepemimpinan dalam team ada di tangan para anggota.
·      Dalam Adaptive team, tugas diberikan pada anggota dari team daripada ditentukan lewat posisi.
·      Adaptive team tidak mempunyai aturan formal librarian (penyedia data) dalam mengkoordinasikan fungsi team.

3.         Desentraliasi Pengendalian Tim (Controlled-Decentralized Teams)

Struktur ini mempunyai junior programmer yang akan melaporkan hasil program pada senior programmer, kemudian oleh senior programmer dilaporkan juga pada ketua proyek. Dengan struktur ini, manfaat/keuntungan dari struktur sebelumnya akan didapatkan.
Keuntungannya   :  dapat memecahkan masalah yang kompleks, dimana struktur dari grup ini akan memfasillitasi pemecahan masalah.
Kerugian              :  struktur ini tidak bisa bekerja dengan baik apabila tugas dari programmer tersebut tidak bisa di bagi-bagi, dan dengan waktu deadline yang sangat ketat.


Gambar 3 Struktur Organisasi Controlled-Decentralized

Pretest Manajemen Kontrol Programming


Original File : https://drive.google.com/open?id=1G8uGIPGx-5nM_DjId7uiDDCViwcTv9KG

Nama   : Robby Rahman Kusuma
NPM    : 16115222
Kelas   : 4KA08
Matkul : Analisis Kinerja Sistem
V-Class ke-1 pengganti pertemuan minggu ke-10

Pretest Manajemen Kontrol Programming.

Pertanyaan:
Pembuatan dan pengembangan program adalah merupakan tahap penting dalam siklus hidup pengembangan sistem. Tujuan utama tahap ini adalah untuk menghasilkan dan menenerapkan program yang berkualitas. Terdapat 5 tahapan pengembangan program, sebut dan jelaskan, dan tuliskan juga tugas/keterlibatan auditor pada masing-masing tahap.

Jawaban:
Tahapan dalam pengembangan program terdapat 5 yaitu:
1.    Perencanaan (Planning)
2.    Perancangan (Design)
3.    Pengkodean (Coding)
4.    Pengetesan (Testing)
5.    Pengoperasian dan Pemeliharaan (Operation and Maintenance)

1.         Perencanaan (Planning)

Tugas utama dari manajemen dalam tahap ini adalah untuk memperkirakan kebutuhan besarnya sumber daya (khususnya jam kerja) yang dibutuhkan dalam pengembangan, pengadaan, dan penerapan software. Jika, sebagai contoh, s/w di buat di rumah (in house), manajemen harus berusaha untuk memperkirakan berapa jumlah baris kode (program) yang di ketik atau banyaknya fungsi yang di buat.
Jika suatu software akan dikembangkan dan diimplementasikan secara in-house, manajemen harus memanfaatkan lima teknik perencanaan biaya yang di buat oleh Boehm (1984) sbb:
a.   Algorithmic Models (model algoritma): model ini akan memperkirakan jumlah sumber daya yang dibutuhkan berdasar pada faktor biaya, sebagai contoh memperkirakan jumlah instruksi yang harus di ketik (di tulis), bahasa pemrograman yang digunakan, dan perubahan pada permintaan kebutuhan. Dengan menggunakan model COCOMO (Boehm’s (1981)).
b. Expert Judgment (penilaian seorang ahli), seorang ahli dapat memperkirakan kebutuhan sumber daya yang diperlukan dalam proyek / pembuatan program. Menurut penelitian Vicinanza et el’s (1991), seorang ahli dapat menjadi pembuat perkiraan yang lebih baik untuk menentukan sumber daya jika dibanding dengan model algoritma.
c.   Analogy (analogi): jika proyek software yang sama pernah dibuat, penentuan sumber daya yang dibutuhkan dapat di dasarkan pada pengalaman sebelumnya.
d.  Top-Down Estimation (Perkiraan atas-bawah): proyek di pecah kedalam beberapa tugas (pekerjaan), dan penentuan sumber daya yang dibutuhkan oleh setiap tugas tersebut baru dibuat.
e.  Bottom-Up Estimation (Perkiraan bawah-atas): jika tugas-tugas sudah di buat terlebih dahulu, kebutuhan sumber daya untuk masing-masing dapat diperkirakan dan di satukan / dikumpulkan untuk keperluan seluruh kebutuhan proyek.

Selain memperkirakan kebutuhan sumber daya, manajemen juga harus memutuskan tujuan dari keputusan penting yang dibuat selama fase perencanaan seperti:

Keputusan
Keterangan
Design Approach (Pendekatan Desain)
Jika program akan di kembangkan di rumah, manajemen harus memilih pendekatan desain yang akan digunakan seperti: prototyping atau tipe top-down atau bottom-up.
Implementation Approach (Pendekatan Implementasi)
Software dapat dikembangkan di rumah, pengembang dapat membangun atau mengemas s/w untuk dijual. Jika s/w akan dibuat koding, harus dibuat keputusan tentang bahasa pemrograman yang akan dipakai.
Integration and Testing Approach (Pendekatan Testing dan Integrasi)
Pada saat pengetesan akan dibutuhkan sumber daya yang khusus, seperti simulator atau hardware tertentu untuk memonitor jalannya program.
Project Team Organization (Pengorganisasian Tim Proyek)
Saat tim proyek harus di bentuk untuk pengembangan atau pengadaan s/w, maka anggota dan struktur tim harus ditentukan.

Ø  Pengendalian (Control)
Pada tahap kontrol ini, ada dua tujuan utama yaitu :
a. Untuk memonitor kemajuan dan beberapa tahap pada siklus hidup s/w agar tidak bertentangan dengan rencana awal.
b. Mengontrol tugas pengembangan, pengadaan dan implementasi s/w, agar s/w dapat di produksi secara autentik, akurat dan lengkap.

Untuk memonitor agar kontrol tidak bertentangan dengan rencana awal, beberapa teknik dapat digunakan seperti:
a.  Work Breakdown Structures (WBS), dengan teknik ini kita dapat mengidentifikasi tugas-tugas yang spesifik untuk pengembangan, pengadaan, dan implementasi s/w yang dibutuhkan. (Mc.Leod and Smith 1996).
b. Gantt Chart, dapat digunakan untuk membantu mengatur tugas (schedule). Teknik ini akan menunjukkan kapan tugas harus dimulai dan diselesaikan, tugas apa yang harus dibuat bersama-sama, dan tugas apa yang harus dihasilkan secara serial.
c. Program Evaluation and review technique (PERT), menunjukkan tugas-tugas yang harus diselesaikan, bagaimana hubungannya, kebutuhan sumber daya apa untuk setiap tugas-tugasnya.

Seorang auditor harus mempunyai dua perhatian khusus pada kendali, pada tahap kontrol ini yaitu:
a.  Auditor harus dapat mengevaluasi apakah fungsi dari aktivitas kontrol dapat diterapkan juga pada software yang berbeda.
b. Seorang auditor harus dapat mengumpulkan bukti apakah prosedur dari suatu kontrol sudah dijalankan dengan benar dan dapat dipercaya.

2.         Perancangan (Design)

Dalam tahap desain, seorang programmer bertugas untuk menspesifikasikan struktur dan operasi dari program untuk menemukan artikulasi yang dibutuhkan selama tahap proses informasi sistem desain dari pengembangan sistem.
Selama tahap ini, perhatian utama seorang auditor adalah untuk menentukan apakah programmer menggunakan suatu tipe khusus dari pendekatan sistematik untuk desain. Auditor harus mengubah keinginannya berdasarkan beberapa faktor seperti ukuran dan bahan dari suatu program.
Seorang auditor juga dapat memperoleh bukti dari proses desain dengan melakukan interview, observasi, dan review dari dokumentasi. Mereka dapat berkomunikasi dengan programmer, apakah mereka dapat memahami tentang kebutuhan dengan menggunakan pendekatan yang sistematik untuk desain, jika ya, bagaimana menggunakannya.
Auditor juga dapat mengamati apakah programmer menggunakan pendekatan sistematik untuk mendesain program. Mereka juga dapat meninjau dokumentasi program, apakah memiliki struktur chart sebagai bukti programmer menggunakan pendekatan yang sistematik untuk mendesain.


3.         Pengkodean (Coding)

Tahap koding (pengetikan / penulisan program) dilakukan pada saat s/w akan dibuat atau dimodifikasi. Selama tahap ini, programmer akan menulis dan mendokumentasikan source code (program sumber) dalam bahasa pemrograman untuk mengimplementasikan desain program.

Ø  Strategi Implementasi modul dan integrasi
Tiga strategi utama dari implementasi modul dan integrasi adalah sbb:
a.     Top-Down, strategi ini digunakan jika, modul level atas (high-level modules) dibuat (coding), di test, dan diintegrasikan sebelum modul level bawah (low-level modules). Keuntungannya adalah kesalahan pada modul level atas dapat teridentifikasi lebih dini, kerugiannya adalah pada saat uji coba program akan menemui kesulitan ketika modul level bawah menemukan kesalahan fungsi input-output yang sangat sulit.
b.    Bottom up, strategi ini digunakan jika, modul level bawah di buat (coding), di test, dan diintegrasikan sebelum modul level atas di buat. Keuntungannya adalah modul level rendah yang merupakan operasi yang paling sulit di implementasikan dan diuji terlebih dahulu. Kerugiannya adalah pendekatan ini sangat sulit untuk di teliti seluruh operasinya, sebelum programnya selesai dibuat.
c.     Threads (rangkaian / untaian), strategi ini digunakan jika, keputusan dibuat terlebih dahulu untuk fungsi program yang akan dibuat, kemudian modul yang akan mendukungnya baru dibuat dan kemudian diimplementasikan untuk menghasilkan fungsi yang penting. Keuntungannya adalah fungsi yang paling penting di implementasikan terlebih dahulu. Kerugiannya adalah integrasi dari modul yang berikutnya mungkin akan lebih sulit, jika dibandingkan dengan pendekatan top-down atau bottom-up.

Auditor perlu mencari bukti yang benar dengan cara uji coba oleh manajemen program dalam memilih strategi implementasi modul dan integrasi. Khususnya pada program yang besar, penggunaan strategi yang salah (jelek) dapat mengakibatkan program yang dihasilkan menjadi kurang berkualitas.
Auditor dapat melakukan wawancara untuk menguji apakah manajemen menggunakan pendekatan sistematik untuk memilih strategi implementasi modul dan integrasi. Mereka juga dapat menguji dokumentasi program untuk memperoleh bukti tipe strategi yang telah di adopsi (di pilih).

Ø  Strategi Coding
Menurut konvensi (kesepakatan) program terstruktur, terdapat tiga dasar struktur utama dalam struktur kontrol yaitu:
a.     Urutan sederhana (simple sequence - SEQUENCE)
b.    Pemilihan dengan seleksi (selection based on a test – IF-THEN-ELSE) dan
c.     Pengulangan kondisi (conditional repetition-DO WHILE)

Jika konvensi pemrograman terstruktur di penuhi, dapat dipastikan bahwa para programmer akan membuat source-code yang tingkat kesalahannya kecil, mudah untuk dimengerti dan mudah untuk dirawat.

Auditor dapat mencari bukti untuk memastikan apakah manajemen programming di jamin di buat oleh programmer mengikuti struktur programming yang telah di sepakati. Mereka dapat melakukan wawancara dengan manager atau programmer tentang tugas dan cara yang dilakukannya dalam membuat program.

Auditor juga dapat mengecek apakah programmer dalam membuat programnya menyediakan fasilitas otomatis sebagai alat bantu untuk mereka. Beberapa tipe penggunaan fasilitas koding otomatis antara lain:
·      Shorthand preprocessor, memungkinkan programmer untuk menulis kode secara singkat, juga dapat menerjemahkan kode singkat ini dalam sintak yang lebih lengkap, contoh COBOL.
·     Decision-table preprocessor, memindahkan bentuk teks program ke dalam bentuk source-code menggunakan bahasa pengolahan compiler.
·      Copy facility, memungkinkan penggunaan kode secara berulang
·      Editor, yang memungkinkan kode di ciptakan, di format, dan dimodifikasi secara mudah.
·  User-interface management system, memungkinkan desain dari implementasi yang cepat, seperti windows, icons, menus, dan dialog boxes.
·      CASE tools, berisi bermacam-macam fasilitas yang dapat membantu proses koding.

Ø  Strategi Dokumentasi
Pedoman untuk menghasilkan dokumentasi yang berkualiatas adalah sbb:
a.   Sediakan petunjuk yang menunjukkan proses pembuatan program ke dalam beberapa tahap dan komponen secara keseluruhan dan hubungan antara komponen-komponen tersebut.
b. Gunakan baris komentar dalam program secara bebas untuk menerangkan jalannya (logika)program.
c.    Beri nama untuk variabel, konstanta tipe, paragraf, modul, dan seksi yang berarti kepada para pembaca source-code program.
d.    Buat lay-out dari source-program sehingga mudah untuk dibaca.
e.     Kelompokan tipe kode yang saling berhubungan.

4.        Pengetesan (Testing)

Testing software adalah proses mengoperasikan software dalam suatu kondisi yang dikendalikan, untuk memverifikasi apakah telah berlaku sebagaimana telah ditetapkan (menurut spesifikasi), mendeteksi error, dan memvalidasi apakah spesifikasi yang telah ditetapkan sudah memenuhi keinginan atau kebutuhan dari pengguna yang sebenarnya.
·  Verifikasi adalah pengecekan atau pengetesan entitas-entitas, termasuk software, untuk pemenuhan dan konsistensi dengan melakukan evaluasi hasil terhadap kebutuhan yang telah ditetapkan. (Are we building the system right?)
·    Validasi melihat kebenaran sistem, apakah proses yang ditulis dalam spesifikasi adalah apa yang sebenarnya diinginkan atau dibutuhkan oleh pengguna. (Are we building the right system?)
·     Deteksi error. Testing seharusnya berorientasi untuk membuat kesalahan secara intensif, untuk menentukan apakah suatu hal tersebut terjadi bilamana tidak seharusnya terjadi atau suatu hal tersebut terjadi dimana seharusnya mereka ada.

Jenis-jenis testing antara lain sebagai berikut:
a.       Pengujian White Box
Pengujian yang didasarkan pada pengecekan terhadap detail perancangan, menggunakan struktur kontrol dari desain program secara procedural untuk membagi pengujian ke dalam beberapa kasus pengujian.
b.       Pengujian Basis Path
Metode ini memungkinkan perancang test case mendapatkan ukuran kekompleksan logical dari perancangan prosedural dan menggunakan ukuran ini sebagai petunjuk untuk mendefinisikan basis set dari jalur pengerjaan. Test case yang didapat digunakan untuk mengerjakan basis set yang menjamin pengerjaan setiap perintah minimal satu kali selama uji coba. Contoh : diagram alir
c.       Pengujian Struktur Control
Merupakan pengujian kondisi dimana sebuah metode desain test case yang menggunakan kondisi logis yang ada pada suatu program. Contoh : Kondisi sederhana dari persamaan relasional
d.       Pengujian Black Box
Merupakan pengujian yang berfokus pada spesifikasi fungsional dari perangkat lunak, tester dapat mendefinisikan kumpulan kondisi input dan melakukan pengetesan pada spesifikasi fungsional program.

5.         Pengoperasian dan Pemeliharaan (Operation and Maintenance)

Dalam sudut pandang Sistem Audit, perhatian utama pada operasional program adalah bagaimana performance program tersebut dapat dimonitor setiap saat. Seseorang harus bertanggung jawab untuk mengidentifikasi apabila program perlu perawatan, kemungkinan lain adalah identifikasi dari kebutuhan perawatan mungkin tidak terjadi. Akibatnya, bisa terjadi kekeliruan pada database program, kegagalan dalam pencapaian keinginan user, atau operasi program tidak efisien.
Mekanisme formal dalam monitoring status operasional program sangat diperlukan, ketika pengguna dari program adalah seluruh anggota organisasi yang terdiri dari berbagai macam latar belakang.

Ada 3 macam tipe dari perawatan (maintenance) yang diperlukan agar program tetap beroperasi:
a.     Repair-maintenance-errors, perawatan dengan cara memperbaiki kesalahan.
b.     Adaptive maintenance-users needs, perawatan dengan mengadaptasi pada keinginan user.
c.     Perfective maintenance, perawatan dengan maksud agar diperoleh program yang sempurna.
Perhatian utama seorang auditor pada fase operation & maintenance adalah untuk memastikan bahwa fase ini berjalan dengan efektif dan pelaporan secara berkala dapat dilakukan, serta proses perawatan bisa di kontrol dengan baik.

Auditor harus bisa mencari bukti bawa manajemen telah meninjau sistem dengan baik dan bertanggungjawab di dalam monitoring status dari operasional program. Caranya dengan melakukan interview (wawancara), observasi, tinjauan pada dokumen yang menunjukkan bahwa sistem telah beroperasi dengan baik. Selanjutnya mereka harus fokus pada kualitas dari kontrol proses maintenance.