IMPLEMENTASI & APLIKASI BASIS DATA IMPLEMENTASI BASIS DATA IMPLEMENTASI BASIS DATA Membangun basis data fisik yang ditempatkan dalam memori sekunder (harddisk) dengan bantuan DBMS yang dipilih. Sebuah diagram E-R akan direpresentasikan menjadi sebuah basis data fisik. Komponen-komponen diagram E-R yang berupa himpunan entitas dan himpunan relasi akan ditransformasikan menjadi tabel-tabel yang merupakan komponen utama pembentuk basis data. Atribut-atribut yang melekat pada masing-masing himpunan entitas dan himpunan relasi akan dinyatakan sebagai field-field dari tabel-tabel yang sesuai. TRANSFORMASI MODEL DATA KE BASIS DATA FISIK Transformasi Umum/Dasar Implementasi Entitas lemah dan Sub Entitas Implementasi Relasi Tunggal (Unary Relation) Implementasi Multi Entitas (N-ary Relation) Implementasi Relasi Ganda (Redudant Relation) Implementasi Spesialisasi & Generalisasi Implementasi Agregasi TRANSFORMASI UMUM/DASAR Setiap himpunan entitas akan diimplementasikan sebagai sebuah tabel (file data). TRANSFORMASI UMUM/DASAR Setiap himpunan entitas akan diimplementasikan sebagai sebuah tabel (file data). TRANSFORMASI UMUM/DASAR Setiap himpunan entitas akan diimplementasikan sebagai sebuah tabel (file data). IMPLEMENTASI RELASI 1 - 1 IMPLEMENTASI RELASI 1 - N IMPLEMENTASI RELASI N - N IMPLEMENTASI RELASI N - N IMPLEMENTASI ENTITAS LEMAH & SUB ENTITAS IMPLEMENTASI ENTITAS LEMAH & SUB ENTITAS IMPLEMENTASI SUB ENTITAS IMPLEMENTASI SUB ENTITAS IMPLEMENTASI RELASI TUNGGAL Implementasi relasi tunggal dari/ke himpunan entitas yang sama dalam diagram E-R tergantung pada derajat relasinya. Unit relasi tunggal dengan derajat relasi 1–N dapat diimplementasikan melalui penggunaan field key dua kali tapi untuk fungsi yang berbeda. IMPLEMENTASI RELASI TUNGGAL 1-N IMPLEMENTASI RELASI TUNGGAL N-N IMPLEMENTASI RELASI MULTI ENTITAS Relasi Dosen – Kuliah = 1 – N Relasi Ruang – Kuliah = 1 – N Relasi Dosen – Ruang = N - N IMPLEMENTASI RELASI MULTI ENTITAS Jika Relasi Ruang – Kuliah = N – N, maka dibentuk tabel baru IMPLEMENTASI RELASI GANDA IMPLEMENTASI RELASI GANDA IMPLEMENTASI SPESIALISASI IMPLEMENTASI SPESIALISASI lastName firstName ssn address Employee balance Superclass Connector ISA Subclass Connector HourlyEmployee hourly PayRate SalariedEmployee weekly PayRate vacation LeaveHours sickLeave Hours lastName firstName ssn address balance Employee ISA ISA HourlyEmployee hourly PayRate SalariedEmployee weekly PayRate vacation LeaveHours sickLeave Hours Cashier Secretary account typingRate Shipping Clerk Stock Clerk efficiency accuracy IMPLEMENTASI GENERALISASI IMPLEMENTASI AGREGASI IMPLEMENTASI AGREGASI OBJECT ORIENTED DATA MODELING? Fokus seputar object dan class Melibatkan inheritance (pewarisan) Enkapsulasi pada data dan behaviour Keuntungan dari pemodelan object-oriented Meningkatkan komunikasi antara user, analysis, designer dan programmer Reusability of analysis, design, and programming results. 30 OO VS. ER DATA MODELING Object Oriented Class Object Association Inheritance of behavior ER Entity type Entity instance Relationship No representation of behavior Object-oriented modeling is frequently accomplished using the Unified Modeling Language (UML) 31 OBJECT An entity that has a well-defined role in the application domain, as well as state, behavior, and identity Tangible: person, place or thing Concept or Event: department, performance, marriage, registration Objects exhibit BEHAVIOR as well as attributes Different from entities 32 STATE, BEHAVIOR, IDENTITY State: includes its properties (attributes & relationship) and values of the properties Behavior: how an object acts and reacts Behavior is expressed through operations that can be performed on it Identity: every object has a unique identity, even if all of its attribute values are the same 33 STATE, BEHAVIOR, IDENTITY Example: OBJECT: Student STATE: name, DOB, year, address, phone Mary Jones, 12.9.80, 1st year….(characterized by its attributes & values of attribute) BEHAVIOR: operations like calc-gpa Mary Jones object packages both state and its behavior 34 OBJECT INSTANCE & OBJECT CLASS Object Instance: an individual object Object Class: a set of objects that share common structure and behavior 35 (a) Class diagram showing two classes Class diagram shows the static structure of an object-oriented model: object classes, internal structure, relationships. Student class: group of students sharing common structure & behavior-all students have in common properties of name, DOB, year, address & phone –exhibit common behavior-calc-gpa, calc-age & register-for(course) operations Student class can participate in relationship register-for with Course class 36 (b) Object diagram objectname:classname Object attributes & values Object diagram shows instances that are compatible with a given class diagram. 37 ASSOCIATIONS Association: Relationship among object classes Degree may be unary, binary, ternary or higher Association Role: Role of an object in an association The end of an association where it connects to a class (example manager) Multiplicity: How many objects participate in an association. Lower-bound..Upper bound (cardinality). 2…5 denotes a minimum of 2 and a maximum of 5 objects in a relationship 38 APLIKASI BASIS DATA Bagi pemakai mahir yang berinteraksi langsung terhadap basis data melalui DBMS, operasi basis data itu dapat berbentuk: Penambahan data. Pencarian data. Pengubahan data. Penghapusan data. Pengurutan data. Penggabungan data. Penyimpulan/pengelompokkan data. dan lain-lain. Bagi pemakai akhir (end-user) yang memang tidak bersentuhan langsung dengan objek basis data, tetapi lebih banyak bersinggungan dengan aktivitas nyata yang memang terjadi di mana sistem basis data itu diterapkan, maka akan lebih mengenal operasi basis data seperti: Pemasukan data (master barang, transaksi penjualan, jumalakuntansi, nasabah baru, dan lain-lain). Monitoring data transaksi. Pencetakan laporan harian/bulanan. Penutupan data transaksi bulanan. dan lain-lain. Pada level implementasi, perbedaan tersebut dijembatani oleh adanya perangkat lunak (aplikasi) yang khusus dibuat untuk dapat digunakan oleh para pemakai akhir (end-user). Aplikasi ini akan menyediakan sejumlah operasi (menu) yang sesuai dengan berbagai aktivitas nyata yang memang dilakukan oleh para pemakai akhir (end-user). DBMS Sofware untuk merancang aplikasi basis data : Java, VB.Net, ASP.Net, Delphi, MS Access, Visual Foxpro dll kadang dianggap bukan DBMS. DBMS yang besar (seperti Oracle, CA-OpenIngres, Sybase, Informix, IBM-DB2, SQL Server) memang dirancang sejak awal untuk berdiri sendiri dan terpisah dari aplikasi basis datanya. Interaksi antara aplikasi basis data dan DBMS merupakan interaksi dua arah (digambarkan dengan adanya tanda panah bolak-balik) antara dua perangkat lunak. ARSITEKTUR SISTEM Beberapajenis arsitektur sistem yang dapat digunakan adalah : Sistem Tunggal/Mandiri (Stand-Alone) Sistem Tersentralisasi (Centralized System). Sistem Client-Server Sistem Tunggal/Mandiri (Stand-Alone) Pada arsitektur ini, DBMS, basis data dan aplikasi basis data ditempatkan pada mesin (komputer) yang sama. Dengan demikian, pemakai yang dapat menggunakannya di setiap saat juga hanya satu orang (single user). Arsitektur ini merupakan arsitektur sistem yang paling sederhaha dan paling murah. Arsitektur semacam ini dapat kita pilih dan gunakan, jika basis data yang dikelola memang tidak terlalu besar dan lebih bersifat membantu mempercepat pekerjaan-pekerjaan administratif. Sistem Tersentralisasi (Centralized System) Arsitektur ini terdiri atas sebuah mesin server dan sejumlah terminal (yang menjadi tempat user berinteraksi dengan sistem). Yang tersentralisasi dalam arsitektur ini dapat mencakup basis data, DBMS dan aplikasi basis data atau basis data saja. Pada bentuk sentralisasi yang pertama, beban server tentu saja sangat berat, karena digunakan secara bersama-sama oleh banyak pemakai untuk menjalankan aplikasi basis data dan DBMS (di samping tentu saja sistem operasi untuk jaringan). Sistem Client-Server Kelemahan pada bentuk Sistem Tersentralisasi yang pertama, yaitu beratnya beban server yang harus menangani semua proses, diatasi dengan membagi beban itu menjadi 2 bagian : client (yang menjalankan aplikasi basis data) dan server (yang menjalankan DBMS dan berisi basis data) pada mesin yang berbeda. --SELESAI-- ANY QUESTION?