BAB 2 LANDASAN TEORI 2.1 Distance Learning Menurut Turban (2001, p200), Distance Learning merupakan proses belajar menggunakan teknologi telekomunikasi. Orang-orang dapat belajar tidak harus berada di dalam kelas tetapi dapat di berbagai lokasi. Distance Learning dapat terjadi secara real-time (tempat berbeda, waktu sama) atau asinkron (tempat berbeda, waktu berbeda). Distance Learning dapat dilakukan melalui sarana internet. Distance Learning pada Wikipedia (anonim1) disebut juga Distance Education, adalah bidang dari edukasi yang mengkombinasikan pedagogi, teknologi, dan sistemnya. Murid dan guru tidak perlu berada di lokasi yang sama, mereka dapat berkomunikasi melalui teknologi baik secara sinkron atau asinkron. Dalam Distance Learning, teknologi menjadi jembatan penghubung di antara guru dan murid sehingga proses belajar mengajar dapat dilakukan tanpa terbatas pada lokasi dan waktu (anonim 2). 2.2 E-Learning (Electronic Learning) Wikipedia (anonim 1) mendefinisikan E-Learning sebagai pendekatan untuk meningkatkan dan memfasilitasi pembelajaran melalui teknologi komunikasi dan komputer. E-Learning juga dapat digunakan untuk Distance Learning. 12 Romi Satria Wahono (2003, p2) menyebutkan E-Learning merupakan konsep atau sistem pendidikan yang menggunakan teknologi informasi (IT) dalam proses belajar mengajarnya. Jadi dapat disimpulkan E-Learning merupakan proses pembelajaran dengan bantuan teknologi informasi (umumnya komputer sebagai intinya) dan media-medianya (internet, telepon selular, CD ataupun jaringan lokal), yang dapat difungsikan sama seperti buku dan pena pada cara belajar tradisional. 2.3 Sistem Informasi 2.3.1 Pengertian Sistem Sistem adalah kumpulan dari elemen yang terintegrasi dengan maksud untuk mencapai sebuah tujuan (McLeod, 2001, p9). Elemen-elemen tersebut berinterelasi atau berinteraksi dan membentuk satu-kesatuan yang utuh (O’Brien, 2003, p8). Elemen tersebut atau objek-objek, saling berhubungan dan dilihat sebagai suatu kesatuan dan dirancang untuk menghasilkan sebuah kegunaan. Maka dapat disimpulkan, sistem adalah sekelompok elemen atau komponen yang berhubungan dan saling bergantung untuk mencapai satu tujuan yang sama. 2.3.2 Informasi Informasi adalah data yang telah diproses atau data yang memiliki arti (Mcleod, 2001, p16-18). Informasi ini diperoleh melalui data-data (fakta dan angka) yang belum memiliki arti (belum dapat digunakan) bagi penggunanya. Setelah melalui pemrosesan, data dapat menjadi informasi yang memiliki arti/berguna bagi perusahaan yang 13 memilikinya. Informasi berupa data yang berguna mempunyai arti (teks, suara dan gambar) dan telah terorganisasi dengan baik (James A. Senn, 1998, p12). Informasi dapat disebut juga koleksi dari fakta (data) yang disusun dengan cara tertentu sehingga memiliki arti bagi yang penerimanya (Turban, 2001, p17). Data diramu sedemikian rupa sehingga menjadi informasi (dalam bentuk yang lebih berguna dan lebih berarti) sehingga dapat dimengerti bagi penerimannya (Irmansyah, 2003, p1). Informasi ini menggambarkan suatu kejadian-kejadian (event) yang nyata (fact) yang dapat digunakan untuk pengambilan keputusan. 2.3.3 Pengertian Sistem Informasi (Information System) Sistem informasi adalah berbagai macam elemen yang terintegrasi yang memanipulasi informasi digital (ditekankan pada penggunaan teknologi informasi) untuk keperluan suatu organisasi (bisnis umumnya). Sistem informasi menurut O’Brien (2003, p7) adalah kombinasi yang diorganisasikan dari manusia, perangkat keras, perangkat lunak, jaringan komunikasi, dan sumber-sumber data, yang mengumpulkan, mengubah dan menyebarkan informasi di dalam sebuah organisasi. Sistem informasi menurut Connoly (2002, p270) adalah sumber daya yang dapat mengkoleksi, mengatur, mengontrol dan menyebarkan informasi secara keseluruhan di sebuah organisasi. Sistem informasi digunakan untuk mengumpulkan, memproses, menyimpan, menganalisa, dan menyebarkan informasi untuk tujuan tertentu menurut Turban (2001, p17). Sistem informasi terdiri dari input (data, instruksi) dan output (laporan, kalkulasi). 14 Sistem informasi memproses input dan menghasilkan output yang akan dikirimkan kepada pemakai atau sistem lain. Komponen dasar dari sistem informasi menurut Turban (2001, p17), adalah sebagai berikut: • Hardware (Perangkat keras), yaitu sekumpulan alat yang menerima, memproses dan menampilkan data dan informasi, • Software (Perangkat lunak), yaitu program komputer yang memungkinkan perangkat keras dapat memproses data. • Database (Basis data), yaitu kumpulan dari data (file, record, dan lain-lain) yang dapat menyimpan dan menghubungkan data. • Network (Jaringan) menghubungkan sistem yang memungkinkan pembagian (sharing) data/sumber (resource) antara komputer-komputer yang berbeda. • Procedure (Prosedur), adalah strategi, kebijakan, metode, dan aturan untuk menggunakan sistem informasi. • People (Manusia), yaitu elemen paling utama dari sistem informasi yang terdiri dari orang - orang yang bekerja menggunakan sistem informasi atau menggunakan hasil output-nya. 2.4 Teknologi Informasi Teknologi informasi atau Information and Communication Technology (ICT) adalah suatu bidang yang berhubungan dengan teknologi yang berfokus pada penggunaan komputer dan software-nya untuk penanganan dan pemrosesan informasi. Organisasi besar, seperti perusahaan perbankan, memiliki sangat banyak data-data dan 15 informasi. Tanpa penggunaan teknologi informasi mereka tidak akan berjalan. Oleh karena itu, organisasi besar masa kini memiliki divisi yang berhubungan dengan teknologi software (teknologi informasi) yang disebut IT departement atau disebut juga Information Services (IS), Management Information Services (MIS) atau Managed Service Providers (MSP). Dalam implementasinya, teknologi informasi ini berperan dalam merubah, menyimpan, mengamankan, memproses, memindahkan dan menerima data-data dan informasi, khususnya data bisnis bagi perusahaan. Dalam dunia pendidikan (contoh di Inggris), teknologi informasi sudah menjadi bagian penting dalam kegiatan belajar-mengajar. Teknologi informasi ini memudahkan dalam pengajaran materi dan juga komunikasi antar-sekolah (anonim 1). Istilah teknologi informasi (Senn, 1998, p18) diartikan sebagai berbagai macam objek dan kemampuan untuk membuat, menyimpan dan meyebarkan data dan informasi. Data sebagai fakta/gambar/detail mentah, diubah menjadi informasi yang terorganisir, berarti dan memiliki arti, diubah menjadi pengetahuan (knowledge) yang merupakan pemahaman dari informasi-informasi dan bagaimana memaksimalkan penggunaanya. Data-data yang diperoleh dari transaksi sehari - hari yang penuh dengan detail diolah menjadi informasi-informasi dan dimanipulasi hingga menjadi pengetahuan yang berguna bagi manusia, misalnya sebagai dasar pengambilan keputusan bisnis. Proses-proses pengubahan tersebut tidak dapat berlangsung tanpa tiga komponen penting yaitu: komputer, jaringan komunikasi, dan know-how (Senn, 1998 p12-21): • Komputer, yaitu sistem elektronik yang dapat diprogram untuk menerima, memproses, menyimpan, dan menyajikan data dan informasi.. 16 • Jaringan komunikasi, yaitu interkoneksi dari berbagai lokasi melalui suatu medium yang memungkinkan orang dapat mengirim dan menerima data dan informasi. • Know How, diartikan dengan mengerti dan paham bagaimana mengerjakan sesuatu dengan baik, dalam hal ini kemampuan dalam menggunakan kecanggihan teknologi informasi untuk memecahkan masalah dan memanfaatkan peluang yang diciptakan. Komputer o HardWare o Program o Informasi Terdiri dari 3 komponen saling berhubungan Komunikasi o HardWare o Program o Informasi Know-How o Manusia o Aplikasi o Prosedur Gambar 2.1 Perangkat dari Teknologi Informasi (Senn, 1998, p14) Ketiga komponen di atas merupakan satu-kesatuan yang tidak dapat dipisahkan satu sama lain. Jika user memiliki komputer dan alat komunikasi tetapi tidak mengerti cara menggunakannya, maka teknologi informasi tersebut menjadi tidak berguna. 2.5 Software (Perangkat Lunak) 2.5.1 Pengertian Software 17 Software adalah program atau instruksi digital yang digunakan untuk mengatur kerja suatu sistem komputer dan jaringan, yang pada akhirnya dapat menyelesaikan suatu tugas manusia (hal yang berguna bagi manusia) (Turban, 2001, p98). Roger S. Pressman (2002, p10) mendeskripsikan Software sebagai “Perintah (program komputer) yang bila dieksekusi memberikan fungsi dan unjuk kerja seperti yang diinginkan, struktur data yang memungkinkan program memanipulasi informasi secara proporsional, dokumen yang menggambarkan operasi dan kegunaan program”. Jadi kesimpulannya, software adalah program komputer (yang disimpan dalam storage berupa dokumen/file) yang dapat menghasilkan perintah-perintah (operasi) yang berfungsi untuk menyelesaikan tugas/masalah/pekerjaan manusia serta memanipulasi informasi. 2.5.2 Jenis Software Komputer Software komputer terbagi menjadi dua seperti yang dikemukakan Turban (2001, p99), yaitu: • Software Sistem (System Software) adalah sekumpulan instruksi yang tugas utamanya adalah sebagai jembatan antara hardware komputer dan program aplikasi. Software sistem sering disebut dengan Sistem Operasi (Operating System) • Software Aplikasi (Application Software), adalah sekumpulan instruksi komputer yang menyediakan fungsi lebih spesifik pada pengguna tertentu. Software aplikasi terdiri dari software aplikasi hak milik (proprietary) yang dibuat berdasarkan kebutuhan bisnis tertentu/unik dari sebuah perusahaan,dan software aplikasi off-the- 18 shelf yang dibeli, disewa dari vendor yang mengembangkan program dan menjual ke banyak organisasi. 2.5.3 Bahasa Pemrograman (Programming Language) Menurut Turban (2001, p117), Bahasa Pemrograman adalah serangkaian perintah atau kode-kode yang dapat dimengerti oleh komputer sehingga komputer dapat menjalankan aktivitasnya. Pada pengklasifikasian Bahasa Pemrograman, Haryono (2003, p4 & p21) membedakan bahasa pemrograman menjadi: 1. Berdasarkan tingkat, bahasa permrograman dibedakan menjadi tingkat rendah, tingkat menengah, dan tingkat tinggi. • Bahasa tingkat rendah (atau biasa disebut bahasa assembly), memetakan/menerjemahkan setiap instruksi dari kode sumber (source program) ke dalam satu instruksi bahasa mesin/komputer. • Bahasa tingkat tinggi, bahasa yang semakin natural, semakin mudah dipahami manusia. Contoh: bahasa Pascal, BASIC, Prolog, Java. • Bahasa tingkat menengah, berada di antara kedua tingkat di atas. Contoh : bahasa C 2. Berdasarkan paradigma, bahasa pemrograman komputer dapat dibedakan sebagai berikut: • Pemrograman Prosedural, program tersusun atas prosedur-prosedur algoritma. Pemrograman prosedural dicirikan dengan adanya sequence (urutan), branch (pencabangan), dan loop (pengulangan). 19 • Pemrograman Fungsional, tersusun atas fungsi-fungsi, baik yang sudah terdefinisi maupun yang dibuat sendiri oleh pengguna. Contoh: LISP. • Pemrograman Deklaratif, tersusun atas deklarasi-deklarasi logika, berupa fakta, aturan, dan sasaran, serta memiliki kemampuan untuk inferensi yang memungkinkan komputer ‘menalar’ atau menelusuri berbagai fakta dan aturan yang diberikan untuk mendapatkan hasil/jawaban dari pertanyaan tertentu. Contoh : Prolog (programming in logic). • Pemrograman Berorientasi Objek, pemrograman yang semua persoalan dan solusinya dimodelkan sebagai objek. Contoh: Object Pascal, C++, Eiffel, SmallTalk, Java, C#. 2.6 Software Engineering 2.6.1 Pengertian Software Engineering Software Engineering adalah disiplin ilmu yang merancang, membuat, dan merawat software dengan menggunakan teknologi dan aktivitas dari computer science, manajemen proyek, engineering, application domain dan bidang lainnya (anonim 1). Menurut IEEE Standard 610.12, Software Engineering (SE) adalah “(1) aplikasi dari pendekatan sistematik, terdisiplin, terukur untuk pengembangan, pengoperasian, dan perawatan dari software, yaitu, aplikasi dari engineering (rekayasa) untuk software.” Dan “(2) studi dari pendekatan-pendekatan seperti pada (1).”. Software Engineering berdasarkan Pressman (2002, p28), merupakan sebuah aktivitas membuat sebuah software dengan alat/tool, metode dan proses yang membutuhkan manajemen sehingga software tersebut memenuhi kebutuhan client dan 20 user, dengan tanpa mengesampingkan kualitas. Software engineering terbagi menjadi dua tahap waktu, yaitu developing (mungkin 3 bulan atau 1 tahun) dan maintenance (yang mungkin selama software itu digunakan). Software Engineering menjaga supaya software tersebut selalu berguna bagi client dan user. Lapisan/layer pada Software Engineering yang dimaksud Pressman di atas adalah sebagai berikut: • Alat bantu (Tools), digunakan untuk otomatisasi/semi-otomatisasi pembentukan proses ataupun metode yang digunakan dalam pengembangan proyek. CASE (Computer-Aided Software Engineering) adalah sistem yang membantu pengembangan software (sistem lain) dengan mengintegrasikan komponenkomponennya (software, hardware, database) dalam suatu repositori (penyimpanan) informasi seputar sistem itu. Contohnya adalah software Visual Studio .Net 2003 untuk merancang sistem perbankan. • Metode, memberikan teknik-teknik dan konsep untuk membangun software. Contohnya adalah metode waterfall, prototype, agile, dan lainnya. • Proses. Pengaturan atau manajemen proyek yang berkenaan dengan software development life cycle (SDLC). Dalam membuat software yang kompleks amat tidak mudah, tidak hanya dengan sekali coding langsung jadi, tetapi membutuhkan sumber daya dan biaya yang harus diatur supaya selesai sesuai waktunya. • Fokus kualitas, rekayasa software harus berada pada sebuah komitmen dasar menuju kualitas. Kualitas menjadi batu landasan untuk pengembangan perangkat lunak. Client tentunya mengharapkan kualitas yang tinggi dari software, sehingga dapat membantu menyelesaikan masalahnya (contoh masalah bisnis pada software 21 transaksi penjualan) dengan kehandalan, efisiensi, efektif, keamanan dan lainnya. Developer pun perlu membuat software berkualitas secara internal, karena software yang berkualitas tinggi merupakan jaminan untuk reusable code untuk proyek lainnya. Software Engineering Software Engineering to o l s methods process a “quality” focus Gambar 2.2 Software Engineering Layers – (Pressman, 2002, p28) 2.6.2 Fase Software Engineering Pressman (2002, p30) menyatakan bahwa usaha yang berhubungan dengan software engineering dapat dikategorikan ke dalam tiga fase umum dengan tanpa mempedulikan area aplikasi, ukuran proyek, atau kompleksitasnya, yaitu: 1. Fase Definisi (Definition Phase) berfokus pada “apa” (what). Pada fase ini, pengembang software harus mengidentifikasi informasi apa yang akan diproses, fungsi dan unjuk kerja apa yang dibutuhkan, tingkah laku sistem seperti apa yang diharapkan, interface apa yang akan dibangun, batasan desain apa yang ada, dan kriteria validasi apa yang dibutuhkan untuk mendefinisikan sistem yang sukses. 2. Fase Pengembangan (Development Phase) berfokus pada “bagaimana” (how),. Pada fase ini, teknisi harus mendefinisikan bagaimana data dikonstruksikan, bagaimana fungsi-fungsi diimplementasikan sebagai sebuah arsitektur software, bagaimana 22 detail prosedur akan diimplementasikan, bagaimana interface ditandai (dikarakterisasi), bagaimana rancangan akan diterjemahkan ke dalam bahasa pemrograman (atau bahasa non-prosedural), serta bagaimana pengujian akan dilakukan. 3. Fase Pemeliharaan (Maintenance Phase) berfokus pada perubahan (change) yang dihubungkan dengan koreksi kesalahan, penyesuaian yang dibutuhkan ketika lingkungan perangkat lunak berkembang, serta perubahan sehubungan dengan perkembangan yang disebabkan oleh perubahan kebutuhan pelanggan (client). 2.6.3 Pengertian Model Proses Software Model Proses Software (paradigma software engineering) adalah pendekatan umum untuk mengorganisasikan sebuah proyek ke dalam aktivitas (Timothy C. Lethbridge, 2002, p402). Model ini digunakan manajer proyek dan anggotanya untuk menentukan pekerjaan yang harus dilakukan dan bagaimana urutannya. Model ini dilihat sebagai alat untuk membantu berpikir, bukan aturan kaku untuk melakukan sesuatu, sebab tiap proyek memiliki rencana tersendiri yang unik. Model Proses dibutuhkan untuk menggabungkan strategi pengembangan yang melingkupi lapisan proses, metode, dan alat-alat bantu yang digambarkan pada Gambar Software Engineering Layers, dalam tujuannya untuk menyelesaikan masalah aktual di dalam sebuah lingkungan industri (Pressman, 2002, p35). Model proses untuk software engineering dipilih berdasarkan sifat aplikasi dan proyeknya, metode dan alat-alat bantu yang akan dipakai, dan kontrol serta penyampaian yang dibutuhkan. 23 2.6.4 Model Proses Waterfall Software Engineering Model Proses Waterfall (air terjun) untuk pengembangan software memiliki tahap-tahap dalam mengembangkan produk software (sistem) yang secara berurutan seperti air terjun (anonim 3). Pada model ini terdapat beberapa aktivitas/tahap yang terbagi untuk mengembangkan suatu produk, yaitu: • Requirements Analysis and Definition Apa yang diperlukan sistem seperti service yang diinginkan, batasan dan tujuan dibahas, dimengerti dan disetujui personil pengembang, client dan user. • Specification Phase Tahap ini membahas ”apa” (what) yang produk/software dapat lakukan, requirement apa yang bisa dipenuhi darinya dan menghasilkan dokumen spesifikasi. • System and Sofware Design Jika tahap spesifikasi membahas “apa”, tahap ini membahas ”bagaimana” (how)., bagaimana gambaran/design dari software dalam tujuannya memenuhi requirement. Dalam desain software, menentukan bagaimana membuat program dari sisi struktur data, arsitektur software, tampilan dan prosedur/algoritmanya. • Implementation and Unit Testing Pada tahap ini desain perangkat lunak yang telah dibuat dituangkan (Implemented) ke dalam program. Pengujian unit dimaksudkan untuk verifikasi tiap unit sesuai dengan spesifikasi dari sistem yang diinginkan. • Integration and System Testing Menggabungkan unit-unit program tunggal kemudian diuji sehingga menjadi sistem yang lengkap. Tahap ini menjamin bahwa requirement software telah dipenuhi. • Acceptance Testing 24 Client menguji sistem (yang sudah disebut produk) apakah sudah sesuai dengan spesifikasi yang diinginkannya dari segi kebenaran (correctness), ketahanan (robustness), performa dan dokumentasi. Hasilnya adalah apakah client puas/setuju atau tidak atas produk tersebut. • Operation and Maintenance Adalah penerapan ulang (re-application) dari tiap aktivitas-aktivitas di atas terhadap software yang telah jadi tersebut, untuk mengecek kesalahan (jika ada), menyesuaikan dengan perubahan terhadap situasi eksternal (hardware baru, sistem operasi), atau meningkatkan fungsi atau performa yang diminta oleh client. Tahap ini memiliki waktu yang terpanjang pada siklus hidup sistem. Model proses waterfall ini tidak harus selalu sama untuk tiap produk perangkat lunak karena adanya faktor-faktor seperti ukuran dari proyek, kompleksitas, waktu pengembangan yang diperlukan, seberapa besar resiko, kepastian akan keinginan client, dan kemungkinan requirement dari client yang berubah-ubah. Dalam kenyataannya model ini sebaiknya tidak digunakan secara kaku (harus sesuai pada urutan langkah di atas). 25 Gambar 2.3 Model Proses Waterfall (anonim 3) 2.7 Object-Oriented Programming (Pemrograman Berorientasi Objek) Menurut Haryono (2003, p22), Object Oriented Programming (OOP) adalah pemrograman yang semua persoalan dan solusinya di dunia nyata dimodelkan sebagai object. Object merupakan anggota, atau merupakan instance dari class tertentu. Setiap class object minimal memiliki: 1. nama class yang unik, membedakannya dengan class yang lain. 2. atribut, atau data, atau properti-properti, atau sifat-sifat yang melekat pada class tersebut. 3. perilaku, atau kemampuan, atau operasi, atau metode, atau tanggung jawab yang melekat pada class tersebut. 26 Ciri utama dari OOP adalah adanya encapsulation (pembungkusan), inheritance (penurunan sifat), dan polymorphism (perubahan bentuk). • Encapsulation, merupakan pembungkusan suatu class dengan atribut-atribut dan perilaku-perilaku yang dimilikinya. • Inheritance, merupakan penurunan sifat dari class induk kepada class anaknya, dari suatu class yang lebih general/umum kepada class yang lebih spesifik/khusus. • Polymorphism, berarti object yang berbeda-beda yang diturunkan dari induk yang sama mendukung antarmuka properti dan metode yang sama. Fungsi dari beberapa turunan yang diwariskan dari sebuah induk dapat memiliki definisi yang berbedabeda (true polymorphism). Paradigma Object-Oriented menurut Lethbridge (2002, p29) adalah pendekatan sebagai solusi di mana semua komputasi dilakukan dengan object. Object merupakan instance dari konstruk pemrograman, yang biasanya disebut class (kelas) di mana terdiri dari abstraksi data dan abstraksi prosedural yang dapat beroperasi terhadap object. Beberapa konsep yang ada dalam bahasa object-oriented (Lethbridge (2002, p50)), yaitu: 1. Abstraksi, adalah menyederhanakan gambaran dari sesuatu yang kompleks (aslinya). 2. Modularitas, sistem object-oriented dikonstruksi seluruhnya dari sekumpulan class. 3. Enkapsulasi, class bertindak sebagai kontainer/tempat untuk menjaga fitur-fiturnya (variabel dan metodenya) dan memungkinkan hanya beberapa dari fitur tersebut bisa diakses dari luar (information hiding). 27 OOP memiliki komponen (Lethbridge, 2002, p31): 1. Class, adalah unit dari abstraksi data dalam program berorientasi objek. Class terdiri dari data dan prosedur (yang disebut metode). 2. Object, adalah sebongkah data terstruktur yang terdapat pada sistem software yang sedang berjalan. Object memiliki properti yang menunjukkan keadaannya dan sifat yang menunjukkan bagaimana object tersebut berinteraksi. 3. Instance of class, adalah semua object dengan properti dan sifat yang sama. 4. Operation, abstraksi prosedural high-level yang mengindikasikan sebuah tipe dari sifat (behaviour) 5. Method, abstraksi prosedur yang digunakan untuk mengimplementasikan sifat dari class. Mahasiswa nama ttl alm posisi MahasiswaA: Nama: Jhoni ttl: 1955/02/02 Alm: Jln. ABC no.99. posisi: CEO Gambar 2.4 Class dan Instance dari Class Sedangkan menurut Pressman (2002, p656-p661), komponen pemrograman berorientasi objek adalah: 1. Class, adalah konsep object-oriented yang mengenkapsulasi data dan abstraksi prosedural yang diperlukan untuk menggambarkan isi serta tingkah laku berbagai entitas dunia nyata. Class merupakan deskripsi tergeneralisir (template, pola, cetak biru) yang menggambarkan suatu kumpulan object yang sama. 28 2. Attribute, nilai domain (keadaan) yang bisa didapat dari dunia nyata, menggambarkan class atau object dengan berbagai cara. Contoh: Class Mobil memiliki atribut warna. 3. Method atau operation atau Service, adalah prosedur yang dapat dijalankan yang dibungkus di dalam class dan dirancang untuk beroperasi pada satu atau lebih atribut data yang dapat diartikan sebagai bagian dari class. Metode dipanggil melalui message passing atau pertukaran pesan. 4. Message, adalah alat di mana object saling berinteraksi. 2.8 Bahasa Pemodelan UML (Unified Modelling Language) Menurut Lethbridge (2002, p151), UML adalah bahasa grafis standar untuk memodelkan software berorientasi objek. Tujuan dari UML adalah untuk membantu pengembangan software, bukan merupakan suatu metodologi. Tipe diagram UML dikelompokkan menjadi: • Class Diagram, menggambarkan class dan relasinya. Terdiri dari Class Diagram (Static Diagram) itu sendiri dan Instance Diagram yang menggambarkan konfigurasi object dan hubungannya pada waktu tertentu saat eksekusi program. • Interaction Diagram, menunjukkan sifat dari sistem dalam hubungannya dengan bagaimana object berinteraksi dengan object yang lainnya.. Interaction diagram terdiri dari Sequence Diagram dan Collaboration Diagram. Sequence Diagram ini menggambarkan urutan pertukaran message dari object- object (terkadang juga actor) untuk melakukan tugas tertentu. Collaboration Diagram digunakan untuk menunjukkan bagaimana object-object bekerja sama. 29 • State Diagram, menggambarkan bagaimana sistem berinteraksi secara internal • Component and Deployment Diagram, menggambarkan bagaimana berbagai komponen dari sistem disusun secara logis dan fisik. • Use Case Diagram, menggambarkan hubungan antara sekumpulan use case dan beberapa actor (pengguna yang berinteraksi langsung dengan sistem). Use case adalah urutan umum dari aksi yang dilakukan actor untuk menyelesaikan suatu tugas/task (Lethbrigde, p234). Simbol-simbol utama dari Class Diagram adalah: • Class, merepresentasikan jenis data • Association, hubungan antar class • Attribute, data yang dimiliki class dan instance class • Operation, fungsi yang dimiliki class dan instance class • Generalization, untuk menandakan hirarki inheritance dari class Kelas Rectangle Rectangle getArea resize Rectangle height Rectangle Rectangle height width height: int width: int getArea resize getArea(): int resize(int,int) Atribut Method 30 Multiplicity 0..1 Offic e * Employee Association * Vehicle VehiclePart Agregasi * Building Room Komposisi Animal habitat Generalisasi AquaticAnimal Person LandAnimal Machine interface Cashier Employee ATM Gambar 2.5 Simbol-simbol Class Diagram dalam UML. (Lethbridge, 2002, p155 – p172) Simbol-simbol umum dari Use Case Diagram adalah: • Use Case • Actor 31 • Batas Sistem (System Boundary) • Hubungan (link) antara actor dan use case Gambar 2.6 Simbol-simbol Use Case Diagram dalam UML Gambar 2.7 Simbol-simbol dari Sequence Diagram 2.9 Database (Basis Data) 2.9.1 Data 32 Data adalah fakta mentah atau deskripsi dasar dari sesuatu, kejadian, aktivitas, dan transaksi, yang didapat, direkam, disimpan, dan dikelompokkan, tetapi tidak disusun untuk menyampaikan arti tertentu yang spesifik (Turban, 2001, p17). Data adalah representasi atau hasil rekaman atas kejadian, fakta, atau fenomena yang terjadi dalam dunia nyata (Haryono, 2003, p16). Data adalah nilai/value yang merepresentasikan deskripsi dari suatu objek atau kejadian/event (Irmansyah, 2003, p1). Data adalah fakta mentah dari observasi, yang biasanya mengenai fenomena fisik atau transaksi bisnis. Lebih spesifik lagi, data adalah ukuran objektif dari atribut (karakteristiknya) dari entiti (seperti manusia, tempat, benda atau kejadian) (O’Brien, 2003, p13). Jadi Data adalah fakta-fakta mentah (belum memiliki nilai informasi) yang di-capture dengan input device tertentu (digitalisasi) untuk keperluan tertentu (bisnis, penelitian, dan lain-lain), yang kemudian diolah untuk dapat ditarik suatu pemahaman. 2.9.2 Pengertian Database Menurut Thomas M. Connolly (2002, p14), Database adalah kumpulan dari data-data yang secara logikal berhubungan yang di-share, dan sebuah deskripsi dari data ini dirancang untuk memenuhi kebutuhan informasi dari sebuah organisasi. Database juga bisa digambarkan sebagai suatu koleksi dari record yang terintegrasi yang menggambarkan dirinya sendiri, yang dikenal dengan nama system catalog (data dictionary atau meta data atau data tentang data). Data yang secara logis berhubungan ini terdiri dari entiti, atribut, dan relasi, dari sebuah informasi organisasi. Berdasarkan Irmansyah (2003, p2), Database adalah kumpulan dari item data yang saling berhubungan satu dengan yang lainnya yang diorganisasikan berdasarkan 33 sebuah skema atau struktur tertentu, tersimpan di hardware komputer dan dapat dimanipulasi dengan perangkat lunak untuk kegunaan tertentu. Database memiliki jenjang data yang menyusunnya dari satuan terkecil yaitu karakter sampai menjadi database, dengan susunan: 1. Karakter (Character), merupakan bagian data yang terkecil, dapat berupa karakter numerik, huruf ataupun karakter-karakter khusus yang membentuk suatu item data/field. 2. Field, merepresentasikan suatu atribut dari record yang menunjukkan suatu item dari data. Kumpulan dari field membentuk suatu record. 3. Record, menggambarkan suatu unit data individu yang tertentu. 4. File, menggambarkan satu kesatuan data yang sejenis. File terdiri dari record 5. Database, merupakan kumpulan dari file/tabel. Gambar 2.8 Jenjang Data. ( Irmansyah, 2003, p3) 2.9.3 Database Relasional 34 Turban (2001, p150) menyatakan model database relasional sebagai cara mengorganisasikan data dalam bentuk tabel/relasi yang terdiri dari baris (row atau tuple) dan kolom (attribute). Beberapa konsep dasar dari Turban (2001, p150) untuk database relasional adalah: • Urutan dari baris (tuple) atau kolom (atribut) di dalam tabel tidak sama (irelevan) • Tiap baris harus dapat ditentukan secara unik • Tiap tabel harus dapat dibedakan dengan lainnya (dengan nama yang berbeda) • Tidak boleh ada baris atau kolom yang duplikat. • Hanya boleh ada satu nilai tiap sel (perpotongan antara baris dan kolom). Menurut Connoly (2002, p70), database relasional adalah kumpulan relasi (tabel) yang telah dinormalisasikan dan memiliki nama relasi yang berbeda/tertentu. Normalisasi adalah teknik untuk menghasilkan relasi-relasi dengan properti yang diinginkan (berasal dari kebutuhan data/data requirement yang diminta oleh sebuah perusahaan). Model relasional berasal dari konsep matematik yaitu relasi, yang diwujudkan dalam bentuk tabel. Relasi database berupa tabel dengan kolom dan baris 2.10 Internet 35 Gambar 2.9 World Wide Web Page Stucture. (Senn, 1998, p123) yang dimodifikasi 2.10.1 Pengertian Internet Internet adalah sekumpulan jaringan yang berkomunikasi yang diinterkoneksikan melalui bridge dan/atau router (William Stalling, 2002, p153). Internet merupakan jaringan komputer terbesar di dunia (jaringan dari jaringan) yang merupakan kumpulan dari lebih 200.000 komputer individual yang dimiliki pemerintahan, universitas, grup nirlaba, perusahaan, sekolah, bisnis, konsumer, serta 36 organisasi di seluruh dunia, di mana mereka dapat saling berkomunikasi dan bertukar informasi secara bebas (Turban, 2001, p208). Dengan Internet seseorang dapat memperoleh banyak informasi dengan mudahnya. Menurut Wikipedia (anonim 1), Internet adalah sistem umum global yang dapat diakses dari jaringan komputer yang saling terhubung. Internet menggunakan packet switching dalam transmisi datanya dan menggunakan Internet Protocol (IP) yang terstandarisasi. Sering pula disebut “Net”, internet berasal dari nama “interconnection of networks” (Senn, 1998, p106), karena internet adalah jaringan komunikasi yang menghubungkan banyak jaringan lainnya. 2.10.2 World Wide Web (WWW) Situs Wikipedia (anonim 1) menyebutkan World Wide Web sebagai tempat informasi dunia di mana masyarakat dapat ”membacanya” atau ”menulisnya” melalui berbagai alat yang terhubung dengan internet. Biasa disebut juga dengan Web (the Web), World Wide Web merupakan gabungan dari dokumen-dokumen elektronik yang terinterkoneksi (web pages) yang terhubung melalui internet (Senn, 1998, p117). 2.10.3 Web Site Web site adalah koleksi dari halaman web yang biasanya dimiliki oleh suatu nama domain atau sub-domain dalam World Wide Web dalam Internet (anonim 1). Web site berupa komputer yang terhubung pada internet yang mengandung hypermedia yang bisa diakses dari berbagai komputer dalam jaringan melalui link dari hypertext (McLeod, 2001, p55). 37 2.10.4 IP Address (Internet Protocol Address) IP Address merupakan alamat unik dari alat-alat supaya dapat saling mengidentifikasi dan berkomunikasi dalam jaringan komputer dengan menggunakan Internet Protocol (IP) standar. Nomor IP ini memiliki empat bagian yang terbagi dengan titik, contoh: 204.71.200.72 (IP address milik www.yahoo.com) (anonim 1 dan Turban, p213). 2.10.5 Browser Browser adalah sistem software yang dapat me-retrieve (memperoleh) hypermedia dengan mengetikkan parameter pencariannya atau mengklik sebuah gambar (McLeod, 2001, p56). Browser atau web browser merupakan program komputer yang berjalan di sisi client yang dirancang untuk menempatkan dan menampilkan informasi dalam World Wide Web. Web browser dapat menampilkan halaman web, berpindah antar halaman web, menggunakan hyperlink dan mencari halaman-halaman yang diinginkan (Senn, 1998, p122). Menurut wikipedia (anonim 1) Web browser adalah aplikasi software yang memungkinkan user dapat melihat dan berinteraksi dengan teks, gambar, dan informasi lainnya yang lokasinya dalam sebuah halaman web pada sebuah web site dalam World Wide Web atau sebuah LAN. 2.11 Server 2.11.1 Pengertian Server Server adalah komputer atau software yang menyediakan layanan untuk komputer lainnya (anonim 1). Server adalah komputer utama jaringan dan menyediakan 38 sumber-sumber atau service yang dapat dibagikan (share) ke jaringan (Senn, 1998, p461). 2.11.2 Web Server Web server merupakan komputer dan program komputer yang bertanggung jawab untuk menerima permintaan HTTP dari client/Web browser dan menyediakan halaman web (dokumen HTML atau objek seperti gambar atau lainnya) (anonim 1). 2.11.3 Database Server Database server adalah program komputer yang menyediakan layanan database untuk program komputer lainnya (anonim 1). Server ini mengatur semua proses penyimpanan data dan transaksi suatu aplikasi. Contoh software untuk menjalankan database server adalah MS SQL Server 2000, Oracle 9i, Oracle 10g. 2.12 DBMS (Database Management System) DBMS (Turban, 2001, p145) adalah suatu software yang memungkinkan pemakai dapat mengelola (meyimpan, meng-update dan men-retrieve) data di dalam suatu database secara lebih mudah dan efisien. Ada empat komponen DBMS menurut Turban (2001, p146), yaitu: 1. Data Model, adalah cara data secara konseptual distrukturisasi/disusun. 2. Data Definition Language (DDL), adalah tipe dari informasi yang ada di database dan bagaimana disusun. 39 3. Data Manipulation Language (DML), digunakan untuk menampilkan query (view) atau isi, menyimpan dan meng-update informasi, dan mengembangkan aplikasi dari database 4. Data Dictionary, menyimpan definisi dari elemen-elemen data dan karakteristik data dan mengatur representasi fisik, data ownership dan sekuriti. Connoly (2002, p16) mendefinisikan DBMS sebagai sistem perangkat lunak yang memungkinkan pemakai untuk mendefinisikan, membuat, me-maintain, dan mengontrol akses ke database. Gambar 2.10 DBMS. (Connoly, 2002) 2.13 RDBMS (Relational DBMS) DBMS terdiri dari beberapa jenis, dan jenis relasional adalah yang paling populer. RDBMS (Relational Database Management System) adalah DBMS untuk jenis ini. RDBMS dikatakan Haryono (2003, p17) sebagai satu paket perangkat lunak yang menyediakan berbagai layanan untuk perancangan, penggunaan, dan pemeliharaan 40 database relasional. RDBMS modern memiliki kelebihan seperti pada interface, maintenance integritas dan keamanan database, backup dan recovery, serta pengaturan akses yang bersamaan. RDBMS menurut Connoly (2002, p70 - p84) merupakan software untuk database relational yang dapat merepresentasikan database dalam bentuk tabel. RDBMS menurut (Irmansyah, 2003, p9) adalah sekumpulan data yang disimpan sedemikian rupa sehingga mudah diambil informasinya bagi pengguna, dan data tersebut saling berhubungan. RDBMS memiliki tiga prinsip yaitu: • Data Definition, untuk mendefinisikan jenis data yang akan dibuat. • Data Manipulation, operasi yang dapat dilakukan terhadap data seperti query, filtering, update. • Data Control, berhubungan dengan pengendalian data, seperti data ownership, data security. 2.14 SQL (Structured Query Language) Irmansyah (2003, p10) mengartikan SQL sebagai bahasa yang digunakan untuk berkomunikasi dengan database. SQL menjadi bahasa standar untuk RDBMS, sehingga walaupun menggunakan perangkat lunak yang berbeda, sintaks/perintahnya sama yaitu SQL. SQL merupakan sebuah bahasa database. SQL adalah bahasa database yang sekarang distandarisasi secara internasional menjadi bahasa untuk mendefinisikan dan memanipulasi database relasi menurut ISO (International Standard Organization) (Connoly, 2002, p111–p113). SQL memiliki beberapa kelebihan seperti sintaks dan strukturnya mudah dipelajari secara relatif, usaha pemakai yang minimal dalam 41 melakukan sebuah tugas, dan portabel karena telah distandarisasi sehingga SQL dapat dikenal oleh banyak DBMS. SQL memiliki dua komponen utama yaitu DDL (Data Definition Language) dan DML (Data Manipulation Language). 2.15 Microsoft SQL Server 2000 Telah dibahas di atas, MS SQL SERVER 2000 merupakan salah satu contoh DBMS yang digunakan untuk mengatur database. Berikut definisi formal dari software buatan Microsoft ini: • Berdasarkan buku karangan Kalen Denaley (2001, c2), SQL Server 2000 merupakan RDBMS (Relational Database Management System) untuk client/server dengan kinerja yang tinggi. SQL Server 2000 dibuat untuk menangani transaction processing yang volumenya sangat tinggi. • Menurut SQL Server 2000 Help sendiri software ini adalah kumpulan dari komponen yang bekerja sama untuk memenuhi kebutuhan penyimpanan dan analisa data dari situs web terbesar dan sistem pemrosesan data perusahaan. 2.16 Stored Procedure (SP) Stored Procedure merupakan suatu service dari DBMS yang menyimpan statement SQL yang bisa digunakan untuk mengakses database (definisi dan manipulasi). Dalam SQL SERVER BOOKS-ONLINE, Stored Procedure adalah koleksi prakompilasi dari pernyataan Transact-SQL sebagai unit yang disimpan, memiliki nama dan dapat diproses. 42 Stored Procedure digunakan untuk mengeksekusi perintah-perintah SQL. Coding dengan bahasa Transact-SQL beserta dengan statement SQL (untuk manipulasi database) dapat dibuat sendiri sesuai kebutuhan, disimpan dan dipanggil dengan parameter. Menggunakan Stored Procedure memiliki keuntungan seperti mencegah SQL-Injection, standarisasi coding, arsitektur data dapat dipisahkan dari logika aplikasi sehingga meningkatkan performa manipulasi database. 2.17 Internet Information Service (IIS) Menurut Microsoft Management Console Help (atau Microsoft IIS Help atau IIS 5.1 Documentation), IIS merupakan web service dari Windows XP yang digunakan untuk mem-publish informasi ke internet atau intranet. IIS memiliki cakupan luas dari fitur-fitur administratif untuk menangani situs web dan web server. Dengan adanya IIS, Aplikasi web dapat digabungkan dengan fitur programatik seperti ASP sehingga akan lebih deploy scalable dan fleksibel. IIS merupakan versi lebih lanjut dari PWS (Personal Web Server) 2.18 .NET Framework Menurut MSDN (2003), .NET Framework merupakan integrasi komponen Windows yang mendukung pengembangan dan pengoperasian generasi terbaru dari aplikasi dan XML web service. Komponen utama dari .NET Framework adalah Common Language Runtime (CLR) dan class library dari .NET Framework. Selain dua komponen utama tersebut, ada satu lagi komponen penting yaitu ASP.NET. .NET Framework menyediakan lingkungan (environment) yang sangat produktif, 43 berstandarisasi, dan mendukung banyak bahasa untuk integrasi modal yang sudah dimiliki dengan aplikasi dan service generasi selanjutnya, serta dapat menyambut tantangan dari kemampuan internet yang hebat (deployment dan operasi). .NET Framework adalah platform untuk bekerja baru yang menyederhanakan pengembangan aplikasi menjadi highly distributed environment dari internet. Menurut Julian Templeman (2002, p7) .NET adalah teknologi dari Microsoft yang memiliki API (object-oriented API yang terdiri dari class yang bisa diakses bahasa pemrograman) dan tool untuk membuat aplikasi window dan web, serta komponen dan service dalam halaman web. .NET. Dengan kehadiran .NET, sistem terdistribusi berdasarkan komponen sekarang menjadi lebih mudah, lebih fleksibel, dan lebih powerful daripada sebelumnya. Semua bahasa yang dikompilasi dengan .NET Framework akan menjadi kode-kode byte yang sama (Intermediate Language). Berikut ini adalah gambar dari komponen utama .NET Framework 44 Gambar 2.11 .Net Framework (Julian, 2002, p9) 2.19 Visual Studio .NET Menurut MSDN (2003), Visual Studio .NET merupakan tool/alat pengembangan untuk membangun aplikasi web ASP, XML web service, aplikasi desktop, dan aplikasi mobile. Visual Studio .NET merupakan IDE (Integrated Development Environment) yang terdiri dari bahasa pemrograman Visual Basic .NET, Visual C++ .NET, Visual C# .NET, dan Visual J# .NET, yang terintegrasi sehingga memungkinkan di antara bahasa-bahasa tersebut untuk dapat menggunakan tool dan fasilitas bersama. Dengan berbasiskan .NET Framework bahasa-bahasa ini dapat meningkatkan fungsinya yang memungkinkan pengembangan aplikasi web ASP dan XML web service menjadi lebih sederhana. 2.20 Bahasa Pemrograman C# Menurut MSDN (2003), C# merupakan bahasa pemrograman baru yang dibuat untuk membangun aplikasi enterprise yang beroperasi pada .NET Framework. C# merupakan evolusi dari bahasa C dan C++. C# adalah bahasa pemrograman baru yang diciptakan Microsoft untuk developer .NET untuk mengembangkan aplikasi yang berbasiskan platform .NET. C# adalah bahasa high-level yang sederhana berdasarkan pada C++ dan Java. C# bisa dibilang hasil turunan dari C++ atau Java yang diperbaiki. Bahasa ini juga mendukung konsep berorientasi objek, serta fitur-fiturnya seperti encapsulation, inherritance, dan polymorphism. 45 2.21 ASP.NET (Active Server Page .NET) Menurut MSDN (2003), ASP.NET adalah gabungan dari teknologi dalam Microsoft .NET Framework untuk membuat aplikasi web dan XML web service. ASP.NET membentuk kelas pemrograman pada .NET Framework, menyediakan model aplikasi web dengan banyak kontrol dan infrastruktur yang membuatnya sederhana untuk membangun aplikasi web ASP. Halaman ASP.NET dijalankan di sisi server dan men-generate tanda HTML, WML atau XML yang dikirimkan ke dekstop browser atau mobile browser. Halaman ini menggunakan model terkompilasi dan event-driven programming yang mampu meningkatkan kinerja dan dapat memisahkan logika aplikasi dari user interface. Halaman ASP.NET dan XML web service yang diciptakan dengan ASP.NET memiliki logika server-side dapat dibuat dengan berbagai bahasa pemrograman yang kompatibel dengan .NET. 2.22 R.a.d. Control - Telerik R.a.d. Control adalah sebuah produk yang dikembangkan oleh Telerik. R.a.d. Control untuk mempermudah developer ASP.NET dalam pembuatan aplikasi web yang menarik dan interaktif dengan mengurangi perlunya proses coding terutama dalam bahasa Javascript dan XML. 2.23 N-Tier Solution 46 Architectural Patterns / Framework yang digunakan untuk proyek ini menggunakan standar N-Tier Solution dari Duwamish (contoh proyek dari Visual Studio) di mana sebuah solution terdiri dari beberapa layer / project yang memiliki fungsi masing-masing. Aplikasi yang menggunakan framework ini akan dibagi menjadi beberapa layer. Tiap layer memiliki tanggung jawab masing-masing. Class dan fungsi dari tiap layer dapat berhubungan dengan class dan fungsi dari layer lainnya. Dalam menyelesaikan sebuah task dari user, ada komunikasi antar fungsi tersebut. Misalnya fungsi 1 untuk memasukkan data pelanggan (layer UI) berhubungan dengan fungsi 2 (layer DB) yang boleh melakukan operasi database langsung. Fungsi 1 hanya menanggani user interface pemasukan data, sementara fungsi 2 yang meng-insert ke database. Dengan begitu sistem akan lebih modular, terkendali (sekuritasnya) dan lebih elegan (pembagian fungsi dan tanggung jawab yang logis). Berikut pembagian layer pada N-Tier Solution: • Layer Common. Layer Common merupakan layer yang berisi class untuk konfigurasi aplikasi (teknikal), class dengan fungsi tambahan (enum dan class helper) dan class data (data class). Class data adalah mapping (penyesuaian) dari tabel dari database. Disebut juga class data karena digunakan untuk menampung data yang berhubungan dengan data dari tabel di database. Dengan enkapsulasi data seperti ini, sistem akan lebih mudah beradaptasi jika mengalami perubahan (tabel atau aturan bisnis). 47 • Layer Business Facade (façade). Layer yang bertindak sebagai pengatur yang terletak di antara layer Web UI dan Data Access. Bila terdapat aturan-aturan bisnis, maka Business Facade akan memanggil layer Business Rules. • Layer Business Rules. Layer yang berisi semua aturan bisnis (business rule). Framework ini sangat mengakomodasi perubahan aturan bisnis yang kerap kali terjadi. Layer ini biasanya dipanggil oleh layer Business Facade untuk memastikan suatu proses bisnis valid dikerjakan atau tidak. Bila valid/sesuai aturan bisnis, maka perintah dapat dilanjutkan ke layer selanjutnya (Data Access). • Layer Data Access. Layer ini berinteraksi secara langsung dengan database. Fungsifungsi yang berhubungan dengan operasi database (view, insert, update, delete, dan lain-lain) berada di class pada layer ini (umumnya untuk tiap tabel master dalam database diwakili oleh satu class). • Layer System Framework. Layer ini berisi berbagai macam konfigurasi (pengaturan), seperti letak virtual folder, exception handling, logging, konstanta, dan sebagainya. • Layer Web UI. Semua halaman web dan user control terletak di layer ini. Client melakukan request ke halaman di layer ini, kemudian layer ini yang memproses apa yang harus dikerjakan, dan akhirnya mengirim kembali hasil kepada client. 48 Gambar 2.12 N-Tier Solution Framework Ketika client melakukan request ke sebuah halaman pada layer Web UI, halaman tersebut akan memprosesnya. Halaman tersebut akan memanggil fungsi dari class pada layer Business Facade. Selanjutnya layer Business Facade akan memanggil fungsi pada layer Data Access, namun jika perlu validasi aturan bisnis, maka class yang bertanggung jawab pada layer Business Rules akan dipanggil terlebih dahulu, menentukan boleh atau tidaknya fungsi tersebut dilakukan. Jika aturan bisnis terpenuhi, maka fungsi dari class yang terdapat di layer Data Access akan dijalankan. Pada layer Data Access ini dapat dilakukan berbagai operasi database. Class dari layer Common dapat digunakan bila fungsi-fungsi tersebut mengirim data-data yang berhubungan dengan database (dalam parameter dan return value). 2.24 Terminologi Sistem E-BiNus Beberapa terminologi dalam aplikasi E-BiNus: • Client : Orang yang memberikan proyek software. 49 • LMS (Learning Management System) : Aplikasi yang mendukung proses pembelajaran. Untuk E-BiNus, LMS yang digunakan adalah BinusMaya / BLMS (Binus Learning Management System) • CMS (Content Management System) : Aplikasi yang mendukung proses pengolahan data untuk LMS. • E-BiNus Front End : aplikasi yang di-publish ke internet, yang digunakan oleh pengunjung atau mahasiswa yang telah mendaftar ke E-BiNus. • E-BiNus Back End : aplikasi yang digunakan oleh administrator E-BiNus untuk melakukan pengaturan data yang berkaitan dengan aplikasi E-BiNus. • Modul pelajaran : pelajaran / mata kuliah yang tersedia. • Modul aplikasi : modul yang merupakan bagian dari aplikasi.