ppt uml

47
PEMODELAN SISTEM PEMODELAN SISTEM BERORIENTASI OBJEK BERORIENTASI OBJEK ARUMANTIKA EKO Y, S.Pd

Upload: arum-prasetyo

Post on 12-Sep-2015

282 views

Category:

Documents


10 download

DESCRIPTION

ppt uml

TRANSCRIPT

  • PEMODELAN SISTEM BERORIENTASI OBJEKARUMANTIKA EKO Y, S.Pd

    PEMODELAN SISTEM INFORMASI (IF017)

  • Apa itu UMLUnified Modelling Language (UML) adalah sebuah "bahasa" yg telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem.Dengan menggunakan UML kita dapat membuat model untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. Tetapi karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka ia lebih cocok untuk penulisan piranti lunak dalam bahasa bahasa berorientasi objek seperti C++, Java, C# atau VB.NET. Walaupun demikian, UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C.

  • SEJARAH UML

  • ARTIFACT UML

  • DIAGRAM-DIAGRAM DI UML

  • Class DiagramObject DiagramComponent DiagramDeployment Diagram

    Use Case DiagramSequence DiagramCollaboration DiagramStatechart DiagramActivity DiagramStructural DiagramsBehavioral Diagrams9 DIAGRAM UML

    PEMODELAN SISTEM INFORMASI (IF017)

  • Sequence DiagramsDynamic viewsStatic viewsCollaboration DiagramsActivity DiagramsStatechart DiagramsClass DiagramsObject DiagramsComponent DiagramsDeployment DiagramsUse Case DiagramsModelSome part of the model might not be visible on any diagram

    PEMODELAN SISTEM INFORMASI (IF017)

  • USE CASE DIAGRAM

    PEMODELAN SISTEM INFORMASI (IF017)

  • USE CASE DIAGRAMMenggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah apa yang diperbuat sistem, dan bukan bagaimana.Menggambarkan kebutuhan system dari sudut pandang userMengfokuskan pada proses komputerisasi (automated processes)Menggambarkan hubungan antara use case dan actorUse case menggambarkan proses system (kebutuhan system dari sudut pandang user)Secara umum use case adalah:Pola perilaku systemUrutan transaksi yang berhubungan yang dilakukan oleh satu actorUse case diagram terdiri dariUse caseActorsRelationshipSystem boundary boxes (optional)Packages (optional)

  • USE CASEUse case dibuat berdasar keperluan actor, merupakan apa yang dikerjakan system, bukan bagaimana system mengerjakannyaUse case diberi nama yang menyatakan apa hal yang dicapai dari hasil interaksinya dengan actor.Use case dinotasikan dengan gambar (horizontal ellipse)Use case biasanya menggunakan kata kerja Nama use case boleh terdiri dari beberapa kata dan tidak boleh ada 2 use case yang memiliki nama yang sama

  • ACTORActor menggambarkan orang, system atau external entitas / stakeholder yang menyediakan atau menerima informasi dari system Actor menggambarkan sebuah tugas/peran dan bukannya posisi sebuah jabatanActor memberi input atau menerima informasi dari systemActor biasanya menggunakan Kata bendaTidak boleh ada komunikasi langsung antar actor Indikasi untuk sebuah actor yang merupakan sebuah systemAdanya actor bernama Time yang mengindikasikan scheduled events (suatu kejadian yang terjadi secara periodik/bulanan)Letakkan actor utama anda pada pojok kiri atas dari diagram

  • AssociationAssociations bukan menggambarkan aliran data/informasiAssociations digunakan untuk menggambarkan bagaimana actor terlibat dalam use caseAda 4 jenis relasi yang bisa timbul pada use case diagramAssociation antara actor dan use caseAssociation antara use caseGeneralization/Inheritance antara use caseGeneralization/Inheritance antara actors

  • Association antara actor dan use caseUjung panah pada association antara actor dan use case mengindikasikan siapa/apa yang meminta interaksi dan bukannya mengindikasikan aliran dataSebaiknya gunakan Garis tanpa panah untuk association antara actor dan use case

    association antara actor dan use case yang menggunakan panah terbuka untuk mengindikasikan bila actor berinteraksi secara pasif dengan system anda

  • Association antara use casetermasuk didalam use case lain (required) / (diharuskan)Pemanggilan use case oleh use case lain, contohnya adalah pemanggilan sebuah fungsi programTanda panah terbuka harus terarah ke sub use caseGambarkan association include secara horizontal

  • Association antara use case (Lanjut) perluasan dari use case lain jika kondisi atau syarat terpenuhiKurangi penggunaan association Extend ini, terlalu banyak pemakaian association ini membuat diagram sulit dipahami.Tanda panah terbuka harus terarah ke parent/base use caseGambarkan association extend secara vertical

    PEMODELAN SISTEM INFORMASI (IF017)

  • Generalization/inheritance antara use caseGeneralization/inheritance digambarkan dengan sebuah garis berpanah tertutup pada salah satu ujungnya yang menunjukkan lebih umum

    Gambarkan generalization/inheritance antara use case secara vertical dengan inheriting use case dibawah base/parent use caseGeneralization/inheritance dipakai ketika ada sebuah keadaan yang lain sendiri/perlakuan khusus (single condition)

  • Generalization/inheritance antara actor Gambarkan generalization/inheritance antara actors secara vertical dengan inheriting actor dibawah base/parent use case

  • Use case System boundary boxesDigambarkan dengan kotak disekitar use case, untuk menggambarkan jangkauan system anda (scope of of your system).Biasanya digunakan apabila memberikan beberapa alternative system yang dapat dijadikan pilihanSystem boundary boxes dalam penggunaannya optional

  • Koperasi Budi Luhur adalah sebuah koperasi yang mengelola simpan pinjam bagi para anggotanya, berikut ini adalah kegiatan yang dilakukan oleh bagian Kredit dalam menangani pemberian pinjaman bagi para anggotanya. Setiap kali bagian kredit akan memberikan pinjaman kepada Anggota maka Anggota diharuskan mengisi Formulir Permohonan Pinjaman yang berisi Nomor FPP, Tanggal Permohonan, Nomor Anggota, Nama Anggota, Jumlah Permohonan dan Keperluan. Yang kemudian oleh Bagian Kredit dicatat dan disimpan kedalam Arsip FPP. Berdasarkan Arsip FPP tersebut Bagian Kredit membuat Bukti Peminjaman yang diberikan kepada Anggota yang berisi No. BP, tgl BP, Nomor Anggota, Nama Anggota, Jumlah Realisasi, Lama Angsuran, Jumlah Angsuran dan Bunga.Setiap Bulan Anggota diharuskan membayar Angsuran sejumlah Angsuran yang disepakati pada saat Peminjaman yang kemudian oleh bagian Kredit dicatat dan direkam kedalam Arsip Angsuran. Berdasarkan Arsip Angsuran tersebut bagian Kredit membuat Bukti Angsuran yang diberikan kepada Anggota yang berisi No. BA, Tanggal BA, No. BP, Jumlah Angsur dan BungaPada akhir bulan Bagian Kredit selalu membuat Laporan Peminjaman dan Laporan Angsuran yang diberikan Kepada Ketua Koperasi.STUDI KASUS USE CASE DIAGRAM

  • Latihan Use Case Diagram !PT. Nusantara adalah sebuah perusahaan yang bergerak dibidang penjualan Tunai barang-barang elektronik. Semua transaksi di perusahaan masih dilakukan secara manual. Berikut ini adalah kegiatan kegiatan yang dilakukan oleh bagian Penjualan dalam melaksanakan transaksi penjualan Barang di dalam perusahaan.

    1. Pemesanan barang Setiap kali Bagian penjualan akan menjual barang ia selalu menerima surat pesanan dari pelanggan. Berdasarkan Surat pesanan tersebut bagian penjualan kemudian mencatat dan merekamnya kedalam Arsip Surat Pesanan. Berdasarkan Arsip surat pesanan tersebut, bagian penjualan membuatkan Faktur dan Surat Jalan yang dikirimkan kepada Pelanggan sebagai bukti bahwa barang yang dipesan sudah terealisasi dan rangkapnya disimpan sebagai Arsip Faktur dan Arsip Surat Jalan.

    2. Pembuatan Kwitansi Apabila Faktur dan Surat Jalan sudah sampai ditempat pelanggan, maka pelanggan megirimkan Pembayaran yang kemudian oleh bagian penjualan dibuatkan Kwitansi yang dibuat berdasarkan Arsip Faktur yang kemudian diserahkan kepada pelanggan sebagai bukti pembayaran dan rangkapnya disimpan kedalam Arsip Kwitansi

    3. Pembuatan Laporan Setiap akhir bulan Bagian Penjualan selalu membuat Laporan Penjualan berdasarkan Arsip Faktur dan Laporan Pesanan berdasarkan Arsip Pesanan dan Laporan Pengiriman berdasarkan Arsip Surat Jalan yang ditujukan kepada Kepala Bagian Penjualan

    Diminta :Buatlah Use case diagram dari data diatas !

  • ACTIVITY DIAGRAM

    PEMODELAN SISTEM INFORMASI (IF017)

  • ACTIVITY DIAGRAMMenggambarkan proses bisnis dan urutan aktivitas dalam sebuah prosesDipakai pada business modeling untuk memperlihatkan urutan aktifitas proses bisnisStruktur diagram ini mirip flowchart atau Data Flow Diagram pada perancangan terstruktur Sangat bermanfaat apabila kita membuat diagram ini terlebih dahulu dalam memodelkan sebuah proses untuk membantu memahami proses secara keseluruhanActivity diagram dibuat berdasarkan sebuah atau beberapa use case pada use case diagram

  • Simbol Activity Diagram

    Simbol

    Keterangan

    Start Point

    End Point

    Activities

    Fork (Percabangan)

    Join (Penggabungan)

    Decision

    Swimlane

    Sebuah cara untuk mengelompokkan activity berdasarkan Actor (mengelompokkan activity dalam sebuah urutan yang sama)

    EMBED Visio.Drawing.5

    EMBED Visio.Drawing.5

    EMBED Visio.Drawing.5

    EMBED Visio.Drawing.5

    _1125162102.vsd

    _1125234909.vsd

    _1125234952.vsd

    _1125161098.vsd

  • CONTOHACTIVITYDIAGRAMPenarikan Uang dari Account Bank Melalui ATM

  • CONTOH ACTIVITY DIAGRAM

    Bagian Gudang

    Memberi informasi data Barang yang akan dipesan

    Menerima informasi

    Buat SPP

    Bagian Pembelian

    Supplier

    Terima SPP

    Kirim Barang disertai Faktur

    Terima Barang dan Faktur

    Buat SPBJ

    Tandatangani SPBJ

    Terima SPBJ

    Konfirmasi pembayaran

    Melakukan pembayaran

    Terima pembayaran

    Terima Kwitansi

    Buat kwitansi

  • Koperasi Budi Luhur adalah sebuah koperasi yang mengelola simpan pinjam bagi para anggotanya, berikut ini adalah kegiatan yang dilakukan oleh bagian Kredit dalam menangani pemberian pinjaman bagi para anggotanya. Setiap kali bagian kredit akan memberikan pinjaman kepada Anggota maka Anggota diharuskan mengisi Formulir Permohonan Pinjaman yang berisi Nomor FPP, Tanggal Permohonan, Nomor Anggota, Nama Anggota, Jumlah Permohonan dan Keperluan. Yang kemudian oleh Bagian Kredit dicatat dan disimpan kedalam Arsip FPP. Berdasarkan Arsip FPP tersebut Bagian Kredit membuat Bukti Peminjaman yang diberikan kepada Anggota yang berisi No. BP, tgl BP, Nomor Anggota, Nama Anggota, Jumlah Realisasi, Lama Angsuran, Jumlah Angsuran dan Bunga.Setiap Bulan Anggota diharuskan membayar Angsuran sejumlah Angsuran yang disepakati pada saat Peminjaman yang kemudian oleh bagian Kredit dicatat dan direkam kedalam Arsip Angsuran. Berdasarkan Arsip Angsuran tersebut bagian Kredit membuat Bukti Angsuran yang diberikan kepada Anggota yang berisi No. BA, Tanggal BA, No. BP, Jumlah Angsur dan BungaPada akhir bulan Bagian Kredit selalu membuat Laporan Peminjaman dan Laporan Angsuran yang diberikan Kepada Ketua Koperasi.STUDI KASUS ACTIVITY DIAGRAM

  • Latihan Activity Diagram !PT. Nusantara adalah sebuah perusahaan yang bergerak dibidang penjualan Tunai barang-barang elektronik. Semua transaksi di perusahaan masih dilakukan secara manual. Berikut ini adalah kegiatan kegiatan yang dilakukan oleh bagian Penjualan dalam melaksanakan transaksi penjualan Barang di dalam perusahaan.

    1. Pemesanan barang Setiap kali Bagian penjualan akan menjual barang ia selalu menerima surat pesanan dari pelanggan. Berdasarkan Surat pesanan tersebut bagian penjualan kemudian mencatat dan merekamnya kedalam Arsip Surat Pesanan. Berdasarkan Arsip surat pesanan tersebut, bagian penjualan membuatkan Faktur dan Surat Jalan yang dikirimkan kepada Pelanggan sebagai bukti bahwa barang yang dipesan sudah terealisasi dan rangkapnya disimpan sebagai Arsip Faktur dan Arsip Surat Jalan.

    2. Pembuatan Kwitansi Apabila Faktur dan Surat Jalan sudah sampai ditempat pelanggan, maka pelanggan megirimkan Pembayaran yang kemudian oleh bagian penjualan dibuatkan Kwitansi yang dibuat berdasarkan Arsip Faktur yang kemudian diserahkan kepada pelanggan sebagai bukti pembayaran dan rangkapnya disimpan kedalam Arsip Kwitansi

    3. Pembuatan Laporan Setiap akhir bulan Bagian Penjualan selalu membuat Laporan Penjualan berdasarkan Arsip Faktur dan Laporan Pesanan berdasarkan Arsip Pesanan dan Laporan Pengiriman berdasarkan Arsip Surat Jalan yang ditujukan kepada Kepala Bagian Penjualan

    Diminta :Buatlah Activity diagram dari data diatas !

  • CLASS DIAGRAM

    PEMODELAN SISTEM INFORMASI (IF017)

  • CLASS DIAGRAMClass 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 containment, pewarisan, asosiasi, dan lain-lain.Class memiliki tiga area pokok :1. Nama (dan stereotype)2. Atribut3. Metoda

  • CLASS DIAGRAM (LANJUTAN)Atribut dan metoda dapat memiliki salah satu sifat berikut :Private, tidak dapat dipanggil dari luar class yang bersangkutanProtected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang mewarisinyaPublic, dapat dipanggil oleh siapa saja

    Nama ClassAtributMetode/operasi

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

  • CONTOH CLASS DIAGRAM

  • MULTIPLICITYUnspecifiedExactly oneZero or more (many, unlimited)

    One or moreZero or one (optional scalar role)Specified rangeMultiple, disjoint ranges1

  • Asumsi :Setiap Unit dapat membuat Lebih dari satu Form Permintaan Barang. Satu Form Permintaan Barang dapat membuat Lebih dari satu Bukti Penyerahan Barang, karena dapat dimungkinkan Jumlah yang diminta dapat tidak sama dengan jumlah yang diserahkan.

  • Interaction Diagram

    PEMODELAN SISTEM INFORMASI (IF017)

  • Sequence DiagramSequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atar 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 men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan.Diagram ini secara khusus berasosiasi dengan use case diagramMemperlihatkan tahap demi tahap apa yang seharusnya terjadi untuk menghasilkan sesuatu didalam use case

  • Contoh Sequence Diagram

  • Contoh Sequence Diagram

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

  • Contoh Collaboration Diagram

  • Statechart diagramStatechart 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.Titik awal dan akhir digambarkan berbentuk lingkaran berwarna penuh dan berwarna setengah.

  • Contoh State Diagram

  • Deployment DiagramDeployment/physical diagram menggambarkan detail bagaimana komponen di-deploy 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 fisikalSebuah 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 diagram ini.

  • Component DiagramComponent 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.Pada umumnya komponen terbentuk dari beberapa class dan/atau package, tapi dapat juga dari komponen-komponen yang lebih kecil. Komponen dapat juga berupa interface, yaitu kumpulan layanan yang disediakan sebuah komponen untuk komponen lain.

  • Contoh : Component Diagram

  • Contoh : Component & Deployment Diagram

  • Referensi Materi UMLSebagai referensi dalam mempelajari dan menggunakan UML, situs-situs yang merupakan pointerhttp://www.cetus-links.org/oo_uml.htmlhttp://www.omg.orghttp://www.omg.org/technology/uml/http://www.rational.com/umlhttp://www.uml.org/

    **For each role you can specify the multiplicity of its class, how many objects of the class can be associated with one object of the other class. Multiplicity is indicated by a text expression on the role. The expression is a comma-separated list of integer ranges. A range is indicated by an integer (the lower value), two dots, and an integer (the upper value). A single integer is a valid range. During analysis, assume a multiplicity of 0..* (zero to many) unless there is some clear evidence of something else. A multiplicity of zero implies that the association is optional; make sure you mean this; if an object might not be there, operations which use the association will have to adjust accordingly. Narrower limits for multiplicity may be specified (such as 2..4). Within multiplicity ranges, probabilities may be specified. Thus, if the multiplicity is 0..*, is expected to be between 10 and 20 in 85% of the cases, make note of it; this information will be of great importance during design. For example, if persistent storage is to be implemented using a relational database, narrower limits will help better organize the database tables.Specification of multiplicity flushes out business rules and assumptions. The lower bound is critical, as the lower bound is what determines whether or not the relationship is optional (e.g., a lower bound of 0 indicates that the relationship is optional).Multiplicity is needed on both ends of a relationship, even if you can only navigate in one direction. Even though there is no need to navigate in that direction, the multiplicity still provides valuable business information. Sometimes navigation decisions are made for performance reasons, which may change over time. The multiplicity should reflect the requirements.Navigation is discussed on later slides.The use of N instead of * is Booch, not UML (e.g., the use of 0..N and N is not UML).