MDA Modeling Conventions

Size: px
Start display at page:

Download "MDA Modeling Conventions"

Transcription

1 Peter J. Fontana Version 2.0 May 25, 2004 PathMATE Series Pathfinder Solutions LLC 90 Oak Point Wrentham, MA USA by Pathfinder Solutions

2 Table of Contents PathMATE Overview...iii 1. Introduction General Conventions... 1 Naming and Descriptions... 1 Capitalization... 2 Diagrams Diagram-Specific Conventions... 3 Domain Model... 3 Class Diagram... 3 Scenario Model... 4 State Model... 5 Action Model... 5 Analysis Level User-Defined Types... 6 ii

3 PathMATE Overview This overview introduces Model Driven Architecture (MDA) and the PathMATE tools that make MDA work. MDA and PathMATE move you from writing and debugging code to developing and testing the logic of a high performance system. Over years of rigorous refinement in several industries, PathMATE tools have proven their value in rapid and effective software systems development. PathMATE Toolset The PathMATE Model Automation and Transformation Environment includes all the tools required to transform your MDA models into highperformance systems (Figure 1). Figure 1. PathMATE Toolset iii

4 The three parts of the PathMATE toolset cooperate to turn your models into executable systems: Transformation Maps Generate C, C++, or Java software with off-the-shelf Transformation Maps, or create custom maps to drive output for other languages or specific platforms. Transformation Engine The Engine transforms platformindependent models into working, embedded software applications. Spotlight Verify and debug your application logic with Spotlight, the most advanced model testing environment available. No other MDA transformation environment offers a more open or configurable set of development tools, designed to meet the requirements of systems engineers. How PathMATE Works Use Model Driven Architecture to build complex embedded systems that meet rigorous standards for speed and reliability. MDA works because it separates what the system does from its deployment on a particular platform. PathMATE adds these advantages: Greatest architectural control A highly configurable Transformation Engine enables you to optimize output for resource-constrained platforms. Clean separation of model and code Conforming to the MDA paradigm, PathMATE models contain no implementation code. That gives you fast and flexible deployment and migration capabilities. Configurable, target-based model execution and testing Preemptively eliminate platform-specific bugs, minimize quality assurance resources, and accelerate development. Lowest cost of ownership Integrate PathMATE with your existing UML editor. Build on your previous investment in training and software. Speed Even large transformations take just seconds with PathMATE. That enables highly iterative model development, and rapid transformation and test cycles. Try the demonstration software available at to get started quickly and easily. iv

5 1. Introduction This document provides a summary of common rules and conventions applied to Analysis modeling of embedded systems. These rules and conventions have been developed to ensure the Analysis models are: Populated with valid, consistent and understandable Analysis abstractions Free of analyst-level errors caused by bad programming practice Valuable to both the maintenance developer and the external expert reviewer Please note that these conventions assume a base of syntactically correct models that pass all checks provided in the PathMATE Transformation Engine. It is assumed that the reader is familiar with the MDA approach as introduced in Model Based Software Engineering: Rigorous Software Development with Domain Modeling, Pathfinder Solutions, (This paper is available from 2. General Conventions Naming and Descriptions While the UML notation provides some semantic meaning through the graphic icons employed, the true meaning of Analysis models comes from the Analysis element names and descriptions. These textual elements must be carefully crafted to convey the necessary concepts. The general audience for names and descriptions are assumed to be: Familiar with UML in general and with MBSE in particular Generally knowledgeable in the domain s subject matter Analysis element names and descriptions are: Clear, concise, and unambiguous Appropriate to the subject matter of their domain In addition, names and descriptions should take care to avoid restating points apparent from the analysis itself. For example, avoid an attribute description that starts with This is the attribute of the Foo class which 1

6 Capitalization Diagrams These conventions help the reader especially at the Action Language level understand what some Analysis elements are simply from how their names are capitalized and underscored. (The rules are in regular expression syntax.) DomainName, DomainServiceName, ClassName, StateName, EventName: [A-Z][A-Z,a-z,0-9]* attributename, objectservicename: [a-z][a-z,a-z,0-9]* data_type_name_t (for non-enum project-specific data types): [a-z][a-z,0-9_]*_t enum_name_e (for project-specific enumerates): [a-z][a-z,0-9_]*_e SYMBOLIC_CONSTANT, ENUMERATE_LABEL: [A-Z][A-Z,0-9,_]* action_local_variable, service_parameter, event_parameter: [az][a-z,0-9_]* Software modeling affords the benefits of a two-dimensional form of expression diagrams. A diagram can convey a lot of information in a small space provided the needs of the reader are kept in mind. Origination legends (Popkin doc blocks ) are placed in the upper left corner of every diagram, and include the author s name, and a document version number. This number is <build number>.<sequence number>. The build number indicates the build the current diagram work is intended for, and sequence number indicates the revision level within that build. NOTE: A diagram last edited in build 1 will retain its 1.xx version number throughout the project, until it is edited again. Versions are changed only when actual changes are made. The graphical layout groups related diagram elements together, and maintains uniform alignment and spacing to reinforce this grouping. Care is taken in layout of connecting lines to avoid line crossover where possible. Connecting lines are routed with a minimum of intermediate nodes. 2

7 3. Diagram-Specific Conventions Domain Model Name domains to be reusable and independent of vendor. For example, choose GUIToolkit, not MSVisualEnvironment. Bridge lines are straight, and at any angle. Class Diagram Class names are singular use a 1:1..* (or 1..*:1..*) association to show plurality instead. Each class prefix is unique both within the domain and does not overlap with domain prefixes. Attributes are named from the perspective of their classes. This can afford some economy in the name, EG: for the Hospital class use mainphonenumber instead of hospitalmainphonenumber. Association names are A<number>. Association role phrases use the same naming as local variable names: [a-z][a-z,0-9_]*. Inheritance relationships are named: S<number>. Do not use disjoint inheritance hierarchies. For example: Dog S1 S1 S2 S2 BigDog SmallDog RedDog BlackDog Instead use a discriminant attribute (where appropriate): Dog (D) color S1 S1 BigDog SmallDog 3

8 Association and inheritance lines are straight and orthogonal. Association names are located near the center of association lines. Association role phrases are located near their respective ends of their of association lines. The supertype ends of inheritance lines are aligned to present a single arrowhead. Do not use multiple inheritance. Scenario Model System Level Only show domains on system-level scenario models, and only show domain service invocations between the domains. Domain Level Show the local domain as the first object lifeline on the left. Show server domains as the last object lifelines on the right. In general, show external impetus as coming from offpage (the left margin) to avoid specifying a client. (If your editor requires a lifeline at both ends of all interactions, then specify a domain named <client> ). Show only the following types of interactions (the exact syntax is dependent on your choice of UML editor): <domain prefix>:<domain service name> <object prefix>:<object service name> <object prefix>:<event name> Create Delete CALL <service handle name> 4

9 State Model Action Model State names convey the lifecycle stage of a class instance for some finite span of time. Their names need to reinforce this, and present perfect tense can help. For example, use RaisingRamp instead of RaiseRamp. Event names identify a single instance in time, and past tense can help. Their names need to reinforce this. For example, use DoorClosed instead of DoorClose. Transition lines are straight and orthogonal. Event labels are located near the source end of their transition lines. Avoid deferred events if possible. It can make the dynamics of the model difficult to follow. In Action Modeling it is important to follow some of the more general rules of structured programming: Only services returning a specific value need an exit point. When necessary, use a single exit point (RETURN statement). Reduce individual action scope to fit within 100 lines. Have a single statement on a line. Indent statement frames within control structures. Provide liberal commenting, including: summary at the top of the action, or in the state action summary descriptions for each statement frame of a control structure (IF/ELSE, FOREACH, WHILE) something for any line that is not patently self explanatory Take care when defining and using polymorphic events or services. The lowest level class in the hierarchy that can act on it will. Proper action modeling is necessary to enforce the rules and policies of the domain. Unconditional associations need to be enforced by the actions: When creating an instance of a class that has an unconditional relationship, the associated class instance should either be preexisting or created shortly afterward, in the same unit of action language if possible. Link unconditional associations as soon as possible after creating the participants (but in all cases complete the link within the execution of the creating state action, or within the services it calls). 5

10 Even unconditional associations, however, do not guarantee successful navigation. An explicit LINK must have been completed before navigation: In all navigations, either provide defensive logic to handle not found cases, or explicitly comment where (action name) the link is guaranteed to have happened. Separating the retrieval of an instance reference from its subsequent use can aid Design-level error catching, help with readability, and aid debugability: When invoking a service or method that returns an instance reference, catch this reference in a variable before using it. For example, instead of using this: do this: MO:PickBiggest().selected = TRUE; Ref<MyObject> mo; mo = MO:PickBiggest(); mo.selected = TRUE; Analysis Level User-Defined Types In an effort to help the analyst understand where various types are defined and to afford a form of name-space scooping at the implementation level, the following naming conventions are applied to user defined types. Scope Identification System-level data types are prefixed with sys_ System-level symbolic constants and enumerate labels are prefixed with SYS_ Domain-level data types are prefixed with <domain prefix>_ (in lowercase) Domain-level symbolic constants and enumerate labels are prefixed with <DOMAIN PREFIX>_ (in uppercase) Enumerate Label Grouping with Enumerate Type Even with defining scope prefixes on enumerate labels, it can be very difficult to identify which enumerate type definition and enumerate label is defined within without help. This convention helps in a type scope with many enumerate types: Enumerate label names are built from the scope prefix, and an identifying segment from the enumerate type name, followed by an identifying element from this value. Example: ENUM sys_traffic_light_color_e { SYS_TRAFFIC_LIGHT_RED, SYS_TRAFFIC_LIGHT_GREEN, SYS_TRAFFIC_LIGHT_BLUE}. (Sorry we re out of yellow.) 6

PathMATE Modeler s Guide

PathMATE Modeler s Guide PathMATE Modeler s Guide Model Driven Architecture with Rational Rose Version 1.7 December 31, 2004 PathMATE Series Pathfinder Solutions LLC 33 Commercial Drive, Suite Foxboro, MA 02035 USA www.pathfindermda.com

More information

Basic Structural Modeling. Copyright Joey Paquet,

Basic Structural Modeling. Copyright Joey Paquet, Basic Structural Modeling Copyright Joey Paquet, 2000 1 Part I Classes Copyright Joey Paquet, 2000 2 Classes Description of a set of objects sharing the same attributes, operations and semantics Abstraction

More information

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN NOTES ON OBJECT-ORIENTED MODELING AND DESIGN Stephen W. Clyde Brigham Young University Provo, UT 86402 Abstract: A review of the Object Modeling Technique (OMT) is presented. OMT is an object-oriented

More information

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin Chapter 10 Object-Oriented Analysis and Modeling Using the UML McGraw-Hill/Irwin Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Objectives 10-2 Define object modeling and explain

More information

PathMATE for IBM Rational Rhapsody Quick Start Guide

PathMATE for IBM Rational Rhapsody Quick Start Guide PathMATE for IBM Rational Rhapsody Version 8.0.3 September 1, 2009 PathMATE Series Pathfinder Solutions www.pathfindermdd.com +1 508-568-0068 2012 by Pathfinder Solutions Table of Contents OVERVIEW...4

More information

PathMATE Installation Guide

PathMATE Installation Guide PathMATE Installation Guide Version 1.6 May 28, 2008 Pathfinder Solutions LLC 33 Commercial Street, Suite 2 Foxboro, MA 02035 USA www.pathfindermda.com 888-662-7284 2008 by Pathfinder Solutions Table Of

More information

Developing Shlaer-Mellor Models Using UML

Developing Shlaer-Mellor Models Using UML Developing Shlaer-Mellor Models Using UML Stephen J. Mellor Neil Lang Project Technology, Inc. 10940 Bigge Street San Leandro, California 94577 (510) 567-0255 http://www.projtech.com This position paper

More information

Whole Platform Foundation. The Long Way Toward Language Oriented Programming

Whole Platform Foundation. The Long Way Toward Language Oriented Programming Whole Platform Foundation The Long Way Toward Language Oriented Programming 2008 by Riccardo Solmi made available under the Creative Commons License last updated 22 October 2008 Outline Aim: Engineering

More information

Compositional Model Based Software Development

Compositional Model Based Software Development Compositional Model Based Software Development Prof. Dr. Bernhard Rumpe http://www.se-rwth.de/ Seite 2 Our Working Groups and Topics Automotive / Robotics Autonomous driving Functional architecture Variability

More information

Preliminaries. Part I

Preliminaries. Part I Part I Preliminaries Chapters 1 through 4 present an introduction to C++ that provides the basis for understanding the rest of the material in this book. This part also provides professional programmers

More information

UML- a Brief Look UML and the Process

UML- a Brief Look UML and the Process UML- a Brief Look UML grew out of great variety of ways Design and develop object-oriented models and designs By mid 1990s Number of credible approaches reduced to three Work further developed and refined

More information

3rd Lecture Languages for information modeling

3rd Lecture Languages for information modeling 3rd Lecture Languages for information modeling Agenda Languages for information modeling UML UML basic concepts Modeling by UML diagrams CASE tools: concepts, features and objectives CASE toolset architecture

More information

UML with Action Semantics

UML with Action Semantics UML with Action Semantics Concepts, Application and Implications Milan Ignjatovic Software Engineering Consultant Software Engineering Trainer Zuehlke Engineering AG Agenda Part 1: What is UML with Action

More information

CompuScholar, Inc. Alignment to Nevada "Computer Science" Course Standards

CompuScholar, Inc. Alignment to Nevada Computer Science Course Standards CompuScholar, Inc. Alignment to Nevada "Computer Science" Course Standards Nevada Course Details: Course Name: Computer Science Primary Cluster: Information and Media Technologies Standards Course Code(s):

More information

The TTC 2011 Reengineering Challenge Using MOLA and Higher-Order Transformations

The TTC 2011 Reengineering Challenge Using MOLA and Higher-Order Transformations The TTC 2011 Reengineering Challenge Using MOLA and Higher-Order Transformations Agris Sostaks, Elina Kalnina, Audris Kalnins, Edgars Celms, and Janis Iraids Institute of Computer Science and Mathematics,

More information

Transformation of Executable Platform Independent Models

Transformation of Executable Platform Independent Models www.pathfindermda.com Put MDA to Work Transformation of Executable Platform Independent Models Bruce Levkoff Pathfinder Solutions Agenda Executable Models Transformation Environment Transformation Rule

More information

Modelling Languages: (mostly) Concrete (Visual) Syntax. Hans Vangheluwe

Modelling Languages: (mostly) Concrete (Visual) Syntax. Hans Vangheluwe Modelling Languages: (mostly) Concrete (Visual) Syntax Hans Vangheluwe Antwerp 26 August 2014 2 3 4 5 6 Causal Block Diagrams (syntax) 7 Causal Block Diagrams (semantics) 8 Operational Semantics 9 Causal

More information

PathMATE Installation Guide

PathMATE Installation Guide PathMATE Installation Guide Version 1.8 June 29, 2011 Deleted: January 10 Pathfinder Solutions Wrentham, Massachusetts USA www.pathfindermda.com 888-662-7284 2011 by Pathfinder Solutions Table Of Contents

More information

Introduction to Assurance

Introduction to Assurance Introduction to Assurance Overview Why assurance? Trust and assurance Life cycle and assurance April 1, 2015 Slide #1 Overview Trust Problems from lack of assurance Types of assurance Life cycle and assurance

More information

Notation Standards for TOGAF:

Notation Standards for TOGAF: Welcome! Notation Standards for TOGAF: BPMN and UML Play Together Matt Smith Architecture Consultant Architecture Context Business Modeling Process Information Messaging Participants Software Systems Analysis

More information

FUNCTIONAL BEST PRACTICES ORACLE USER PRODUCTIVITY KIT

FUNCTIONAL BEST PRACTICES ORACLE USER PRODUCTIVITY KIT FUNCTIONAL BEST PRACTICES ORACLE USER PRODUCTIVITY KIT Purpose Oracle s User Productivity Kit (UPK) provides functionality that enables content authors, subject matter experts, and other project members

More information

IDEF3 Process Modeling

IDEF3 Process Modeling IDEF3 Process Modeling What is a Process Model? Simply pyp put, the Process Model is the way that work is divided in a value delivery system. James B. Swartz A representation of a process and its related

More information

ava with Object-Oriented Generic Programming+ Java Java with Object-Oriented + Generic Programming by Paul S. Wang sofpower.com

ava with Object-Oriented Generic Programming+ Java Java with Object-Oriented + Generic Programming by Paul S. Wang sofpower.com J Java J with Object-Oriented Generic Programming+ ava Java with by Paul S. Wang Object-Oriented + Generic Programming sofpower.com Java with Object-oriented and Generic Programming Paul S. Wang Department

More information

UML for Real-Time Overview

UML for Real-Time Overview Abstract UML for Real-Time Overview Andrew Lyons April 1998 This paper explains how the Unified Modeling Language (UML), and powerful modeling constructs originally developed for the modeling of complex

More information

UML Fundamental. OutLine. NetFusion Tech. Co., Ltd. Jack Lee. Use-case diagram Class diagram Sequence diagram

UML Fundamental. OutLine. NetFusion Tech. Co., Ltd. Jack Lee. Use-case diagram Class diagram Sequence diagram UML Fundamental NetFusion Tech. Co., Ltd. Jack Lee 2008/4/7 1 Use-case diagram Class diagram Sequence diagram OutLine Communication diagram State machine Activity diagram 2 1 What is UML? Unified Modeling

More information

A QUICK OVERVIEW OF THE OMNeT++ IDE

A QUICK OVERVIEW OF THE OMNeT++ IDE Introduction A QUICK OVERVIEW OF THE OMNeT++ IDE The OMNeT++ Integrated Development Environment is based on the Eclipse platform, and extends it with new editors, views, wizards, and additional functionality.

More information

ITC213: STRUCTURED PROGRAMMING. Bhaskar Shrestha National College of Computer Studies Tribhuvan University

ITC213: STRUCTURED PROGRAMMING. Bhaskar Shrestha National College of Computer Studies Tribhuvan University ITC213: STRUCTURED PROGRAMMING Bhaskar Shrestha National College of Computer Studies Tribhuvan University Lecture 03: Program Development Life Cycle Readings: Not Covered in Textbook Program Development

More information

Word for Research Writing I: Text and Structure

Word for Research Writing I: Text and Structure Word for Research Writing I: Text and Structure Last updated: 10/2017 Shari Hill Sweet dteditor@nd.edu or 631-7545 1. The Graduate School Template...1 1.1 Document structure... 1 1.1.1 Beware of Section

More information

Source Code and Construction. CxOne Standard

Source Code and Construction. CxOne Standard Source Code and Construction CxOne Standard CxStand_Code.doc November 3, 2002 Advancing the Art and Science of Commercial Software Engineering Contents 0 INTRODUCTION... 1 0.1 SCOPE... 1 0.1.1 Relationship

More information

INFO216: Advanced Modelling

INFO216: Advanced Modelling INFO216: Advanced Modelling Theme, spring 2018: Modelling and Programming the Web of Data Andreas L. Opdahl Session S13: Development and quality Themes: ontology (and vocabulary)

More information

TIBCO iprocess Modeler Getting Started. Software Release 11.1 September 2009

TIBCO iprocess Modeler Getting Started. Software Release 11.1 September 2009 TIBCO iprocess Modeler Getting Started Software Release 11.1 September 2009 Important Information SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED OR BUNDLED TIBCO SOFTWARE

More information

C # Coding Standards for.net By Lance Hunt. Document Version 1.13a August Copyright Lance Hunt 2004 All Rights Reserved

C # Coding Standards for.net By Lance Hunt. Document Version 1.13a August Copyright Lance Hunt 2004 All Rights Reserved C # Coding Standards for.net By Lance Hunt Document Version 1.13a August 2004 Copyright Lance Hunt 2004 All Rights Reserved Published by Lance Hunt Please submit comments, questions, and feedback to http://weblogs.asp.net/lhunt/.

More information

Programming Logic and Design Seventh Edition Chapter 2 Elements of High-Quality Programs

Programming Logic and Design Seventh Edition Chapter 2 Elements of High-Quality Programs Programming Logic and Design Chapter 2 Elements of High-Quality Programs Objectives In this chapter, you will learn about: Declaring and using variables and constants Assigning values to variables [assignment

More information

Fast Track to Core Java 8 Programming for OO Developers (TT2101-J8) Day(s): 3. Course Code: GK1965. Overview

Fast Track to Core Java 8 Programming for OO Developers (TT2101-J8) Day(s): 3. Course Code: GK1965. Overview Fast Track to Core Java 8 Programming for OO Developers (TT2101-J8) Day(s): 3 Course Code: GK1965 Overview Java 8 Essentials for OO Developers is a three-day, fast-paced, quick start to Java 8 training

More information

Bonita Workflow. Development Guide BONITA WORKFLOW

Bonita Workflow. Development Guide BONITA WORKFLOW Bonita Workflow Development Guide BONITA WORKFLOW Bonita Workflow Development Guide BSOA Workflow v3.0 Software January 2007 Copyright Bull SAS Table of Contents Chapter 1. Overview... 11 1.1 Role of

More information

12 Tutorial on UML. TIMe TIMe Electronic Textbook

12 Tutorial on UML. TIMe TIMe Electronic Textbook TIMe TIMe Electronic Textbook 12 Tutorial on UML Introduction......................................................2.................................................3 Diagrams in UML..................................................3

More information

Development Methodology TM

Development Methodology TM We use our proven iterative approach to each design and development project. With this 6 step methodology, once the preliminary requirements are clear, the next step is to prototype your website. From

More information

A GrGen.NET solution of the Model Migration Case for the Transformation Tool Contest 2010

A GrGen.NET solution of the Model Migration Case for the Transformation Tool Contest 2010 A GrGen.NET solution of the Model Migration Case for the Transformation Tool Contest 2010 Sebastian Buchwald Edgar Jakumeit June 3, 2010 1 Introduction The challenge of the Model Migration Case [1] is

More information

UML 2.0 UML 2.0. Scott Uk-Jin Lee. Division of Computer Science, College of Computing Hanyang University ERICA Campus

UML 2.0 UML 2.0. Scott Uk-Jin Lee. Division of Computer Science, College of Computing Hanyang University ERICA Campus UML 2.0 Division of Computer Science, College of Computing Hanyang University ERICA Campus Introduction to UML 2.0 UML Unified Modeling Language Visual language for specifying, constructing and documenting

More information

Integrity 10. Curriculum Guide

Integrity 10. Curriculum Guide Integrity 10 Curriculum Guide Live Classroom Curriculum Guide Integrity 10 Workflows and Documents Administration Training Integrity 10 SCM Administration Training Integrity 10 SCM Basic User Training

More information

Executable UML. Stephen J. Mellor

Executable UML. Stephen J. Mellor Executable UML Stephen J. Mellor Executable UML is here. While it is possible today to add code to UML diagrams and then execute them, in so doing you must make a series of decisions about implementation

More information

Slide 1 Welcome to Fundamentals of Health Workflow Process Analysis and Redesign: Process Mapping: Entity-Relationship Diagrams. This is Lecture e.

Slide 1 Welcome to Fundamentals of Health Workflow Process Analysis and Redesign: Process Mapping: Entity-Relationship Diagrams. This is Lecture e. WORKFLOW ANALYSIS Audio Transcript Component 10 Unit 3 Lecture E Fundamentals of Health Workflow Process Analysis & Redesign Interpreting and Creating Process Diagrams Process Mapping UML notation for

More information

CSC Advanced Object Oriented Programming, Spring Overview

CSC Advanced Object Oriented Programming, Spring Overview CSC 520 - Advanced Object Oriented Programming, Spring 2018 Overview Brief History 1960: Simula first object oriented language developed by researchers at the Norwegian Computing Center. 1970: Alan Kay

More information

Software Testing and Maintenance 1. Introduction Product & Version Space Interplay of Product and Version Space Intensional Versioning Conclusion

Software Testing and Maintenance 1. Introduction Product & Version Space Interplay of Product and Version Space Intensional Versioning Conclusion Today s Agenda Quiz 3 HW 4 Posted Version Control Software Testing and Maintenance 1 Outline Introduction Product & Version Space Interplay of Product and Version Space Intensional Versioning Conclusion

More information

EUROPEAN PATENT OFFICE U.S. PATENT AND TRADEMARK OFFICE CPC NOTICE OF CHANGES 488 DATE: FEBRUARY 1, 2018 PROJECT RP0504

EUROPEAN PATENT OFFICE U.S. PATENT AND TRADEMARK OFFICE CPC NOTICE OF CHANGES 488 DATE: FEBRUARY 1, 2018 PROJECT RP0504 EUROPEAN PATENT OFFICE U.S. PATENT AND TRADEMARK OFFICE CPC NOTICE OF CHANGES 488 The following classification changes will be effected by this Notice of Changes: Action Subclass Group(s) SCHEME: Symbols

More information

Introduce C# as Object Oriented programming language. Explain, tokens,

Introduce C# as Object Oriented programming language. Explain, tokens, Module 2 98 Assignment 1 Introduce C# as Object Oriented programming language. Explain, tokens, lexicals and control flow constructs. 99 The C# Family Tree C Platform Independence C++ Object Orientation

More information

UNIT-4 Behavioral Diagrams

UNIT-4 Behavioral Diagrams UNIT-4 Behavioral Diagrams P. P. Mahale Behavioral Diagrams Use Case Diagram high-level behaviors of the system, user goals, external entities: actors Sequence Diagram focus on time ordering of messages

More information

WA1278 Introduction to Java Using Eclipse

WA1278 Introduction to Java Using Eclipse Lincoln Land Community College Capital City Training Center 130 West Mason Springfield, IL 62702 217-782-7436 www.llcc.edu/cctc WA1278 Introduction to Java Using Eclipse This course introduces the Java

More information

Volume II, Section 5 Table of Contents

Volume II, Section 5 Table of Contents Volume II, Section 5 Table of Contents 5...5-1 5.1 Scope...5-1 5.2 Basis of...5-1 5.3 Initial Review of Documentation...5-2 5.4 Source Code Review...5-2 5.4.1 Control Constructs...5-3 5.4.1.1 Replacement

More information

ISO. International Organization for Standardization. ISO/IEC JTC 1/SC 32 Data Management and Interchange WG4 SQL/MM. Secretariat: USA (ANSI)

ISO. International Organization for Standardization. ISO/IEC JTC 1/SC 32 Data Management and Interchange WG4 SQL/MM. Secretariat: USA (ANSI) ISO/IEC JTC 1/SC 32 N 0736 ISO/IEC JTC 1/SC 32/WG 4 SQL/MM:VIE-006 January, 2002 ISO International Organization for Standardization ISO/IEC JTC 1/SC 32 Data Management and Interchange WG4 SQL/MM Secretariat:

More information

Model Driven Development with xtuml and BridgePoint

Model Driven Development with xtuml and BridgePoint Model Driven Development with xtuml and BridgePoint xtuml Executable and Translatable UML Unified Modeling Language Industry standard notation Family of languages Executable UML Defines a method, including:

More information

Ontology Development. Farid Naimi

Ontology Development. Farid Naimi Ontology Development Farid Naimi Overview Why develop an ontology? What is in an ontology? Ontology Development Defining classes and a class hierarchy Naming considerations Conclusion Why develop an ontology?

More information

Analysis and Design with UML

Analysis and Design with UML Analysis and Design with UML Page 1 Agenda Benefits of Visual Modeling History of the UML Visual Modeling with UML The Rational Iterative Development Process Page 2 What is Visual Modeling? Item Order

More information

UML 2.0 State Machines

UML 2.0 State Machines UML 2.0 State Machines Frederic.Mallet@unice.fr Université Nice Sophia Antipolis M1 Formalisms for the functional and temporal analysis With R. de Simone Objectives UML, OMG and MDA Main diagrams in UML

More information

Assignment Marking Criteria

Assignment Marking Criteria Assignment Marking Criteria Analysis Your analysis documentation must meet the following criteria: All program inputs, processing, and outputs. Each input and output must be given a name and description

More information

Applying MDA to Constrained Environments

Applying MDA to Constrained Environments www.pathfindermda.com Put MDA to Work Applying MDA to Constrained Environments Greg Eakman Pathfinder Solutions grege@pathfindermda.com Embedded MDA Executable models Large number of embedded systems platforms

More information

The Unified Modelling Language. Example Diagrams. Notation vs. Methodology. UML and Meta Modelling

The Unified Modelling Language. Example Diagrams. Notation vs. Methodology. UML and Meta Modelling UML and Meta ling Topics: UML as an example visual notation The UML meta model and the concept of meta modelling Driven Architecture and model engineering The AndroMDA open source project Applying cognitive

More information

Lesson 5 Web Service Interface Definition (Part II)

Lesson 5 Web Service Interface Definition (Part II) Lesson 5 Web Service Interface Definition (Part II) Service Oriented Architectures Security Module 1 - Basic technologies Unit 3 WSDL Ernesto Damiani Università di Milano Controlling the style (1) The

More information

Using UML To Define XML Document Types

Using UML To Define XML Document Types Using UML To Define XML Document Types W. Eliot Kimber ISOGEN International, A DataChannel Company Created On: 10 Dec 1999 Last Revised: 14 Jan 2000 Defines a convention for the use of UML to define XML

More information

Object Oriented Modeling

Object Oriented Modeling Overview UML Unified Modeling Language What is Modeling? What is UML? A brief history of UML Understanding the basics of UML UML diagrams UML Modeling tools 2 Modeling Object Oriented Modeling Describing

More information

C # Coding Standards for.net By Lance Hunt. Document Version 1.13 August Copyright Lance Hunt 2004 All Rights Reserved

C # Coding Standards for.net By Lance Hunt. Document Version 1.13 August Copyright Lance Hunt 2004 All Rights Reserved C # Coding Standards for.net By Lance Hunt Document Version 1.13 August 2004 Copyright Lance Hunt 2004 All Rights Reserved Published by Lance Hunt Please submit comments, questions, and feedback to http://weblogs.asp.net/lhunt/.

More information

Quality Attribute Driven Software Architecture Reconstruction. Version 1.0 QADSAR SATURN page 1

Quality Attribute Driven Software Architecture Reconstruction. Version 1.0 QADSAR SATURN page 1 Pittsburgh, PA 15213-3890 Quality Attribute Driven Software Architecture Reconstruction SATURN Workshop April 7, 2005 Liam O Brien Sponsored by the U.S. Department of Defense 2005 by Carnegie Mellon University

More information

OCL Support in MOF Repositories

OCL Support in MOF Repositories OCL Support in MOF Repositories Joachim Hoessler, Michael Soden Department of Computer Science Technical University Berlin hoessler@cs.tu-berlin.de, soden@cs.tu-berlin.de Abstract From metamodels that

More information

Expanded Guidelines on Programming Style and Documentation

Expanded Guidelines on Programming Style and Documentation Page 1 of 5 Expanded Guidelines on Programming Style and Documentation Introduction Introduction to Java Programming, 5E Y. Daniel Liang liang@armstrong.edu Programming style deals with the appearance

More information

UML REFERENCE SHEETS. 2013, 2014 Michael Marking; all rights reserved, including moral rights. Web site:

UML REFERENCE SHEETS. 2013, 2014 Michael Marking; all rights reserved, including moral rights. Web site: UML Reference Sheets 2013, 2014 Michael Marking; all rights reserved, including moral rights. Web site: http://www.tatanka.com/ Revision Information This document was last revised 2014.03.02. The current

More information

VISUAL EXPERT. I would strongly recommend you try Visual Expert out.

VISUAL EXPERT. I would strongly recommend you try Visual Expert out. PRODUCT REVIEWS VISUAL EXPERT "It takes only a few minutes to familiarize yourself with the Visual Expert interface and even less to constructively review the application architecture, regardless its size.

More information

Modeling Relationships

Modeling Relationships Modeling Relationships Welcome to Lecture on Modeling Relationships in the course on Healthcare Databases. In this lecture we are going to cover two types of relationships, namely, the subtype and the

More information

1 Executive Overview The Benefits and Objectives of BPDM

1 Executive Overview The Benefits and Objectives of BPDM 1 Executive Overview The Benefits and Objectives of BPDM This is an excerpt from the Final Submission BPDM document posted to OMG members on November 13 th 2006. The full version of the specification will

More information

Modelling Languages: (mostly) Concrete (Visual) Syntax Hans Vangheluwe

Modelling Languages: (mostly) Concrete (Visual) Syntax Hans Vangheluwe Modelling Languages: (mostly) Concrete (Visual) Syntax Hans Vangheluwe http://msdl.cs.mcgill.ca/ Modelling Languages/Formalisms Syntax and Semantics Modelling Languages/Formalisms Syntax and Semantics

More information

Java for Programmers Course (equivalent to SL 275) 36 Contact Hours

Java for Programmers Course (equivalent to SL 275) 36 Contact Hours Java for Programmers Course (equivalent to SL 275) 36 Contact Hours Course Overview This course teaches programmers the skills necessary to create Java programming system applications and satisfies the

More information

Information technology - Metadata registries (MDR) - Part 5: Naming principles

Information technology - Metadata registries (MDR) - Part 5: Naming principles 1 2 3 ISO/IEC JTC1 SC32 N Date: 2013-12-18 ISO/IEC DIS 11179-5 4 5 ISO/IEC JTC1/SC32/WG2 6 7 Secretariat: ANSI 8 9 10 11 Information technology - Metadata registries (MDR) - Part 5: Naming principles Technologies

More information

The PEPA Eclipse Plug-in

The PEPA Eclipse Plug-in The PEPA Eclipse Plug-in A modelling, analysis and verification platform for PEPA Adam Duguid, Stephen Gilmore, Michael Smith and Mirco Tribastone Wednesday 01 December 2010 Abstract: This user manual

More information

Guidelines for Writing Mathematical Proofs

Guidelines for Writing Mathematical Proofs Appendix A Guidelines for Writing Mathematical Proofs One of the most important forms of mathematical writing is writing mathematical proofs. The writing of mathematical proofs is an acquired skill and

More information

1.00 Lecture 2. What s an IDE?

1.00 Lecture 2. What s an IDE? 1.00 Lecture 2 Interactive Development Environment: Eclipse Reading for next time: Big Java: sections 3.1-3.9 (Pretend the method is main() in each example) What s an IDE? An integrated development environment

More information

Cisco Director Class SAN Planning and Design Service

Cisco Director Class SAN Planning and Design Service Cisco Director Class SAN Planning and Design Service Rapidly Plan and Deploy a Cisco Director Class MDS Solution for More Efficient Storage Networking Service Overview Cisco s intelligent storage networking

More information

Internet Application Developer

Internet Application Developer Internet Application Developer SUN-Java Programmer Certification Building a Web Presence with XHTML & XML 5 days or 12 evenings $2,199 CBIT 081 J A V A P R O G R A M M E R Fundamentals of Java and Object

More information

Thoughts about a new UI for the Eclipse BPEL Designer

Thoughts about a new UI for the Eclipse BPEL Designer Thoughts about a new UI for the Eclipse BPEL Designer Author: Vincent Zurczak EBM WebSourcing Version: 1.0 Status: draft Date: 10/02/2011 Table of Content 1 Context...3 1.1 BPEL modeling?...3 1.2 Few words

More information

Model-Driven Engineering (MDE) Lecture 1: Metamodels and Xtext Regina Hebig, Thorsten Berger

Model-Driven Engineering (MDE) Lecture 1: Metamodels and Xtext Regina Hebig, Thorsten Berger Model-Driven Engineering (MDE) Lecture 1: Metamodels and Xtext Regina Hebig, Thorsten Berger Reuses some material from: Andrzej Wasowski, Model-Driven Development, ITU Copenhagen Where I am from WASP 2017

More information

Definition of Information Systems

Definition of Information Systems Information Systems Modeling To provide a foundation for the discussions throughout this book, this chapter begins by defining what is actually meant by the term information system. The focus is on model-driven

More information

BPMN Working Draft. 1. Introduction

BPMN Working Draft. 1. Introduction 1. Introduction The Business Process Management Initiative (BPMI) has developed a standard Business Process Modeling Notation (BPMN). The primary goal of BPMN is to provide a notation that is readily understandable

More information

2 Getting Started. Getting Started (v1.8.6) 3/5/2007

2 Getting Started. Getting Started (v1.8.6) 3/5/2007 2 Getting Started Java will be used in the examples in this section; however, the information applies to all supported languages for which you have installed a compiler (e.g., Ada, C, C++, Java) unless

More information

Programming in Visual Basic with Microsoft Visual Studio 2010

Programming in Visual Basic with Microsoft Visual Studio 2010 Programming in Visual Basic with Microsoft Visual Studio 2010 Course 10550; 5 Days, Instructor-led Course Description This course teaches you Visual Basic language syntax, program structure, and implementation

More information

IDERA ER/Studio Software Architect Evaluation Guide. Version 16.5/2016+ Published February 2017

IDERA ER/Studio Software Architect Evaluation Guide. Version 16.5/2016+ Published February 2017 IDERA ER/Studio Software Architect Evaluation Guide Version 16.5/2016+ Published February 2017 2017 IDERA, Inc. All rights reserved. IDERA and the IDERA logo are trademarks or registered trademarks of

More information

Up and Running Software The Development Process

Up and Running Software The Development Process Up and Running Software The Development Process Success Determination, Adaptative Processes, and a Baseline Approach About This Document: Thank you for requesting more information about Up and Running

More information

TRANSITIONING PROJECTS TO A MODEL-BASED APPROACH

TRANSITIONING PROJECTS TO A MODEL-BASED APPROACH : Distribution Statement A. Approved for public release; release is unlimited. 2017 NDIA GROUND VEHICLE SYSTEMS ENGINEERING AND TECHNOLOGY SYMPOSIUM SYSTEMS ENGINEERING (SE) TECHNICAL SESSION AUGUST 8-10,

More information

Data Virtualization Implementation Methodology and Best Practices

Data Virtualization Implementation Methodology and Best Practices White Paper Data Virtualization Implementation Methodology and Best Practices INTRODUCTION Cisco s proven Data Virtualization Implementation Methodology and Best Practices is compiled from our successful

More information

<Project Name> Use Case Specification: <Use-Case Name> Version <1.0>

<Project Name> Use Case Specification: <Use-Case Name> Version <1.0> 1 z 5 2007-02-26 15:57 Use Case Specification: Version [Note: The following template is provided for use with the Rational Unified Process. Text enclosed in square

More information

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802 UNIT-II Lecture Notes On UML IMPORTANCE OF MODELING, BRIEF OVERVIEW OF OBJECT MODELING TECHNOLOGY (OMT) BY RAMBAUGH, BOOCH METHODOLOGY, USE CASE DRIVE APPROACH (OOSE) BY JACKOBSON. KHALID AMIN AKHOON 1

More information

JOURNAL OF OBJECT TECHNOLOGY

JOURNAL OF OBJECT TECHNOLOGY JOURNAL OF OBJECT TECHNOLOGY Online at http://www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2004 Vol. 3, No. 7, July-August 2004 UML 2 Activity and Action Models Part 5: Partitions

More information

CSE 308. UML Overview Use Case Diagrams. Reference. Class diagrams. Session 6 UML Intro/Use cases. Robert Kelly, B. Bruegge,

CSE 308. UML Overview Use Case Diagrams. Reference. Class diagrams. Session 6 UML Intro/Use cases. Robert Kelly, B. Bruegge, CSE 308 UML Overview Use Case Diagrams Class diagrams Reference en.wikipedia.org/wiki/use_case 2 1 What is Modeling? Modeling consists of building an abstraction of reality Abstractions are simplifications

More information

FHA Federal Health Information Model (FHIM) Information Modeling Process Guide

FHA Federal Health Information Model (FHIM) Information Modeling Process Guide Office of the National Coordinator for Health IT Federal Health Architecture Program Management Office FHA Federal Health Information Model (FHIM) Information Modeling Process Guide Version 0.1 Draft,

More information

102. Introduction to Java Programming

102. Introduction to Java Programming 102. Introduction to Java Programming Version 5.0 Java is a popular and powerful language. Although comparatively simple in its language structure, there are a number of subtleties that can trip up less

More information

IBM Rational Software Architect

IBM Rational Software Architect Unifying all aspects of software design and development IBM Rational Software Architect A complete design & development toolset Incorporates all the capabilities in IBM Rational Application Developer for

More information

PROGRAMMING IN VISUAL BASIC WITH MICROSOFT VISUAL STUDIO Course: 10550A; Duration: 5 Days; Instructor-led

PROGRAMMING IN VISUAL BASIC WITH MICROSOFT VISUAL STUDIO Course: 10550A; Duration: 5 Days; Instructor-led CENTER OF KNOWLEDGE, PATH TO SUCCESS Website: PROGRAMMING IN VISUAL BASIC WITH MICROSOFT VISUAL STUDIO 2010 Course: 10550A; Duration: 5 Days; Instructor-led WHAT YOU WILL LEARN This course teaches you

More information

CS 575: Software Design

CS 575: Software Design CS 575: Software Design Introduction 1 Software Design A software design is a precise description of a system, using a variety of different perspectives Structural Behavioral Packaging Requirements, Test/Validation

More information

FREQUENTLY ASKED QUESTIONS

FREQUENTLY ASKED QUESTIONS Borland Together FREQUENTLY ASKED QUESTIONS GENERAL QUESTIONS What is Borland Together? Borland Together is a visual modeling platform that enables software teams to consistently deliver on-time, high

More information

Universal Model Framework -- An Introduction

Universal Model Framework -- An Introduction Universal Model Framework -- An Introduction By Visible Systems Corporation www.visible.com This document provides an introductory description of the Universal Model Framework an overview of its construct

More information

5 The Control Structure Diagram (CSD)

5 The Control Structure Diagram (CSD) 5 The Control Structure Diagram (CSD) The Control Structure Diagram (CSD) is an algorithmic level diagram intended to improve the comprehensibility of source code by clearly depicting control constructs,

More information

Supplement D: Expanded Guidelines on Programming Style and Documentation

Supplement D: Expanded Guidelines on Programming Style and Documentation Page 1 of 5 Introduction Supplement D: Expanded Guidelines on Programming Style and Documentation For Introduction to Java Programming Y. Daniel Liang mailto:liang@armstrong.edu Programming style deals

More information

Fundamentals to Creating Architectures using ISO/IEC/IEEE Standards

Fundamentals to Creating Architectures using ISO/IEC/IEEE Standards Fundamentals to Creating Architectures using ISO/IEC/IEEE Standards What to Architect? How to Architect? IEEE Goals and Objectives Chartered by IEEE Software Engineering Standards Committee to: Define

More information