SELAMAT DATANG DI BLOG INI...SEMOGA TERSENGAT DAN BERMANFAAT

Pages

Selasa, 25 Maret 2014

Pertemuan 3 (TUGAS)

Cara membuat ERD, Class Diagram, dan Mengimplementasikannya ke oracle dari table berikut:



ERD pada table diatas adalah:


Class Diagram pada table diatas adalah:


Implementasi dalam oracle diatas adalah:

1. Membuat table pegawai:CREATE TABLE  "PEGAWAI"
   (    "NIP" VARCHAR2(6),
    "NAMA" VARCHAR2(32),
    "TGL_LAHIR" DATE,
    "TGL_MASUK" DATE,
    "KODE_BAG" VARCHAR2(15),
     CONSTRAINT "PEGAWAI_PK" PRIMARY KEY ("NIP") ENABLE,
     CONSTRAINT "PEGAWAI_FK" FOREIGN KEY ("KODE_BAG")
      REFERENCES  "BAGIAN" ("KODE_BAG") ENABLE
   )


2. Membuat table bagian:
CREATE TABLE  "BAGIAN"
   (    "KODE_BAG" VARCHAR2(15),
    "NAMA" VARCHAR2(32),
    "LOKASI" VARCHAR2(32),
     CONSTRAINT "BAGIAN_PK" PRIMARY KEY ("KODE_BAG") ENABLE
   )

3. Membuat table tanggungan:
 CREATE TABLE  "TANGGUNGAN"
   (    "NIP" VARCHAR2(6),
    "NAMA" VARCHAR2(32),
    "JEN_KEL" VARCHAR2(2),
    "HUBUNGAN" VARCHAR2(15),
     CONSTRAINT "TANGGUNGAN_FK" FOREIGN KEY ("NIP")
      REFERENCES  "PEGAWAI" ("NIP") ENABLE
   )

4. Membuat table pegawai tetap:
CREATE TABLE  "PEG_TETAP"
   (    "NIP" VARCHAR2(6),
    "GAPOK" NUMBER,
     CONSTRAINT "PEG_TETAP_FK" FOREIGN KEY ("NIP")
      REFERENCES  "PEGAWAI" ("NIP") ENABLE
   )

5.  Membuat table pegawai harian:
CREATE TABLE  "PEG_HARIAN"
   (    "NIP" VARCHAR2(6),
     CONSTRAINT "PEG_HARIAN_FK" FOREIGN KEY ("NIP")
      REFERENCES  "PEGAWAI" ("NIP") ENABLE
   )

6.  Membuat table pegawai mingguan:
CREATE TABLE  "PEG_MINGGUAN"
   (    "NIP" VARCHAR2(6),
     CONSTRAINT "PEG_MINGGUAN_FK" FOREIGN KEY ("NIP")
      REFERENCES  "PEGAWAI" ("NIP") ENABLE
   )

7.  Membuat table kerja:
CREATE TABLE  "KERJA"
   (    "NIP" VARCHAR2(6),
    "KD_PROYEK" VARCHAR2(5),
    "LAMA" NUMBER,
     CONSTRAINT "KERJA_FK" FOREIGN KEY ("NIP")
      REFERENCES  "PEGAWAI" ("NIP") ENABLE,
     CONSTRAINT "KERJA_FK2" FOREIGN KEY ("KD_PROYEK")
      REFERENCES  "PROYEK" ("KD_PROYEK") ENABLE
   )

8.  Membuat table proyek:
CREATE TABLE  "PROYEK"
   (    "KD_PROYEK" VARCHAR2(5),
    "NAMA_PROYEK" VARCHAR2(32),
    "LOKASI_PROYEK" VARCHAR2(32),
    "KODE_BAG" VARCHAR2(15),
     CONSTRAINT "PROYEK_PK" PRIMARY KEY ("KD_PROYEK") ENABLE,
     CONSTRAINT "PROYEK_FK" FOREIGN KEY ("KODE_BAG")
      REFERENCES  "BAGIAN" ("KODE_BAG") ENABLE
   )









Perancangan Basis Data(2)













REFERENSI:

Class diagram digunakan untuk menampilkan kelas-kelas dan paket-paket di dalam system. Class diagram memberikan gambaran system secara statis dan relasi antar mereka. Biasanya, dibua beberapa class diagram untuk system tunggal. Beberapa diagram akan menampilkan subset dari kelas-kelas dan relasinya. Dapat dibuat beberapa diagram sesuai dengan yang diinginkan untuk mendapatkan gambaran lengkap terhadap system yang dibangun.
Class diagram adalah alat perancangan terbaik untuk tim pengembang. Diagram tersebut membantu pengembang mendapatkan struktur system sebelum kode ditulis, dan membantu untuk memastikan bahwa system adalah desain terbaik.
-          Kelas
Kelas adalah sesuatu yang membungkus informasi dan perilaku. Secara tradisional, system dibangun dengan ide dasar bahwa akan menyimpan informasi pada sisi baris data dan data perilaku pengolahnya pada sisi aplikasi. Salah satu perbedaan terstruktur dengan pendekatan berorientasi obyek adalah
pada berorientasi obyek menggabungkan informasi dan perilaku pengolah informasi dan menyembunyikan semua kedalam sesuatu yang disebut kelas. Dalam UML, kelas ditunjukkan menggunakan notasi sebagai berikut.

 
Bagian paling atas pada notasi Class digunakan sebagai nama kelas, dan secara opsional juga digunakan stereotype-nya. Bagian tengah digunakan untuk menyimpan atribut, dan bagian paling bawah digunakan menyimpan operasi.
-          Menentukan kelas
Cara yang baik untuk menemukan kelas-kelas adalah mulai dari memperhatikan aliran kejadian (flow of event) dari suatu use case. Perhatikan kata benda didalam aliran kejadian, mungkin merupakan salah satu dari empat hal berikut.
1.      Actor
2.      Kelas
3.      Atribut dari kelas
4.      Ekspresi, bukan actor, bukan kelas, dan bukan atribut.
Dengan melakukan seleksi kata benda dalam aliran kejadian, dapat ditemukan kelas-kelas dalam system. Alternative lainnya, dapat di uji obyek-obyek dalam sequence diagram dan collaboration diagram.
Ada dua cara yang biasa dilakukan berkaitan dengan urutan pendefinisian antar kelas-kelas dalam class diagram dan sequence diagram atau collaboration diagram. Yang pertama, dengan membuat sequence diagram atau collaboration diagram lebih dulu. Kemudian melanjutkannya dengan membuat class diagram. Sebaliknya, yang kedua, yaitu dengan menemukan kelas-kelas dan membuat class diagram terlebih dahulu, kemudian menggunakan kelas-kelas terebut sebagai “Kamus” obyek-obyek dan relasinya untuk membuat sequence diagram atau collaboration diagram.
-          Stereotype pada kelas
Stereotype adalah sebuah mekanisme yang digunakan untuk mengkategorikan kelas-kelas. Misalnya, dapat dibuat stereotype form lebih dulu, kemudian menentukan kelas-kelas dilangkah selanjutnya. Fitur ini membantu untuk lebih memahami tanggung jawab terhadap masing-masing kelas dalam model. Kelas-kelas dengan stereotype ‘form’ bertanggung jawab menampilkan dan menerima informasi dari pemakai.
Stereotype juga membantu dalam proses pembangkitan kode. Ketika proses pembangkitan kode, stereotype kelas menentukan tipe kelas yang akan diabawa kebahasa pemrograman.
Beberapa Stereotype dapat digunakan sejak pada tahap proses analisis, pada saat belum ditentukan bahasa pemrograman teretentu untuk membangkitkan kode. Stereotype juga dapat tergantung pada bahasa pemrograman yang dipilih dan digunakan pada tahap proses desain.
Ketika analisis, kelas-kelas dapat dikategorikan menurut fungsi yang mereka lakukan. Ada 3 tipe Stereotype kelas dalam UML yang digunakan pada analisis, yaitu : pembatas (boundry), entitas(entity) dan control.
a.       Kelas-kelas pembatas
Kelas-kelas pembatas adalah kelas-kelas yang terletak antara system dengan dunia sekililingnya. Semua form, laporan-laporan, antarmuka(interface) keperangkat lunak seperti Printer atau scanner, dan antar muka (interface) ke system lainnya adalah termasuk dalam kategori ini. UML mempresentasikan
kelas pembatas sebagai berikut.
Untuk menemukan dan mengidentifikasi kelas-kelas pembatas dapat dilakukan dengan menguji diagram use case. Minimal harus ada satu kelas pembatas untuk setiapa interaksi antara actor - use case. Kelas pembatas adalah apa saja yang memungkinkan actor berinteraksi dengan system.
Tidak perlu membuat kelas pembatas untuk setiap pasangan actor- use case. Sebagai contoh, bila mempunyai dua actor yang sama-sama menginisialisasi use case yang sama untuk berkomunikasi dengan system.
b.      Kelas-kelas entitas
Kelas-kelas entitas menangani informasi yang disimpan dalam penyimpanan tetap. Kelas entitas biasanya ditemukan dalam aliran kejadian (flow of event) pada diagram interaksi. Mereka adalah kelas-kelas yang sebagian besar bermakna terhadap pemakai dan secara tipikal diberikan nama menggunakan teknologi domain bisnisnya.

       Perhatikan kata benda dalam aliran kejadian. Beberapa kata benda akan menjadi kelas entitas dalam system. Cara lainnya adalah dengan memperhatikan struktur basis data. Jika rancangan basis data telah dibuat, perhatikan nama-nama table. Tabel-tabel menangani beberapa record informasi secara permanen, sementara kelas entitas, menangani informasi didalam memori computer saat computer sedang dihidupkan. Dalam UML, notasi kelas entitas digambarkan sebagai berikut.
Dari rancangan basis data, dapat di telusuri balik beberapa field pada basis data kebutuhan system. Kebutuhan system menentukan aliran kejadian(flow of event), dan aliran kejadian menentukan obyek-obyek, kelas-kelas, dan attribut-attribut dalam kelas. Masing-masing attribut dalam kelas entitas mungkin akan menjadi field dalam basis data.
c.       Kelas-kelas Kontrol
Kelas kontrol bertanggung jawab untuk mengkoordinasikan kegiatan-kegiatan terhadap kelas lainnya. Kelas ini bersifat opsional, tetapi jika kelas Kontrol ini digunakan, maka secara tropical satu kelas control untuk satu use case tersebut. Ada kelas-kelas control yang digunakan bersama oleh beberapa use case. Dalam UML, notasi kelas entitas digambarkan sebagai berikut.

-          Penamaan kelas
Masing-masing kelas harus mempunyai nama yang unik. Sebagian besar organisasi mempunyai konvensi penamaan sendiri untuk menamakan kelas-kelas yang dibuatnya. Umumnya kelas-kelas dinamakan menggunakan kata benda tunggal.
Nama kelas tidak menggunkan spasi. Ini dilakukan karena alasan praktis, dimana beberapa bahasa pemrograman tidak membolehkan adanya spasi. Hal lainnya yang perlu diperhatikan adalah bahwa nama kelas hendaknya pendek, cukup untuk menjelaskan apa yang akan kelas lakukan.
Jadi penamaan kelas sangat tergantung pada organisasi kita. Jika kita mempunyai kelas yang digunakan dalam organisasi yang bersangkutan, tetapi yang jelas bahwa hal tersebut harus konsisten digunakan untuk keseluruhan kelas-kelas yang dibuatnya.
-          Visibilitas kelas
Pilihan visibilitas menentukan dapat tidaknya sebuah kelas dilihat dari luar paket. Ada 3 pilihan visibilitas untuk sebuah kelas yaitu :
1.      Public
2.      Menyatakan bahwa sebuah kelas dapat dilihat dari kelas-kelas lainnya dalam system.
3.      Protected atau private
4.      Menyatakan bahwa sebuah kelas dapat dilihat dari kelas-kelas majemuk(nested), friends, atau dari kelas itu sendiri.
5.      Package atau implementation.
6.      Menyatakan bahwa sebuah kelas dapat dilihat hanya oleh kelas yang lain dalam paket yang sama.
-          Multiplicity kelas
Multiplicity memberikan gambaran ebuah instant yang akan ditampung dalam kelas. Misalnya, dalam kelas pegawai, kita mungkin mempunyai beberapa instant, satu untuk Ani, satu untuk Ina, satu untuk Nana dan seterusnya. Sehingga Multiplicity untuk kelas pegawai diset n. Pada kelas control, Multiplicity diset 1, karena pada saat aplikasi berjalan hanya satu kelas.
Beberapa jenis Multiplicity kelas.
Table Multiplicity untuk kelas :
Multiplicity
Arti
n (default)
Banyak
0..0
Nol
0..1
Nol atau Satu
0..n
Nol atau Banyak
1..1
Tepat satu
1. .n
Satu atau banyak


Table Notasi Multiplicity menggunakan kustomisasi
Format
Arti

Tepat
..
Antara
..
Atau nol
,

, ..
Tepat atau antara dan
.. ,
..
Antara dan atau antara dan

-          Paket
Paket digunakan unruk mengelompokkan kelas-kelas yang mempunyai kesamaan. Dalam UML, digambarkan sebagai berikut :
Ada beberapa cara mengelompokkan kelas-kelas dalam paket, tetapi bagaimanapun juga,  kelas-kelas dapat dikelompokkan dalam paket yang sama tergantung dari keinginan kita sendiri. Salah satu pendekatan yang dapat digunakan adalah berdasarkan Stereotype-nya. Dengan pendekatan ini, dapat dibuat satu paket untuk kelas-kelas entitas, dan satu kelas untuk  kelas-kelas control.
Pendekatan lainnya yang dapat digunakan adalah dengan fungsionalitasnya. Misalnya, kita punya paket security untuk kelas-kelas yang digunakan menangani keamanan system.
Akhirnya, dapat digunakan kombinasi dua pendekatan diatas. Paket dapat dibuat bersarang, dimana satu paket mengandung paket lainnya. Pada level tertinggi, dapat dikelompokkan berdasarkan fungsionalitasnya, kemudian diikuti dengan sub fungsionalitasnya lainnya atau dengan stereotype-nya.

Senin, 24 Maret 2014

Perancangan Basis Data(1)





Referensi lain:

PERANCANGAN BASIS DATA
Perancangan Basis Data adalah proses untuk menentukan isi dan pengaturan data yang dibutuhkan untuk mendukung berbagai rancangan sistem.
Tujuan Perancangan Database :
• untuk memenuhi informasi yang berisikan kebutuhan-kebutuhan user secara khusus dan aplikasi-aplikasinya.
   memudahkan pengertian struktur informasi.
• mendukung kebutuhan-kebutuhan pemrosesan dan beberapa obyek penampilan (response time, processing time, dan storage space).
6 Fase proses perancangan database :
            1. Pengumpulan Data dan Analisis
            2. Perancangan Basis Data secara Konseptual
            3. Pemilihan DBMS
            4. Perancangan Basis Data secara Logika (data model mapping)
            5. Perancangan Basis Data secara Fisik
            6. Implementasi Sistem Basis Data.
6 fase di atas tidak harus diproses berurutan. Pada beberapa hal, rancangan tsb dapat dimodifikasi dari yang pertama dan sementara itu mengerjakan fase yang terakhir (feedback loop antara fase) dan feedback loop dalam fase sering terjadi selama proses perancangan.
1.    Pengumpulan Data dan Analisis
Proses identifikasi dan analisa kebutuhan-kebutuhan data disebut pengumpulan data dan analisa. Untuk menentukan kebutuhan-kebutuhan suatu sistem database,pertama-tama harus mengenal bagian-bagian lain dari sistem informasi yang akan berinteraksi dengan sistem database, termasuk para pemakai yang ada dan para pemakai yang baru serta  aplikasi-aplikasinya. Kebutuhan-kebutuhan dari para pemakai dan aplikasi-aplikasi inilah yang kemudian dikumpulkan dan dianalisa.
Aktifitas-aktifitas pengumpulan data dan analisa :
Ø  Menentukan kelompok pemakai dan bidang-bidang aplikasinya.
Ø  Peninjauan dokumentasi yang ada.
Ø  Analisa lingkungan operasi dan pemrosesan data.
Ø  Daftar pertanyaan dan wawancara.
2.    Perancangan Basis Data secara Konseptual
Tujuan dari fase ini adalah menghasilkan conceptual schema untuk database yang tergantung pada  sebuah DBMS yang spesifik. Sering menggunakan sebuah high-level data model seperti ER/EER model selama fase ini. Dalam conceptual schema, kita harus merinci aplikasi-aplikasi database yang diketahui dan transaksi-transaksi yang mungkin.
Aktifitas paralel perancangan database secara konseptual :
Ø  Perancangan skema konseptual :
menguji kebutuhan-kebutuhan data dari suatu database yang merupakan hasil dari       fase 1, dan menghasilkan sebuah conceptual database schema pada DBMS independent model data tingkat tinggi seperti EER (enhanced entity relationship) model.
Ø  Perancangan transaksi :
menguji aplikasi-aplikasi database dimana kebutuhan-kebutuhannya telah dianalisa pada fase 1, dan menghasilkan perincian transaksi-transaksi ini.
3.    Pemilihan DBMS
Pemilihan database ditentukan oleh beberapa faktor, diantaranya:
Ø  Struktur data
Jika data yang disimpan dalam database mengikuti struktur hirarki, maka suatu jenis hirarki dari DBMS harus dipikirkan.
Ø  Personal yang telah terbiasa dengan suatu sistem
 Jika staf programmer dalam suatu organisasi sudah terbiasa dengan suatu DBMS, maka hal ini dapat mengurangi biaya latihan dan waktu belajar.
Ø  Tersedianya layanan penjual
 Keberadaan fasilitas pelayanan penjual sangat dibutuhkan untuk membantu memecahkan beberapa masalah sistem.
Ø  Teknik
Keberadaan DBMS dalam menjalankan tugasnya seperti jenis-jenis DBMS (relational, network, hierarchical, dll), struktur penyimpanan, dan jalur akses yang mendukung DBMS, pemakai, dll.
4.    Perancangan database secara logika (data model mapping)
Fase selanjutnya dari perancangan database adalah membuat sebuah skema konseptual dan skema eksternal pada model data dari DBMS yang terpilih. Fase ini dilakukan oleh pemetaan skema konseptual dan skema eksternal yang dihasilkan pada fase 2. Pada fase ini, skema konseptual ditransformasikan dari model data tingkat tinggi yang digunakan pada fase 2 ke dalam model data dari DBMS yang dipilih pada fase 3.
Pemetaan diproses dalam 2 tingkat :
Ø  1. Pemetaan system-independent :
Pemetaan ke dalam model data DBMS dengan tidak mempertimbangkan karakteristik atau hal-hal yang khusus yang berlaku pada implementasi DBMS dari model data tsb.
Ø  2. Penyesuaian skema ke DBMS yang spesifik :
mengatur skema yang dihasilkan pada langkah 1 untuk disesuaikan pada implementasi yang khusus di masa yang akan datang dari suatu model data yang digunakan pada DBMS yang dipilih.
5.    Perancangan Basis Data Fisik
Perancangan database secara fisik merupakan proses pemilihan struktur-struktur penyimpanan dan jalur-jalur akses pada file-file database untuk mencapai penampilan yang terbaik pada bermacam-macam aplikasi.Selama fase ini, dirancang spesifikasi-spesifikasi untuk database yang disimpan yang berhubungan dengan struktur-struktur penyimpanan fisik, penempatan recorddan jalur akses.
Petunjuk pemilihan perancangan database secara fisik :
Ø  Response time
Waktu yang telah berlalu dari suatu transaksi database yang diajukan Untuk menjalankan suatu tanggapan. Pengaruh utama pada response time adalah di bawah pengawasan DBMS yaitu : waktu akses database untuk data item yang ditunjuk oleh suatu transaksi.Response time juga dipengaruhi oleh beberapa faktor yang tidak berada di bawah pengawasan DBMS, seperti penjadwalan sistem operasi atau penundaan komunikasi.
Ø  Space Utility
Jumlah ruang penyimpanan yang digunakan oleh file-file database dan struktur-Struktur jalur akses.
Ø  Transaction throughput
Rata-rata jumlah transaksi yang dapat diproses per menit oleh sistem database, dan merupakan parameter kritis dari sistem transaksi (misal, digunakan pada pemesanan tempat di pesawat, bank, dll). Hasil dari fase ini adalah penentual awal dari struktur penyimpanan dan jalur akses untuk file-file database.
6.    Implementasi Basis Data System
Setelah perancangan secara logika dan secara fisik lengkap,kita dapat melaksanakan sistem database. Perintah-perintah dalam DDL dan SDL(storage definition language) dari DBMS yang dipilih, dihimpun dan digunakan untuk membuat skema database dan file-file database (yang kosong) kemudian database tsb dimuat (disatukan) dengan datanya.Jika data harus dirubah dari sistem komputer sebelumnya, perubahan-perubahan yang rutin mungkin diperlukan untuk format ulang datanya yang kemudian dimasukkan ke database yang baru. Transaksi-transaksi database sekarang harus dilaksanakan oleh para programmmer aplikasi.
ALASAN PERANCANGAN BASIS DATA
Ø  Sistem basis data telah menjadi bagian dalam sistem informasi suatu organisasi.
Ø  Kebutuhan menyimpan data dl jumlah besar semakin mendesak.
Ø  Fungsi-fungsi dalam organisasi semakin dikomputerisasikan.
Ø  Semakin kompleks data & aplikasi yg digunakan, maka relationship antar data harus dimodelisasikan.
Ø  Dibutuhkannya kemandirian data.
KONVERSI & LOADING DATA
Ø  Tahap ini dilakukan apabila sistem basis data yg ada digantikan sistem basis data baru.
Ø  Semua data yg ada ditransfer ke basis data baru & konversi aplikasi yg ada utk basis data baru.
PENGOPERASIAN & PERAWATAN
Ø  Pengoperasian basis data setelah divalidasi.
Ø  Memonitor kinerja sistem, jika tidak sesuai perlu reorganisasi basis data.
Ø  Perawatan & upgrade sistem aplikasi basis data jika diperlukan.