Analisa dan Perancangan Sistem Class dan Package Diagrams Class dan package Diagrams
Æ Á ¹ ¼ ëçñ º ±â»ç ëàú äã»çñ Ù. È ÀÏ ü ÀÚ Â Àоî  ¹ ¼ ÀÇ Á º ÇØ ç ¹ ¼ ü ¼³Á À» äã»çñ Ù. È é ü  ÀоîµéÀΠüµé ëçø ÀÌ º Î Á ÄÀ» ½ÃÄÑ È é º ÁØ Ù. 1: Doc view request ( ) 1: Doc view request ( ) 9: sortbyname ( ) 2: fetchdoc( ) L 3: create ( ) 6: filldocument ( ) 9: sortbyname ( ) 7: readfile ( ) 5: readdoc ( ) 2: fetchdoc( ) 4: create ( ) 8: fillfile ( ) 5: readdoc ( ) 7: readfile ( ) 4: create ( ) 8: fillfile ( ) 3: create ( ) 6: filldocument ( ) UI DocumentApp Persistence global MFC RogueWave Openning Reading add file [ numberoffile==max ] / flag OFF close file Closing close file add file Writing ºÐ»ê È æàç Çϵå þ¾î¹ ³ Æ À ÎÀÇ Á º ½Ã½ºÅÛ á ðµ - À µµ ì 95 : Å óàì¾ðæ - À µµ ì NT: ÀÀ ë¼ ¹ö - À нº Ó½Å: ÀÀ ë ¼ ¹ö ¹ µ ÀÌÅ ¼ ¹ö, Åë½Å ¼ ¹ö - IBM ÞÀÎÇÁ ¹ÀÓ: µ ÀÌÅ ¼ ¹ö, Åë½Å ¼ ¹ö W indow95 ¹ ¼ ü Å óàì¾ðæ.exe Windows NT W indows NT ¹ ¼ ü Áø.EXE Windows95 IBM Mainframe µ ÀÌÅ º À̽º¼ ¹ö Solaris ÀÀ ë¼ ¹ö.EXE Windows95 ¹ ¼ ü ¾ÖÇà Alpha UNIX ARTIFACT UML (BAGAN YANG TERDAPAT PADA UML) Langkah Langkah UML Use-Case Diagram Class Diagram State Diagram Use Case Diagram Activity diagram Use Case 1 Actor A Actor B Domain Expert Use Case 2 Use Case 3 <<entity>> Customer name addr receive() withdraw() fetch() send() Class Deployment Diagram Package Diagram Class Diagram Repository DocumentList User Interface Definition user user :»ç ëàú mainwnd : MainWnd filemgr : FileMgr repository : Repository mainwnd filemgr : FileMgr document : Document gfile repository gfile : GrpFile document : Document Collaboration Diagram Sequence Diagram Package Diagram FileManager GraphicFile File Document FileList Forward Engineering(Code Generation) and Reverse Engineering Component Diagram Source Code edit, compile, debug, link Executable System StateChart Diagram Collaboration Diagram Sequence Diagram Deployment Diagram Componen Diagram Class dan package Diagrams
CLASS Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class memiliki tiga area pokok : 1.Nama, merupakan nama dari sebuah kelas 2. Atribut, merupakan peroperti dari sebuah kelas. Atribut melambangkan batas nilai yang mungkin ada pada obyek dari class 3. Operasi, adalah sesuatu yang bisa dilakukan oleh sebuah class atau yang dapat dilakukan oleh class lain terhadap sebuah class Class dan package Diagrams
CLASS DIAGRAM Class diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain. Atribut dan metoda dapat memiliki salah satu sifat berikut : Private, tidak dapat dipanggil dari luar class yang bersangkutan Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang mewarisinya Public, dapat dipanggil oleh siapa saja Package, hanya dapat dipanggil oleh instance sebuah class pada paket yang sama Nama Class Atribut Metode/operasi Class dan package Diagrams
ATRIBUT Notasi dari atribut visibility name: type multiplicity = default {propertystring} Contoh - name: String [1] = "Untitled" {readonly} + berarti public, - berarti private, # berarti protected Untitled adalah nilai yang diberikan secara default jika tidak ditentukan saat objek dibuat {readonly} adalah properti tambahan dari atribut, dimana disini berarti tidak bisa dimodifikasi Class dan package Diagrams
OPERATIONS Notasi dari operations visibility name (parameter-list) : return-type {propertystring} Parameter pada parameter-list dinotasikan seperti pada atribut direction name: type = default value Direction bisa berupa: in, out, atau in out Contoh + balanceon (date: Date) : Money Class dan package Diagrams
HUBUNGAN ANTAR CLASS 1. 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 dipassing dari satu class kepada class lain. Hubungan dinamis dapat digambarkan dengan menggunakan sequence diagram yang akan dijelaskan kemudian. Class dan package Diagrams
MULTIPLICITY Unspecified Exactly one Zero or more (many, unlimited) One or more Zero or one (optional scalar role) Specified range Multiple, disjoint ranges 1 0..* * 1..* 0..1 2..4 2, 4..6 Class dan package Diagrams
MULTIPLICITY Class dan package Diagrams
Relasi Is a Generalization Kendaraan Manusia - Nama Kendaraan Darat Mahasiswa - NIM - Semester - Buat skripsi - Ujian Jeep Bus Sepeda Motor Class dan package Diagrams
Studi Kasus Class dan package Diagrams
Package Packages digambarkan sebagai sebuah direktori (file folders) yang berisi model-model elemen Package merupakan kumpulan atau pengelompokan class-class yang memiliki sifat sama. Penggambaran diagram Package mirip dengan simbol folder dalam Microsoft Windows. Salah satu manfaat package adalah kemampuannya untuk digunakan pada component lainnya. Contoh package BangunRuang terdiri dari: Class Kubus, Class Balok, Class Tabung, Class Bola. Class dan package Diagrams
Contoh Class diagram Package Package Diagram Use case diagram Package Class dan package Diagrams