BAB II TINJAUAN PUSTAKA 2.1 Kecerdasan Manusia Sekitar tahun 1900-an, Alfred Binnet untuk pertama kali memperkenalkan istilah kecerdasan manusia
“Intellegence Quotient (IQ)”.
IQ adalah skala kecerdasan
manusia yang merupakan kemampuan otak manusia dalam hal rasio dan dalam era sekarang lebih tepat disebut sebagai “kecerdasan akademik”.
Secara umum IQ
didapat dari pendidikan formal maupun non formal walaupun ada sebagian manusia memperolehnya secara otodidak. Selain IQ, pada era yang sama pula, Wolf Signer juga memperkenalkan bentuk kecerdasan lain yaitu Emotional Quotitent (EQ).
EQ adalah bentuk kecerdasan
manusia yang berasal dari pola hubungan sistem saraf manusia yang belum begitu banyak diketahui berkaitan dengan prilaku (behaviour) dan kebiasaan (habitual). Bentuk kecerdasan “EQ” mempunyai proporsi yang cukup besar terutama dalam pembangunan mental dan mempengaruhi kemampuan IQ.
Logika banyak
memegang peran dalam pembentukan IQ sedangkan mental memegang peranan dalam pembentukan EQ. Dengan memaksimalkan pengasahan IQ dan EQ, setiap manusia akan berhasil menghadapi permasalahan hidup[11]. 2.2 Pentingnya Pengukuran Kecerdasan Manusia Dalam rangka meningkatkan kemampuan pengembangan diri, setiap orang memerlukan pengukuran tingkat kecerdasan yang mencakup pengukuran terhadap logika dan mental manusia.
Metode yang digunakan untuk mengukur tingkat
kecerdasan individu ini dikenal sebagai istilah “Psikotes”.
Sebagai metode
pendekatan untuk mengukur kemampuan individu, psikotes telah dimanfaatkan hampir di seluruh negara dan semua perusahaan/lembaga yang profesional dalam mengembangkan ilmu pengetahuan dan standar kecerdasan manusia[10]. Pengukuran psikologis (assessment) dilakukan dengan menggunakan berbagai macam instrumen.
Secara umum dapat digambarkan bahwa kegiatan psikotes
dilakukan terhadap individu (assessee) melalui beragam tes dengan simulasi dan
instrumen terstandar oleh pihak penguji (assessor) menggunakan kertas pengujian. Dari serangkaian tes yang dilakukan, akan dihasilkan feedback yang selanjutnya dapat digunakan untuk mengevaluasi dan mengembangkan SDM dalam suatu organisasi[11].
Gambar 2.1 Diagram Alir Proses Assessment Manfaat dari hasil assessment dalam suatu organisasi antara lain (1) memperoleh kriteria yang jelas untuk suatu jabatan tertentu, (2) mengidentifikasi kader-kader pemimpin melalui suatu metode yang memiliki akurasi dan obyektifitas yang dapat diandalkan, (3) menghasilkan strategi dan tindakan pengembangan yang spesifik dan terencana bagi pegawai, (4) mengidentifikasi kebutuhan pengembangan manajerial pegawai, (5) sebagai sarana bagi manajemen untuk pengambilan keputusan yang berkaitan dengan SDM seperti rekrutmen, promosi, mutasi dan pengembangan karir pegawai[5]. 2.3 Jenis-jenis Tes dalam Pengukuran Psikologis (Psikotes) Tipikal penyelenggaraan psikotes di Indonesia biasanya difokuskan untuk mengukur kemampuan atau kecerdasan individu (intelegensia) dengan menggunakan instrumen tes antara lain mencari persamaan kata, menjumlahkan angka dan mencari gambar yang sesuai menggunakan media kertas pengujian. Lebih dari itu, pengukuran 11
psikologis mulai dikembangkan menjadi serangkaian pengujian yang meliputi pengukuran potensi akademi dan tes kemampuan umum serta pengukuran tingkat ketelitian, kepribadian, minat dan bakat. Secara terperinci, jenis-jenis pengujian dalam pelaksanaan psikotes yang dapat dilakukan untuk mengukur kecerdasan sebagai berikut[10]: 2.3.1 Tes Intelegensia Tes intelegensia bertujuan untuk mengukur sejauh mana tingkat kecerdasan individu, meliputi kecepatan kerja, ketelitian, penalaran, kemampuan pikir secara analitis sampai dengan daya ingat (hapalan) yang dilakukan dalam waktu singkat. Beberapa model atau tipe tes yang termasuk kategori tes intelegensia adalah sebagai berikut: a. Tes Pemikiran Verbal, yaitu tes yang dilakukan untuk menguji kemampuan peserta dalam kecakapan, keterampilan, kecepatan, dan kebenaran pengolahan kata atau untuk melihat bagaimana pemikiran individu dalam menggunakan katakata. b. Tes Pemikiran Numerik, yaitu tes yang dilakukan untuk menguji kecepatan, kekonsitenan, dan keakuratan menjawab soal dalam bentuk bilangan-bilangan. Biasanya dalam tes ini, soal disajikan dalam bentuk barisan atau deret baik memanjang secara vertikal maupun horisontal atau bisa pula dengan mengisi angka-angka dalam kolom atau kotak-kotak kosong. c. Tes Pemikiran Perseptual, yaitu tes yang dilakukan dalam bentuk tes irama bergambar yang ditujukan untuk mendapatkan gambaran ketelitian, kecepatan dan kepribadian individu terutama dalam berpikir dengan simbol-simbol. Kepribadian yang dilihat dalam tes ini bukan kepribadian utama atau yang permanen melainkan hanya kepribadian sesaat. d. Tes Kemampuan Teknikal, yaitu tes yang dilakukan untuk mengetahui seberapa jauh rasa yang dimiliki individu untuk benda-benda mekanis dan teknis. e. Tes Kemampuan Spasial, yaitu tes yang dilakukan untuk menggali bagaimana mudahnya individu mampu melihat dan memanipulasi potongan-potongan dan figur-figur dalam ruang. 12
2.3.2 Tes Potensi Akademik / Tes Kemampuan Umum (TPA/TKU) Tes Potensi Akademik / Tes Kemampuan Umum (TPA/TKU) sering juga disebut sebagai Tes Bakat Skolastis (TBS), bertujuan untuk mengetahui kecakapan dan wawasan akademis yang wajib dimiliki oleh individu sebagai syarat untuk mencapai tujuan tertentu.
Soal-soal TPA/TKU yang diujikan biasanya menyangkut bidang
utama yaitu kemampuan verbal, matematika dasar dan pengetahuan umum. 2.3.3 Tes Bakat Tes bakat bertujuan untuk melihat karakteristik unik dari individu yang membuatnya mampu (tidak mampu) melakukan suatu aktivitas dan tugas secara mudah (atau sulit) dan sukses (atau tidak pernah sukses). 2.3.4 Tes Minat Tes minat bertujuan untuk melihat usaha atau kemauan individu dalam mempelajari dan mencari sesuatu pada bidang tertentu, walaupun individu mempunyai atau tidak mempunyai tetapi telah ada usaha aktif untuk mempelajari. 2.4 Binary Runtime Enviroment for Wireless (BREW)[15] Qualcomm, sebuah perusahaan besar bergerak di bidang teknologi nirkabel telah mengembangkan teknologi baru yaitu Binary Runtime Enviroment for Wireless, disingkat BREW. BREW memiliki dua sisi teknologi yaitu teknologi perangkat lunak dan teknologi distribusi. Sebagai teknologi perangkat lunak, BREW bertindak sebagai suatu set Application Programming Interface (API) yang cara bekerjanya terhubung dengan bahasa pemrograman C/C++ untuk aplikasi nirkabel. Sebagai teknologi distribusi, BREW diimplementasikan untuk pihak pembuat handset dan operator nirkabel melalui suatu tempat penyimpanan terpusat yang mengatur distribusi untuk setiap aplikasi. BREW juga merupakan suatu Application Execute Environment (AEE) yang kecil dan efisien yang didisain secara spesifik untuk perangkat nirkabel. Pada software layer, BREW berada pada posisi layer atas (Gambar 2.2).
Dengan posisinya di
layer atas, BREW dapat dijalankan di semua handset yang mendukung fungsi 13
aplikasi tersebut. Hal dapat diilustrasikan bahwa tidak semua handset memiliki GPS (Global Positioning System) tetapi semua handset yang memiliki GPS dapat menjalankan BREW. Dengan posisi BREW pada layer atas tersebut, pengembang dapat menyimpan resource karena tidak harus melakukan penyesuaian setiap aplikasi untuk setiap jenis perangkat mobile.
Gambar 2.2 BREW di Layer Software[15] Dengan menyediakan dasar umur yang banyak dibutuhkan dalam pengembangan dan eksekusi aplikasi data nirkabel, BREW platform memiliki banyak kelebihan sehingga menjadi sebuah katalis untuk dunia industri.
Dengan memanfaatkan
BREW, pengembang dapat menulis aplikasi dengan cepat, memperoleh akses ke pasar luas sehingga mendapatkan kepastian keuntungan.
Dari sisi, perusahaan
pembuat handset, perusahaan dapat dengan cepat memperkenalkan perangkat baru dengan resource untuk pengembangan aplikasi lebih sedikit. Dan dari sisi operator seluler, dapat memperoleh penghasilan baru dan keuntungan yagn kompetitif dengan menawarkan aplikasi, content, dan layanan yang bermanfaat. Konsumen sendiri dapat lebih mudah memperoleh dan memilih perangkat lunak nirkabel yang sesuai dengan keinginan masing-masing. Kehadiran Software Development Kit dari BREW (BREW SDK) berpengaruh terhadap pengembangan aplikasi.
Dengan adanya BREW SDK, pengembang
dimudahkan dengan lingkungan yang familiar dan tingkat tinggi menggunakan tools 14
berbasis Windows dan C/C++ dan menguji aplikasi di bawah Windows menggunakan perangkat teremulsi. Hal ini membuat pengembang pihak ketiga tidak perlu lagi membangun hubungan dengan OEM nirkabel atau memiliki prototipe handset secara fisik untuk mulai menulis aplikasi. Dengan memanfaatkan kemampuan dari chipst yang ada. BREW memberikan kemampuan pada pengembang untuk mengakses tempat penyimpanan dan pemrosesan lokal serta ekstensi multimedia yang sudah terpasang, fitur konektivitas, informasi lokasi dan posisi dan banyak lagi untuk menciptakan aplikasi yang bagus dan menarik. BREW juga membebaskan pengembang untuk berurusan dengan fungsi perteleponan yang kompleks. 2.4.1 Struktur Aplikasi BREW Dasar dari sebuah aplikasi BREW terdiri dari tiga komponen, yaitu file MIF (Module Information File), file biner, dan file resource. File MIF memberikan titik masuk aplikasi dan juga digunakan untuk menjelaskan aplikasi dengan menyimpan icon dan ClassID yang unik, serta memberikan informasi tentang library eksternal yang diperlukan untuk menjalankan aplikasi. File biner merupakan file Win32 dari Windows yang dibangun dalam lingkungan pengembangan. File resource merupakan file terkompilasi yang memiliki informasi tentang sumber daya yang digunakan oleh aplikasi. Setiap aplikasi BREW memiliki ClassID yang unik. ClassID merupakan bagian penting untuk menjalankan aplikasi dan untuk keamanan. Semua aplikasi BREW yang dibuat harus memiliki suatu ID yang unik dimana pun di dunia. ID ini berupa angka heksadesimal 32-bit yang disediakan oleh BREW ClassID Generator yang ada dalam suatu aplikasi BREW. MIF Editor yang ada dalam SDK digunakan untuk menciptakan file MIF, yang memiliki informasi icon dan ClassID dari aplikasi. Icon ditampilkan ke user sebagai suatu perwakilan aplikasi berupa gambar dan ClassID digunakan untuk mengidentifikasi aplikasi yang akan dijalankan. ClassID yang disimpan dalam file .bid dideklarasikan di dalam source code melalui pernyataan #define sesuai dengan nama ClassID yang digunakan, sama dengan yang ada di dalam file MIF. Pernyataan #include juga digunakan untuk memasukkan ClassID ke 15
dalam file yang executable ketika aplikasi di-compile. Ketika aplikasi diinstall, ClassID dari aplikasi tersebut didaftarkan pada BREW runtime dan iconnya dimunculkan. Jadi, ketika pengguna memilih icon yang bersangkutan pada Simulator atau pada perangkat, lingkungan runtime mencocokan ClassID dari MIF dengan aplikasi dan kemudian menjalankan aplikasi. Proses yang sama dilakukan dengan ketergantungan eksternal, seperti ketika suatu aplikasi memanggil suatu ekstensi atau aplikasi lainnya.
Gambar 2.3 Hubungan ClassID dengan Komponen BREW lainnya[15] Aplikasi BREW memiliki struktur direktori yang terdiri dari direktori applet dan direktori MID. Direktori applet didefinisikan sebagai direktori parent dari aplikasi BREW, dengan setiap aplikasi disimpan dalam subdirektori yang berada di bawah direktori parent ini. Setiap aplikasi berada didalam subdirektori meliputi file biner aplikasi dan file-file pendukungnya, seperti file teks, gambar atau data yang dipakai oleh aplikasi. Perlu diperhatikan bahwa aplikasi dan subdirectori yang sama dengan direktori applet untuk BREW sebelum versi 3. Setiap file MIF aplikasi juga harus memiliki nama yang sama dengan nama aplikasi dan nama subdirektori aplikasi. Penamaan ini merupakan hal yang sangat mendasar di dalam BREW. 16
Gambar 2.4 Struktur Direktori BREW Sebelum Versi 3.x [15]
Gambar 2.5 Struktur Direktori BREW 3.x[15]
17
2.4.2 Pemrograman BREW BREW menyediakan berbagai fungsi dan layanan tingkat sistem untuk memfasilitasi pengembangan applet untuk perangkat yang mendukung BREW.
Modul-modul
yang ada dalam BREW dapat memiliki satu atau lebih applet atau kelas. Kelas-kelas ini ditampilkan oleh suatu modul pada runtime dan dibuka atau ditutup sesuai dengan kebutuhan. AEE yang dimiliki oleh BREW menawarkan sejumlah kategori layanan yang
jelas.
Layanan-layanan
yang
diberikan,
dan
nama
interface
yang
mengimplementasikan layanan tersebut, antara lain dijabarkan dalam Tabel di bawah ini.
Tabel 2.1 Interface yang Dimiliki BREW[15] Layanan
Interface
Sistem Tampilan dan Gambar Kelas Dasar Applet Jaringan Sistem File Kontrol (Menu, Tanggal, Waktu, Teks, Hypertext) Manajemen Database Manajemen Database OEM Tones dan Suara Kontrol Dialog Notifikasi Penggambaran Citra dan Animasi Akses web Enkripsi Data Hashing Membaca Data
IShell* IDisplay* IBase* IApplet* IDNS, INetMgr*, ISocket*, ISSL IFileMgr*, IFile* IMenuCtl*, IDateCtl, ITimeCtl, ITextCtl*, IStatic, IHtmlViewer IDBMgr*, IDatabase*, IDBRecord IAddrBook, IAddrRec, IRingerMgr ISound*, ISoundPlayer* IDialog INotifier IBitmap, IDIB, IImage, ISprite IWeb*, IWebResp*, IWebUtil IRSA, ICipher IHash ISource*, ISourceUtil, IPeek, IGetLine IPosDet AEE Helper Functions
Lokasi Geografis Fungsi Library C Standar
18
IShell merupakan interface yang paling mendasar dalam BREW. Sesuai dengan namanya, interface ini berlaku sebagai interface inti dari BREW dan memberikan jangkauan layanan yang luas. Setiap modul dan applet memperoleh akses ke semua layanan eksternal menggunakan interface yang diperoleh dari interface IShell yang paling mendasar. Interface modul ini dilewatkan untuk membuka suatu fungsi dan menginisialisasinya sebagai fungsi dari modul yang bersangkutan. Dengan interface IShell, applet dan modul dapat meminta pointer ke semua interface yang mereka butuhkan. Sebagai tambahan, IShell berlaku sebagai interface kontrol aplikasi standar, yang bertanggung jawab untuk memanggil dan menutup aplikasi, menjaga keberadaan aplikasi yang ada, dan menyediakan komunikasi antar aplikasi. IShell juga memberikan akses ke resource eksternal, baik yang ada dalam file .bar yang dihasilkan oleh BREW Resource Editor maupun dari file yang disimpan di dalam device. Selain itu, IShell juga memberikan layanan-layanan seperti notifikasi, alarm, timer, dialog, dan fungsi-fungsi lainnya (misalnya beep). Untuk menggunakan interface yang terdapat di BREW, setiap library dari interface yang ada harus dibuka terlebih dahulu, karena BREW sangat padat-memori sehingga interface yang akan digunakan perlu diinisialisasi terlebih dahulu dan memori hanya dipakai ketika interface tersebut dibutuhkan. Untuk membuka library yang akan digunakan, digunakan metode CreateInstance dari IShell. Prototipe fungsinya yaitu: int ISHELL_CreateInstance(IShell * pIShell, AEECLSID cls, void ** ppobj);
Dalam contoh di atas, argumen pIShell merupakan pointer yang valid ke interface IShell dan hal ini berlaku untuk semua applet yang berjalan. Argumen cls merupakan ClassID dari kelas yang diinginkan, misalnya AEECLSID_HTML untuk interface IHtmlViewer. Terakhir, variabel ppobj merupakan pointer ke pointer, untuk diisi dengan alamat dari kelas yang diinstansiasi ketika pemanggilan berhasil dilakukan. Ketika suatu interface tidak lagi digunakan, interface tersebut dapat dilepaskan (atau ditutup) untuk membebaskan resources yang digunakan untuk interface tersebut. Hal ini berlawanan dengan fungsi ISHELL_CreateInstance. Untuk melepas suatu interface, fungsi Release() dari interface yang bersangkutan harus dipanggil. 19
2.4.3 BREW Compressed Image BREW memiliki suatu format gambar yang disebut dengan BREW Compressed Image (BCI). BCI merupakan sebuat format file terkompres yang memfasilitasi decoding dan menampilkan gambar secara cepat pada perangkat handheld. Kompresi dan dekompresi gambar dilakukan dengan menggunakan teknik inflate / deflate. Format ini dioptimasi untuk lingkungan handset BREW dan dengan BCI Authoring Tool yang ada dalam SDK, gambar dari berbagai macam sumber dapat diubah dan dikompres dengan rasio yang cukup tinggi, sehingga dapat meningkatkan efisiensi untuk mengunduh dan menampilkan gambar sambil tetap menjaga kualitas gambar yang tinggi. Selain kompresi, BCI juga mendukung animasi dasar yang juga dapat dibuat dengan BCI Authoring Tool dengan cara menambahkan urutan gambar dan frame rate-nya. 2.5 PHP (Hypertext PreProcessor) PHP adalah bahasa pemrograman yang memiliki sistem interpreter bukan sebagai compiler. Bahasa interpreter adalah bahasa pemrograman yang tidak memerlukan proses pengubahan ke dalam bentuk source code sehingga pada saat menjalankan program, kode dasar akan secara langsung dijalankan. 2.6 Pemodelan (Unified Modelling Language) Pemodelan (modeling) adalah proses merancang piranti lunak sebelum melakukan pengkodean (coding). Unified Modelling Language (UML) adalah sebuah "bahasa" yang 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, dapat dibuat model untuk semua jenis aplikasi piranti lunak. Aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. Tetapi karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka lebih cocok untuk penulisan piranti lunak dalam bahasa-bahasa berorientasi objek seperti C++, Java, C# atau VB.NET. 20
Gambar 2.6 Notasi UML Diagram yang didefinisikan dalam UML sebagai berikut : 2.6.1
Use Case Diagram
Use case Diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case merupakan sebuah pekerjaan tertentu. Seorang atau aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu. 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. 2.6.2
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 (atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda/fungsi). Class Diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti pewarisan, asosiasi, dan lain-lain. 21
2.6.3
Statechart Diagram
Statechart diagram menggambarkan transisi dan perubahan keadaan (dari satu state ke state lainnya) suatu objek pada sistem sebagai akibat dari stimuli yang diterima. Pada umumnya statechart diagram menggambarkan class tertentu (satu class dapat memiliki lebih dari satu statechart diagram). Dalam UML, state digambarkan berbentuk segiempat dengan sudut membulat dan memiliki nama sesuai kondisinya saat itu. Transisi antar state umumnya memiliki kondisi guard yang merupakan syarat terjadinya transisi yang bersangkutan, dituliskan dalam kurung siku. Action yang dilakukan sebagai akibat dari event tertentu dituliskan dengan diawali garis miring. 2.6.4
Activity Diagram
Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan state diagram khusus, sebagian besar state adalah action dan sebagian besar transisi ditrigger oleh selesainya state sebelumnya (internal processing). Oleh karena itu activity diagram tidak menggambarkan behaviour internal sebuah sistem (dan interaksi antar subsistem), tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum. 2.6.5
Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa pesan yang digambarkan terhadap waktu. Sequence diagram terdiri atas dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait). 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 memulai aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output yang dihasilkan. 22
2.6.6
Collaboration Diagram
Collaboration diagram 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. Suatu collaboration diagram, memodelkan interaksi antara objek dalam konteks pesan yang sifatnya sekuensial. Collaboration diagram merepresentasikan suatu kombinasi dari informasi yang didapat dari Class, Sequence dan juga Use Cases Diagrams, yang mana mendeskripsikan baik itu struktur statis atau dinamis dari tingkah laku suatu sistem. Collaboration dan sequence diagram mendeskripsikan informasi yang sama, dan dapat ditransformasikan satu sama lain tanpa adanya kesulitan. Sementara itu, collaboration diagram menggunakan free-form arrangement dari objek yang mana digunakan dalam Object diagram. Dalam mengelola urutan pesan dalam free-form diagram, maka pesan-pesan yang ada diberi label dengan suatu nomor yang bersifat kronologis. Dalam membaca Collaboration diagram, harus dimulai dengan pesan 1.0 dan pesan-pesan berikutnya dari objek satu ke objek yang lain. 2.6.7
Component Diagram
Component diagram menggambarkan struktur dan hubungan antar komponen piranti lunak, termasuk ketergantungan (dependency), di antaranya 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 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.
23
2.6.8
Deployment Diagram
Deployment/ physical diagram menggambarkan detail bagaimana komponen dideploy dalam infrastruktur sistem, di mana komponen akan terletak (pada mesin, server atau piranti keras apa), bagaimana kemampuan jaringan pada lokasi tersebut, spesifikasi server, dan hal-hal lain yang bersifat fisikal. Sebuah node adalah server, workstation, atau piranti keras lain yang digunakan untuk men-deploy komponen dalam lingkungan sebenarnya. Hubungan antar node (misalnya TCP/IP) dan requirement dapat juga didefinisikan dalam Deployment diagram ini. 2.7 Requirements Analysis Dalam sistem dan rekayasa perangkat lunak, requirements analysis meliputi tugastugas untuk menentukan kebutuhan terhadap suatu sistem yang baru, dengan memperhitungkan kebutuhan-kebutuhan yang mungkin dari berbagai pemegang peran dalam sistem, termasuk pengguna.
Requirements analysis sangat penting
untuk kesuksesan suatu proyek. Requirements analysis yang sistematik juga dikenal dengan istilah requirements engineering didefinisikan sebagai salah satu cabang rekayasa perangkat lunak yang berhubungan dengan tujuan di dunia nyata sebagai fungsi dan batasan dari suatu sistem perangkat lunak, dan juga berhubungan dengan hubungan antara setiap faktor yang ada untuk memastikan spesifikasi dari perilaku perangkat lunak dan evolusinya seiring dengan waktu dan di antara perangkat lunak lainnya[8]. Definisi tersebut menekankan pentingnya “tujuan di dunia nyata” yang memotivasi pengembangan suatu sistem perangkat lunak. Hal ini mewakili ‘mengapa’ dan juga ‘apa’ dari sistem. Definisi di atas juga menyebutkan tentang “memastikan spesifikasi”, yang merupakan dasar untuk menganalisis kebutuhan, meyakinkan bahwa kebutuhan tersebut benar-benar yang dibutuhkan oleh pemegang peran, menjelaskan apa yang harus dibangun oleh pengembang, dan mencocokkan bahwa pengembang telah melakukan hal yang tepat. Di akhir, definisi di atas menyebutkan “evolusinya seiring dengan waktu dan di antara perangkat lunak lainnya”, menekankan kenyataan
24
mengenai dunia yang akan berubah dan adanya kebutuhan untuk menggunakan kembali sebagian dari spesifikasi yang ada. 2.8 Populasi dan Sampel Penelitian 2.8.1
Populasi
Populasi adalah seluruh data yang menjadi perhatian peneliti dalam suatu ruang lingkup dan waktu yang ditentukan[14]. Populasi memiliki besaran terukur yang menunjukan ciri dari populasi.
Besaran ini yang dikenal sebagai Parameter.
Parameter suatu populasi tertentu adalah tetap nilainya, apabila berubah maka berubah pula populasinya. Suatu populasi terdiri atas semua nilai yang mungkin dari suatu peubah.
Nilai-nilai ini tidak harus berbeda seluruhnya ataupun terhingga
banyaknya. Sebagai contoh banyaknya sisi gambar yang muncul jika 10 keping mata uang dilempar 500 kali[9]. Populasi dapat dibedakan menjadi dua yaitu populasi terbatas atau populasi terhingga dan populasi tidak terbatas atau populasi tak terhingga. Populasi terhingga adalah populasi yang memiliki batas kuantitas secara jelas karena memiliki karakteristik yang terbatas. Populasi tak terhingga adalah populasi yang tidak dapat ditemukan batas-batasnya sehingga tidak dapat dinyatakan dalam bentuk jumlah secara kuantitatif[7]. Penetapan populasi yang menjadi sasaran penelitian beserta karakteristiknya merupakan hal penting sebelum menentukan sampel.
Kejelasan permasalahan
penelitian atau menghipotesis yang dirumuskan sangat berhubungan dengan penetapan sasaran populasi tersebut. Hal lain yang menjadi cukup penting di dalam penentuan populasi adalah pertanyaan “Apakah variabel penelitian yang ada dan akan diukur dalam disain penelitian telah terwakili di dalam populasi atau dapat diperoleh subjek dalam penelitian[14]. 2.8.2
Sampel
Sampel atau contoh adalah bagian dari populasi bahwa suatu contoh dapat mencakup seluruh populasi[9]. Suatu contoh harus dapat mewakili populasi jika diharapkan dapat memberikan kesimpulan yang sah. Sebab timbulnya sampel dapat disebabkan 25
karena peneliti bermaksud mereduksi objek penelitian sebagai akibat dari besarnya jumlah populasi sehingga harus meneliti sebagian saja dari populasi. Selain itu, sampel juga dapat timbul karena peneliti bermaksud mengadakan generalisasi dari hasil-hasil kepenelitiannya dalam arti mengenakan kesimpulan-kesimpulan kepada objek, gejala, atau kejadian yang lebih luas. Dasar-dasar yang menjadi pertimbangan sebuah penelitian dilakukan dengan menggunakan sampel yaitu ukuran populasi, masalah biaya, masalah waktu, percobaan yang sifatnya merusak, masalah ketelitian dan masalah ekonomis[7]. Sedangkan hal-hal yang harus dipertimbangkan dalam menentukan besarnya sampel adalah unit analisis, pendekatan atau model penelitian yang digunakan, banyaknya karakteristik khusus yang ada pada populasi dan keterbatasan penelitian[12]. 2.9
Penentuan Jumlah Sampel (Sample Size)
Besarnya jumlah sampel yang dapat diambil dari populasi tergantung pada beberapa hal antara lain sifat analisis yang akan dilakukan yaitu kompleks atau sederhana, ketepatan estimasi dalam pengukuran, jumlah perbandingan atau jumlah variabel dan keterbatasan jumlah pengumpul data atau sumber daya pendukung lainnya. Banyak rumus dan pendekatan yang telah diperkenalkan para ahli dalam menentukan jumlah sampel.
Dari beberapa rumus yang telah banyak diperkenalkan pada dasarnya,
memberikan hasil yang hampir sama. Dalam melakukan penarikan sampel tidak mutlak atau harus menggunakan rumus mencari sample size sebagai pendekatan terutama jika populasi memiliki homogenitas yang tinggi dan merupakan penelitian kualitatif murni. Bahkan dengan menggunakan pendekatan rumus dimaksud biasanya menimbulkan keraguan peneliti karena ukuran sampel yang dihasilkan dari perhitungan menggunakan rumus cenderung relatif kecil.
Hal ini menimbulkan keraguan representatitveness dari
sampel yang nantinya dipertanggungjawabkan dalam mengeneralisasi hasil penelitian[14].
26
2.10 Teknik Penarikan Sampel Untuk menghindari kemungkinan terjadinya bias dalam pengambilan sampel maka diperlukan teknik penarikan sampel yang tergantung pada sifat populasinya dan sumber data yang tersedia. Teknik penarikan sampel yang lazim digunakan dalam penelitian terdiri dari teknik random sampling dan teknik nonrandom sampling[6]. Teknik random sampling merupakan proses penarikan sampel yang didasarkan atas sistem randomisasi atau pengacakan.
Teknik ini terdiri dari:
simpel random
sampling, stratified random sampling, proporsional stratified random sampling, cluster random sampling, quota sampling, area random sampling, dan two-stage random sampling.
Sedangkan teknik non random sampling merupakan proses
penarikan sampel dengan tidak berdasarkan sistem randomisasi atau pengacakan. Teknik ini terdiri dari: systematic sampling, purposive sampling, dan covenience sampling.
2.11 t - Student Test Tes ‘t” adalah salah satu uji statistika yang digunakan untuk mengetahui ada atau tidaknya perbedaan yang nyata dari dua buah nilai tengah/rata-rata atau dua variabel yang diperbandingkan. Tes ini dikembangkan oleh William Seely Gosset[12] pada tahun 1915. Tes ini dibedakan menjadi: (1) tes “t” untuk sampel kecil dan sampel besar yang berkorelasi atau (2) tes “t” untuk sampel kecil dan sampel besar yang tidak berkorelasi. Besarnya koefisien komparatif dengan menggunakan tes “t” diberi simbol to (t observatif) dengan angka bertanda positif dan negatif.
Namun tanda negatif
bukanlah tanda aljabar sehingga to = - 3,20 sama artinya dengan to = 3,20. Cara memberikan interpretasi terhadap to adalah dengan merumuskan hipotesis alternatif (Ha) yang menyatakan ada perbedaan dan Ho yang menyatakan tidak ada perbedaan.
27