The DEx CD Lite language. Version 1.0. April 3 rd, 2014
|
|
- Georgina Thompson
- 8 years ago
- Views:
Transcription
1 The DEx CD Lite language Version 1.0 April 3 rd, 2014 Internal report Marita Breuer, Robert Eikermann, Timo Greifenberg, Katrin Hölldobler, Andreas Horst, Markus Look, Steffi Kaiser, Dimitri Plotnikov, Alex Roth, Bernhard Rumpe, Galina Volkova Software Engineering RWTH Aachen Germany 1
2 Explanation and Introduction DEX is a generator framework that basically generates a complete, running system from a single class diagram. While the DEX generator framework is capable of doing many more things, we also use it for the Generative Software Development lecture at RWTH Aachen. In this document we describe the core features of DEX that are mapped to the running program. These core features are defined as a simplified version of UML s class diagrams, that we call CD lite. For more details please see DEX is a subproject of MontiCore the DSL language workbench developed at RWTH Aachen. The rest of this document contains two sections: 1. The human readable grammar of CD lite. 2. The list of context conditions that apply to CD lite. This grammar is meant to understand the context free syntax of CD lite. It is not meant for parsing, and not for understanding the abstract syntax. Please note that in comparison to the UML/P class diagrams, the nonterminals have been renamed (by removing the CD prefix) and sometimes substructures have been removed. The context conditions come with the error code (that is also shown, when violated), and good and bad examples as well as with a reference to the context condition in [Sch12]. 2
3 Literature 1. [Rum12] B. Rumpe. Agile Modellierung mit UML : Codegenerierung, Testfälle, Refactoring. 2nd Edition, Springer Berlin, June [Wei12] I. Weisemöller. Generierung domänenspezifischer Transformationssprachen. Shaker Verlag, ISBN Aachener Informatik-Berichte, Software Engineering, Band [Sch12] M. Schindler. Eine Werkzeuginfrastruktur zur agilen Entwicklung mit der UML P. Shaker Verlag, ISBN Aachener Informatik-Berichte, Software Engineering Band [HRR12] A. Haber, J. O. Ringert, B. Rumpe. MontiArc - Architectural Modeling of Interactive Distributed and Cyber-Physical Systems. RWTH Aachen University, Technical Report. AIB February [MRR11e] S. Maoz, J. O. Ringert, B. Rumpe. CD2Alloy: Class Diagrams Analysis Using Alloy Revisited. In: Model Driven Engineering Languages and Systems (MODELS 2011), Wellington, New Zealand. pp , LNCS 6981, [Rum11] B. Rumpe. Modellierung mit UML. 2nd Edition, Springer Berlin, September [KRV10] H. Krahn, B. Rumpe, S. Völkel. MontiCore: a Framework for Compositional Development of Domain Specific Languages. In: International Journal on Software Tools for Technology Transfer (STTT), Volume 12, Issue 5, pp , September [KBV06] H. Krahn, B. Rumpe, S. Völkel. Roles in Software Development using Domain Specific Modeling Languages. In: Proceedings of the 6th OOPSLA Workshop on Domain-Specific Modeling (DSM' 06), Portland, Oregon USA. Technical Report TR-37, Jyväskylä University, Finland, [GKR+06a] H. Grönniger, H. Krahn, B. Rumpe, M. Schindler, S. Völkel. MontiCore Ein Framework zur Erstellung und Verarbeitung domänenspezifischer Sprachen. Informatik-Bericht Technische Universität Braunschweig, Carl-Friedrich-Gauss- Fakultät für Mathematik und Informatik, [GKR+06b] H. Grönniger, H. Krahn, B. Rumpe, M. Schindler. Integration von Modellen in einen codebasierten Softwareentwicklungsprozess. In: Proceedings der Modellierung März 2006, Innsbruck. GI-Edition - Lecture Notes in Informatics, LNI P-82, ISBN ,
4 11. [Rum04c] B. Rumpe. Agile Modeling with the UML. Ed.: M. Wirsing, A. Knapp, S. Balsamo. In: Radical Innovations of Software and Systems Engineering in the Future. 9th International Workshop, RISSEF Venice, Italy, October LNCS Springer Verlag [Rum03] B. Rumpe. Model-Based Testing of Object-Oriented Systems. In: Formal Methods for Components and Objects. F. de Boer, M.Bonsangue, S. Graf, W.-P. de Roever (eds.) International Symposium, FMCO Leiden, November 2002, Revised Lectures. LNCS 2852, Springer Publisher, [Rum02] Bernhard Rumpe. Executable Modeling with UML. A Vision or a Nightmare? In: Issues & Trends of Information Technology Management in Contemporary Associations, Seattle. Idea Group Publishing, Hershey, London, pp
5 Grammar for textual class diagrams CDDefinition = "classdiagram" Name "{" (CDClass CDInterface CDEnum CDAssociation)* "" CDClass = "abstract"? "class" Name ("extends" ReferenceType ("," ReferenceType)*)? ("implements" ReferenceType ("," ReferenceType)*)? (CDClassBody ";") CDClassBody = "{" CDAttribute* "" CDAttribute = "/"? Type Name ("=" Value)? ";" CDInterface = "interface" Name ("extends" ReferenceType ("," ReferenceType)*)? ";" CDEnum = "enum" Name (CDEnumBody ";") CDEnumBody = "{" (CDEnumConstant ("," CDEnumConstant)* ";")? "" CDEnumConstant = Name CDAssociation = "<<ordered>>"? "association" "/"? Name? "<<ordered>>"? Cardinality? QualifiedName CDQualifier? RoleName? ( "->" "<-" "<->" "--" ) RoleName? CDQualifier? QualifiedName Cardinality? "<<ordered>>"? ";" Cardinality = "[" ("*" Int Int ".." Int Int ".." "*") "]"; CDQualifier = "[" Name "]" RoleName = "(" Name ")" 5
6 In natural language: The DEx CD Lite language allows you to model: Classes, Abstract classes, Interfaces, Enumerations Inheritance with non-abstract superclasses with abstract superclasses Interface implementation Extension of interfaces Examples: class SomeClass; abstract class SomeAbstractClass; enum SomeEnum; class SomeClass; abstract class SomeAbstractClass; class SomeSubClassA extends SomeClass; class SomeSubClassB extends SomeAbstractClass; class SomeClass implements SomeInterface; interface SomeInterfaceA extends SomeInterface; class SomeClassA; Attributes with type: primitive data type String Class in the CD model Interface in the CD model Date Wrapper List<Wrapper of primitive data type> List<String> Associations From classes, abstract classes, interfaces (NOT: enums, external java classes) To classes, abstract classes, interfaces, enums (NOT: external java classes) With multiplicities: [0,1], [1], [*] With navigation directions: ->, <-, --, <--> With association and role names Qualified associations: o With key: attribute of the opposite class o With stereotype <<ordered>> Modifiers abstract (for classes) derived for attributes derived for associations class SomeClassC { int i; boolean b; String s; SomeClassA sca; SomeInterface si; Date d; Integer i2; Boolean b2; List<Integer>; List<String>; class SomeClass; abstract class SomeAbstractClass; association someassociationa [*] SomeClass (rolea) <-> (roleb) SomeAbstractClass [1] association someassociationb SomeAbstractClass -- SomeInterface abstract class SomeAbstractClass; /int somenumber association /someassociation A -- B 6
7 Context conditions for textual class diagrams ErrorCodes [Sch12] Please ensure that Wrong example Correct example NAMING CONVENTIONS 0xA0143 All-1-14 The name of your diagram is unique in the package (this condition includes diagrams of different types). 0xU0454, 0xU0440, 0xU0441, 0xU0484, 0xU0485, 0xU0486. CD-1-50 Attribute names / association and role names start with a lowercase character. 0xU0436 CD-1-46 A class which references another one by an association or a role name does NOT contain an attribute with this name. (This context condition 1. includes attributes of possible super classes; 2. applies NOT to derived associations; and 3. does NOT depend on possible navigation directions.) class A{ class B { int a1; association a1 A<->B; class C { int c; association A<->C; class A{ class B { int att; association a1 A<->B; class C { int catt; association A<->C; 0xD00XX The name(s) of your class diagram, classes, interfaces or enums do not conflict generated classes, i.e. are not used by the generator, too. Names with the suffix DataManager, Factory, Impl, Manager Names with suffix SearchHandlerWorker Name CreateDummyValues class ADataManager; classdiagram U { class USearchHandlerWorker; class A_DataManager; classdiagram U { class U_SearchHandlerWorker; class CreateDummyValues; class MyCreateDummyValues; CLASSES, INTERFACES AND ENUMS 7
8 ErrorCodes [Sch12] Please ensure that Wrong example Correct example 0xU0533, 0xU0534 CD-1-07, CD-1-10, CD-1-14 Only interfaces are implemented. class B implements A; class B extends A; 0xU0442 CD-1-49 Every class referenced by a qualifier contains an attribute with the qualifier s name resp. type. 0xD0055 / Interfaces in your CD do NOT contain any attributes (because they are not supported by the dex-generator yet). association a1 A[att1] -> B; class B { int att1; association a1 A[att1] -> B; ATTRIBUTES 0xU0447 CD-3-01 Attribute values and their types are compatible. int att = false; boolean att = false; 0xU0983, 0xU0450, 0xU0449? 0xU0451, 0xU0452 CD-3-04 There is an initialization for derived attributes. derived int att; CD-3-03 Final attributes are initialized in the declaration. final int att; derived int att = 0; final int att = 0; 0xU0453 CD-1-22 An interface s non-final attributes are NOT initialized. interface I { int att = 0; interface I { final int att = 0; INHERITANCE 0xD0013 / Your CD model do NOT contain multi-inheritance (which is not supported by the dex-generator yet). class C extends A,B; interface B; class C extends A implements B; 0xU0531 CD-1-06, Your CD model do NOT contain inheritance cycles. class A extends B; class B extends A; class A extends B; 8
9 ErrorCodes [Sch12] Please ensure that Wrong example Correct example CD xU0496, 0xU0497, 0xU0499 CD-1-04 Classes only extend enums and interfaces. interface I; class B extends I; enum E; class C extends E; class final A; class D extends A; interface I; class B implements I; enum E; class C; classa; class D extends A; 0xU0455 CD-1-20 If a superclass and its subclass each contain an attribute with the same name, thetype of the attribute in the subclass will be compatible with casting otherwise the subclass s attribute will be ignored. DUPLICATES char att; class B extends A { int att; char att; class B extends A { char att; 0xU0504 CD-1-23 You avoid duplicates wrt constants in an enum. enum E {Foo, Bar, Foo enum E {Foo1, Bar, Foo2 0xU0244 All-1-03 You avoid duplicate wrt stereotypes. <<Val, Val>> <<Val1, Val2>> MULTIPLICITIES 0xU0240 All-1-04 Any multiplicity s left bound is smaller than its right one. association A -> B [3..2]; association A -> B [2..3]; 9
Roles in Software Development using Domain Specific Modelling Languages
Roles in Software Development using Domain Specific Modelling Languages Holger Krahn Bernhard Rumpe Steven Völkel Institute for Software Systems Engineering Technische Universität Braunschweig, Braunschweig,
More informationAssessing usability of model driven development in industrial projects
Assessing usability of model driven development in industrial projects Florian Fieber 1,3, Nikolaus Regnat 2, and Bernhard Rumpe 1 1 RWTH Aachen University, Department of Computer Science 3, Ahornstraße
More informationEfficient Editor Generation for Compositional DSLs in Eclipse
Efficient Editor Generation for Compositional DSLs in Eclipse Holger Krahn, Bernhard Rumpe, and Steven Völkel Institute for Software Systems Engineering Niedersächsische Technische Hochschule, Standort
More informationDevelopment of Tool Extensions with MOFLON
Development of Tool Extensions with MOFLON Ingo Weisemöller, Felix Klar, and Andy Schürr Fachgebiet Echtzeitsysteme Technische Universität Darmstadt D-64283 Darmstadt, Germany {weisemoeller klar schuerr}@es.tu-darmstadt.de
More informationAgile Test-based Modeling
Agile Test-based Modeling Bernhard Rumpe Software Systems Engineering TU Braunschweig, Germany www.sse.cs.tu-bs.de Model driven architecture (MDA) concentrates on the use of models during software development.
More informationA Comparison of Mechanisms for Integrating Handwritten and Generated Code for Object-Oriented Programming Languages
A Comparison of Mechanisms for Integrating Handwritten and Generated Code for Object-Oriented Programming Languages Timo Greifenberg 1, Katrin Hölldobler 1, Carsten Kolassa 1, Markus Look 1, Pedram Mir
More informationEngineering Delta Modeling Languages
Engineering Delta Modeling Languages Arne Haber Markus Look Bernhard Rumpe Katrin Hölldobler Klaus Müller Ina Schaefer and Automotive Informatics TU Braunschweig, http://www.tu-bs.de/isf Carsten Kolassa
More informationUser-Driven Adaptation of Model Differencing Results
User-Driven Adaptation of Model Differencing Results Klaus Müller, Bernhard Rumpe Software Engineering RWTH Aachen University Aachen, Germany http://www.se-rwth.de/ Abstract In model-based software development,
More informationA Manifesto for Semantic Model Differencing
A Manifesto for Semantic Model Differencing ME-10, October 2010 Shahar Maoz, Jan Oliver Ringert, Bernhard Rumpe Lehrstuhl Informatik 3 () http://www.se-rwth.de/ Seite 2 One slide abstract Existing approaches
More informationSoftware Construction
Software Construction Staff Faculty: Univ.-Prof. Dr. rer. nat. Horst Lichter lichter@informatik.rwth-aachen.de Secretary: Bärbel Kronewetter Phone: +49 241 80 21 330 Fax: +49 241 80 22 352 Research Assistants:
More informationA Model-based Software Development Kit for the SensorCloud Platform
A Model-based Software Development Kit for the SensorCloud Platform Lars Hermerschmidt, Antonio Navarro Perez, and Bernhard Rumpe {hermerschmidt, perez, rumpe}@se-rwth.de Department of Software Engineering,
More informationDefining and Checking Model Smells: A Quality Assurance Task for Models based on the Eclipse Modeling Framework
Defining and Checking Model Smells: A Quality Assurance Task for Models based on the Eclipse Modeling Framework Thorsten Arendt a, Matthias Burhenne a, Gabriele Taentzer a a Philipps-Universität Marburg,
More informationExtensible Validation Framework for DSLs using MontiCore on the Example of Coding Guidelines
Extensible Validation Framework for DSLs using MontiCore on the Example of Coding Guidelines Christian Berger, Bernhard Rumpe, and Steven Völkel Rheinisch Westfälische Technische Hochschule (RWTH) Aachen
More informationA Case Study on Model-Based Development of Robotic Systems using MontiArc with Embedded Automata
A Case Study on Model-Based Development of Robotic Systems using MontiArc with Embedded Automata Jan Oliver Ringert and Bernhard Rumpe and Andreas Wortmann Software Engineering RWTH Aachen University Ahornstrasse
More informationA Common Metamodel for Code Generation
A Common Metamodel for Code Generation Michael PIEFEL Institut für Informatik, Humboldt-Universität zu Berlin Unter den Linden 6, 10099 Berlin, Germany piefel@informatik.hu-berlin.de ABSTRACT Models can
More informationSoftware Construction
Software Construction Staff Faculty: Univ.-Prof. Dr. rer. nat. Horst Lichter lichter@informatik.rwth-aachen.de Secretary: Bärbel Kronewetter Phone: +49 241 80 21 330 Fax: +49 241 80 22 352 Research Assistants:
More informationObject-Oriented Design Lecture 4 CSU 370 Fall 2007 (Pucella) Tuesday, Sep 18, 2007
Object-Oriented Design Lecture 4 CSU 370 Fall 2007 (Pucella) Tuesday, Sep 18, 2007 The Java Type System By now, you have seen a fair amount of Java. Time to study in more depth the foundations of the language,
More information2 nd UML 2 Semantics Symposium: Formal Semantics for UML
2 nd UML 2 Semantics Symposium: Formal Semantics for UML Manfred Broy 1, Michelle L. Crane 2, Juergen Dingel 2, Alan Hartman 3, Bernhard Rumpe 4, and Bran Selic 5 1 Technische Universität München, Germany
More informationModeling Cloud Architectures as Interactive Systems
Modeling Cloud Architectures as Interactive Systems Antonio Navarro Perez and Bernhard Rumpe Department of Software Engineering, RWTH Aachen University, Aachen, Germany Abstract. The development and maintenance
More information17. Evolutionary Object-Oriented Software Development (EOS) An agile process based on PBS
17. Evolutionary Object-Oriented Software Development (EOS) An agile process based on PBS 1 Prof. Dr. rer. nat. Uwe Aßmann Lehrstuhl Softwaretechnologie Fakultät Informatik Technische Universität Dresden
More informationFormal Concept Analysis used for object-oriented software modelling Wolfgang Hesse FB Mathematik und Informatik, Univ. Marburg
FCA-SE 10 Formal Concept Analysis used for object-oriented software modelling Wolfgang Hesse FB Mathematik und Informatik, Univ. Marburg FCA-SE 20 Contents 1 The role of concepts in software development
More informationProceedings of the International Workshop on Software Quality and Maintainability (SQM 2014)
Electronic Communications of the EASST Volume 65 (2014) Proceedings of the International Workshop on Software Quality and Maintainability (SQM 2014) A Model-Based Approach to Impact Analysis Using Model
More informationÜber die Semantik von Modellierungssprachen
Über die Semantik von Modellierungssprachen und des UML-Standards Prof. Dr. Bernhard Rumpe Technische Universität Braunschweig http://www.sse.cs.tu-bs.de/ Seite 2 What is a model? And why do we need modeling
More informationTransforming Platform-Independent to Platform-Specific Component and Connector Software Architecture Models
Transforming Platform-Independent to Platform-Specific Component and Connector Software Architecture Models Jan Oliver Ringert 2, Bernhard Rumpe 1 and Andreas Wortmann 1 1 Software Engineering, RWTH Aachen
More informationUsing Ontologies in the Domain Analysis of Domain-Specific Languages
Using Ontologies in the Domain Analysis of Domain-Specific Languages Robert Tairas 1, Marjan Mernik 2, Jeff Gray 1 1 University of Alabama at Birmingham, Birmingham, Alabama, USA {tairasr,gray}@cis.uab.edu
More informationAdvanced Topics in model-based Software Development
Advanced Topics in model-based Software Development Prof. Dr. Bernhard Rumpe Technische Universität Braunschweig http://www.sse-tubs.de/ Seite 1 Trends in software development Size and complexity of systems
More informationRepresenting XML Schema in UML A Comparison of Approaches
Representing XML Schema in UML A Comparison of Approaches Martin Bernauer, Gerti Kappel, Gerhard Kramler Business Informatics Group, Vienna University of Technology, Austria {lastname}@big.tuwien.ac.at
More informationModel-Based Requirements Engineering with AutoRAID
Model-Based Requirements Engineering with AutoRAID Bernhard Schätz, Andreas Fleischmann, Eva Geisberger, Markus Pister Fakultät für Informatik, Technische Universität München Boltzmannstr. 3, 85748 Garching,
More information1 Business Modeling. 1.1 Event-driven Process Chain (EPC) Seite 2
Business Process Modeling with EPC and UML Transformation or Integration? Dr. Markus Nüttgens, Dipl.-Inform. Thomas Feld, Dipl.-Kfm. Volker Zimmermann Institut für Wirtschaftsinformatik (IWi), Universität
More information15. Evolutionary Object-Oriented Software Development (EOS) An agile process based on product-breakdown structure (PBS) Obligatory Literature
15. Evolutionary Object-Oriented oftware Development (EO) An agile process based on product-breakdown structure (PB) Prof. Dr. rer. nat. Uwe Aßmann Lehrstuhl oftwaretechnologie Fakultät Informatik Technische
More informationA Knowledge-based Product Derivation Process and some Ideas how to Integrate Product Development
A Knowledge-based Product Derivation Process and some Ideas how to Integrate Product Development (Position paper) Lothar Hotz and Andreas Günter HITeC c/o Fachbereich Informatik Universität Hamburg Hamburg,
More informationGraph-Grammar Based Completion and Transformation of SDL/UML-Diagrams
Graph-Grammar Based Completion and Transformation of SDL/UML-Diagrams Position Paper Ulrich A. Nickel, Robert Wagner University of Paderborn Warburger Straße 100 D-33098 Paderborn Germany [duke, wag25]@uni-paderborn.de
More informationAnalysis and Synthesis of Interactive Component and Connector Systems
Analysis and Synthesis of Interactive Component and Connector Systems Von der Fakultät für Mathematik, Informatik und Naturwissenschaften der RWTH Aachen University zur Erlangung des akademischen Grades
More informationTextual Modeling Languages
Textual Modeling Languages Slides 4-31 and 38-40 of this lecture are reused from the Model Engineering course at TU Vienna with the kind permission of Prof. Gerti Kappel (head of the Business Informatics
More informationJava (12 Weeks) Introduction to Java Programming Language
Java (12 Weeks) Topic Lecture No. Introduction to Java Programming Language 1 An Introduction to Java o Java as a Programming Platform, The Java "White Paper" Buzzwords, Java and the Internet, A Short
More informationBest of Both Worlds - A Mapping from EXPRESS-G to UML
Best of Both Worlds - A Mapping from EXPRESS-G to UML Florian Arnold, Gerd Podehl Research Group for Computer Application in Engineering Design Department of Mechanical and Chemical Engineering University
More informationSyntax Check of Embedded SQL in C++ with Proto
Proceedings of the 8 th International Conference on Applied Informatics Eger, Hungary, January 27 30, 2010. Vol. 2. pp. 383 390. Syntax Check of Embedded SQL in C++ with Proto Zalán Szűgyi, Zoltán Porkoláb
More informationProcDSL + ProcEd - a Web-based Editing Solution for Domain Specific Process-Engineering
ProcDSL + ProcEd - a Web-based Editing Solution for Domain Specific Process-Engineering Christian Berger Tim Gülke RWTH Aachen University Software Engineering Group Ahornstraße 55 52074 Aachen, Germany
More informationAn open source software approach to combine simulation and optimization of business processes
An open source software approach to combine simulation and optimization of business processes Mike Steglich and Christian Müller Technical University of Applied Sciences Wildau Bahnhofstraße, D-745 Wildau,
More informationAgile Modeling with the UML
Agile Modeling with the UML Bernhard Rumpe Software & Systems Engineering, Technische Universität München 85748 Munich/Garching, Germany, This paper discusses a model-based approach to software development.
More information3 Software Architecture
Software Architecture and Software Configuration Management Bernhard Westfechtel, Aachen Reidar Conradi, Trondheim Abstract This paper examines the relations between software architecture and software
More informationSSELab: A Plug-In-Based Framework for Web-Based Project Portals
SSELab: A Plug-In-Based Framework for Web-Based Project Portals Christoph Herrmann, Thomas Kurpick, Bernhard Rumpe Software Engineering RWTH Aachen University Aachen, Germany http://www.se-rwth.de/ Abstract
More informationGeneration and Handcoding
Farbe! Generative Software Engineering 3. Integrating Handwritten Code Prof. Dr. Bernhard Rumpe University http://www.se-rwth.de/ Page 2 Generation and Handcoding Not everything shall and can be generated
More informationImplementing COOL in JAMI
Implementing COOL in JAMI Steven te Brinke s.tebrinke@student.utwente.nl ABSTRACT JAMI aims to be a generic aspect interpreter framework which can be used to prototype a wide range of AOP languages. However,
More informationFormal Engineering for Industrial Software Development
Shaoying Liu Formal Engineering for Industrial Software Development Using the SOFL Method With 90 Figures and 30 Tables Springer Contents Introduction 1 1.1 Software Life Cycle... 2 1.2 The Problem 4 1.3
More informationSchema Classes. Polyhedra Ltd
Schema Classes Polyhedra Ltd Copyright notice This document is copyright 1994-2006 by Polyhedra Ltd. All Rights Reserved. This document contains information proprietary to Polyhedra Ltd. It is supplied
More information6 6 2 3 5 3 3 6 3 4 5 6 2 2 5 4 3 1 6 3 3 5 1 2 3 4 5 6 Steering Committee Thomas Form Peter Hecker Marcus Magnor Bernhard Rumpe Walter Schumacher Lars Wolf Fred Rauskolb (Formal Team Leader) QA/Simulation
More informationHandout 1. Introduction to Java programming language. Java primitive types and operations. Reading keyboard Input using class Scanner.
Handout 1 CS603 Object-Oriented Programming Fall 15 Page 1 of 11 Handout 1 Introduction to Java programming language. Java primitive types and operations. Reading keyboard Input using class Scanner. Java
More informationAutomated Testing of Graphical Models in Heterogeneous Test Environments
Automated Testing of Graphical Models in Heterogeneous Test Environments A. Beresnev, B. Rumpe, F. Schroven TU Braunschweig, Software Systems Engineering Institute RWTH Aachen, Chair for Software Engineering
More informationThe WebShop e-commerce framework
The WebShop e-commerce framework Marcus Fontoura 1, Wolfgang Pree 2, and Bernhard Rumpe 3 1 Cyberspace and Web Technology Department, IBM Almaden Research Center 650 Harry Rd., San Jose, CA, 91520, U.S.A
More informationTowards Querying of Traceability Information in the Context of Software Evolution
Towards Querying of Traceability Information in the Context of Software Evolution Hannes Schwarz Jürgen Ebert Volker Riediger Institute for Software Technology University of Koblenz-Landau Koblenz, Germany
More informationMetadata Reference Model for IPS 2 Lifecycle Management
Metadata Reference Model for IPS 2 Lifecycle Management M. Abramovici, M. Neubach, M. Schulze, C. Spura Ruhr-University Bochum, Institute for Product and Service Engineering Chair of IT in Mechanical Engineering
More informationjava Features Version April 19, 2013 by Thorsten Kracht
java Features Version April 19, 2013 by Thorsten Kracht Contents 1 Introduction 2 1.1 Hello World................................................ 2 2 Variables, Types 3 3 Input/Output 4 3.1 Standard I/O................................................
More informationHow To Write The Ceres Software Development Guidelines
MEDIZINISCHE FAKULTÄT RHEINISCH-WESTFÄLISCHE TECHNISCHE HOCHSCHULE AACHEN INSTITUT FÜR MEDIZINISCHE INFORMATIK GESCHÄFTSFÜHRENDER DIREKTOR: UNIVERSITÄTSPROFESSOR DR. DR. KLAUS SPITZER The CERES Project
More informationGECO: Automatic Generator-Composition for (Aspect-oriented) DSLs
GECO: Automatic Generator-Composition for (Aspect-oriented) DSLs Doctoral Symposium Reiner Jung Christian-Albrechts-Universität zu Kiel Institut für Informatik 26.02.2014 Domain-specific Languages Motivation
More informationMDA Transformations Applied to Web Application Development 1
MDA Transformations Applied to Web Application Development 1 Santiago Meliá 1, Andreas Kraus 2, and Nora Koch 2, 3 1 Universidad de Alicante, Spain 2 Ludwig-Maximilians-Universität München, Germany 3 F.A.S.T
More informationFoundations of Model-Driven Software Engineering
Model-Driven Software Engineering Foundations of Model-Driven Software Engineering Dr. Jochen Küster (jku@zurich.ibm.com) Contents Introduction to Models and Modeling Concepts of Model-Driven Software
More informationA PRODUCT METRICS TOOL INTEGRATED INTO
A PRODUCT METRICS TOOL INTEGRATED INTO A SOFTWARE DEVELOPMENT ENVIRONMENT Claus Lewerentz, Frank Simon Software and Systems Development Group Computer Science Department, Technical University of Cottbus
More informationProceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010)
Electronic Communications of the EASST Volume 34 (2010) Proceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010) Position Paper: m2n A Tool for Translating
More informationConcepts and terminology in the Simula Programming Language
Concepts and terminology in the Simula Programming Language An introduction for new readers of Simula literature Stein Krogdahl Department of Informatics University of Oslo, Norway April 2010 Introduction
More informationJava Types and Enums. Nathaniel Osgood MIT 15.879. April 25, 2012
Java Types and Enums Nathaniel Osgood MIT 15.879 April 25, 2012 Types in Java Types tell you the class of values from which a variable is drawn In Java we specify types for Parameters Variables Return
More information15. Evolutionary Object-Oriented Software Development (EOS) An agile process based on product-breakdown structure (PBS) Obligatory Literature
15. Evolutionary Object-Oriented oftware Development (EO) An agile process based on product-breakdown structure (PB) Prof. Dr. rer. nat. Uwe Aßmann Lehrstuhl oftwaretechnologie Fakultät Informatik Technische
More informationIntegrating Content Assist into Textual Modelling Editors
Integrating Content Assist into Textual Modelling Editors Markus Scheidgen scheidge@informatik.hu-berlin.de Abstract: Intelligent, context sensitive content assist (also known as code completion) plays
More informationModeling Turnpike: a Model-Driven Framework for Domain-Specific Software Development *
for Domain-Specific Software Development * Hiroshi Wada Advisor: Junichi Suzuki Department of Computer Science University of Massachusetts, Boston hiroshi_wada@otij.org and jxs@cs.umb.edu Abstract. This
More informationA CONCEPTUAL MODEL FOR REQUIREMENTS ENGINEERING AND MANAGEMENT FOR CHANGE-INTENSIVE SOFTWARE
A CONCEPTUAL MODEL FOR REQUIREMENTS ENGINEERING AND MANAGEMENT FOR CHANGE-INTENSIVE SOFTWARE Jewgenij Botaschanjan, Andreas Fleischmann, Markus Pister Technische Universität München, Institut für Informatik
More informationAachen. CD2Alloy: A Translation of Class Diagrams to Alloy. Department of Computer Science. Technical Report
Aachen Department of Computer Science Technical Report CD2Alloy: A Translation of Class Diagrams to Alloy Shahar Maoz and Jan Oliver Ringert and Bernhard Rumpe ISSN 0935 3232 Aachener Informatik-Berichte
More informationPrinciples of integrated software development environments. Learning Objectives. Context: Software Process (e.g. USDP or RUP)
Principles of integrated software development environments Wolfgang Emmerich Professor of Distributed Computing University College London http://sse.cs.ucl.ac.uk Learning Objectives Be able to define the
More informationOrganization of DSLE part. Overview of DSLE. Model driven software engineering. Engineering. Tooling. Topics:
Organization of DSLE part Domain Specific Language Engineering Tooling Eclipse plus EMF Xtext, Xtend, Xpand, QVTo and ATL Prof.dr. Mark van den Brand GLT 2010/11 Topics: Meta-modeling Model transformations
More informationOn General-purpose Textual Modeling Languages. On General-purpose Textual Modeling Languages
On General-purpose Textual Modeling Languages On General-purpose Textual Modeling Languages Martin Mazanec and Ondřej Macek Martin Mazanec and Ondřej Macek Department of Computer Science, FEL, Czech Technical
More informationChapter 6: Programming Languages
Chapter 6: Programming Languages Computer Science: An Overview Eleventh Edition by J. Glenn Brookshear Copyright 2012 Pearson Education, Inc. Chapter 6: Programming Languages 6.1 Historical Perspective
More informationJava Interview Questions and Answers
1. What is the most important feature of Java? Java is a platform independent language. 2. What do you mean by platform independence? Platform independence means that we can write and compile the java
More informationMODEL-DRIVEN DEVELOPMENT OF SOFTWARE CONFIGURATION MANAGEMENT SYSTEMS A Case Study in Model-driven Engineering
MODEL-DRIVEN DEVELOPMENT OF SOFTWARE CONFIGURATION MANAGEMENT SYSTEMS A Case Study in Model-driven Engineering Thomas Buchmann, Alexander Dotor and Bernhard Westfechtel Angewandte Informatik 1, Universität
More informationJava the UML Way: Integrating Object-Oriented Design and Programming
Java the UML Way: Integrating Object-Oriented Design and Programming by Else Lervik and Vegard B. Havdal ISBN 0-470-84386-1 John Wiley & Sons, Ltd. Table of Contents Preface xi 1 Introduction 1 1.1 Preliminaries
More informationFirst Java Programs. V. Paúl Pauca. CSC 111D Fall, 2015. Department of Computer Science Wake Forest University. Introduction to Computer Science
First Java Programs V. Paúl Pauca Department of Computer Science Wake Forest University CSC 111D Fall, 2015 Hello World revisited / 8/23/15 The f i r s t o b l i g a t o r y Java program @author Paul Pauca
More information11 November 2015. www.isbe.tue.nl. www.isbe.tue.nl
UML Class Diagrams 11 November 2015 UML Class Diagrams The class diagram provides a static structure of all the classes that exist within the system. Classes are arranged in hierarchies sharing common
More informationXML Databases 6. SQL/XML
XML Databases 6. SQL/XML Silke Eckstein Andreas Kupfer Institut für Informationssysteme Technische Universität Braunschweig http://www.ifis.cs.tu-bs.de 6. SQL/XML 6.1Introduction 6.2 Publishing relational
More informationThird AP Edition. Object-Oriented Programming and Data Structures. Maria Litvin. Gary Litvin. Phillips Academy, Andover, Massachusetts
Third AP Edition Object-Oriented Programming and Data Structures Maria Litvin Phillips Academy, Andover, Massachusetts Gary Litvin Skylight Software, Inc. Skylight Publishing Andover, Massachusetts Skylight
More informationUML FOR OBJECTIVE-C. Excel Software www.excelsoftware.com
UML FOR OBJECTIVE-C Excel Software www.excelsoftware.com Objective-C is a popular programming language for Mac OS X computers. The Unified Modeling Language (UML) is the industry standard notation for
More informationModel-Driven Development - From Frontend to Code
Model-Driven Development - From Frontend to Code Sven Efftinge sven@efftinge.de www.efftinge.de Bernd Kolb bernd@kolbware.de www.kolbware.de Markus Völter voelter@acm.org www.voelter.de -1- Model Driven
More informationCSCI 253. Object Oriented Programming (OOP) Overview. George Blankenship 1. Object Oriented Design: Java Review OOP George Blankenship.
CSCI 253 Object Oriented Design: Java Review OOP George Blankenship George Blankenship 1 Object Oriented Programming (OOP) OO Principles Abstraction Encapsulation Abstract Data Type (ADT) Implementation
More informationEvaluation of Students' Modeling and Programming Skills
Evaluation of Students' Modeling and Programming Skills Birgit Demuth, Sebastian Götz, Harry Sneed, and Uwe Schmidt Technische Universität Dresden Faculty of Computer Science Abstract. In winter semester
More informationAgile Software Development
Agile Software Development Lecturer: Raman Ramsin Lecture 13 Refactoring Part 3 1 Dealing with Generalization: Pull Up Constructor Body Pull Up Constructor Body You have constructors on subclasses with
More informationCúram Modeling Reference Guide
IBM Cúram Social Program Management Cúram Modeling Reference Guide Version 6.0.4 Note Before using this information and the product it supports, read the information in Notices at the back of this guide.
More informationQuality Assurance of Textual Models within Eclipse using OCL and Model Transformations
Quality Assurance of Textual Models within Eclipse using OCL and Model Transformations Thorsten Arendt, Gabriele Taentzer, Alexander Weber Philipps-Universität Marburg, Germany {arendt,taentzer,weber87}@informatik.uni-marburg.de
More informationMasters programmes in Computer Science and Information Systems. Object-Oriented Design and Programming. Sample module entry test xxth December 2013
Masters programmes in Computer Science and Information Systems Object-Oriented Design and Programming Sample module entry test xxth December 2013 This sample paper has more questions than the real paper
More informationTaxi Service Coding Policy. Version 1.2
Taxi Service Coding Policy Version 1.2 Revision History Date Version Description Author 2012-10-31 1.0 Initial version Karlo Zanki 2012-11-18 1.1 Added a section relative to Java/Android Fabio Kruger 2013-01-02
More informationEMC A MODELING METHOD FOR DEVELOPING WEB- BASED APPLICATIONS
EMC A MODELING METHOD FOR DEVELOPING WEB- BASED APPLICATIONS Peter Rittgen Institute of Business Informatics, University Koblenz-Landau, Rheinau 1, D-56075 Koblenz email: rittgen@uni-koblenz.de, phone:
More informationSoftware Development. Chapter 7. Outline. 7.1.1 The Waterfall Model RISKS. Java By Abstraction Chapter 7
Outline Chapter 7 Software Development 7.1 The Development Process 7.1.1 The Waterfall Model 7.1.2 The Iterative Methodology 7.1.3 Elements of UML 7.2 Software Testing 7.2.1 The Essence of Testing 7.2.2
More informationATM Case Study OBJECTIVES. 2005 Pearson Education, Inc. All rights reserved. 2005 Pearson Education, Inc. All rights reserved.
1 ATM Case Study 2 OBJECTIVES.. 3 2 Requirements 2.9 (Optional) Software Engineering Case Study: Examining the Requirements Document 4 Object-oriented design (OOD) process using UML Chapters 3 to 8, 10
More informationJava Application Developer Certificate Program Competencies
Java Application Developer Certificate Program Competencies After completing the following units, you will be able to: Basic Programming Logic Explain the steps involved in the program development cycle
More informationLDIF - Linked Data Integration Framework
LDIF - Linked Data Integration Framework Andreas Schultz 1, Andrea Matteini 2, Robert Isele 1, Christian Bizer 1, and Christian Becker 2 1. Web-based Systems Group, Freie Universität Berlin, Germany a.schultz@fu-berlin.de,
More informationAP Computer Science Java Subset
APPENDIX A AP Computer Science Java Subset The AP Java subset is intended to outline the features of Java that may appear on the AP Computer Science A Exam. The AP Java subset is NOT intended as an overall
More informationTools for Forging the Functional Architecture
Tools for Forging the Functional Architecture Andreas Korff 1, Jesko G. Lamm 2, Tim Weilkiens 3 1 Atego Systems GmbH, Major-Hirst-Str. 11, 38442 Wolfsburg, Germany, andreas.korff atego.com 2 Bernafon
More informationUmbrello UML Modeller Handbook
2 Contents 1 Introduction 7 2 UML Basics 8 2.1 About UML......................................... 8 2.2 UML Elements........................................ 9 2.2.1 Use Case Diagram.................................
More informationThe WebShop E-Commerce Framework
The WebShop E-Commerce Framework Marcus Fontoura IBM Almaden Research Center 650 Harry Road, San Jose, CA 95120, U.S.A. e-mail: fontouraalmaden.ibm.com Wolfgang Pree Professor of Computer Science Software
More informationCertifying Energy Efficiency of Android Applications
Proceedings of the 28th EnviroInfo 2014 Conference, Oldenburg, Germany September 10-12, 2014 Certifying Energy Efficiency of Android Applications Johannes Meier 1, Marie-Christin Ostendorp 1, Jan Jelschen
More informationCOMP 356 Programming Language Structures Notes for Chapter 4 of Concepts of Programming Languages Scanning and Parsing
COMP 356 Programming Language Structures Notes for Chapter 4 of Concepts of Programming Languages Scanning and Parsing The scanner (or lexical analyzer) of a compiler processes the source program, recognizing
More informationSYSTEMS ANALYSIS DESIGN
SYSTEMS ANALYSIS DESIGN Third Edition ALAN DENNIS Indiana University BARBARA HALEY WIXOM University of Virginia ROBERTA M. ROTH University of Northern Iowa WILEY John Wiley & Sons, Inc. http://www.wiley.com/college/dennis
More information