Friday 5 June 2020

Pengantar Unified Modeling Language (UML)


Pengantar Unified Modeling
Language (UML)
PENDAHULUAN
Saat ini piranti lunak semakin luas dan besar lingkupnya, sehingga tidak bisa lagi dibuat asal-asalan.
Piranti lunak saat ini seharusnya dirancang dengan memperhatikan hal-hal seperti scalability, security, dan eksekusi yang robust walaupun dalam kondisi yang sulit. Selain itu arsitekturnya harus didefinisikan dengan jelas, agar bug mudah ditemukan dan diperbaiki, bahkan oleh orang lain selain programmer aslinya. Pemodelan adalah proses merancang piranti lunak sebelum melakukan pengkodean. Model piranti lunak dapat dianalogikan seperti pembuatan blueprint pada pembangunan gedung. Membuat model dari sebuah sistem yang kompleks sangatlah penting karena kita tidak dapat memahami sistem semacam itu secara menyeluruh. Dengan menggunakan model, diharapkan pengembangan piranti lunak dapat memenuhi semua kebutuhan pengguna dengan lengkap dan tepat, termasuk faktor-faktor seperti scalability, robustness, security, dan sebagainya.
Kesuksesan suatu pemodelan piranti lunak ditentukan oleh tiga unsur, yang kemudian terkenal dengan sebuan segitiga sukses .

Apa Itu UML

Unified Modelling Language adalah sebuah «bahasa» yg telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem.
Dengan menggunakan UML kita dapat membuat model untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax/semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak.
Setiap bentuk memiliki makna tertentu, dan UML syntax mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Sampai era tahun 1990 seperti kita ketahui puluhan metodologi pemodelan berorientasi objek telah bermunculan di dunia. Diantaranya adalah: metodologi booch , metodologi coad , metodologi OOSE , metodologi OMT , metodologi shlaer-mellor , metodologi wirfs-brock , dsb.
Pada tahun 1995 direlease draft pertama dari UML. Tahun 1997 UML versi 1.1 muncul, dan saat ini versi terbaru adalah versi 1.5 yang dirilis bulan Maret 2003. Booch, Rumbaugh dan Jacobson menyusun tiga buku serial tentang UML pada tahun 1999 .
Konsepsi Dasar UML

Dari berbagai penjelasan rumit yang terdapat di dokumen dan buku-buku UML. Sebenarnya konsepsi dasar UML bisa kita rangkumkan dalam gambar dibawah.
Kuliah Umum IlmuKomputer.
Copyright 2003 IlmuKomputer.

Diagrams. Main concepts bisa kita pandang sebagai term yang akan muncul pada saat kita membuat diagram. Dan view adalah kategori dari diagaram tersebut.

Menguasai langkah-langkah dalam analisa dan pengembangan dengan UML

Tulisan ini pada intinya akan mengupas kedua hal tersebut.
Use Case Diagram

Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah «apa» yang diperbuat sistem, dan bukan «bagaimana». Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create sebuah daftar belanja, dan sebagainya.
Seorang/sebuah aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu.
Use case diagram dapat sangat membantu bila kita sedang menyusun requirement sebuah sistem, mengkomunikasikan rancangan dengan klien, dan merancang test case untuk semua feature yang ada pada sistem.
Sebuah use case dapat meng-include fungsionalitas use case lain sebagai bagian dari proses dalam dirinya. Secara umum diasumsikan bahwa use case yang di-include akan dipanggil setiap kali use case yang meng-include dieksekusi secara normal.
Sebuah use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas yang common.
Sebuah use case juga dapat meng-extend use case lain dengan behaviour-nya sendiri.
Sementara hubungan generalisasi antar use case menunjukkan bahwa use case yang satu merupakan spesialisasi dari yang lain.

Class Diagram

Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut.
Class diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain.

Class dapat merupakan implementasi dari sebuah interface, yaitu class abstrak yang hanya memiliki metoda. Interface tidak dapat langsung diinstansiasikan, tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan demikian interface mendukung resolusi metoda pada saat run-time.
Kuliah Umum IlmuKomputer.
Copyright 2003 IlmuKomputer.
Sesuai dengan perkembangan class model, class dapat dikelompokkan menjadi package. Kita juga dapat membuat diagram yang terdiri atas package.
Hubungan Antar Class

Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan class yang memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain. Panah navigability menunjukkan arah query antar class.
Agregasi, yaitu hubungan yang menyatakan bagian .
Pewarisan, yaitu hubungan hirarkis antar class. Class dapat diturunkan dari class lain dan mewarisi semua atribut dan metoda class asalnya dan menambahkan fungsionalitas baru, sehingga ia disebut anak dari class yang diwarisinya. Kebalikan dari pewarisan adalah generalisasi.
Hubungan dinamis, yaitu rangkaian pesan yang di-passing dari satu class kepada class lain. Hubungan dinamis dapat digambarkan dengan menggunakan sequence diagram yang akan dijelaskan kemudian.
Kuliah Umum IlmuKomputer.
Hubungan Antar Class

Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan class yang memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain. Agregasi, yaitu hubungan yang menyatakan bagian .
Pewarisan, yaitu hubungan hirarkis antar class. Kebalikan dari pewarisan adalah generalisasi.
Hubungan dinamis, yaitu rangkaian pesan yang di-passing dari satu class kepada class lain.
Activity Diagram

Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi.
Activity diagram merupakan state diagram khusus, di mana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya . Oleh karena itu activity diagram tidak menggambarkan behaviour internal sebuah sistem secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum.
Sebuah aktivitas dapat direalisasikan oleh satu use case atau lebih. Aktivitas menggambarkan proses yang berjalan, sementara use case menggambarkan bagaimana aktor menggunakan sistem untuk melakukan aktivitas.
Kuliah Umum IlmuKomputer.
Copyright 2003 IlmuKomputer.
Sama seperti state, standar UML menggunakan segiempat dengan sudut membulat untuk menggambarkan aktivitas. Decision digunakan untuk menggambarkan behaviour pada kondisi tertentu. Untuk mengilustrasikan proses-proses paralel digunakan titik sinkronisasi yang dapat berupa titik, garis horizontal atau vertikal.
Activity diagram dapat dibagi menjadi beberapa object swimlane untuk menggambarkan objek mana yang bertanggung jawab untuk aktivitas tertentu.
Sequence Diagram

Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atar dimensi vertikal dan dimensi horizontal .
Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan.
Masing-masing objek, termasuk aktor, memiliki lifeline vertikal.
Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya, message akan dipetakan menjadi operasi/metoda dari class.
Activation bar menunjukkan lamanya eksekusi sebuah proses, biasanya diawali dengan diterimanya sebuah message.

Collaboration Diagram
Collaboration diagram juga menggambarkan interaksi antar objek seperti sequence diagram, tetapi
lebih menekankan pada peran masing-masing objek dan bukan pada waktu penyampaian message.
Setiap message memiliki sequence number, di mana message dari level tertinggi memiliki nomor 1.
Messages dari level yang sama memiliki prefiks yang sama.
Component Diagram

Component diagram menggambarkan struktur dan hubungan antar komponen piranti lunak, termasuk ketergantungan di antaranya.
Kuliah Umum IlmuKomputer.
Copyright 2003 IlmuKomputer.
Komponen piranti lunak adalah modul berisi code, baik berisi source code maupun binary code, baik library maupun executable, baik yang muncul pada compile time, link time, maupun run time.
Umumnya komponen terbentuk dari beberapa class dan/atau package, tapi dapat juga dari komponen-komponen yang lebih kecil.
Komponen dapat juga berupa interface, yaitu kumpulan layanan yang disediakan sebuah komponen untuk komponen lain.
Deployment Diagram

Sebuah node adalah server, workstation, atau piranti keras lain yang digunakan untuk men-deploy komponen dalam lingkungan sebenarnya. Hubungan antar node dan requirement dapat juga didefinisikan dalam diagram ini.
Berikut ini adalah tips pengembangan piranti lunak dengan menggunakan UML

Buatlah daftar business process dari level tertinggi untuk mendefinisikan aktivitas dan proses yang mungkin muncul.
Petakan use case untuk tiap business process untuk mendefinisikan dengan tepat fungsionalitas yang harus disediakan oleh sistem. Kemudian perhalus use case diagram dan lengkapi dengan requirement, constraints dan catatan-catatan lain.
Buatlah deployment diagram secara kasar untuk mendefinisikan arsitektur fisik sistem.
Definisikan requirement lain yang juga harus disediakan oleh sistem.
Berdasarkan use case diagram, mulailah membuat activity diagram.
Definisikan objek-objek level atas dan buatlah sequence dan/atau collaboration diagram untuk tiap alir pekerjaan. Jika sebuah use case memiliki kemungkinan alir normal dan error, buatlah satu diagram untuk masing-masing alir.
Buarlah rancangan user interface model yang menyediakan antarmuka bagi pengguna untuk menjalankan skenario use case.
Berdasarkan model-model yang sudah ada, buatlah class diagram. Setiap package atau domain dipecah menjadi hirarki class lengkap dengan atribut dan metodanya. Akan lebih
Kuliah Umum IlmuKomputer.
Copyright 2003 IlmuKomputer.Com baik jika untuk setiap class dibuat unit test untuk menguji fungsionalitas class dan interaksi dengan class lain.
Setelah class diagram dibuat, kita dapat melihat kemungkinan pengelompokan class menjadi komponen-komponen. Karena itu buatlah component diagram pada tahap ini. Juga, definisikan tes integrasi untuk setiap komponen meyakinkan ia berinteraksi dengan baik.
Perhalus deployment diagram yang sudah dibuat. Detilkan kemampuan dan requirement piranti lunak, sistem operasi, jaringan, dan sebagainya. Petakan komponen ke dalam node.
Mulailah membangun sistem.
• Pendekatan use case, dengan meng-assign setiap use case kepada tim pengembang tertentu untuk mengembangkan unit code yang lengkap dengan tes.
• Pendekatan komponen, yaitu meng-assign setiap komponen kepada tim pengembang tertentu.
Lakukan uji modul dan uji integrasi serta perbaiki model berserta codenya. Model harus selalu sesuai dengan code yang aktual.
Piranti lunak siap dirilis.
Tool Yang Mendukung UML
Saat ini banyak sekali tool pendesainan yang mendukung UML, baik itu tool komersial maupun opensource.

Data seluruh tool yang mendukung UML, lengkap beserta harganya bisa anda pelajari di situs http://www.objectsbydesign.com/tools/umltools_byCompany.html . Disamping itu, daftar tool UML berikut fungsi dan perbangingan kemampuannya juga dapat dilihat
Pointer Penting UML
Sebagai referensi dalam mempelajari dan menggunakan UML, situs-situs yang merupakan pointer
penting adalah:
• http://www.cetus-links.org/oo_uml.html
• http://www.omg.org
• http://www.omg.org/technology/uml/
• http://www.rational.com/uml
• http://www.uml.org/
Dan juga buku-buku yang terdapat di daftar pustaka.

Saturday 28 March 2020

PERENCANAAN SISTEM


Pendahuluan
Perencanaan sistem merupakan suatu aktivitas yang harus dilaksanakan sebelum dikembangkannnya sebuah sistem.Perencanaan sistem perlu dilakukan agar pembangunan/pengembangan sistem sesuai blueprint yang ada sesuai dengan visi, misi, tujuan dan sasaran organisasi. Biasanya pengembangan sistem dilaksanakan dalam lingkup proyek. Sebelum pelaksanaan proyek pengembangan sistem informasi dimulai, maka proyek tersebut harus mendapatkan persetujuan dari pengambil keputusan.
Perencanaan sistem dilakukan saat suatu kegiatan akan berjalan. Perencanaan
sistem mengidentifikasikan sistem informasi penting yang strategis dalam
organisasi. Tujuannya untuk melihat kesempatan memanfaatkan teknologi
informasi dan membangun proyek sistem yang mendukung tujuan bisnis.
Sebelum suatu sistem informasi dikembangkan, umumnya dimulai dengan adanya
suatu kebijakan dan perencanaan untuk mengembangkan sistem itu. Tanpa
adanya kebijakan pengembangan sistem oleh manajemen puncak maka
pengembangan sistem tidak adan mendapat dukungan dari manajemen puncak

Arti Perencanaan Sistem

Desain sistem dapat dibagi dalam dua bagian
Analisis sistem digunakan untuk menjawab pertanyaan what? Sedangkan desain digunakan untuk menjawab pertanyaan how? Desain berkonsentrasi pada bagaimana system dibangun untuk memenuhi kebutuhan pada fase analisis
Desain atau perancangan dalam pembangunan perangkat lunak merupakan upaya untuk mengonstruksi sebuah sistem yang memberikan kepuasan (mungkin informal) terhadap

Tujuan Perancangan Sistem
Perencanaan sistem merupakan suatu aktivitas yang harus dilaksanakan sebelum dikembangkannnya sebuah sistem.Perencanaan sistem perlu dilakukan agar pembangunan/pengembangan sistem sesuai blueprint yang ada sesuai dengan visi, misi, tujuan dan sasaran organisasi. Biasanya pengembangan sistem dilaksanakan dalam lingkup proyek. Sebelum pelaksanaan proyek pengembangan sistem informasi dimulai, maka proyek tersebut harus mendapatkan persetujuan dari pengambil keputusan.
·         Verzello / John Reuter III. Tahap setelah analisis dari siklus pengembangan sistem: Pendefinisian dari kebutuhan-kebutuhan fungsional dan persiapan untuk rancang bangun implementasi: “menggambarkan bagaimana suatu sistem dibentuk “.
·         John Burch & Gary Grudnitski. Desain sistem dapat didefinisikan sebagai penggambaran, perencanaan dan pembuatan sketsa atau pengaturan dari beberapa elemen yang terpisah ke dalam satu kesatuan yang utuh dan berfungsi.
·         George M. Scott. Desain sistem menentukan bagaimana suatu sistem akan menyelesaikan apa yang mesti diselesaikan; tahap ini menyangkut mengkonfigurasikan dari komponen-komponen perangkat lunak dan perangkat keras dari suatu sistem, sehingga setelah instalasi dari sistem akan benar-benar memuaskan rancang bangun yang telah ditetapkan pada akhir tahap analisis sistem.

Personil Yang Terlibat
·         Sumber daya organisasi: bertumpu pada 5 unsur organisasi, yaitu: man, machines, material, money dan methods.
·         Kebutuhan sistem: hasil dari analisis sistem.
·         Operasi data. Ada beberapa operasi dasar data, a.l: capture, classify, arrange, summarize, calculate, store, retrieve, reproduce dan disseminate.
·         Informasi kebutuhan dari pemakai: informasi yang diperoleh dari pemakai selama fase analisis sistem.
·         Metode pemrosesan data, apakah: manual, elektromechanical, puched card, atau computer base.
·         Alat bantu desain, seperti: dfd, dcd, dd, decision table dll.






KELEBIHAN DAN KELEMAHAN (RAD)

Pengertian Rapid Application Development?

Metode Rapid Application Development (RAD) adalah model pengembangan perangkat lunak yang pengembangannya tergolong dalam teknik incremental (bertingakat). Dalam proses pengembangannya model ini menggunakan metode iterative atau berulang dimana working model sistem dikonstruksikan di awal tahap pengembangan dengan tujuan menetapkan kebutuhan (requirement) user. Model ini membutuhkan waktu singkat dibanding metode lain yaitu sekitar 30-90 hari. Siklus kerja nya yang pendek juga membuat pengembangan sistem dengan model ini bisa diselesaikan dengan cepat. Tetapi terdapat kekurangan dari penggunaan model  RAD sehingga kurang efektif penerapannya untuk proyek bersar.

Kelebihan Metode Rapid Application Development (RAD)

·         Sangat berguna dilakukan pada kondisi user tidak memahami kebutuhan kebutuhan apa saja yang digunakan pada proses pengembangan perangkat lunak.
·         Metode RAD dapat dilakukan dengan waktu yang singkat yakni sekitar 30-90 hari.
·         Biaya yang dikeluarkan menjadi lebih rendah karena waktu pengembangan yang singkat dan mengguakan komponen yang sdah ada.

Kekurangan Rapid Application Development

Beberapa hal yang perlu di perhatikan dalam implementasi pengembangan menggunakan model RAD :
·         Membutuhkan SDM atau sumber daya manusia yang ahli untuk proyek berskala besar.
RAD menuntut pengembang dan pelanggan memiliki komitmen dalam aktivitas rapid fire yang diperlukan untuk melengkapi sebuah sistem dalam waktu yang singkat. Jika komitmen tersebut tidak ada maka proyek RAD akan gagal

MEMPEROLEH DATA DAN INFORMASI


MEMPEROLEH DATA DAN INFORMASI

Pengumpulan data penelitian tidak boleh dilakukan secara sembarangan. Terdapat langkah pengumpulan data dan teknik pengumpulan data yang harus diikuti. Tujuan dari langkah pengumpulan data dan teknik pengumpulan data ini adalah demi mendapatkan data yang valid, sehingga hasil dan kesimpulan penelitian pun tidak akan diragukan kebenarannya.

DEFINISI PENGUMPULAN DATA
Pengumpulan data dilakukan untuk memperoleh informasi yang dibutuhkan dalam rangka mencapai tujuan penelitian. Sebelum melakukan penelitian, seorang peneliti biasanya telah memiliki dugaan berdasarkan teori yang ia gunakan, dugaan tersebut disebut dengan hipotesis (Baca juga: Pengertian Hipotesis dan Langkah Perumusan Hipotesis). Untuk membuktikan hipotesis secara empiris, seorang peneliti membutuhkan pengumpulan data untuk diteliti secara lebih mendalam.
Proses pengumpulan data ditentukan oleh variabel-variabel yang ada dalam hipotesis. Pengumpulan data dilakukan terhadap sampel yang telah ditentukan sebelumnya. Data adalah sesuatu yang belum memiliki arti bagi penerimanya dan masih membutuhkan adanya suatu pengolahan. Data bisa memiliki berbagai wujud, mulai dari gambar, suara, huruf, angka, bahasa, simbol, bahkan keadaan. Semua hal tersebut dapat disebut sebagai data asalkan dapat kita gunakan sebagai bahan untuk melihat lingkungan, obyek, kejadian, ataupun suatu konsep.
Data dapat dibedakan dalam beberapa kategori. Jenis-jenis data dapat dikategorikan sebagai berikut:
A. Menurut cara memperolehnya:
1.       Data primer, yaitu data yang dikumpulkan dan diolah sendiri oleh peneliti langsung dari subjek atau objek penelitian.
2.       Data sekunder, yaitu data yang didapatkan tidak secara langsung dari objek atau subjek penelitian.
B. Menurut sumbernya
1.       Data internal, yaitu data yang menggambarkan keadaan atau kegiatan dalam sebuah organisasi
2.       Data eksternal, yaitu data yang menggambarkan duatu keadaan atau kegiatan di luar sebuah organisasi
C. Menurut sifatnya
1.       Data kuantitatif, yaitu data yang berbentuk angka pasti
2.       Data kualitatif, yaitu data yang bukan berbentuk angka
D. Menurut waktu pengumpulannya
1.       Cross section/insidentil, yaitu data yang dikumpulkan hanya pada suatu waktu tertentu
2.       Data berkala/ time series, yaitu data yang dikumpulkan dari waktu ke waktu untuk menggambarkan suatu perkembangan atau kecenderungan keadaan/ peristiwa/ kegiatan.

METODE PENGUMPULAN DATA

Dalam penelitian, kita seringkali mendengar istilah metode pengumpulan data dan instrumen pengumpulan data. Meskipun saling berhubungan, namun dua istilah ini memiliki arti yang berbeda. Metode pengumpulan data adalah teknik atau cara yang dilakukan oleh peneliti untuk mengumpulkan data. Pengumpulan data dilakukan untuk memperoleh informasi yang dibutuhkan dalam rangka mencapai tujuan penelitian. Sementara itu instrumen pengumpulan data merupakan alat yang digunakan untuk mengumpulkan data. Karena berupa alat, maka instrumen pengumpulan data dapat berupa check list, kuesioner, pedoman wawancara, hingga kamera untuk foto atau untuk merekam gambar.
Ada berbagai metode pengumpulan data yang dapat dilakukan dalam sebuah penelitian. Metode pengumpulan data ini dapat digunakan secara sendiri-sendiri, namun dapat pula digunakan dengan menggabungkan dua metode atau lebih. Beberapa metode pengumpulan data antara lain:

1. Wawancara

Wawancara adalah teknik pengumpulan data yang dilakukan melalui tatap muka dan tanya jawab langsung antara peneliti dan narasumber. Seiring perkembangan teknologi, metode wawancara dapat pula dilakukan melalui media-media tertentu, misalnya telepon, email, atau skype. Wawancara terbagi atas dua kategori, yakni wawancara terstruktur dan tidak terstruktur.

a. Wawancara terstruktur

Dalam wawancara terstruktur, peneliti telah mengetahui dengan pasti informasi apa yang hendak digali dari narasumber. Pada kondisi ini, peneliti biasanya sudah membuat daftar pertanyaan secara sistematis. Peneliti juga bisa menggunakan berbagai instrumen penelitian seperti alat bantu recorder, kamera untuk foto, serta instrumen-instrumen lain.

b. Wawancara tidak terstruktur

Wawancara tidak terstruktur adalah wawancara bebas. Peneliti tidak menggunakan pedoman wawancara yang berisi pertanyaan-pertanyaan spesifik, namun hanya memuat poin-poin penting dari masalah yang ingin digali dari responden.

2. Observasi

Observasi adalah metode pengumpulan data yang kompleks karena melibatkan berbagai faktor dalam pelaksanaannya. Metode pengumpulan data observasi tidak hanya mengukur sikap dari responden, namun juga dapat digunakan untuk merekam berbagai fenomena yang terjadi. Teknik pengumpulan data observasi cocok digunakan untuk penelitian yang bertujuan untuk mempelajari perilaku manusia, proses kerja, dan gejala-gejala alam. Metode ini juga tepat dilakukan pada responden yang kuantitasnya tidak terlalu besar. Metode pengumpulan data observasi terbagi menjadi dua kategori, yakni:

a. Participant observation

Dalam participant observation, peneliti terlibat secara langsung dalam kegiatan sehari-hari orang atau situasi yang diamati sebagai sumber data.

b. Non participant observation

Berlawanan dengan participant observation, non participant observation merupakan observasi yang penelitinya tidak ikut secara langsung dalam kegiatan atau proses yang sedang diamati.

3. Angket (kuesioner)

Kuesioner merupakan metode pengumpulan data yang dilakukan dengan cara memberi seperangkat pertanyaan atau pernyataan tertulis kepada responden untuk dijawab. Kuesioner merupakan metode pengumpulan data yang lebih efisien bila peneliti telah mengetahui dengan pasti variabel yag akan diukur dan tahu apa yang diharapkan dari responden. Selain itu kuesioner juga cocok digunakan bila jumlah responden cukup besar dan tersebar di wilayah yang luas.
Berdasarkan bentuk pertanyaannya, kuesioner dapat dikategorikan dalam dua jenis, yakni kuesioner terbuka dan kuesioner tertutup. Kuesioner terbuka adalah kuesioner yang memberikan kebebasan kepada objek penelitian untuk menjawab. Sementara itu, kuesioner tertutup adalah kuesioner yang telah menyediakan pilihan jawaban untuk dipilih oleh objek penelitian. Seiring dengan perkembangan, beberapa penelitian saat ini juga menerapkan metode kuesioner yang memiliki bentuk semi terbuka. Dalam bentuk ini, pilihan jawaban telah diberikan oleh peneliti, namun objek penelitian tetap diberi kesempatan untuk menjawab sesuai dengan kemauan mereka.

4. Studi Dokumen

Studi dokumen adalah metode pengumpulan data yang tidak ditujukan langsung kepada subjek penelitian. Studi dokumen adalah jenis pengumpulan data yang meneliti berbagai macam dokumen yang berguna untuk bahan analisis. Dokumen yang dapat digunakan dalam pengumpulan data dibedakan menjadi dua, yakni:

a. Dokumen primer

Dokumen primer adalah dokumen yang ditulis oleh orang yang langsung mengalami suatu peristiwa, misalnya: autobiografi

b. Dokumen sekunder

Dokumen sekunder adalah dokumen yang ditulis berdasarkan oleh laporan/ cerita orang lain, misalnya: biografi.