Modeling XML Vocabularies with UML: Part I
|
|
- Tabitha Cooper
- 6 years ago
- Views:
Transcription
1 Modeling XML Vocabularies with UML: Part I David Carlson, CTO Ontogenics Corp. dcarlson@ontogenics.com The arrival of the W3C s XML Schema specification has evoked a variety of responses from software developers, system integrators, XML document analysts and authors, and designers of B2B vocabularies. Some like the richer structure and semantics that can be captured with these new schemas when compared to DTDs, while others complain about excessive complexity. Many find that the resulting schemas are difficult to share with wider audiences of users and business partners. I overlook many of these differences of opinion and simply view XML Schema as implementation syntax for models of business vocabularies. Other forms of model representation and presentation are more effective than W3C XML Schema when specifying new vocabularies or sharing definitions with users. In particular, I favor the Unified Modeling Language (UML) as a widely adopted standard for system specification and design. My goal in this article and the following two in this series is to share some thoughts about how these two standards are complementary and to work through a simple example that makes the ideas concrete. Although this discussion is focused on the W3C XML Schema specification, the same concepts are easily transferred to other XML schema languages. Indeed, I have already applied the same techniques to creating and reverse engineering DTDs and SOX schemas, as well as RELAX, TREX, and their new integrated offspring RELAX NG. In general, I will use the term schema with a lower case s when referring to this entire family of XML schema languages. The Role of Models in XML Applications Few people can fully comprehend all aspects of a large inter-enterprise system at one time; they must divide and conquer the problem as a set of alternate models and views. Each of these models deliberately ignores aspects of the system that are not relevant to its purpose. Building these kinds of models is fundamental to the way we cope with the complexity of everyday life by ignoring unnecessary details to enable us to focus on the task at hand. Different stakeholder groups have different needs with respect to abstraction and focus. In the context of B2B system integration, all business partners must agree on the information models that define the vocabulary for task-oriented communication. The models include both the data structure for XML documents that are exchanged, as well as the process models of the extended dialogs that are required to complete complex business transactions. Historically in system analysis and design, there have been a variety of techniques, tools, and methodologies for guiding and supporting these alternative models of the system structure and behavior. When no formal methods or tools are applied, models are still created using PowerPoint, Visio, or paper and pencil to help communicate a system s purpose and function. Even when you don t write them down, you create models in your mind as a way to Copyright 2001 David Carlson August 22,
2 comprehend the myriad of details. An XML schema is also a vocabulary model written in the syntax of that specification language. A high-level process for developing XML vocabularies is shown in Figure 1 below. It includes three decision points that determine the final vocabulary definition, regardless of which schema language is used. Data-oriented versus text-oriented applications may have different usage requirements. For example, a data-oriented vocabulary can be optimized for serialization of objects or database query results and its constraints should be carefully aligned with the data-types and referential integrity constraints of its sources. These dataoriented documents may never be viewed by humans, other than by developers testing the application. A text-oriented vocabulary often has human users who need to edit the XML documents, with or without the assistance of GUI editing tools. Its structure must be easily understood by webmasters who write stylesheets that transform and present the documents' content. An XML vocabulary design that works perfectly for data interchange might cause human users to call for the lynching of its developers. Don t forget the needs of your users when creating the XML schema! Define Vocabulary Terms Define Relationships and Constraints Primary use? [ text-oriented ] Human authors? [ data-oriented ] [ Yes ] [ No ] EDI Integration? Analyze Human Factors of Vocabulary [ Yes ] Define EDI Mapping [ No ] Assess Presentation Requirements Figure 1: UML activity diagram for schema development process Copyright 2001 David Carlson August 22,
3 The process diagram in Figure 1 is a UML activity diagram, which is one of nine diagram types defined by that standard. This diagram was created using Rational Rose, one of the most widely used UML modeling tools. Most of our discussion, however, is focused on the UML class diagram that is used to specify static information structure of a system an XML vocabulary in our application context. What is UML? The Unified Modeling Language (UML) defines a standard language and graphical notation for creating models of business and technical systems. Contrary to popular opinion, UML is not limited to use as a tool for programmers. The UML defines model types that span a range from functional requirements and activity workflow models, to class structure design and component diagrams. These models, and a development process that uses them, improve and simplify communication among an application s many diverse stakeholders. A UML class diagram can be constructed to visually represent the elements, relationships, and constraints of an XML vocabulary. With a little initial coaching, class diagrams allow complex vocabularies to be shared with non-technical business stakeholders. A very simple subset of a product catalog vocabulary is shown as class diagram in Figure 2 [1]. CatalogItem description : string listprice : double sku : string globalidentifier : string +supplier 1..* Organization addressline [0..3] : string computetax() : float Figure 2: A simple UML class diagram The primary elements of a UML class diagram are: Class this example defines two classes: CatalogItem and Organization. A class represents an aggregation of structural features and defines a namespace for those feature names. Thus, both classes can contain an attribute named name, but their class namespace scope makes the two attributes distinct. Attribute each class may optionally define a set of attributes. Each attribute has a type; in this example string, double, and float refer to the built-in datatypes as defined by the XML Schema specification. For those of you thinking ahead to XML schema design, specifying a UML attribute does not limit the schema to an XML attribute; the mapping to schema syntax allows either an XML attribute or child element. Operation the computetax() operation of CatalogItem specifies part of the behavior for this class. In other words, what does the class do, in addition to defining the structure of its data? In object-oriented parlance, if you send a computetax message to a CatalogItem object, it will return a floating-point data value. This operation does not expect any parameters, but they could be specified between the parentheses. We will not use class operations in the specification of XML vocabulary, but their definition would be critical to Web Services, especially WSDL specification of SOAP messages. Copyright 2001 David Carlson August 22,
4 Association an association relates two or more classes in a model. If an association has an arrow on one end, it means that the association is usually navigated in one direction and provides a hint to design and implementation of this vocabulary. Role & Multiplicity the end of an association may specify the role of the class; the Organization plays a supplier role for a CatalogItem in this model. In addition, the 1..* multiplicity means that there must be one or more suppliers for each catalog item. Generalization although Figure 2 does not include class inheritance (one class as a generalization of another), this structure is fundamental to object-oriented models and is included in the next expanded example. Conceptual Models of XML Vocabulary Now that you understand the basics of UML class diagrams, let s apply them to a larger XML vocabulary design. We ll work with the purchase order vocabulary that is used in the XML Schema Part 0: Primer [make a link] document. That example is first introduced in section 2.1 and then elaborated throughout the W3C specification. The model defined in this article adds international addresses and multi-schema support as explained in section 4.1 of the W3C specification. If you are new to XML Schema, I suggest that you review the Primer after reading this article, then compare our UML design process in these three articles with the same purchase order vocabulary in the schema specification. [[ also add link to XML.com Schema materials ]] The purchase order vocabulary is defined in two modules, corresponding to the core PurchaseOrder type and a separate reusable Address module specification. In UML, these modules are called packages. The first package specification is shown as a UML class diagram in Figure 3. The PurchaseOrder class has two attributes and three associations that define its structure. Several of these attributes include a multiplicity specification of [0..1], which means that those attribute values are optional, either 0 or 1 occurrences. The Address class plays both a shipto and billto role in association with a PurchaseOrder. (Hint: these might become shipto and billto child elements in the schema.) The multiplicity of 1 means that a PurchaseOrder must have exactly one of each address role. On the Item class, notice that a quantity is of type QuantityType. This type is defined as another class in the UML model. In the same diagram, QuantityType is defined as a subclass of positiveinteger, which is annotated as coming from the XSD_Datatypes package in this UML model. Thus, a quantity is a specialized kind of positive integer. Both QuantityType and SKU are user-defined data-types, and both include an attribute that further restricts their intended usage. The pattern and maxexclusive attributes are assigned a value that is used at later stages of the design process to guide XML Schema generation. Finally, the class name of Address is shown in italics, which means that it is an abstract class that is not intended to be used directly. As we ll see next, Address if further specified in another UML class diagram. Copyright 2001 David Carlson August 22,
5 Item partnum : SKU productname : string quantity : QuantityType USPrice : decimal comment [0..1] : string shipdate [0..1] : date Address street : string city : string 1 1 +shipto +billto string (from XSD_Datatypes) positiveinteger (from XSD_Datatypes) +items 0..* SKU pattern = \d{3}-[a-z]{2} QuantityType maxexclusive = 100 PurchaseOrder orderdate [0..1] : date comment [0..1] : string Figure 3: Conceptual model of purchase order vocabulary The Address package specification, shown in Figure 4, follows a similar logic. In this diagram, both USAddress and UKAddress are specialized subtypes of Address. In common object-oriented interpretation, this means that both of these subtypes inherit the three attributes defined in their superclass. The exportcode attribute of UKAddress is assigned an initial value of 1. Address street : string city : string string (from XSD_Datatypes) USAddress state : USState zip : positiveinteger UKAddress exportcode : positiveinteger = 1 postcode : UKPostcode <<enumeration>> USState AK AL AR PA Postcode length = 7 UKPostcode pattern = [A-Z]{2}\d\s\d[A-Z]{2} Figure 4: Modularized Address schema component Copyright 2001 David Carlson August 22,
6 Design Models of XML Schemas Now that we ve created a conceptual model of our XML vocabulary s content and gained approval of all business and technical stakeholders, what next? As hinted in previous sections, there are numerous alternatives available when the mapping this model to XML schema constructs. Are the UML attributes and association ends mapped to XML attributes or elements? How is UML generalization of classes and datatypes mapped into schema definitions? How does this mapping differ when the target schema language is changed from W3C XML Schema to RELAX NG? What about DTDs? If you refer back to the schema development process illustrated in Figure 1, the next design task also depends on whether this vocabulary is data or text-oriented. Because the purchase order vocabulary is data-oriented, most of the remaining design decisions relate to deployment issues such as developer conventions for using XML attributes or child elements, data type alignment with other sources and destinations of data to be exchanged using this vocabulary, and anticipated future requirements for extending this vocabulary or combining it with other XML namespaces. If this were a text-oriented application, then content managers and authors would have further input on design choices. For example, most human authors prefer XML document structures that avoid excessive use of container elements to group related content elements, whereas this is common practice in data-oriented applications. Also, the order of elements in a document is often more important to human authors and readers than it is to data parsing. This article is the first of three articles on modeling XML vocabularies. Its focus on capturing the conceptual model of a vocabulary is the logical first step in the development process. The second article presents a list of design choices and alternative approaches for mapping UML to W3C XML Schema. The UML model presented in this first article will be refined to reflect the design choices made by the authors of the W3C's XML Schema Primer, where this example originated. For our purposes, these authors are the stakeholders of system requirements. The third article introduces a UML profile for XML schemas that allows all detailed design choices to be added to the model definition and then used to automatically generate a complete schema. Our end result is a UML model that is used to generate a W3C XML Schema, which can successfully validate XML document instances copied from the Schema Primer specification. Along the way, I ll introduce a web-based tool that we have developed to generate schemas from UML and reverse engineer schemas into UML. Tips for Success In order to help you when applying these ideas to your own e-business projects, I offer the following tips for success: 1. Your e-business vocabulary defines an agreement or contract with all related business parties. Plan its specification accordingly. Get input on requirements of all key stakeholders using the visual models of UML to improve communication. 2. Define all known terms, associations, and constraints and document their purpose, source, and usage. Do not restrict your specifications to the limited expressiveness of DTDs, or even to the expanded W3C XML Schema language. Using UML, you can capture a complete specification and then transform it to one or more XML schema Copyright 2001 David Carlson August 22,
7 languages. Documentation notes added to the UML model can be automatically transformed to annotations in the XML schema. 3. Create a common UML model that drives both the XML schema definition and other non-xml system components. Many systems use XML in a subset of their components, but the analysis must be done holistically. References [1] David Carlson. Modeling XML Applications with UML: Practical E-Business Applications. Boston: Addison-Wesley, This book follows a full system development life-cycle based on a product catalog application design. [2] Martin Fowler, Kendall Scott. UML Distilled, Second Edition. Boston: Addison- Wesley, [3] Object Management Group (OMG) UML resources, Copyright 2001 David Carlson August 22,
Overview of Sentence Order Reference Document Development Process
Overview of Sentence Order Reference Document Development Process Scott Came Justice Integration Solutions, Inc. September 14, 2004 Purpose The purpose of this document is to outline the process/methodology
More informationEnabling Grids for E-sciencE ISSGC 05. XML documents. Richard Hopkins, National e-science Centre, Edinburgh June
ISSGC 05 XML documents Richard Hopkins, National e-science Centre, Edinburgh June 2005 www.eu-egee.org Overview Goals General appreciation of XML Sufficient detail to understand WSDLs Structure Philosophy
More informationTeiid Designer User Guide 7.5.0
Teiid Designer User Guide 1 7.5.0 1. Introduction... 1 1.1. What is Teiid Designer?... 1 1.2. Why Use Teiid Designer?... 2 1.3. Metadata Overview... 2 1.3.1. What is Metadata... 2 1.3.2. Editing Metadata
More informationThe Unified Modeling Language User Guide
The Unified Modeling Language User Guide Grady Booch James Rumbaugh Ivar Jacobson Rational Software Corporation TT ADDISON-WESLEY Boston San Francisco New York Toronto Montreal London Munich Paris Madrid
More informationIntroduction to Software Engineering. 5. Modeling Objects and Classes
Introduction to Software Engineering 5. Modeling Objects and Classes Roadmap > UML Overview > Classes, attributes and operations > UML Lines and Arrows > Parameterized Classes, Interfaces and Utilities
More informationThe 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 informationIntroduction. Chapter 1. What Is Visual Modeling? The Triangle for Success. The Role of Notation. History of the UML. The Role of Process
Quatrani_Ch.01.fm Page 1 Friday, October 27, 2000 9:02 AM Chapter 1 Introduction What Is Visual Modeling? The Triangle for Success The Role of Notation History of the UML The Role of Process What Is Iterative
More informationKINGS COLLEGE OF ENGINEERING DEPARTMENT OF INFORMATION TECHNOLOGY. (An NBA Accredited Programme) ACADEMIC YEAR / EVEN SEMESTER
KINGS COLLEGE OF ENGINEERING DEPARTMENT OF INFORMATION TECHNOLOGY (An NBA Accredited Programme) ACADEMIC YEAR 2012-2013 / EVEN SEMESTER YEAR / SEM : IV / VIII BATCH: 2009-2013 (2008 Regulation) SUB CODE
More informationCS561 Spring Mixed Content
Mixed Content DTDs define mixed content by mixing #PCDATA into the content model DTDs always require mixed content to use the form (#PCDATA a b )* the occurrence of elements in mixed content cannot be
More informationBeginning To Define ebxml Initial Draft
Beginning To Define ebxml Initial Draft File Name Version BeginningToDefineebXML 1 Abstract This document provides a visual representation of how the ebxml Architecture could work. As ebxml evolves, this
More informationThe Unified Modeling Language (UML)
The Unified Modeling Language (UML) A Very Distilled Introduction to The Unified Modeling Language (UML). A quick introduction to UML is given. Thereafter, the surface of class and activity diagrams and
More information1 Introduction. 1.1 Introduction
1 Introduction 1.1 Introduction This book introduces and guides you through the use of the Unified Modeling Language (UML) and the Unified Process (both originally devised by Grady Booch, James Rumbaugh
More informationObject-Oriented Design
Object-Oriented Design Lecture 14: Design Workflow Department of Computer Engineering Sharif University of Technology 1 UP iterations and workflow Workflows Requirements Analysis Phases Inception Elaboration
More informationWHY WE NEED AN XML STANDARD FOR REPRESENTING BUSINESS RULES. Introduction. Production rules. Christian de Sainte Marie ILOG
WHY WE NEED AN XML STANDARD FOR REPRESENTING BUSINESS RULES Christian de Sainte Marie ILOG Introduction We are interested in the topic of communicating policy decisions to other parties, and, more generally,
More informationModellistica Medica. Maria Grazia Pia, INFN Genova. Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico
Modellistica Medica Maria Grazia Pia INFN Genova Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico 2002-2003 Lezione 6 UML Introduction Structural diagrams Basics What is? Please explain
More informationUnified Modeling Language (UML)
Appendix H Unified Modeling Language (UML) Preview The Unified Modeling Language (UML) is an object-oriented modeling language sponsored by the Object Management Group (OMG) and published as a standard
More informationStylus Studio Case Study: FIXML Working with Complex Message Sets Defined Using XML Schema
Stylus Studio Case Study: FIXML Working with Complex Message Sets Defined Using XML Schema Introduction The advanced XML Schema handling and presentation capabilities of Stylus Studio have valuable implications
More informationChapter 8 The Enhanced Entity- Relationship (EER) Model
Chapter 8 The Enhanced Entity- Relationship (EER) Model Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 8 Outline Subclasses, Superclasses, and Inheritance Specialization
More informationCOSC 3351 Software Design. An Introduction to UML (I)
COSC 3351 Software Design An Introduction to UML (I) This lecture contains material from: http://wps.prenhall.com/esm_pfleeger_softengtp_2 http://sunset.usc.edu/classes/cs577a_2000/lectures/05/ec-05.ppt
More informationIndex. business modeling syntax 181 business process modeling 57 business rule 40
OCL.book Page 203 Tuesday, July 22, 2003 9:48 PM Index Symbols OclAny, of 167 = OclAny, of 167 @pre 34, 86, 155 ^ 34, 156 ^^ 157 A abstract syntax 93 accumulator 153 action in statechart 56 activity
More informationUML Views of a System
UML Views of a System The architecture of a system is the fundamental organization of the system as a whole. The five UML Views: Use Case View: focuses on scenarios Design View: focuses on the vocabulary
More informationUsing 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 informationIntroduction to UML p. 1 Introduction to the Object-Oriented Paradigm p. 1 What Is Visual Modeling? p. 6 Systems of Graphical Notation p.
Introduction p. xxi Introduction to UML p. 1 Introduction to the Object-Oriented Paradigm p. 1 What Is Visual Modeling? p. 6 Systems of Graphical Notation p. 7 Understanding UML Diagrams p. 10 Visual Modeling
More informationGetting a Quick Start with RUP
Getting a Quick Start with RUP By: Doug Rosenberg and Jeff Kantor, ICONIX Software Engineering, Inc. Abstract Many people want the rigor of an industrial-strength process like the RUP but aren't quite
More informationIngegneria del Software Corso di Laurea in Informatica per il Management. Introduction to UML
Ingegneria del Software Corso di Laurea in Informatica per il Management Introduction to UML Davide Rossi Dipartimento di Informatica Università di Bologna Modeling A model is an (abstract) representation
More informationChapter 3 Research Method
Chapter 3 Research Method 3.1 A Ontology-Based Method As we mention in section 2.3.6, we need a common approach to build up our ontologies for different B2B standards. In this chapter, we present a ontology-based
More informationSTAR Naming and Design Rules. Version 1.0
Version 1.0 March 2007 Revision History Revision Date Version Initial Version March 13, 2007 1.0 Table of Contents 1. Introduction...1 1.1 Purpose...1 1.2 Objective... 1 1.3 Scope...1 1.4 Prerequisites...1
More informationModel Driven Development Unified Modeling Language (UML)
Model Driven Development Unified Modeling Language (UML) An Overview UML UML is a modeling notation standardized by OMG (proposal 1997, ver.1.1 in 1998, ver. 2.0 in 2004) now in 2.4.1 mature based on notations
More informationArchitecture Viewpoint Template for ISO/IEC/IEEE 42010
Architecture Viewpoint Template for ISO/IEC/IEEE 42010 Rich Hilliard r.hilliard@computer.org VERSION 2.1b Abstract This is a template for specifying architecture viewpoints in accordance with ISO/IEC/IEEE
More informationEnterprise Architect. User Guide Series. Domain Models
Enterprise Architect User Guide Series Domain Models What support for modeling domains? Sparx Systems Enterprise Architect supports a range of modeling languages, technologies and methods that can be used
More informationTeiid Designer User Guide 7.7.0
Teiid Designer User Guide 1 7.7.0 1. Introduction... 1 1.1. What is Teiid Designer?... 1 1.2. Why Use Teiid Designer?... 2 1.3. Metadata Overview... 2 1.3.1. What is Metadata... 2 1.3.2. Editing Metadata
More informationChapter 8: Enhanced ER Model
Chapter 8: Enhanced ER Model Subclasses, Superclasses, and Inheritance Specialization and Generalization Constraints and Characteristics of Specialization and Generalization Hierarchies Modeling of UNION
More informationGeographic Information Fundamentals Overview
CEN TC 287 Date: 1998-07 CR 287002:1998 CEN TC 287 Secretariat: AFNOR Geographic Information Fundamentals Overview Geoinformation Übersicht Information géographique Vue d'ensemble ICS: Descriptors: Document
More informationMeta-Data Support for Data Transformations Using Microsoft Repository
Meta-Data Support for Data Transformations Using Microsoft Repository Philip A. Bernstein Thomas Bergstraesser Microsoft Corporation [philbe, thomberg]@microsoft.com Abstract Data warehousing requires
More informationSoftware Service Engineering
Software Service Engineering Lecture 4: Unified Modeling Language Doctor Guangyu Gao Some contents and notes selected from Fowler, M. UML Distilled, 3rd edition. Addison-Wesley Unified Modeling Language
More informationUnified Modeling Language (UML)
Unified Modeling Language (UML) Troy Mockenhaupt Chi-Hang ( Alex) Lin Pejman ( PJ ) Yedidsion Overview Definition History Behavior Diagrams Interaction Diagrams Structural Diagrams Tools Effect on Software
More information8/22/2003. Proposal for VPI model PSL assertion extensions
8/22/2003 Proposal for VPI model PSL assertion extensions Cadence Design Systems, Inc. 8/22/2003 This proposal has been prepared by Cadence Design Systems, Inc. for consideration by the IEEE 1364 working
More informationUML 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 informationIntroduction to Dependable Systems: Meta-modeling and modeldriven
Introduction to Dependable Systems: Meta-modeling and modeldriven development http://d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics 3 Software development Automated software
More informationIntroduction to Software Engineering. 5. Modeling Objects and Classes
Introduction to Software Engineering 5. Modeling Objects and Classes Roadmap > UML Overview > Classes, attributes and operations > UML Lines and Arrows > Parameterized Classes, Interfaces and Utilities
More informationMETADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE
UDC:681.324 Review paper METADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE Alma Butkovi Tomac Nagravision Kudelski group, Cheseaux / Lausanne alma.butkovictomac@nagra.com Dražen Tomac Cambridge Technology
More informationPattern for Structuring UML-Compatible Software Project Repositories
Pattern for Structuring UML-Compatible Software Project Repositories Pavel Hruby Navision Software a/s Frydenlunds Allé 6 2950 Vedbaek, Denmark E-mail: ph@navision.com Web site: www.navision.com/services/methodology/default.asp
More informationUML data models from an ORM perspective: Part 4
data models from an ORM perspective: Part 4 by Dr. Terry Halpin Director of Database Strategy, Visio Corporation This article first appeared in the August 1998 issue of the Journal of Conceptual Modeling,
More informationChapter 1: Semistructured Data Management XML
Chapter 1: Semistructured Data Management XML XML - 1 The Web has generated a new class of data models, which are generally summarized under the notion semi-structured data models. The reasons for that
More informationAn UML-XML-RDB Model Mapping Solution for Facilitating Information Standardization and Sharing in Construction Industry
An UML-XML-RDB Model Mapping Solution for Facilitating Information Standardization and Sharing in Construction Industry I-Chen Wu 1 and Shang-Hsien Hsieh 2 Department of Civil Engineering, National Taiwan
More informationWeb Services Description Language (WSDL) Version 1.2
Web Services Description Language (WSDL) Version 1.2 Web Services Description Language (WSDL) Version 1.2 W3C Working Draft 24 January 2003 This version: http://www.w3.org/tr/2003/wd-wsdl12-20030124 Latest
More informationUML big picture. Perdita Stevens. School of Informatics University of Edinburgh
UML big picture Perdita Stevens School of Informatics University of Edinburgh Plan Whence UML? Parts of UML How it all fits together UML as a language Consistency: what does it mean, do we need it? Defining
More information2.0.3 attributes: A named property of a class that describes the range of values that the class or its instances (i.e., objects) may hold.
T0/06-6 revision 2 Date: May 22, 2006 To: T0 Committee (SCSI) From: George Penokie (IBM/Tivoli) Subject: SAM-4: Converting to UML part Overview The current SCSI architecture follows no particular documentation
More informationChapter 2: The Object-Oriented Design Process
Chapter 2: The Object-Oriented Design Process In this chapter, we will learn the development of software based on object-oriented design methodology. Chapter Topics From Problem to Code The Object and
More informationDiscover, Relate, Model, and Integrate Data Assets with Rational Data Architect
Discover, Relate, Model, and Integrate Data Assets with Rational Data Architect Niels C. Jacobsen (nielsj@dk.ibm.com) Associate IT Architect, IBM Software Group Rational IBM Software Group 2005 IBM Corporation
More information2.0.3 attributes: A named property of a class that describes the range of values that the class or its instances (i.e., objects) may hold.
T0/04-023 revision 2 Date: September 06, 2005 To: T0 Committee (SCSI) From: George Penokie (IBM/Tivoli) Subject: SAM-4: Converting to UML part Overview The current SCSI architecture follows no particular
More informationChapter 1: Semistructured Data Management XML
Chapter 1: Semistructured Data Management XML 2006/7, Karl Aberer, EPFL-IC, Laboratoire de systèmes d'informations répartis XML - 1 The Web has generated a new class of data models, which are generally
More informationObject-Oriented Software Engineering Practical Software Development using UML and Java
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes Lecture 5 5.1 What is UML? The Unified Modelling Language is a standard graphical
More informationAgile Model-Driven Development with UML 2.0 SCOTT W. AM BLER. Foreword by Randy Miller UNIFIED 1420 MODELING LANGUAGE. gile 1.
THE OBJECT PRIMER THIRD EDITION Agile Model-Driven Development with UML 2.0 SCOTT W. AM BLER Foreword by Randy Miller UNIFIED 1420 MODELING LANGUAGE gile 1 odeling Contents Acknowledgments Foreword Preface
More informationAutomating Conceptual Design of Web Warehouses
Automating Conceptual Design of Web Warehouses Boris Vrdoljak, Marko Banek FER University of Zagreb Zagreb, Croatia Stefano Rizzi DEIS - University of Bologna Bologna, Italy Abstract Web warehousing plays
More informationSpemmet - A Tool for Modeling Software Processes with SPEM
Spemmet - A Tool for Modeling Software Processes with SPEM Tuomas Mäkilä tuomas.makila@it.utu.fi Antero Järvi antero.jarvi@it.utu.fi Abstract: The software development process has many unique attributes
More informationWhat Is UML? The Goals and Features of UML. Overview. The goals of UML
What Is UML? Overview The Unified Modeling Language (UML) has been formally under development since 1994. UML is a distillation of three major notations and a number of modeling techniques drawn from widely
More informationHospitality Industry Technology Integration Standards Glossary of Terminology
Hospitality Industry Technology Integration Standards Glossary of Terminology Abstract Class Account API Application Architecture Association Attribute Bandwidth Base Class Behavior Binding Blind Post
More informationtechnical memo Physical Mark-Up Language Update abstract Christian Floerkemeier & Robin Koh
technical memo Physical Mark-Up Language Update Christian Floerkemeier & Robin Koh auto-id center massachusetts institute of technology, 77 massachusetts avenue, bldg 3-449, cambridge, ma 02139-4307, usa
More informationHistory of object-oriented approaches
Prof. Dr. Nizamettin AYDIN naydin@yildiz.edu.tr http://www.yildiz.edu.tr/~naydin Object-Oriented Oriented Systems Analysis and Design with the UML Objectives: Understand the basic characteristics of object-oriented
More informationSoftware Engineering Lab Manual
Kingdom of Saudi Arabia Ministry Education Prince Sattam Bin Abdulaziz University College of Computer Engineering and Sciences Department of Computer Science Software Engineering Lab Manual 1 Background:-
More informationObject-Oriented Systems Analysis and Design Using UML
10 Object-Oriented Systems Analysis and Design Using UML Systems Analysis and Design, 8e Kendall & Kendall Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall Learning Objectives Understand
More informationIntroduction to Database Design
ICS 321 Fall 2009 Introduction to Database Design Asst. Prof. Lipyeow Lim Information & Computer Science Department University of Hawaii at Manoa 09/03/2009 Lipyeow Lim -- University of Hawaii at Manoa
More informationModel Driven Ontology: A New Methodology for Ontology Development
Model Driven Ontology: A New Methodology for Ontology Development Mohamed Keshk Sally Chambless Raytheon Company Largo, Florida Mohamed.Keshk@raytheon.com Sally.Chambless@raytheon.com Abstract Semantic
More informationUML Modeling I. Instructor: Yongjie Zheng September 3, CS 490MT/5555 Software Methods and Tools
UML Modeling I Instructor: Yongjie Zheng September 3, 2015 CS 490MT/5555 Software Methods and Tools Object-Oriented Design: Topics & Skills Rational Unified Process Unified Modeling Languages (UML) Provide
More informationComputation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM):
viii Preface The software industry has evolved to tackle new approaches aligned with the Internet, object-orientation, distributed components and new platforms. However, the majority of the large information
More information"Charting the Course... Agile Database Design Techniques Course Summary
Course Summary Description This course provides students with the skills necessary to design databases using Agile design techniques. It is based on the Scott Ambler book Agile Database Techniques: Effective
More informationChapter 3 Database Modeling and Design II. Database Modeling
Chapter 3 Database Modeling and Design II. Database Modeling Dr. Eng. Shady Aly 1 Data modeling تمثيل مجرد A data model is abstract representation of the data on which the IS application is to be based
More informationNotation 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 informationFundamentals 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 informationSRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A
SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A 1. What is an object? An object is a combination of data and logic; the representation of some realworld
More informationObject-Oriented Programming
Object-Oriented Programming 3/18/14 Presentation for use with the textbook Data Structures and Algorithms in Java, 6th edition, by M. T. Goodrich, R. Tamassia, and M. H. Goldwasser, Wiley, 2014 Object-Oriented
More informationA - 1. CS 494 Object-Oriented Analysis & Design. UML Class Models. Overview. Class Model Perspectives (cont d) Developing Class Models
CS 494 Object-Oriented Analysis & Design UML Class Models Overview How class models are used? Perspectives Classes: attributes and operations Associations Multiplicity Generalization and Inheritance Aggregation
More informationMultidimensional Modeling using UML and XML
Departamento de Lenguajes y Sistemas Informáticos Multidimensional Modeling using UML and XML Sergio Luján-Mora Contents Introduction OO Multidimensional Modeling UML Extension for MD Modeling MD Modeling
More informationAutomation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1
Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1 Dhirubhai Ambani Institute for Information and Communication Technology, Gandhinagar, Gujarat, India Email:
More informationClass Diagrams in Analysis
3.2 Subject/Topic/Focus: Introduction to Classes Summary: Conceptual Modeling Notation: Classes Associations: Multiplicity, Roles, Aggregation, Composition Generalization Objects Analysis Process Literature:
More informationNOTES 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 informationObject-Oriented Design
Object-Oriented Design Lecturer: Raman Ramsin Lecture 10: Analysis Packages 1 Analysis Workflow: Packages The analysis workflow consists of the following activities: Architectural analysis Analyze a use
More informationSemantics, Metadata and Identifying Master Data
Semantics, Metadata and Identifying Master Data A DataFlux White Paper Prepared by: David Loshin, President, Knowledge Integrity, Inc. Once you have determined that your organization can achieve the benefits
More informationDictionary Driven Exchange Content Assembly Blueprints
Dictionary Driven Exchange Content Assembly Blueprints Concepts, Procedures and Techniques (CAM Content Assembly Mechanism Specification) Author: David RR Webber Chair OASIS CAM TC January, 2010 http://www.oasis-open.org/committees/cam
More informationOntology Development. Qing He
A tutorial report for SENG 609.22 Agent Based Software Engineering Course Instructor: Dr. Behrouz H. Far Ontology Development Qing He 1 Why develop an ontology? In recent years the development of ontologies
More information2.0.3 attributes: A named property of a class that describes the range of values that the class or its instances (i.e., objects) may hold.
T0/06-6 revision 0 Date: March 0, 2006 To: T0 Committee (SCSI) From: George Penokie (IBM/Tivoli) Subject: SAM-4: Converting to UML part Overview The current SCSI architecture follows no particular documentation
More informationCS/INFO 330 Entity-Relationship Modeling. Announcements. Goals of This Lecture. Mirek Riedewald
CS/INFO 330 Entity-Relationship Modeling Mirek Riedewald mirek@cs.cornell.edu Announcements Office hour update (see class homepage) First homework assignment will be available from CMS later today Some
More information1 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 informationChapter 2 Entity-Relationship Data Modeling: Tools and Techniques. Fundamentals, Design, and Implementation, 9/e
Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques Fundamentals, Design, and Implementation, 9/e Three Schema Model ANSI/SPARC introduced the three schema model in 1975 It provides a framework
More informationA component-centric UML based approach for modeling the architecture of web applications.
International Journal of Recent Research and Review, Vol. V, March 2013 ISSN 2277 8322 A component-centric UML based approach for modeling the architecture of web applications. Mukesh Kataria 1 1 Affiliated
More informationA Methodology for Integrating XML Data into Data Warehouses
A Methodology for Integrating XML Data into Data Warehouses Boris Vrdoljak, Marko Banek, Zoran Skočir University of Zagreb Faculty of Electrical Engineering and Computing Address: Unska 3, HR-10000 Zagreb,
More informationSOME TYPES AND USES OF DATA MODELS
3 SOME TYPES AND USES OF DATA MODELS CHAPTER OUTLINE 3.1 Different Types of Data Models 23 3.1.1 Physical Data Model 24 3.1.2 Logical Data Model 24 3.1.3 Conceptual Data Model 25 3.1.4 Canonical Data Model
More informationSoftware Language Engineering of Architectural Viewpoints
Software Language Engineering of Architectural Viewpoints Elif Demirli and Bedir Tekinerdogan Department of Computer Engineering, Bilkent University, Ankara 06800, Turkey {demirli,bedir}@cs.bilkent.edu.tr
More informationModeling Requirements
Modeling Requirements Critical Embedded Systems Dr. Balázs Polgár Prepared by Budapest University of Technology and Economics Faculty of Electrical Engineering and Informatics Dept. of Measurement and
More informationPrinciples of Software Construction: Objects, Design and Concurrency. Just enough UML. toad
Principles of Software Construction: Objects, Design and Concurrency Just enough UML 15-214 toad Christian Kästner Charlie Garrod School of Computer Science With slides from Klaus Ostermann Learning Goals
More informationChapter 5: Structural Modeling
Chapter 5: Structural Modeling Objectives Understand the rules and style guidelines for creating CRC cards, class diagrams, and object diagrams. Understand the processes used to create CRC cards, class
More informationBasic 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 informationBolero Comments. The guiding principles for bolero XML tools and methodologies are:
Bolero Comments The guiding principles for bolero XML tools and methodologies are: Compliance with standard UML Compliance with standard XML Compliance with ebxml where relevant Technology independence
More informationSecond OMG Workshop on Web Services Modeling. Easy Development of Scalable Web Services Based on Model-Driven Process Management
Second OMG Workshop on Web Services Modeling Easy Development of Scalable Web Services Based on Model-Driven Process Management 88 solutions Chief Technology Officer 2003 Outline! Introduction to Web Services!
More informationSQL DDL. CS3 Database Systems Weeks 4-5 SQL DDL Database design. Key Constraints. Inclusion Constraints
SQL DDL CS3 Database Systems Weeks 4-5 SQL DDL Database design In its simplest use, SQL s Data Definition Language (DDL) provides a name and a type for each column of a table. CREATE TABLE Hikers ( HId
More informationSoftware Modelling. UML Class Diagram Notation. Unified Modeling Language (UML) UML Modelling. CS 247: Software Engineering Principles
CS 247: Software Engineering Principles UML Modelling InStacks Software Modelling Publication[p] borrow(m,p) / BorrowItem(m, p, today) return(p) / ReturnItem(p, today) OnLoan lost A software model is an
More informationProposed Revisions to ebxml Technical Architecture Specification v ebxml Business Process Project Team
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 Proposed Revisions to ebxml Technical Architecture Specification v1.0.4 ebxml Business Process Project Team 11
More informationRepresenting System Architecture
Representing System Architecture Logical View Implementation View End-user Functionality Programmers Software management Use Case View System integrators Performance Scalability Throughput Process View
More informationAvancier Methods (AM)
Methods (AM) CONCEPTS Regular expressions in XSDs, Perl & JSP It is illegal to copy, share or show this document (or other document published at http://avancier.co.uk) without the written permission of
More information