The Development of an Object-Oriented Software

Total Page:16

File Type:pdf, Size:1020Kb

The Development of an Object-Oriented Software Object-Oriented Design Lecture 18 Implementation Workflow Sharif University of Technology 1 Department of Computer Engineering Implementation Workflow • Implementation is primarily about creating code. However, the OO analyst/designer may be called on to create an implementation model. • The implementation workflow is the main focus of the Construction phase. • Implementation is about transforming a design model into executable code. Sharif University of Technology 2 Implementation Modeling • Implementation modeling is important when: • you intend to forward-engineer from the model (generate code); • you are doing CBD in order to get reuse. • The implementation model is part of the design model. • Artifacts - represent the specifications of real-world things such as source files: • components are manifest by artifacts; • artifacts are deployed onto nodes. • Nodes - represent the specifications of hardware or execution environments. Sharif University of Technology 3 Implementation Model Sharif University of Technology 4 Implementation Workflow: Activities • The Implementation Workflow consists of the following activities: • Architectural Implementation • Integrate System • Implement a Component • Implement a Class • Perform Unit Test Sharif University of Technology 5 Architectural Implementation • The UP activity Architectural Implementation is about identifying architecturally significant components and mapping them to physical hardware. • The deployment diagram maps the software architecture to the hardware architecture. • Deployment diagrams allow you to model the distribution of your software system over physical hardware. • In the design workflow you can create a "first cut" deployment diagram by identifying nodes or node instances, and relationships; • You refine this as part of the implementation workflow by adding components or component instances. Sharif University of Technology 6 Deployment Diagram: Descriptor Form • The descriptor form deployment diagram may be used to model what types of hardware, software, and connections there will be in the final deployed system. • It describes a whole set of possible deployments. • It shows: • nodes - what types of software environments and hardware run the system; • relationships - the types of connections between the nodes; • components - the types of components deployed on particular nodes. Sharif University of Technology 7 Deployment Diagram: Nodes • Node - represents a type of computational resource. • «device» - a type of physical device such as a PC or a Sun Fire server. • «execution environment» - a type of execution environment for software, such as an Apache web server. • Node instance - represents a specific computational resource. Sharif University of Technology 8 Deployment Diagram: Descriptor Form – Example Nodes Sharif University of Technology 9 Deployment Diagram: Instance Form • The instance form deployment diagram shows a particular deployment of the system over specific, identifiable pieces of hardware. • It describes one specific deployment of the system, perhaps at a specific user site. • It shows: • node instances - specific pieces of software environments and hardware; • relationship instances - specific relationships between node instances; • component instances - specific, identifiable pieces of software deployed on a node instance; for example, a particular copy of Microsoft Office with a unique serial number. Sharif University of Technology 10 Deployment Diagram: Instance Form – Example Nodes Sharif University of Technology 11 Deployment Diagrams: Stereotyping through Icons Sharif University of Technology 12 Deployment Diagram: Artifacts • Artifact - represents the specification of a real-world thing such as a particular executable file, source file, document or database table. • Artifacts can manifest one or more components. • Artifact instance - represents a specific instance of a particular artifact, such as a specific copy of a particular executable file deployed on a particular machine. Sharif University of Technology 13 Artifacts: Example Sharif University of Technology 14 Artifacts: Internal Structure – Example Sharif University of Technology 15 Artifacts: Standard Stereotypes Sharif University of Technology 16 Artifacts: Profile Stereotypes – Example Sharif University of Technology 17 Deployment Diagram: Complete Example Sharif University of Technology 18 Reference • Arlow, J., Neustadt, I., UML 2 and the Unified Process: Practical Object-Oriented Analysis and Design, 2nd Ed. Addison-Wesley, 2005. Sharif University of Technology 19.
Recommended publications
  • Artifact-Centric Modeling of Business Processes Using UML Diagrams
    Proceedings of The 20th World Multi-Conference on Systemics, Cybernetics and Informatics (WMSCI 2016) Artifact-Centric Modeling of Business Processes Using UML Diagrams David Grünert, Thomas Keller, and Elke Brucker-Kley ZHAW School of Management and Law Institute of Business Information Technology 8401 Winterthur, Switzerland {grud, kell, brck}@zhaw.ch Abstract and hidden in the process model. Accordingly, the positioning of information at the center of modeling was termed data- or infor- The modeling of business processes to date has focused on an mation-centric process modeling [2], [3], [4], [5]. Information activity-based perspective while business artifacts associated with entities are modeled by state charts. Transitions are triggered by the process have been modeled on an abstract and informal level. activities. Associated roles are defined by means of use case Ad hoc, dynamic business processes have recently emerged as a diagrams. In [5], the term opportunistic BPM (oBPM) was intro- requirement. Subsequently, BPMN was extended with ad hoc duced for this kind of approach. The duality between activity- sub-processes and a new standard, Case Management Modeling and information-centric models was shown in [6]. and Notation (CMMN), has been created by the Object Manage- Many artifact-centric approaches defined new or extended model ment Group (OMG). CMMN has an information-centric ap- syntax [6]. However, a new or extended modeling syntax increas- proach, whereas the extension of BPMN adheres to an activity- es complexity for all parties involved in designing, reading, and based perspective. The focus on BPMN and on processes in gen- implementing the modeled process and requires adapted model- eral has caused UML to fade into the background.
    [Show full text]
  • Xerox University Microfilms 300 North Zeeb Road Ann Arbor, Michigan 48106 74-2001
    CULTURAL FORMATION PROCESSES OF THE ARCHAEOLOGICAL RECORD: APPLICATIONS AT THE JOINT SITE, EAST-CENTRAL ARIZONA Item Type text; Dissertation-Reproduction (electronic) Authors Schiffer, Michael B. Publisher The University of Arizona. Rights Copyright © is held by the author. Digital access to this material is made possible by the University Libraries, University of Arizona. Further transmission, reproduction or presentation (such as public display or performance) of protected items is prohibited except with permission of the author. Download date 11/10/2021 00:04:31 Link to Item http://hdl.handle.net/10150/288122 INFORMATION TO USERS This material was produced from a microfilm copy of the original document. While the most advanced technological means to photograph and reproduce this document have been used, the quality is heavily dependent upon the quality of the original submitted. The following explanation of techniques is provided to help you understand markings or patterns which may appear on this reproduction. 1. The sign or "target" for pages apparently lacking from the document photographed is "Missing Page(s)". If it was possible to obtain the missing page(s) or section, they are spliced into the film along with adjacent pages. This may have necessitated cutting thru an image and duplicating adjacent pages to insure you complete continuity. 2. When an image on the film is obliterated with a large round black mark, it is an indication that the photographer suspected that the copy may have moved during exposure and thus cause a blurred image. You will find a good image of the page in the adjacent frame. 3.
    [Show full text]
  • Plantuml Language Reference Guide (Version 1.2021.2)
    Drawing UML with PlantUML PlantUML Language Reference Guide (Version 1.2021.2) PlantUML is a component that allows to quickly write : • Sequence diagram • Usecase diagram • Class diagram • Object diagram • Activity diagram • Component diagram • Deployment diagram • State diagram • Timing diagram The following non-UML diagrams are also supported: • JSON Data • YAML Data • Network diagram (nwdiag) • Wireframe graphical interface • Archimate diagram • Specification and Description Language (SDL) • Ditaa diagram • Gantt diagram • MindMap diagram • Work Breakdown Structure diagram • Mathematic with AsciiMath or JLaTeXMath notation • Entity Relationship diagram Diagrams are defined using a simple and intuitive language. 1 SEQUENCE DIAGRAM 1 Sequence Diagram 1.1 Basic examples The sequence -> is used to draw a message between two participants. Participants do not have to be explicitly declared. To have a dotted arrow, you use --> It is also possible to use <- and <--. That does not change the drawing, but may improve readability. Note that this is only true for sequence diagrams, rules are different for the other diagrams. @startuml Alice -> Bob: Authentication Request Bob --> Alice: Authentication Response Alice -> Bob: Another authentication Request Alice <-- Bob: Another authentication Response @enduml 1.2 Declaring participant If the keyword participant is used to declare a participant, more control on that participant is possible. The order of declaration will be the (default) order of display. Using these other keywords to declare participants
    [Show full text]
  • A Model-Driven Methodology Approach for Developing a Repository of Models Brahim Hamid
    A Model-Driven Methodology Approach for Developing a Repository of Models Brahim Hamid To cite this version: Brahim Hamid. A Model-Driven Methodology Approach for Developing a Repository of Models. 4th International Conference On Model and Data Engineering (MEDI 2014), Sep 2014, Larnaca, Cyprus. pp.29-44, 10.1007/978-3-319-11587-0_5. hal-01387744 HAL Id: hal-01387744 https://hal.archives-ouvertes.fr/hal-01387744 Submitted on 26 Oct 2016 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Open Archive TOULOUSE Archive Ouverte ( OATAO ) OATAO is an open access repository that collects the work of Toulouse researchers and makes it freely available over the web where p ossible. This is an author-deposited version published in : http://oatao.univ-toulouse.fr/ Eprints ID : 15256 The contribution was presented at MEDI 2014: http://medi2014.cs.ucy.ac.cy/ To cite this version : Hamid, Brahim A Model-Driven Methodology Approach for Developing a Repository of Models. (2014) In: 4th International Conference On Model and Data Engineering (MEDI 2014), 24 September 2014 - 26 September 2014 (Larnaca, Cyprus). Any corresponde nce concerning this service should be sent to the repository administrator: staff -oatao@listes -diff.inp -toulouse.fr A Model-Driven Methodology Approach for Developing a Repository of Models Brahim Hamid IRIT, University of Toulouse 118 Route de Narbonne, 31062 Toulouse Cedex 9, France [email protected] Abstract.
    [Show full text]
  • Working with Deployment Diagram
    UNIVERSITY OF ENGINEERING AND TECHNOLOGY, TAXILA FACULTY OF TELECOMMUNICATION AND INFORMATION ENGINEERING SOFTWARE ENGINEERING DEPARTMENT Lab # 09 Working with Deployment Diagram You’ll learn in this Lab: What a deployment diagram is Applying deployment diagrams Deployment diagrams in the big picture of the UML A solid blueprint for setting up the hardware is essential to system design. The UML provides you with symbols for creating a clear picture of how the final hardware setup should look, along with the items that reside on the hardware What is a Deployment Diagram? A deployment diagram shows how artifacts are deployed on system hardware, and how the pieces of hardware connect to one another. The main hardware item is a node, a generic name for a computing resource. A deployment diagram in the Unified Modeling Language models the physical deployment of artifacts on nodes. To describe a web site, for example, a deployment diagram would show what hardware components ("nodes") exist (e.g., a web server, an application server, and a database server), what software components ("artifacts") run on each node (e.g., web application, database), and how the different pieces are connected (e.g. JDBC, REST, RMI). In UML 2.0 a cube represents a node (as was the case in UML 1.x). You supply a name for the node, and you can add the keyword «Device», although it's usually not necessary. Software Design and Architecture 4th Semester-SE UET Taxila Figure1. Representing a node in the UML A Node is either a hardware or software element. It is shown as a three-dimensional box shape, as shown below.
    [Show full text]
  • Object-Oriented Representation of Electro-Mechanical Assemblies Using UML [8]
    NISTIR 7057 Object-Oriented Representation of Electro- Mechanical Assemblies Using UML Sudarsan Rachuri Young-Hyun Han Shaw C Feng Utpal Roy Fujun Wang Ram D Sriram Kevin W Lyons NISTIR 7057 Object-Oriented Representation of Electro- Mechanical Assemblies Using UML Sudarsan Rachuri Young-Hyun Han Shaw C Feng Utpal Roy Fujun Wang Ram D Sriram Kevin W Lyons October 03 U.S. DEPARTMENT OF COMMERCE Donald L. Evans, Secretary TECHNOLOGY ADMINISTRATION Phillip J. Bond, Under Secretary of Commerce for Technology NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY Arden L. Bement, Jr., Director Table of Contents 1 INTRODUCTION..................................................................................................... 2 2 PREVIOUS WORK.................................................................................................. 3 2.1 ISO STANDARD FOR PRODUCT DATA REPRESENTATION ..................................... 3 2.2 ISO WORKING GROUP PROPOSAL ....................................................................... 6 2.3 RESEARCH AT NIST............................................................................................. 8 2.3.1 Open Assembly Design Environment Project............................................. 9 2.3.2 Design for Tolerancing of Electro-mechanical Assemblies Project......... 10 2.3.3 NIST Core Product Model ....................................................................... 11 2.3.4 Other Systems............................................................................................ 12 3 UML REPRESENTATION
    [Show full text]
  • The IBM Rational Unified Process for System Z
    Front cover The IBM Rational Unified Process for System z RUP for System z includes a succinct end-to-end process for z practitioners RUP for System z includes many examples of various deliverables RUP for System z is available as an RMC/RUP plug-in Cécile Péraire Mike Edwards Angelo Fernandes Enrico Mancin Kathy Carroll ibm.com/redbooks International Technical Support Organization The IBM Rational Unified Process for System z July 2007 SG24-7362-00 Note: Before using this information and the product it supports, read the information in “Notices” on page vii. First Edition (July 2007) This edition applies to the IBM Rational Method Composer Version 7.1 © Copyright International Business Machines Corporation 2007. All rights reserved. Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Notices . vii Trademarks . viii Preface . ix The team that wrote this IBM Redbooks publication . .x Become a published author . xii Comments welcome. xii Part 1. Introduction to the IBM Rational Unified Process for System z. 1 Chapter 1. Introduction. 3 1.1 Purpose. 4 1.2 Audience . 4 1.3 Rationale . 4 1.4 Scope . 5 1.5 Overview . 5 Part 2. The IBM Rational Unified Process for System z for Beginners . 9 Chapter 2. Introduction to the IBM Rational Unified Process and its extension to Service-Oriented Architecture. 11 2.1 Overview . 12 2.2 Introduction to RUP. 13 2.2.1 The heart of RUP . 13 2.2.2 The IBM Rational Method Composer (RMC) platform . 13 2.3 Key principles for successful software development.
    [Show full text]
  • Best Practices for Managing Your Artifactory Database
    Best Practices for Managing Your Artifactory Database How to monitor your Artifactory Database and improve performance Copyright © 2020 JFrog Ltd. April 2020 | www.jfrog.com Table of Contents Table of Contents .............................................................................................................................. 1 Introduction ....................................................................................................................................... 2 What is the Artifactory Database? ................................................................................................ 2 Preliminary Considerations ........................................................................................................... 3 Database connections ..................................................................................................................... 4 Configurable parameters ................................................................................................................ 5 Defaults ..................................................................................................................................... 5 Parameters ............................................................................................................................... 5 Timeout ..................................................................................................................................... 5 Database performance factors ....................................................................................................
    [Show full text]
  • Part E Historic Artifact Cataloging Methods And
    PART E HISTORIC ARTIFACT CATALOGING METHODS AND UTILIZED CODES Archaeology of the Puncheon Run Site (7K-C-51) Volume III: Data Summaries CONTENTS PAGE I. ARTIFACT CATALOGING AND METHODS ................................ E-1 A. Laboratory Processing ................................................ E-1 B. Analytical Methods .................................................. E-1 1. Historic Ceramic Methods of Analysis ............................... E-2 2. Glass Methods of Analysis ........................................ E-3 3. Pipes Methods of Analysis ........................................ E-4 4. Small Finds/Architectural Methods of Analysis ........................ E-5 5. Faunal Methods of Analysis ....................................... E-5 II. REFERENCES CITED .................................................... E-7 TRANSLATIONS OF UTILIZED CODES Archaeology of the Puncheon Run Site (7K-C-51) Volume III: Data Summaries E-i I. ARTIFACT CATALOGING AND METHODS A. LABORATORY PROCESSING All artifacts were transported from the field to Berger’s laboratory in East Orange, New Jersey. In the field, artifacts were bagged in 4-mil resealable plastic bags, within paper bags. Artifact cards bearing provenience information were included in the plastic bags. The same information was written onto the paper bags. A field/catalog number was assigned to each unique provenience in the field, and this number appeared with all of the provenience information. The field/catalog number, along with the accession number obtained from the Delaware State Museum, was used to track artifact processing. The accession numbers assigned to the site are as follows: 97/0051, 97/0052, and 97/0053 for the Phase I; 97/0055, 97/0058, and 97/0059 for the Phase II; and 98/0002 for the Phase III. In the laboratory, provenience information on each artifact card and bag was checked against a master list of accession/field/catalog numbers with their proveniences.
    [Show full text]
  • Deployment Diagrams Deployment Diagrams
    DEPLOYMENT DIAGRAMS DEPLOYMENT DIAGRAMS • Deployment diagrams are used to visualize the topology of the physical components of a system. • The purpose of deployment diagrams can be described as: • Visualize hardware topology of a system. • Describe the hardware components used to deploy software components. • Describe runtime processing nodes. Definitions • Deployment diagram is a structure diagram which shows architecture of the system as deployment (distribution) of software artifacts to deployment targets. • Artifacts represent concrete elements in the physical world that are the result of a development process. Examples of artifacts are executable files, libraries, archives, database schemas, configuration files, etc. • Deployment target is usually represented by a node which is either hardware device or some software execution environment. Nodes could be connected through communication paths to create networked systems of arbitrary complexity. UML deployment diagram nodes and edges • Node/deployment target • Artifact • Manifests • Deployment specification • Deploy Node • Node is a deployment target which represents computational resource upon which artifacts may be deployed for execution. • Node is shown as a perspective, 3-dimensional view of a cube. • Node is specialized by: Device Execution environment Hierarchical Node Artifact • An artifact is a classifier that represents some physical entity, a piece of information that is used or is produced by a software development process. • Some real life examples of UML artifacts are: 1. text document 2. source file 3. script 4. binary executable file 5. archive file 6. database table Device Node • A device is a node which represents a physical computational resource with processing capability upon which artifacts may be deployed for execution. • A device is rendered as a node (perspective, 3-dimensional view of a cube) annotated with keyword «device».
    [Show full text]
  • Telelogic Tau 3.1 UML Tutorial © 2002-2007 Copyright Telelogic AB
    Telelogic Tau 3.1 UML Tutorial © 2002-2007 Copyright Telelogic AB. Terms of use Telelogic grants you the right to use the Program and the Documentation on one computer or in one local computer net- work at any one time according to the terms and conditions in the License. The Program and the Documentation are owned by Telelogic and are protected by national copyright laws and international copyright treaties. This License does not con- vey to you an interest in the Program or the Documentation, but only a limited right of use in accordance with the terms of this License. No part of this Documentation may be reproduced, transmitted, transcribed, stored in a retrieval system or translated into any language in any form except as provided in this License. Telelogic does not warrant that the Documentation will meet your requirements or that the operation of the Program will be according to the Documentation, uninterrupted and error free. You are solely responsible for the selection and operation of the Program to achieve your intended results and for the results actually obtained. Information in this Documentation is subject to change without notice. Trademarks Telelogic®, Telelogic DOORS®, Telelogic TAU®, Telelogic DocExpress®, Telelogic DOORSnet® and Telelogic Ac- tiveCM® are the registered trademarks of Telelogic. Telelogic DOORS®/Analyst™, Telelogic DOORS® XT™, Telelogic TAU®/Architect™ , Telelogic TAU®/Develop- er™ , Telelogic TAU®/Tester™ , Telelogic TAU®/Model Author™ , Telelogic SYNERGY™ , Telelogic SYNER- GY™/CM , Telelogic SYNERGY™/Change, Telelogic Dashboard™ and Telelogic Logiscope™ are trademarks of Tele- logic. All other trademarks are the properties of respective holders. ii Telelogic Tau 3.1 User Guide May 2007 How to contact Customer Support The Help Desk is the single point of contact for all support related commu- nication regarding the Telelogic Tau products: • Telelogic Help Desk at our offices.
    [Show full text]
  • Com.Telelogic.Rhapsody.Core
    com.telelogic.rhapsody.core Package Class Use Tree Serialized Deprecated Index Help PREV PACKAGE NEXT PACKAGE FRAMES NO FRAMES All Classes Package com.telelogic.rhapsody.core Interface Summary The IRPAcceptEventAction interface represents Accept Event IRPAcceptEventAction Action elements in a statechart or activity diagram. The IRPAcceptTimeEvent interface represents Accept Time Event IRPAcceptTimeEvent elements in activity diagrams and statecharts. The IRPAction interface represents the action defined for a IRPAction transition in a statechart. The IRPActionBlock interface represents action blocks in IRPActionBlock sequence diagrams. The IRPActivityDiagram interface represents activity diagrams in IRPActivityDiagram Rational Rhapsody models. IRPActor The IRPActor interface represents actors in Rhapsody models. The IRPAnnotation interface represents the different types of IRPAnnotation annotations you can add to your model - notes, comments, constraints, and requirements. The IRPApplication interface represents the Rhapsody application, IRPApplication and its methods reflect many of the commands that you can access from the Rhapsody menu bar. The IRPArgument interface represents an argument of an IRPArgument operation or an event. IRPASCIIFile The IRPAssociationClass interface represents association classes IRPAssociationClass in Rational Rhapsody models. The IRPAssociationRole interface represents the association roles IRPAssociationRole that link objects in communication diagrams. The IRPAttribute interface represents attributes of
    [Show full text]