Unified Modeling Language User Guide

Slides:



Advertisements
Presentasi serupa
Unified Modelling Language (UML)
Advertisements

Model UML pada Rational Unified Process
Yang akan dipelajari Pengenalan UML Sejarah Singkat UML
SE3414 RPL: Teknik Berorientasi Objek
06/10/2014 Course : Rekayasa Perangkat Lunak, Aetthea, Elektro Unsoed,
Behavioural Modelling
Pemrograman Berorientasi Obyek1 Sejarah C – Martin Richard -> Bahasa Pemrograman BCPL 1970 – Ken Thomson (Bell Lab) -> Bahasa B yang membuat Unix.
Activity Diagram Shinta P.. For Bussiness Modeling, Activity diagrams describe the activities of a class. It is used for the following purposes: (Bennet.
Perancangan Berorientasi Objek (Object Oriented Analysis & Design)
WaterfallPrototyping RAD Incremental Prototyping Pendekatan SDLC.
Pengantar uml Pertemuan 4. Pengenalan UML UML adalah sebuah bahasa yang memberikan vocabulary dan tatanan penulisan kata-kata dalam ‘MS Word’ untuk kegunaan.
1 Pertemuan 2 Object Oriented Understanding Matakuliah: M0446/Analisa dan Perancangan Sistem Informasi Tahun: 2005 Versi: 0/0.
UNIFIED MODELLING LANGUAGE (UML)
1 Pertemuan 21 Function Matakuliah: M0086/Analisis dan Perancangan Sistem Informasi Tahun: 2005 Versi: 5.
Summary Materi RPL Mid Semester
Test System Architecture, Cases, & Coverage Pertemuan 5
PERTEMUAN KE-6 UNIFIED MODELLING LANGUAGE (UML) (Part 2)
RELATIOPNSHIPS IN THE UML
1 Pertemuan 11 Function dari System Matakuliah: M0446/Analisa dan Perancangan Sistem Informasi Tahun: 2005 Versi: 0/0.
1 INTRODUCTION Pertemuan 1 s.d 2 Matakuliah: A0554/Analisa dan Perancangan Sistem Informasi Akuntansi Tahun: 2006.
KONSEP DASAR PENDEKATAN OBJEK
Rekayasa Perangkat Lunak UML (Unified Modelling Language)
Visual Modelling Teguh Sutanto, S.Kom.,M.Kom.
Software Engineering Process
Object Oriented Design
Review Rekayasa Perangkat Lunak
Notasi Object Oriented System
Object oriented analyst and design
PEMODELAN SISTEM INFORMASI BERORIENTASI OBYEK
Object-Oriented Analysis (OOA)
Rekayasa Perangkat Lunak Class Diagram
Pemodelan objek.
PERANCANGAN SISTEM BERORIENTASI OBJEK DENGAN UML
Object oriented analyst and design
REKAYASA PERANGKAT LUNAK (IF 1483)
UML mendukung pengembangan aplikasi
Citra N., S.Si, MT ProDi Sistem Informasi - UNIKOM
PEMODELAN PROYEK (UML)
CLASS DIAGRAM.
Overview Component-Oriented Programming
OOAD – TI S1 Defri Kurniawan UDINUS
Unified Modeling Language User Guide
Software Engineering Rekayasa Perangkat Lunak
Pertemuan 17 Aplication Domain
Pemrograman Berorientasi Objek
Pemrograman Dasar TinyOS Menggunakan nesC
PEMODELAN OBJECT ORIENTED
REKAYASA PERANGKAT LUNAK
Review Rekayasa Perangkat Lunak
Unified Modeling Language User Guide
Perancangan Perangkat Lunak – Part 1
REKAYASA PERANGKAT LUNAK
Statechart , Class, Component & Deployment Diagram
Statechart , Class, Component & Deployment Diagram
ANALISIS & DESAIN SISTEM
Dasar-Dasar Sistem Informasi
UML- UNIFIED MODELING LANGUAGE
Review Rekayasa Perangkat Lunak
Pertemuan 4 CLASS DIAGRAM.
INF – UNIJOYO Analisa dan Desain Berbasis Objek
Review Rekayasa Perangkat Lunak
Iconix Process Doug Rosenberg.
Suhandi Wiratama. Before I begin this presentation, I want to thank Mr. Abe first. He taught me many things about CorelDRAW. He also guided me when I.
Business Modeling By: U. Abd. Rohim, MT
Sistem Pendukung Keputusan Roni Andarsyah, ST., M.Kom Lecture Series.
Pertemuan 6 Unified Modeling Language (UML)
Pemrograman berorientasi objek
TIM RPL Program Studi Teknik Informatika
Object oriented analyst and design
PERANCANGAN SISTEM BERORIENTASI OBJEK DENGAN UML
Transcript presentasi:

Unified Modeling Language User Guide Section 1—Getting Started

Overview Why we model Introducing UML Importance Principles Object-oriented modeling Introducing UML UML Overview Conceptual model of UML Architecture Software development life-cycle Sung Kim CS6359

What is a model? A model is a simplification of reality. A set of blueprints of a system. Semantically closed abstraction of the system. A model is an abstraction of something for the purpose of understanding it before building it. sebuah model adalah sebuah penyederhanaan dari kenyataan. sebuah set blueprints sesistem. Semantically menutup abstraction dari sistem. sebuah model adalah sebuah abstraction dari sesuatu untuk tujuan dari mengerti itu sebelum bangunan itu. Sung Kim CS6359

Why We Model Communicate a desired structure and behavior of a software system. Visualize and control a system’s architecture. Assist in understanding a system under development. Expose opportunities for simplification and reuse. Manage risk. Document decisions. membicarakan sebuah hasrat struktur dan tingkah laku sebuah software sistem. Menerawang dan mengkontrol sesistem ’s . membantunya mengerti sesistem dibawah pengembangan. membuka kesempatan-kesempatan untuk simplification dan menggunakan kembali. Kelola mengambil resiko. Dokumen keputusan-keputusan. Sung Kim CS6359

Importance of Modeling Proven and accepted engineering technique; divide-and-conquer. We build models of complex systems because we cannot comprehend such a system in its entirety. Desire to build the right software right. terBukti dan terima orang technique; bagi-dan-takluk. Kami membangun model-model kompleks sistem-sistem karena kami tidak dapat terdiri dari menjadi sistem didalam nya. menginginkan untuk membangun software yang benar benar. Modeling has been used for many many years in engineering. Sung Kim CS6359

Principles of Modeling The choice of what models to create has a profound influence on how a problem is attacked and how a solution is shaped. Every model may be expressed at different levels of precision. The best models are connected to reality. No single model is sufficient. Every nontrivial system is best approached through a small set of nearly independent models. pilihan dari model-model apa untuk membuat mempunyai sebuah kenyenyakan pengaruh di bagaimana sebuah masalah diserang dan bagaimana sebuah solusi diseharusnya. Setiap model boleh diungkap pada berbeda tingkat-tingkat . model-model terbaiknya adalah menghubungkan untuk kenyataan. bukan satu model cukup. Setiap nontrivial sistem adalah terbaik terdekat melalui sebuah set yang kecil hampir mandiri model-model. 1. The right models brilliantly illuminate the most wicked development problems, offering insight that you simply could not gain otherwise; the wrong models will mislead you, causing you to focus on irrelevant issues. Subjecting a physical model to wind tunnel tests Vs. Building a mathematical model and subjecting it to simulations. The physical model will not flex in the small as the real materials in the large. Thus the desired information cannot be obtained. 2. Different levels communicate with different audiences; customers, managers, developers, users. 3. All models are simplifications of reality; don’t mask important details. Sung Kim CS6359

Modeling Comparison/perbandingan model Functional Algorithmic perspective Building blocks of functions or procedures Yields brittle systems Object-Oriented Building blocks of classes or objects. Drawn from the vocabulary of the problem space. Fungsionil perspektif Algorithmic Bangunan komplek-komplek fungsi-fungsikan atau prosedure-prosedure Penghasilan-penghasilan brittle sistem-sistem Objek-Oriented Bangunan komplek-komplek kelas-kelas atau objek-objek. terGambar dari kosakata dari ruang masalah. Sung Kim CS6359

Object vs. Class Object Thing drawn from the problem domain or solution space. Instantiation of class. Has identity, state, and behavior. Class Description of a set of common objects. Objek Sesuatu yang mengambar dari masalah domain atau solusi ruang. Instantiation dari kelas. punya keidentikan, tinggal, dan tingkah laku. Kelas Deskripsi sebuah set objek-objek yang umum. Sung Kim CS6359

Introducing UML Used to visualize, specify, construct, and document …appropriate for modeling systems ranging from enterprise information systems to distributed Web-based applications and even to hard real time embedded systems. Process independent. memakai untuk menerawang, tetap, bangun, dan dokumen …appropriate untuk o. sistem-sistem berlari dari perusahaan informasi sistem-sistem untuk tersebar dasar-Web aplikasi-aplikasi dan bahkan untuk nyata keras waktu embedded sistem-sistem. memproses mandiri. Sung Kim CS6359

UML is a Language Vocabulary and rules for communication. Focus on conceptual and physical representations of a system. A language for software blueprints. Not a process. Kosakata dan peraturan-peraturan untuk pembicaraan. Pusat diatas bersifat konsep dan bersifat fisik representations sesistem. sebuah bahasa untuk software blueprints. Tidak sebuah proses. Sung Kim CS6359

A UML Compatible Process Use case driven Architecture-centric Iterative Incremental menggunakan hal terkendarai -pusatik Iterative Incremental A well-defined process will guide you in deciding what artifacts to produce, what activities and what workers to use to create them and manage them, and how to use those artifacts to measure and control the project as a whole. Sung Kim CS6359

UML is for Visualizing An explicit model facilitates communication. UML is a graphical language. UML symbols are based on well-defined semantics. Sebuah kemudahan-kemudahan model explicit pembicaraan. UML adalah sebuah bersifat grafik bahasa. simbol-simbol UML didasar di mendefenisikan baik semantics. Thinking of implementation and pounding in to code is close to zero for most programmers. Some modeling is still performed, but only mentally. Communicating these mental models to others is error prone. Mental models are lost forever once the developer moves on. These are only partially recoverable from the code. Sung Kim CS6359

UML is for Specifying Specifying means building models that are: Precise Unambiguous Complete UML addresses the specification of all important analysis, design, and implementation decisions. maksud-maksud penetapan bangunan model-model itu adalah: Teliti Tidak berarti dua Selesai alamat-alamat UML penetapan dari semua penting analysis, desain, dan terapan keputusan-keputusan. Sung Kim CS6359

UML is for Constructing Models are related to OO programming languages. Round-trip engineering Forward engineering—direct mapping of a UML model into code. Reverse engineering—reconstruction of a UML model from an implementation. Requires tool and human intervention to avoid information loss. Model-model dibertalian ke OO bahasa-bahasa . Keliling-perjalanan orang Maju orang—pemetaan langsung sebuah model UML menjadi kode. penginsinyuran Balik—reconstruction sebuah model UML dari sebuah terapan. Kebutuhan-kebutuhan alat dan manusia intervensi untuk menghindar informasi kerugian. Sung Kim CS6359

UML is for Documenting Architecture Requirements Tests Activities Project planning Release management Kebutuhan-kebutuhan Ujian-ujian Aktivitas Proyek berencana melepaskan pengelolaan Sung Kim CS6359

Conceptual Model of UML Three basic building blocks of UML Things—abstractions that are first class citizens in a model. Relationships—tie things together. Diagrams—group interesting collections of things. Tiga komplek-komplek bangunan dasarik UML Sesuatu—abstractions itu adalah kelas pertama warga-warga negara dalam sebuah model. Relationships—ikat sesuatu bersama-sama. Diagram-diagram—berkumpul kumpulan-kumpulan yang menarik dari sesuatu. Sung Kim CS6359

Things Structural—nouns of UML models. Behavioral—dynamic parts of UML models. Grouping—organizational parts of UML models. Annotational—explanatory parts of UML models. Bersifat struktur—benda-benda model-model UML. Bersifat tingkah laku—bagian-bagian dynamic model-model UML. berkumpul—bersifat organisasi bagian-bagian model-model UML. Annotational—bagian-bagian explanatory model-model UML. Sung Kim CS6359

Structural Things Nouns of UML models. Conceptual or physical elements. Seven Kinds Benda-benda model-model UML. Bersifat konsep atau bersifat fisik elemen-elemen. Tujuh Macam-macam Classes Interfaces Collaborations Use cases Active classes Components Nodes Sung Kim CS6359

Classes Description of a set of objects that share the same attributes, operations, relationships, and semantics. Implement one or more interfaces. Deskripsi seset objek-objek yang membagikan sifat-sifat yang sama, operasi-operasi, relationships, dan semantics. Terap satu atau lebih antarmuka. Window origin size open() close() name attributes operations Sung Kim CS6359

<<interface>> Interfaces Collection of operations that specify a service of a class or component. Describes the externally visible behavior. Kumpulan operasi-operasi yang menetapkan sebuah pelayanan sebuah kelas atau komponen. Deskripsi-deskripsi dengan eksternal itu tingkah laku yang dapat divisi. IWindow <<interface>> IWindow name operations open() close() Sung Kim CS6359

Collaborations Defines an interaction. Society of roles and other elements. Provide cooperative behavior. Structural and behavioral dimensions. Pengartian-pengartian sebuah interaksi. Masyarakat peranan-peranan dan elemen-elemen lain. menyediakan tingkah laku yang bekerjasama. Bersifat struktur dan bersifat tingkah laku dimensi-dimensi. A given class may participate in several collaborations. You will see collaboration diagram later. Chain of responsibility Sung Kim CS6359

Use Cases Description of a sequence of actions that produce an observable result for a specific actor. Provides a structure for behavioral things. Realized by a collaboration. Deskripsi seurutan tindakan-tindakan yang menghasilkan sebuah hasilnya yang dapat diamati untuk sebuah ketetapikan penindak. Penyediaan-penyediaan sebuah struktur untuk bersifat tingkah laku sesuatu. terKerajaan dengan sebuah collaboration. Use cases: a sequence of actions and collaborations: interactions. So, a sequence of actions (use cases) is realized by interactions (collaborations). Place order Sung Kim CS6359

Active Classes Special class whose objects own one or more processes or threads. Can initiate control activity. Event Manager heavy border name attributes operations With respect to Concurrency. An active class is just like a class except that its objects represent elements with concurrent behavior with other elements (represents concurrent threads). suspend() flush() Sung Kim CS6359

Components Physical and replaceable part. Conforms to a set of interfaces. Physical packaging of logical components. Bersifat fisik dan bagian yang dapat diganti. Conforms untuk seset antarmuka-antarmuka. Bersifat fisik packaging dari bersifat logika komponen-komponen. Like software component: packages in java. Java.util. Is a “physical” packaging of logical components. Sung Kim CS6359

Node Physical element that exists at run time. Represents a computational resource. Generally has memory and processing power. Bersifat fisik elemen yang memberadakan pada lari waktu. Represents sebersifat penghitungan sumber. Pada umumnya mendapatkan memori dan kekuatan memproses. Node Sung Kim CS6359

Variations on Structural Things Actors Signals Utilities Processes and Threads Applications Documents etc. Utilities: kinds of classes. Processes and threads: kinds of active classes. Etc: files, libraries, pages, and tables(kinds of components). Sung Kim CS6359

Behavioral Things Verbs of UML models. Dynamic parts of UML models. Usually connected to structural elements. Two kinds Interactions—behavior that comprises a set of messages exchanged among a set of objects. State Machines—specifies the sequences of states an object or interaction goes through in response to events. Kata-kata kerja model-model UML. bagian-bagian Dynamic model-model UML. Biasanya menghubungkan untuk bersifat struktur elemen-elemen. Dua macam-macam Interaksi-interaksi—tingkah laku yang meliputi seset pesan-pesan menukar diantara seset objek-objek. Tinggal Mesin-mesin—penetapan-penetapan urutan-urutan itu dari pernyataan-pernyataan sebuah objek atau interaksi pergi melalui dalam respon untuk display Idle Sung Kim CS6359

Grouping Things Organizational parts of UML. Purely conceptual; only exists at development time. One kind Package—general-purpose mechanism for organizing elements. Variations: frameworks, models, and subsystems. Structural, behavioral, and even other grouping things can be placed in a package. Business rules Sung Kim CS6359

Annotational Things Explanatory parts of UML. Comments regarding other UML elements. Information best expressed as text. One kind Note—symbol for rendering constraints or comments attached to an element. Return copy of self Sung Kim CS6359

Relationships in UML Dependency Association Generalization Realization Sung Kim CS6359

Relationships Dependency—semantic relationship between two things in which a change to one thing may affect the semantics of the other. Association—structural relationship that describes a set of links; a link being a connection among objects. Ketergantungan—semantic relationship diantara dua sesuatu kepada yang mana sebuah perubahan untuk satu sesuatu yang boleh mempengaruhi semantics dari lain. Persatuan—bersifat struktur relationship deskripsi-deskripsi itu seset link-link; sebuah link menjadi sebuah koneksi diantara objek-objek. 0..1 * employer employee Sung Kim CS6359

Relationships (cont’d) Generalization—specialization relationship in which child objects are substitutable for the parent. Realization—semantic relationship between classifiers, wherein one classifier specifies a contract that the other guarantees to carry out. Generalisasi— relationship kepada yang mana anak objek-objek dapat diganti untuk orang tua. —semantic relationship diantara classifiers, didalamnya satu penetapan-penetapan classifier sebuah kontrak bahwa penggaransian-penggaransian lain untuk membawa keluar. Sung Kim CS6359

Diagrams Graphical representation of a set of elements. Rendered as a connected graph Vertices are things. Arcs are behaviors. Projection into a system form a specific perspective. Five most common views built from nine diagram types. Bersifat grafik representation seset elemen-elemen. terJadi sebagai sebuah koneksi graph Vertices adalah sesuatu. terBusur-busurlah tingkah-tingkah laku. Proyeksi kedalam sesistem membentuk sebuah perspektif yang tetapik. Lima paling tampilan-tampilan yang umum terbangun dari sembilan tipe diagram. Sung Kim CS6359

Common Diagram Types Class Object Use case Sequence Collaboration Statechart Activity Component Deployment Sung Kim CS6359

Rules of UML Well formed models—semantically self-consistent and in harmony with all its related models. Semantic rules for: Names—what you can call things. Scope—context that gives meaning to a name. Visibility—how names can be seen and used. Integrity—how things properly and consistently relate to one another. Execution—what it means to run or simulate a dynamic model. Baik for model-model—sendiri semantically-konsisten dan dalam keharmonian dengan semua relasi model-modelnya. peraturan-peraturan Semantic untuk: Nama-namai—apa yang kamu dapat memanggilkan sesuatu. Scope—konteks yang memberikan bermaksud untuk sebuah nama. Gaya menerawang—bagaimana nama-namai dapat dilihat dan diguna. Integrity—bagaimana sesuatu dengan layak dan relasi dengan konsisten untuk satu sama lain. Pengeksekusian—apa itu maksud-maksud untuk menjalankan atau mensimulasikan sebuah model dynamic. Sung Kim CS6359

Models in Development Elided—certain elements are hidden for simplicity. Incomplete—certain elements may be missing. Inconsistent—no guarantee of integrity. UML encourages the most important aspects such that models become well-formed over time. Elided—elemen-elemen yang pasti disembunyikan untuk simplicity. Tidak selesai—elemen-elemen yang pasti boleh merindukan. Inconsistent—tidak bergaransi integrity. UML encourages kebanyakan dari penting aspects seperti yang model-model jadi for baik diatas waktu. Sung Kim CS6359

Common Mechanisms in UML Specifications—textual statement of the syntax and semantics of a building block. Adornments—other details attached to UML elements. Common divisions—dichotomy representation of elements (i.e. Class vs. Object) Penetapan-penetapan—bersifat teks pernyataan sintaksis dan semantics sebuah bangunan merintangi. Perhiasan-perhiasan—detail-detail lain melampirkan ke elemen-elemen UML. pembagian-pembagian yang Umum—dichotomy representation dari elemen-elemen (saya.e. Kelas vs. Objek) Sung Kim CS6359

Common Mechanisms (cont’d) Extensibility mechanisms Stereotypes—extends vocabulary. Tagged values—extends properties of UML building blocks. Constraints—extend the semantics of UML building blocks. Sung Kim CS6359

Architecture Set of significant decisions regarding: Organization of a software system. Selection of structural elements and interfaces from which a system is composed. Behavior or collaboration of elements. Composition of structural and behavioral elements. Architectural style guiding the system. Set keputusan-keputusan yang berarti mengenai: Organisasi sebuah software sistem. Pilihan bersifat struktur elemen-elemen dan antarmuka-antarmuka dari yang mana sesistem disusun. Tingkah laku atau collaboration dari elemen-elemen. Komposisi bersifat struktur dan bersifat tingkah laku elemen-elemen. Bersifat arsitektur style menunjuki sistem. Sung Kim CS6359

Architecture Views Design View Implementation View Use Case View system assembly configuration mgmt. vocabulary functionality Design View Implementation View Use Case View behavior Deployment View Process View system topology distribution delivery installation performance scalability throughput Sung Kim CS6359

Use Case View Encompasses the behavior as seen by users, analysts and testers. Specifies forces that shape the architecture. Static aspects captured in use case diagrams. Dynamic aspects captured in interaction diagrams, statechart diagrams, and activity diagrams. Cakupan-cakupan tingkah laku itu sebagaimana dilihatkan oleh pengguna-pengguna, analysts dan penes-penes. Penetapan-penetapan pasukan-pasukan yang membentuk . aspects Nyataik tangkap dalam pemakaian hal diagram-diagram. Dynamic aspects menangkap dalam interaksi diagram-diagram, diagram-diagram statechart, dan menindak diagram-diagram. Sung Kim CS6359

Design View Encompasses classes, interfaces, and collaborations that define the vocabulary of a system. Supports functional requirements of the system. Static aspects captured in class diagrams and object diagrams. Dynamic aspects captured in interaction diagrams, statechart diagrams, and activity diagrams. Cakupan-cakupan tingkah laku itu sebagaimana dilihatkan oleh pengguna-pengguna, analysts dan penes-penes. Penetapan-penetapan pasukan-pasukan yang membentuk . aspects Nyataik tangkap dalam pemakaian hal diagram-diagram. Dynamic aspects menangkap dalam interaksi diagram-diagram, diagram-diagram statechart, dan menindak diagram-diagram. Sung Kim CS6359

Process View Encompasses the threads and processes defining concurrency and synchronization mechanisms. Addresses performance, scalability, and throughput. Static and dynamic aspects captured as in design view; emphasis placed on active classes. cakupan-Cakupan tingkah laku itu sebagaimana dilihatkan oleh pengguna-pengguna, pulpen-pulpen dan analysts-pulpen-pulpen. penetapan-Penetapan pasukan-pasukan yang membentuk . aspects Nyataik tangkap dalam diagram hal pemakaian-diagram. Dynamic aspects menangkap diagram interaksi dalam-diagram, diagram-diagram st Sung Kim CS6359

Implementation View Encompasses components and files used to assemble and release a physical system. Addresses configuration management. Static aspects captured in component diagrams. Dynamic aspects captured in interaction diagrams, statechart diagrams, and activity diagrams. Sung Kim CS6359

Deployment View Encompasses the nodes that form the system hardware topology. Addresses distribution, delivery, and installation. Static aspects captured in deployment diagrams. Dynamic aspects captured in interaction diagrams, statechart diagrams, and activity diagrams. Sung Kim CS6359

Software Process Use case driven—use cases are primary artifact for defining behavior of the system. Architecture-centric—the system’s architecture is primary artifact for conceptualizing, constructing, managing, and evolving the system. Iterative and incremental—managing streams of executable releases with increasing parts of the architecture included. Sung Kim CS6359

Phases Span of time between two major milestones. Primary phases Inception—seed idea is brought up to point of being a viable project. Elaboration—product vision and architecture are defined. Construction—brought from architectural baseline to point of deployment into user community. Transition—turned over to the user community. Sung Kim CS6359

Summary Modeling. UML introduction. Building blocks of UML. Rules of UML. Common UML mechanisms. Architectural views. Software lifecycle. Sung Kim CS6359