Web Engineering. Modelling of Web Applications

Size: px
Start display at page:

Download "Web Engineering. Modelling of Web Applications"

Transcription

1 Web Engineering Modelling of Web Applications Nora Koch Ludwig-Maximilians University of Munich (LMU) Institute of Informatics Programming and Software Engineering Sevilla

2 Ludwig-Maximilians University of Munich (LMU) University Since students 700 professors 3000 researchers 18 faculties Winner of the German Excellence Initiative (2006) Institute for Informatics Since students 16 professors 7 departments 2

3 Programming and Software Engineering Department (PST) Focus on Software development using formal methods Algebraic specification techniques Programming methodology Semantics of specification and programming languages Temporal logics and their applications Web engineering 3

4 PST Research Projects UWE ongoing non-funded project since 2000 MAEWA model-driven development of Web applications national project , 1 researcher SENSORIA software engineering for service-oriented overlay computers integrated project (IP) funded by EU , 18 partners, 2,5 researchers GLOWA/DANUBIA integrative simulation system for global research in the danube area national project , 17 partners, 3 researchers INFOZERT information flow security national project , 1 researcher 4

5 Web Engineering Group Staff Alexander Knapp, Gefei Zhang, Nora Koch Lectures Methods of Software Engineering Web Engineering Research 2 projects (UWE, MAEWA) cooperation with other universities: Sevilla, Milano, Málaga, Alicante, Lingby (DK), LaPlata (AR), Viena & Linz (AT) cooperation with industry (RTL2, FAST, ScoLifeScience) Organisation International Conference on Web Engineering (ICWE2004, 2006, 2007) Model-Driven Web Engineering Workshop (MDWE2005, 2006, 2007) Model-Driven Web Engineering Network (MDWEnet) 5

6 Nora Koch Studies Universidad de Buenos Aires, Argentina Bachelor in Computer Science, 1974 Master in Computer Science,1985 LMU Munich, Germany, PhD. Thesis, 2000 Academic experience Universidad de Buenos Aires, LMU Munich, European research projects since 2001 Industrial experience Automotive Company Central Bank of Argentina Freelance F.A.S.T. GmbH (part time) since

7 Outline Web Engineering Methodologies Modelling of Web Applications UWE Approach Modelling Language CASE Tool Metamodel Development Process 7

8 Web Engineering Methods Underlying Modelling Language 1993 ER OMT UML HDM RMM HDM-Lite WSDM OOHDM WebML W2000 UWE WAE Hera OOWS OO-H NDT WAE Data-oriented Hypertext-oriented Object-oriented Software-oriented WebSA Sevilla June Nora Koch 8?

9 Names of Methods HDM / HDM-lite Hera NDT OO-H OOHDM OOWS RMM UWE W2000 WAE / WAE2 WebML WebSA WSDM Hypertext Design Model Navigational Development Technique Object-Oriented Hypermedia Method Object-Oriented Hypermedia Design Method Object-Oriented Web Solution Relationship Management Methodology UML-based Web Engineering Web Application Extension Web Modeling Language Web Software Architecture Web Site Design Method ER OMT UML Entity Relationship Model Object Modeling Technique Unified Modeling Language 9

10 Methods for Development of Web Applications Describe the development process steps expected results model transformations Provide modelling techniques model elements rules for the construction of models Provide tool support to build models to generate applications 10

11 Problems of Current Methods Life cycle is only partially covered focus on modelling weak requirements analysis poor support of (semi-)automatic generation of Web applications Mainly appropriate for development from scratch weak support of reengineering & reuse Different notations and concepts similar approaches with slight differences method war Lack of use of standards metamodelling (MOF, EMF) modelling language (BPMN, UML, proprietary notation) Field for research and development 11

12 Dimensions of Web Modelling levels presentation hypertext adaptivity behaviour structure content requirements analysis design implementation phases aspects Modelling process information-driven ("content first") presentation-driven ("layout first") functionality-driven ("test first") agile process Source: Kappel et al. Web Engineering, d-punkt (2003) 12

13 Advantages of Modelling Approaches A rigorous modelling approach can reduce development efforts (cost and time) allows a more structured procedure produces more usable and coherent final results design models are self-documenting immediate prototyping can be achieved Differences to modelling non-web software multidisciplinary development team inhomogeneous and immature technical infrastructure continuous improvement and new Web technologies short product lifecycles short development cycles 13

14 Requirements for Web Modelling Expressiveness real-life cases should be expressible frequently used design patterns should be captured Ease of use intuitive notation clear semantics consistency checks Implementability efficient mapping to physical data structures effective generation of Web pages flexible code generation from behavioural specifications 14

15 UML-based Web Engineering (UWE) Software engineering approach for Web domain Based on OMG standards, such as UML, MDA, OCL, XMI, Domain specific modeling language (DSL) MOF-based metamodel, OCL constraints Open source CASE tool support 15

16 UWE in a Nutshell UWE is a an engineering approach for the development of Web applications Main characteristic is the use of UML for all models pure UML whenever possible UML extension for Web specific features UML profile Focuses on systematisation and automatic generation UWE comprises a modelling language for the graphical representation of models of Web applications a method (technique) supporting semi-automatic generation a metamodel for UWE modelling elements a process supporting the development life-cycle of Web applications a case-tool supporting the development of Web applications ArgoUWE editor for the design set of transformations for model-to-model and model-to-code transformations 16

17 Modelling Language UWE 17

18 Why UML? UML is a graphical language for specifying, constructing and documenting software artifacts UML is a de facto industry standard and an OMG standard UML includes notation diagram types Object Constraints Language (OCL) metamodel well-formedness rules UML does not provide a development process How expressive is UML for the development of Web applications? UML does not include specific Web model elements UML defines extension mechanisms UML profiles 18

19 Pure UML for Modelling Web Applications Use of UML (without extension) whenever possible Example: UML deployment diagram used to document physical nodes distribution of web components : Web Browser Client ShoppingCart physical node UML dependency «use» : Application Server DB ShoppingCart «use» : Web Server JSP ShoppingCart UML component «realize» «realize» design class ShoppingCart «trace» «presentation class» ShoppingCart 19

20 UML Profiles UML extension is called a UML profile if based on extension mechanisms provided by UML stereotypes for new metaclasses domain specific: EJB «bean», «session», «entity», defined in the UML: «metaclass», «trace», «file», tagged values for metaattributes OCL constraints for invariants, pre- and postconditions UML profile = light weight extension eases tool support Heavy weight extension uses other diagram types not defined in the UML uses different notation 20

21 Analysis and Design Models in UWE Analysis models of a Web application functional requirements are specified by use case model workflows data (content) requirements are specified by domain model Design models of a Web application information aspects content model hypertext structure and navigation functionality navigation model layout schema presentation model functionality process model adaptivity model 21

22 Example: Simple Music Portal Inspired by offers albums for downloading contains information about albums, songs, singer, composer, and publisher this information is available for free registered users can search albums and download them for downloading they need to have enough credit on their prepaid account accounts are rechargeable provides a guided tour through the Web application 22

23 Modelling Requirements with UWE Use cases are the most appropriate/used technique for modelling requirements Graphical visualization by UML use case diagram to model required functionality distinguishes between navigation and process use cases Modeling constructs «navigation» «web process» (in ArgoUWE normal use case) 23

24 Modelling Business Processes Business process can be modelled as workflows Workflows are visualized by UML activity diagram set of actions control flow elements as decisions, merges, forks, joins, etc. object flows including relevant objects (instance of classes) Example: Download Album RE Element UML Metaclass Icon? 24

25 Content Modelling Representation with pure UML is sufficient no additional semantics required UML class diagram UML class diagrams used at analysis-level and design-level domain concepts represented by classes units of information users of the system (user model) relationship between concepts represented by associations whole/part relationship shown by aggregations and composition hierarchical dependencies depicted by generalization/specialization (inheritance) multiplicities 25

26 Navigation Modelling Goals to represent nodes and links of the hypertext structure to design navigation paths to avoid disorientation and cognitive overload Result: navigation model represented by a UML class diagram uses specific modelling elements for Web concepts Modelling elements basic elements access primitives Other methodologies own notation for hypertext elements different diagram types: UML state diagram or own diagram type 26

27 Basic Navigation Elements Navigation elements used to model the core hypertext structure navigation class specifies a hypertext node visited by a user through browsing (related to a content class) navigation link specifies a hyperlink used to access the target navigation object from the source navigation object Stereotypes for basic navigation elements «navigation class» «navigation link» 27

28 Navigation Model: Hypertext Structure 28

29 Access Primitives Additional elements for the selection of one target navigation element from a set of instances of a navigation element index guidedtour query Shortcuts for more complex constructs (if represented in UML without extension) 29

30 Access Primitive: Index Index specifies direct access to all instances of the target by providing a list of all elements from which one can be selected to continue navigating in the Web application contains an arbitrary number of index items each index item is an object which has a name and owns a link to an instance of a navigation class UML stereotype: «index» 30

31 Access Primitives: Query and Guided Tour Query represents the possibility to search for instances of the target node where instances are selected based on the property FilterExpression UML stereotype: «query» GuidedTour provides sequential access to instances of the target node order in the sequential access is given by a property SortExpression different options may be specified circular access to the instances access is triggered by a user-interaction UML stereotype: «guidedtour» 31

32 Navigation Model Elements: Menu and External Links Menus are used to structure the outgoing links from a node associated to a navigation class by composition consists of a set of links to heterogeneous elements, such as indexes, guided tours, queries, instances instances of navigation classes or other menus UML stereotype: «menu» External Links are links pointing to nodes that do not belong to the Web application UML stereotype:«external link» 32

33 Navigation Model: Hypertext Structure 33

34 Modelling Navigation Systematic enhancement of the navigation structure model by indexes for all navigation links which have multiplicity > 1 at the directed association end menus for all navigation classes with more than 1 outgoing association Design decision to include guided tour instead of index queries tagged value home to indicate starting point of the application (node without ingoing links) tagged value landmark to indicate that a node is reachable from everywhere (all other nodes include a link to the landmark node) Construction of views of the navigation space partial views if the number of nodes is large different views for different users different views for different environments 34

35 Modelling Processes in UWE Navigation model of a Web application represents the static information structure accessible to a user of the system specifies browsing (navigation) functionality Process model represent the dynamic aspects of a Web application specifies functionality, such as transactions and complex workflows of activities Process modelling consists of definition of process classes (for non-navigation use cases) integration of these process classes in the navigation model description of the behaviour through a process flow represented as UML activity diagram 35

36 Process Elements Process class represents the process through which the user will be guided in the Web application for complex process that require more than a single class, an additional process model is built UML stereotype: «process class» Process link is used to model the association between a «navigation class» and a «process class» indicates entry points and exit points of processes within the navigation structure UML stereotype: «process link» 36

37 Navigation Model: Including Web Processes 37

38 Modelling the Process Flow The behavior of a Web process is defined by the process flow model represented by an UML activity diagram result of the refinement of the activity diagram drawn for requirements specification no need of use of stereotypes Process flow consists of flow of execution represented by activity nodes connected by activity edges control nodes that provide flow-of-control constructs, such as decisions and synchronization object nodes that represent data flowing along object flow edges or pins associated to the actions semantic of activities is based on control and data token flows, similar to Petri nets 38

39 Requirements: UML Activity Diagrams for Login 39

40 Process Model: UML Activity Diagram: Login 40

41 Modelling Presentation Representation of layout for the underlying navigation and process models is an abstract presentation concrete presentation requires specification of additional physical properties of the layout colour position Presentation classes represent Web pages or part of pages composition of user interface elements hierarchical composition of presentation elements UML class diagram for the structure of the presentation using UML container notation UML interaction diagram (sequence diagrams) used for modelling behaviour of presentation classes (classical UML) Alternative: development of a prototype 41

42 Presentation Model Elements «presentation class» groups a set of user interface elements representing a logic unit of presentation «page» is a presentation class that contains all elements that will be presented together to the user as response to one request user interface elements «anchor» «text» «image» «form» «anchored collection» 42

43 Modelling Adaptivity UWE uses a technique called Aspect-Oriented Modelling (AOM) for the construction of models to specify adaptive Web applications What are adaptive Web applications? What is AOM? 43

44 Adaptive Web Applications Adaptation for user properties: knowledge, tasks, preferences, interests context properties: location (place and time) & platform (HW, SW, network) Update of a user model / context model observation of the user behaviour or environment by the system Techniques for adaptation content adaptation inserting and removing text/multimedia features content variants navigation adaptation link ordering link annotation link hiding link generation presentation adaptation modality adaptation (audio or text) language selection layout variants (resizing of fonts, images, changing colours) 44

45 Aspect-Oriented Modelling (AOM) in a Nutshell AOM identifies and defines join point: well-defined place in a model / program where additional features can be attached pointcut: set of join points advices: feature to add/execute at a join point AOM specifies a weaving process (composition) of core functional modules (elements of a pointcut) aspects (defined by an advice) 45

46 Modelling Adaptivity Specification of pointcuts (including conditions) and advices Weaving the result into the web application based on current state of the user model information provided by link traversal Example: links only visible for registered users to download album recharge 46

47 Outline Web Engineering Methodologies Modelling of Web Applications UWE Approach Modelling Language CASE Tool Metamodel Development Process 47

48 CASE Tool ArgoUWE 48

49 Tool Support for UWE Goal support of UWE notation for design of Web applications separation of concerns (navigation, process, presentation, ) implementation of UWE development process allowing for semi-automatic model generation support of model validation checking models consistency code generation 49

50 ArgoUWE Extension of ArgoUML advantages open source UML CASE tool design critics for checking model consistency XMI output as basis for code generation disadvantages still based on UML 1.x inherited usability problems Implemented as a plugin for ArgoUML 0.16 extends the NSUML library with the UWE metamodel developed within the scope of a couple of diploma theses Main difficulty lack of ArgoUML evolution towards UML 2.0 Currently we are developing plugins for other CASE tools 50

51 Model Validation Consistency checks for model correctness ArgoUML offers cognitive design critics background thread warning mechanism for model inconsistencies wizard for design improvement uses critics pane for the critiques displays wizards comments in detail pane ArgoUWE extends the design critics features inherits from ArgoUML (e.g. name collision) is extended by wellformedness constraints of UWE (e.g. relationship between use case and process model) 51

52 Modelling with UWE Stereotypes Argo 52

53 Modelling Navigation with ArgoUWE 53

54 Metamodel for UWE 54

55 UWE Metamodel UWE Metamodel is defined as a conservative extension of UML 2.0 model elements of the UML metamodel are not modified all new elements are related by inheritance to at least one model element of the UML use of OCL to specify additional semantics of the new elements UWE extension Core Adaptivity 55

56 UWE Metamodel Characteristics UWE metamodel reflects separation of concerns in the structure of Core shows cross-cutting aspect of adaptation UWE metamodel is profileable mapping to a UML profile is possible UWE metamodel is MOF compatible uses XML metadata interchange format (XMI) 56

57 UWE Metamodel: Requirements Model Model elements grouped in packages WebRE Behaviour WebRE Structure Defines relationships among elements inheritance (e.g. search defined as an extended browse) associations (e.g. a browse requires a source and a target node) Defines invariants (OCL constraints) context Search inv: self.parameters -> forall (p p.location -> includes (self.source)) (see stereotypes used in the example) 57

58 UWE Profile: Requirements UML stereotype for each concept of the requirements package of the UWE metamodel Extends relationship UML metaclass Advantages no need to specify complete semantic of new modelling elements use of all UML CASE tools supporting UML profiles for modelling Web applications 58

59 UWE Metamodel: Navigation (see stereotypes used in the example) 59

60 UWE Profile: Navigation UML stereotypes for Web specific concepts used for the specification of the hypertext structure Extends relationships UML metaclasses 60

61 Meta-associations of the Metamodel Representation using associations derived from the UML metamodel association {subsets target} for association between NavigationLink and NavigationClass association {subsets ownedproperty} for composition between NavigationClass and NavigationProperty Representation stereotyping UML metaclass Dependency aggregation between NavigationClass and Menu association between AccessPrimitive and NavigationProperty, leading to the following constraint context Dependency inv: self.stereotypes-> includes("primitive2property") implies (self.client.stereotypes-> includes("accessprimitive") and self.supplier.stereotypes-> includes("navigationproperty")) where client and supplier denote the ends of the Dependency relationship 61

62 UWE Metamodel: Presentation (see stereotypes used in the example) 62

63 UWE Profile: Presentation 63

64 UML Extension for Aspects Lightweight extension of UML An Aspect stereotype as an extension of UML metaclass Package composing Pointcut package that references to all model elements on which Advice package is applied Pointcut and Advice packages may contain OCL constraints detailing conditions for the application of the aspect effects of the aspect 64

65 UWE Metamodel: Adaptivity NavigationAnnotation stereotype to model link adaptation related to Link navigation annotations are attached to navigation links 65

66 UWE Development Process 66

67 Evolution based on the Unified Process (UP) development is supported by a set of workflows based on concepts of role, activity, artifact, tool, incorporation of elements of agile process since 2005 based on the model-driven development (MDD) principles Model-Driven Architecture (MDA) standard of the OMG 67

68 Model-Driven Development Approaches MDD approaches based on models and model transformations MDD approaches require languages for specification of models description of metamodels definition of model transformations MDD in the Web Domain several methods propose modelling OOHDM, OO-H, UWE, WebML, Hera, separation of concerns similar Web specific modeling elements different notations some methods define metamodels for modelling languages OO-H, UWE, W2000, WebML, few approaches address model transformations OOWS, UWE, WebSA, Models MDD Meta models Model transformations 68

69 MDD Principles: Models and Metamodels Models computational independent model (CIM) platform independent model (PIM) platform specific model (PSM) «metamodel» MOF M3 Metamodels definition of concepts and relationships among concepts compatibility with the OMG metamodelling architecture MOF meta-metamodel XMI interchange format tool compatibility (theoretically) static semantics given by OCL constraints (well-formedness rules) basis for tool support «metamodel» UML «metamodel» UWE «instantiate» «instantiate» UWE Application Model M2 M1 69

70 MDD Principles: Model Transformations Model transformations CIMPIM, PIMPIM, PIMPSM Model transformation languages general programming languages Java graph transformation languages Attribute Graph Grammar (AGG) query/view/transformation languages QVT ATL OMG standards MOF, UML, OCL, XMI, QVT CIM 70

71 Model Transformations Translate between source and target models instances of same or different metamodel Translation performed by a transformation engine Transformation engine executes rules Transformation rules are defined at metamodel level applied at model level Set of rules seen as a model with a metamodel Metamodels are based on a metametamodel Model transformation pattern (J. Bézivin, 2004) 71

72 Model Transformations Pattern Model transformation pattern (J. Bézivin, 2004) 72

73 Model-Driven Process of UWE Graphical representation of the process process as UML activity diagram model transformations as stereotyped UML actions models as UML object flow states implicit initial and final state Types of models in UWE requirements model (CIM) functional models (PIM) content model navigation model architecture models (PIM) integration models (PIM) models for J2EE,.Struts (PSM) 73

74 UWE Development Process Requirements to Functional Models 74

75 Music Portal Example (excerpt) Requirements model UML use case diagrams UML activity diagrams Web requirements engineering profile (WebRE) WebUser, navigation, WebProcess browse, search, content, node, 75

76 Transformation Requirements to Content (1) Source: requirements model (UML activity diagram) objects input for Web actions objects result of Web actions Target: content model classes of the content model Profile-based transformation 76

77 Transformation Requirements to Content (2) Model transformation language Query View Transformation (QVT) textual notation Transformation rule transformation ReqContent2ContentClass (webre:webre,uwe:uwe) { top relation R1 { checkonly domain webre c: Content {name = n}; enforce domain uwe cc: Class {name = n}; } top relation R2 {cn: String; checkonly domain webre p: Property {namespace=c: Content{}, name = cn}; enforce domain uwe p1: Property {namespace = cc: Class{}; name = cn } when {R1 (c,cc);} } } 77

78 Transformation Requirements to Navigation Elements (1) Source: requirements model (UML activity diagram) search action content and node object flow states Target: navigation model query and index class navigation class navigation link Pattern-based transformation 78

79 Transformation Requirements to Navigation Elements (2) Model transformation language QVT graphical notation Transformation rule 79

80 Construction of Functional Models UWE metamodel and UWE profile navigation elements: navigation class, navigation link, index, presentation elements: presentation class, anchor, image, Case tool ArgoUWE extension of ArgoUML provides stereotypes supports (semi-)automatic execution of transformations 80

81 Transformation Content to Navigation (1) Content2Navigation generates navigation classes from content classes adds a navigation links based on associations of the content model Marking elements identification of classes of the content model that are relevant for the navigation view task performed by designer Semi-automatic transformation 81

82 Transformation Content to Navigation (2) Implementation Java within CASE tool ArgoUWE ATL (ATLAS Transformation Language) ATL transformation rule rule Class2NavigationClass { from c : UWE!Class ( c.oclistypeof( UWE!Class ) ) to nc : UWE!NavigationClass ( name <- c.name, ownedattribute <- c.ownedattribute->select( p p.association.oclisundefined() ) ) } 82

83 Refinement of Navigation Model Improvement based on patterns index for associations with multiplicity greater than one at the directed association end menu for navigation classes with multiple outgoing associations Implementation Java in ArgoUWE ATL 83

84 Integration with Architecture Models Web Software Architecture (WebSA) approach* domain specific language for modelling architectural views of Web applications subsystem model configuration model integration model UML profile of architectural modelling elements Web component Web port Web connector server page, etc. QVT-like transformations Web Functional Viewpoint Functional Models (OO-H,UWE) Analysis Platform Independent Design Implementation T2 Merge T1 Integration Model T2' Web Architectural Viewpoint Subsystem Model Models to Model Transformation T2' Configuration Model J2EE models.net models Other models *Santiago Melía, University of Alicante, PhD Thesis (2007) 84

85 Generating Big Picture Model Generation of an integrated functional model ( big picture ) transformation target UML state machine for integration of content, navigation and process models graph transformation language tool: Attributed Graph Grammar System (AGG) validation of correctness by model checking 85

86 Big Picture: Transformation of Navigation Model capture navigation nodes as states (with parameters for data) Example: music portal: transformation for navigation node song 86

87 Big Picture: Transformation of Business Process 87

88 Process Model: UML Activity Diagram: Login (#40) 88

89 Big Picture: Example Transformation of Business Process 89

90 Model Validation Model transformations for Web applications based on UWE and its UML-based metamodel Graph transformations into integrating UML state machine Model validation by model checking using Hugo/RT ( Automation of transformation process using Attribute Graph Grammars (AGG) 90

91 Generation of Web Applications UWE uses a transformational approach to generate data model and presentation layer based on content, navigation structure and presentation models transformation rules from UWE content model to Java beans transformation rules from UWE presentation model to Java Server Pages (JSPs) UWE uses an interpretational approach using a virtual machine to interpret the process model (activity diagrams) configuration data for the virtual machine is generated from process and navigation model Implemented so far using the Spring framework transformations defined in ATLAS Transformation Language (ATL) 91

92 Features of Model Transformations MDD Type CIM to PIM, PIM to PIM, PIM to PSM Complexity simple, merge Use of marks types, stereotypes, patterns, explicit marks Execution type automatic, semi-automatic, manual Implementation technique general programming language graph transformation model transformation language 92

93 Classification of UWE Model Transformations Characteristics Transformation Type Complexity Marks Execution Techniques Req2Content CIM to PIM simple WebRE profile automatic QVT Req2Architecture CIM to PIM simple - manual - Content2Navigation PIM to PIM simple navigation relevance semiautomatic Java, ATL NavigationRefinement PIM to PIM simple UWE profile & patterns automatic Java Req2Navigation CIM to PIM merge WebRE profile automatic QVT Navigation2Presentation PIM to PIM simple UWE profile automatic Java, ATL StyleAdjustment PIM to PIM merge style guide automatic Java Functional2BigPicture PIM to PIM merge patterns automatic graph transformations Functional&Architecture2 Integration PIM to PIM merge UWE & WebSA profile automatic QVT-P Integration2J2EE PIM to PSM merge patterns automatic QVT-P, ATL 93

94 UWE: Current State and Future Work Focus on systematisation and automatic generation Following the model-driven approach Use of UML notation for graphical representation Ongoing work Main focus on case-tool support Final objective to cover all relevant aspects in the development life- cycle of Web applications 94

95 Summary Web engineering methodologies since 1993 many methods data-oriented, hypertext-oriented, object-oriented, software-oriented WebML, WSDM, OOHDM, UWE, WAE, Modelling of Web applications four dimensions by modelling Web applications UWE is a modelling language UML Profile for modelling navigation, presentation, process, adaptivity, UWE has a metamodel conservative and profileable UWE defines a model-driven development process based on model transformations focus on the use of model transformation languages such as ATL and QVT 95

96 Literature Web Engineering: Systematic Development of Web Applications Gerti Kappel, Birgid Pröll, Siegfried Reich, Werner Retschitzegger (eds.) dpunkt-verlag (German version), 2003, John Wiley & Sons (English version), Web Engineering: Modelling and Implementing Web Applications G. Rossi, O. Pastor, D. Schwabe, L. Olsina (eds.), Springer (2007), to appear. Metamodelling the Requirements of Web Systems María José Escalona and Nora Koch 2nd International Conference on Web Information Systems and Technologies (WebIST'06), Setubal, Portugal, pages INSTICC, Modelling Adaptivity with Aspects Hubert Baumeister, Alexander Knapp, Nora Koch and Gefei Zhang 5th International Conference on Web Engineering (ICWE 2005), Sydney, Australia, LNCS 3579, , Modelling Business Processes in Web Applications with ArgoUWE Alexander Knapp, Nora Koch and Hanns-Martin Hassler 7th International Conference on the Unified Modeling Language (UML 2004), Lisboa, Portugal, LNCS 3273, 69-83, Model-Driven Generation of Web Applications in UWE Andreas Kraus, Alexander Knapp and Nora Koch 3rd International Workshop on Model-Driven Web Engineering (MDWE 2006), Como, Italy, to appear 96

97 Muchas gracias! Nora Koch nora.koch (at) pst.ifi.lmu.de uwe (at) pst.ifi.lmu.de 97

Model-Driven Web Engineering

Model-Driven Web Engineering Model-Driven Web Engineering Nora Koch Web Engineering Group Ludwig-Maximilian-Universität München (LMU) Germany Madrid, 28.05.2008 Web Engineering Group of LMU Current staff Alexander Knapp and Nora Koch

More information

UML-based Web Engineering

UML-based Web Engineering UML-based Web Engineering Nora Koch Web Engineering Group Ludwig-Maximilians-Universität München (LMU) Cirquent GmbH Germany Seville, 27.04.2010 Web Engineering Software Engineering for the Web domain

More information

UML-BASED WEB ENGINEERING An Approach Based on Standards

UML-BASED WEB ENGINEERING An Approach Based on Standards Chapter 7 UML-BASED WEB ENGINEERING An Approach Based on Standards Nora Koch, 1,2 Alexander Knapp, 1 Gefei Zhang, 1 Hubert Baumeister 3 1 Institut für Informatik, Ludwig-Maximilians-Universität München,

More information

Transformation Techniques in the Model-Driven Development Process of UWE

Transformation Techniques in the Model-Driven Development Process of UWE Transformation Techniques in the Model-Driven Development Process of UWE Nora Koch Ludwig-Maximilians-Universität Oettingenstr. 67, 80538 München and FAST GmbH Arabellastr. 17, 81925 München Germany kochn@pst.ifi.lmu.de

More information

Web Engineering. Winter Term 2006/07 Prof. Dr. Gregor Engels. Chapter II: Modeling of Web Applications Part 2

Web Engineering. Winter Term 2006/07 Prof. Dr. Gregor Engels. Chapter II: Modeling of Web Applications Part 2 Web Engineering Winter Term 2006/07 Prof. Dr. Gregor Engels Chapter II: Modeling of Web Applications Part 2 Acknowledgements Dr. Nora Koch, LMU München http://www.pst.informatik.uni-muenchen.de/~kochn/index.html

More information

Requirements Models as First Class Entities in Model-Driven Web Engineering

Requirements Models as First Class Entities in Model-Driven Web Engineering Requirements Models as First Class Entities in Model-Driven Web Engineering Nora Koch 1,2 and Sergej Kozuruba 1 1 Ludwig-Maximilians-Universität München, Germany 2 NTT DATA Abstract. The relevance of a

More information

ITBIS393 Web-Based Information Systems

ITBIS393 Web-Based Information Systems ITBIS393 Web-Based Information Systems Chapter 3: Modeling Web Applications Wieland Schwinger, Nora Koch Dr. Federico M. Facca Prof. Dr. Gregor Engels Prepared by Fadia Hijazie Modeling Web Applications

More information

Developing Web-Based Applications Using Model Driven Architecture and Domain Specific Languages

Developing Web-Based Applications Using Model Driven Architecture and Domain Specific Languages Proceedings of the 8 th International Conference on Applied Informatics Eger, Hungary, January 27 30, 2010. Vol. 2. pp. 287 293. Developing Web-Based Applications Using Model Driven Architecture and Domain

More information

UWE Metamodel and Profile User Guide and Reference

UWE Metamodel and Profile User Guide and Reference UML-BASED WEB ENGINEERING UWE Metamodel and Profile User Guide and Reference Version 1.9 Technical Report 1101 Programming and Software Engineering Unit (PST) Institute for Informatics Ludwig-Maximilians-Universität

More information

Ingegneria 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 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 information

Model Driven Engineering (MDE)

Model Driven Engineering (MDE) Model Driven Engineering (MDE) Yngve Lamo 1 1 Faculty of Engineering, Bergen University College, Norway 26 April 2011 Ålesund Outline Background Software Engineering History, SE Model Driven Engineering

More information

Bachelor of Engineering, IT Thesis

Bachelor of Engineering, IT Thesis Technical University of Denmark Bachelor of Engineering, IT Thesis models Jakob Frydensberg Study no.: s020629 May 2008 Internal Report Number: IMM-B.Eng-2008-5 Supervisor: Hubert Baumeister, IMM, DTU

More information

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM):

Computation 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

A UML-based Methodology for Hypermedia Design

A UML-based Methodology for Hypermedia Design A UML-based Methodology for Hypermedia Design Rolf Hennicker, Nora Koch,2 Institute of Computer Science Ludwig-Maximilians University of Munich Oettingenstr. 67, D-80538 München, Germany {hennicke,kochn}@informatik.uni-muenchen.de

More information

Methods for Complex Web Hypermedia Application: The Design Processes

Methods for Complex Web Hypermedia Application: The Design Processes Methods for Complex Web Hypermedia Application: The Design Processes Ahmad Syafiq Ahmad Appandi, Azrul Hazri Jantan Faculty of Computer Science & Information Technology 43400 UPM, Serdang, Selangor. ahmadsyafiq.upm@gmail.com,

More information

Modeling Web Business Processes with OO-H and UWE

Modeling Web Business Processes with OO-H and UWE Object-Oriented Hypermedia Method UML-BASED WEB ENGINEERING Modeling Web Business Processes with OO-H and UWE Nora Koch Andreas Kraus Cristina Cachero Santiago Meliá Ludwig-Maximilians-Universität München,

More information

A Metamodel for UWE 1

A Metamodel for UWE 1 A Metamodel for UWE Andreas Kraus, Nora Koch Institut für Informatik Ludwig-Maximilians-Universität München Oettingenstr. 67, D-80538 München {krausa,kochn}@informatik.uni-muenchen.de Introduction The

More information

Design concepts for data-intensive applications

Design concepts for data-intensive applications 6 th International Conference on Applied Informatics Eger, Hungary, January 27 31, 2004. Design concepts for data-intensive applications Attila Adamkó Department of Information Technology, Institute of

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

An Analysis of Model-Driven Web Engineering Methodologies.

An Analysis of Model-Driven Web Engineering Methodologies. Provided by the author(s) and NUI Galway in accordance with publisher policies. Please cite the published version when available. Title An Analysis of Model-Driven Web Engineering Methodologies Author(s)

More information

Hypermedia Modelling Using UML

Hypermedia Modelling Using UML Hypermedia Modelling Using UML Peter Dolog dolog@dcs.elf.stuba.sk Mária Bieliková bielik@elf.stuba.sk Abstract: This paper discusses an approach to hypermedia modelling using the Unified Modelling Language

More information

Introduction to MDE and Model Transformation

Introduction to MDE and Model Transformation Vlad Acretoaie Department of Applied Mathematics and Computer Science Technical University of Denmark rvac@dtu.dk DTU Course 02291 System Integration Vlad Acretoaie Department of Applied Mathematics and

More information

A Model-Driven Approach for the Fast Prototyping of Web Applications

A Model-Driven Approach for the Fast Prototyping of Web Applications A Model-Driven Approach for the Fast Prototyping of Web Applications Mario Luca Bernardi Department of Engineering University of Sannio, Italy mlbernar@unisannio.it Giuseppe Antonio Di Lucca Department

More information

Overview of lectures today and Wednesday

Overview of lectures today and Wednesday Model-driven development (MDA), Software Oriented Architecture (SOA) and semantic web (exemplified by WSMO) Draft of presentation John Krogstie Professor, IDI, NTNU Senior Researcher, SINTEF ICT 1 Overview

More information

Transformational Design with

Transformational Design with Fakultät Informatik, Institut für Software- und Multimediatechnik, Lehrstuhl für Softwaretechnologie Transformational Design with Model-Driven Architecture () Prof. Dr. U. Aßmann Technische Universität

More information

Sequence Diagram Generation with Model Transformation Technology

Sequence Diagram Generation with Model Transformation Technology , March 12-14, 2014, Hong Kong Sequence Diagram Generation with Model Transformation Technology Photchana Sawprakhon, Yachai Limpiyakorn Abstract Creating Sequence diagrams with UML tools can be incomplete,

More information

Methodologies for Web Information System Design

Methodologies for Web Information System Design Methodologies for Web Information System Design Peter Barna, Flavius Frasincar, Geert-Jan Houben, and Richard Vdovjak Technische Universiteit Eindhoven PO Box 53, NL-5600 MB Eindhoven, The Netherlands

More information

Dresden OCL2 in MOFLON

Dresden OCL2 in MOFLON Dresden OCL2 in MOFLON 10 Jahre Dresden-OCL Workshop Felix Klar Felix.Klar@es.tu-darmstadt.de ES Real-Time Systems Lab Prof. Dr. rer. nat. Andy Schürr Dept. of Electrical Engineering and Information Technology

More information

MDD with OMG Standards MOF, OCL, QVT & Graph Transformations

MDD with OMG Standards MOF, OCL, QVT & Graph Transformations 1 MDD with OMG Standards MOF, OCL, QVT & Graph Transformations Andy Schürr Darmstadt University of Technology andy. schuerr@es.tu-darmstadt.de 20th Feb. 2007, Trento Outline of Presentation 2 Languages

More information

INF5120 and INF9120 Modelbased System development

INF5120 and INF9120 Modelbased System development INF5120 and INF9120 Modelbased System development Lecture 5: 13.02.2016 Arne-Jørgen Berre arneb@ifi.uio.no and Arne.J.Berre@sintef.no Telecom and Informatics 1 Course parts (16 lectures) - 2017 January

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

Improving Adaptive Hypermedia by Adding Semantics

Improving Adaptive Hypermedia by Adding Semantics Improving Adaptive Hypermedia by Adding Semantics Anton ANDREJKO Slovak University of Technology Faculty of Informatics and Information Technologies Ilkovičova 3, 842 16 Bratislava, Slovak republic andrejko@fiit.stuba.sk

More information

A Study on Modeling Standards for Web Applications and Significance of AspectWebML

A Study on Modeling Standards for Web Applications and Significance of AspectWebML A Study on Modeling Standards for Web and Significance of AspectWebML Ravani Shakuntla #1, Dr. Amita Sharma *2, Dr. S.S. Sarangdevot #3 #1 Asstant Professor,Computer Science& Engineering department, Pacific

More information

Enhancement of UWE Navigation Model: Homepage Development Case Study

Enhancement of UWE Navigation Model: Homepage Development Case Study , pp.197-212 http://dx.doi.org/10.14257/ijseia.2014.8.4.21 Enhancement of UWE Navigation Model: Homepage Development Case Study Karzan Wakil 1, Amirhossein Safi 2 and Dayang. N. A. Jawawi 2 1 College of

More information

A UML 2 Profile for Variability Models and their Dependency to Business Processes

A UML 2 Profile for Variability Models and their Dependency to Business Processes A UML 2 Profile for Variability Models and their Dependency to Business Processes Birgit Korherr and Beate List Women s Postgraduate College for Internet Technologies Institute of Software Technology and

More information

A Survey of Requirements Specification in Model-Driven Development of Web Applications

A Survey of Requirements Specification in Model-Driven Development of Web Applications A Survey of Requirements Specification in Model-Driven Development of Web Applications PEDRO VALDERAS and VICENTE PELECHANO, Universitat Politècnica de València Model-driven development has become more

More information

Towards UML Profile for Human Machine Interface Applications of In-vehicle Infotainment Platforms

Towards UML Profile for Human Machine Interface Applications of In-vehicle Infotainment Platforms Towards UML Profile for Human Machine Interface Applications of In-vehicle Infotainment Platforms Hemant Sharma, Dr. Roger Kuvedu-Libla, and Dr. A. K. Ramani Abstract UML Profiles provided automotive software

More information

Business Process Modelling

Business Process Modelling CS565 - Business Process & Workflow Management Systems Business Process Modelling CS 565 - Lecture 2 20/2/17 1 Business Process Lifecycle Enactment: Operation Monitoring Maintenance Evaluation: Process

More information

THE MODELING OF E-SUPERVISED (E-SUV) FOR DISTANCE LEARNING CENTRE

THE MODELING OF E-SUPERVISED (E-SUV) FOR DISTANCE LEARNING CENTRE THE MODELING OF E-SUPERVISED (E-SUV) FOR DISTANCE LEARNING CENTRE Salehuddin Shuib H.S.Hanizan Faculty of Information Technology Universiti Tun Abdul Razak Alor Setar, Kedah 05000 e-mail: {salehuddin@

More information

Model Driven Architecture - The Vision

Model Driven Architecture - The Vision Model Driven Architecture - The Vision Marko Fabiunke Fraunhofer Institut für Rechnerarchitektur und Softwaretechnik marko.fabiunke@first.fraunhofer.de The Fraunhofer FIRST Institut Your partner We support

More information

Modelling Browsing Semantics in Hypertexts Using UML

Modelling Browsing Semantics in Hypertexts Using UML Modelling Browsing Semantics in Hypertexts Using UML Peter Dolog dolog@dcs.elf.stuba.sk Mária Bieliková * bielik@elf.stuba.sk Abstract: Navigation is one of the basic characteristics of a hypertext. This

More information

SCENARIO-BASED REQUIREMENTS MODELLING

SCENARIO-BASED REQUIREMENTS MODELLING SCENARIO-BASED REQUIREMENTS MODELLING A PROGRESS REPORT SUBMITTED TO THE UNIVERSITY OF MANCHESTER IN PARTIAL FULLFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE IN THE FUCALTY OF ENGINEERING

More information

Adding Usability to Web Engineering Models and Tools

Adding Usability to Web Engineering Models and Tools Adding Usability to Web Engineering Models and Tools Richard Atterer 1 and Albrecht Schmidt 2 1 Media Informatics Group Ludwig-Maximilians-University Munich, Germany richard.atterer@ifi.lmu.de 2 Embedded

More information

MDSE PRINCIPLES. Chapter #2

MDSE PRINCIPLES. Chapter #2 Chapter #2 MDSE PRINCIPLES Teaching material for the book Model-Driven Software Engineering in Practice by Morgan & Claypool, USA, 2012. www.mdse-book.com MDSE Principles Contents Concepts Approaches Adoption

More information

INSTITUT FÜR INFORMATIK DER LUDWIG-MAXIMILIANS-UNIVERSITÄT MÜNCHEN

INSTITUT FÜR INFORMATIK DER LUDWIG-MAXIMILIANS-UNIVERSITÄT MÜNCHEN INSTITUT FÜR INFORMATIK DER LUDWIG-MAXIMILIANS-UNIVERSITÄT MÜNCHEN Diplomarbeit MagicDraw-Plugin zur Modellierung und Generierung von Web-Anwendungen Petar Blagoev blagoev@cip.ifi.lmu.de Aufgabensteller:

More information

A Model Driven Approach based on Interaction Flow Modeling Language to Generate Rich Internet Applications

A Model Driven Approach based on Interaction Flow Modeling Language to Generate Rich Internet Applications International Journal of Electrical and Computer Engineering (IJECE) Vol. 6, No. 6, December 2016, pp. 3073~3079 ISSN: 2088-8708, DOI: 10.11591/ijece.v6i6.10541 3073 A Model Driven Approach based on Interaction

More information

Science of Computer Programming. Aspect-oriented model-driven skeleton code generation: A graph-based transformation approach

Science of Computer Programming. Aspect-oriented model-driven skeleton code generation: A graph-based transformation approach Science of Computer Programming 75 (2010) 689 725 Contents lists available at ScienceDirect Science of Computer Programming journal homepage: www.elsevier.com/locate/scico Aspect-oriented model-driven

More information

UNIT II. Syllabus. a. An Overview of the UML: Visualizing, Specifying, Constructing, Documenting

UNIT II. Syllabus. a. An Overview of the UML: Visualizing, Specifying, Constructing, Documenting UNIT II Syllabus Introduction to UML (08 Hrs, 16 Marks) a. An Overview of the UML: Visualizing, Specifying, Constructing, Documenting b. Background, UML Basics c. Introducing UML 2.0 A Conceptual Model

More information

Modelling in Enterprise Architecture. MSc Business Information Systems

Modelling in Enterprise Architecture. MSc Business Information Systems Modelling in Enterprise Architecture MSc Business Information Systems Models and Modelling Modelling Describing and Representing all relevant aspects of a domain in a defined language. Result of modelling

More information

Model Driven Engineering (MDE) and Diagrammatic Predicate Logic (DPL)

Model Driven Engineering (MDE) and Diagrammatic Predicate Logic (DPL) Model Driven Engineering (MDE) and Department of Computer Engineering Faculty of Engineering Bergen University College NORWAY 06.06.2008 Institute of Mathematics and Informatics, Vilnius, LITHUANIA Project

More information

!MDA$based*Teaching*and* Research*in*Software*Engineering*!

!MDA$based*Teaching*and* Research*in*Software*Engineering*! Plan!MDA$based*Teaching*and* Research*in*Software*Engineering*! Ludwik!Kuźniarz! Blekinge*Institute*of*Technology* School*of*Computing* Sweden*! Myself! Driven Architecture! MDA based Reaserch! Sample

More information

QoS-aware model-driven SOA using SoaML

QoS-aware model-driven SOA using SoaML QoS-aware model-driven SOA using SoaML Niels Schot A thesis submitted for the degree of MSc Computer Science University of Twente EEMCS - TRESE: Software Engineering Group Examination committee: Luís Ferreira

More information

Softwaretechnik. Lecture 19: Model Driven Engineering. Peter Thiemann. University of Freiburg, Germany

Softwaretechnik. Lecture 19: Model Driven Engineering. Peter Thiemann. University of Freiburg, Germany Softwaretechnik Lecture 19: Model Driven Engineering Peter Thiemann University of Freiburg, Germany 23.07.2012 Peter Thiemann (Univ. Freiburg) Softwaretechnik 23.07.2012 1 / 50 Introduction MDA Introduction

More information

Model driven Engineering & Model driven Architecture

Model driven Engineering & Model driven Architecture Model driven Engineering & Model driven Architecture Prof. Dr. Mark van den Brand Software Engineering and Technology Faculteit Wiskunde en Informatica Technische Universiteit Eindhoven Model driven software

More information

Second 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 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 information

MockupDD: Facilitating Agile Support for Model-Driven Web Engineering

MockupDD: Facilitating Agile Support for Model-Driven Web Engineering MockupDD: Facilitating Agile Support for Model-Driven Web Engineering José Matías Rivero 1,2 and Gustavo Rossi 1,2 1 LIFIA, Facultad de Informática, UNLP, La Plata, Argentina {mrivero,gustavo}@lifia.info.unlp.edu.ar

More information

An Abstract Interaction Model for a MDA Software Production Method

An Abstract Interaction Model for a MDA Software Production Method An Abstract Interaction Model for a MDA Software Production Method Francisco Valverde 1, Ignacio Panach 1, Oscar Pastor 1 1 Department of Information Systems and Computation Technical University of Valencia

More information

Unified Modeling Language (UML)

Unified 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 information

Enabling Component-Based Model Transformations with QVT. Li Dan

Enabling Component-Based Model Transformations with QVT. Li Dan Enabling Component-Based Model Transformations with QVT by Li Dan Doctor of Philosophy in Software Engineering 2013 Faculty of Science and Technology University of Macau Enabling Component-Based Model

More information

BLU AGE 2009 Edition Agile Model Transformation

BLU AGE 2009 Edition Agile Model Transformation BLU AGE 2009 Edition Agile Model Transformation Model Driven Modernization for Legacy Systems 1 2009 NETFECTIVE TECHNOLOGY -ne peut être copiésans BLU AGE Agile Model Transformation Agenda Model transformation

More information

Object Management Group Model Driven Architecture (MDA) MDA Guide rev. 2.0 OMG Document ormsc/

Object Management Group Model Driven Architecture (MDA) MDA Guide rev. 2.0 OMG Document ormsc/ Executive Summary Object Management Group Model Driven Architecture (MDA) MDA Guide rev. 2.0 OMG Document ormsc/2014-06-01 This guide describes the Model Driven Architecture (MDA) approach as defined by

More information

Towards Agile Model-Driven Web Engineering * 1

Towards Agile Model-Driven Web Engineering * 1 Towards Agile Model-Driven Web Engineering * 1 José Matías Rivero 1,2, Julián Grigera 1, Gustavo Rossi 1,2, Esteban Robles Luna 1,3, Nora Koch 4,5 1 LIFIA, Facultad de Informática, UNLP, La Plata, Argentina

More information

Chapter 7. Modular Refactoring. 7.1 Introduction to Modular Refactoring

Chapter 7. Modular Refactoring. 7.1 Introduction to Modular Refactoring Chapter 7 Modular Refactoring I n this chapter, the role of Unified Modeling Language (UML) diagrams and Object Constraint Language (OCL) expressions in modular refactoring have been explained. It has

More information

Enterprise Architect Training Courses

Enterprise Architect Training Courses On-site training from as little as 135 per delegate per day! Enterprise Architect Training Courses Tassc trainers are expert practitioners in Enterprise Architect with over 10 years experience in object

More information

From Interface Mockups to Web Application Models

From Interface Mockups to Web Application Models From Interface Mockups to Web Application Models José Matías Rivero 1,2, Gustavo Rossi 1,2, Julián Grigera 1, Esteban Robles Luna 1,3, Antonio Navarro 4 1 LIFIA, Facultad de Informática, UNLP, La Plata,

More information

COSC 3351 Software Design. An Introduction to UML (I)

COSC 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 information

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview CHAPTER 1 Topic: UML Overview After studying this Chapter, students should be able to: Describe the goals of UML. Analyze the History of UML. Evaluate the use of UML in an area of interest. CHAPTER 1:

More information

Topic : Object Oriented Design Principles

Topic : Object Oriented Design Principles Topic : Object Oriented Design Principles Software Engineering Faculty of Computing Universiti Teknologi Malaysia Objectives Describe the differences between requirements activities and design activities

More information

Object-Oriented Design

Object-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 information

Modellierung operationaler Aspekte von Systemarchitekturen. Master Thesis presentation. October 2005 March Mirko Bleyh - Medieninformatik

Modellierung operationaler Aspekte von Systemarchitekturen. Master Thesis presentation. October 2005 March Mirko Bleyh - Medieninformatik Modellierung operationaler Aspekte von Systemarchitekturen Master Thesis presentation October 2005 March 2006 Agenda Goals Model-Driven Software Development Pro-active Infrastructure (PAI) Operational

More information

New Features Summary PowerDesigner 15.2

New Features Summary PowerDesigner 15.2 New Features Summary PowerDesigner 15.2 Windows DOCUMENT ID: DC10077-01-1520-01 LAST REVISED: February 2010 Copyright 2010 by Sybase, Inc. All rights reserved. This publication pertains to Sybase software

More information

OO Analysis and Design with UML 2 and UP

OO Analysis and Design with UML 2 and UP OO Analysis and Design with UML 2 and UP Dr. Jim Arlow, Zuhlke Engineering Limited Clear View Training 2008 v2.5 1 UML principles Clear View Training 2008 v2.5 2 1.2 What is UML? Unified Modelling Language

More information

AUTOMATED BEHAVIOUR REFINEMENT USING INTERACTION PATTERNS

AUTOMATED BEHAVIOUR REFINEMENT USING INTERACTION PATTERNS MASTER THESIS AUTOMATED BEHAVIOUR REFINEMENT USING INTERACTION PATTERNS C.J.H. Weeïnk FACULTY OF ELECTRICAL ENGINEERING, MATHEMATICS AND COMPUTER SCIENCE SOFTWARE ENGINEERING EXAMINATION COMMITTEE dr.

More information

An Introduction to Model Driven Engineering (MDE) Bahman Zamani, Ph.D. bahmanzamani.com

An Introduction to Model Driven Engineering (MDE) Bahman Zamani, Ph.D. bahmanzamani.com An Introduction to Model Driven Engineering (MDE) Bahman Zamani, Ph.D. bahmanzamani.com Department of Software Systems Engineering University of Isfahan Fall 2013 Overview Model & Modeling UML & UML Profile

More information

Softwaretechnik Model Driven Architecture Meta Modeling

Softwaretechnik Model Driven Architecture Meta Modeling Softwaretechnik Model Driven Architecture Meta Modeling Prof. Dr. Peter Thiemann Universität Freiburg 22.06.2009 PT (Univ. Freiburg) Softwaretechnik Model Driven Architecture Meta Modeling 22.06.2009 1

More information

Index. Add Diagram > Sequence Diagram command,

Index. Add Diagram > Sequence Diagram command, Quatrani.book Page 183 Monday, May 8, 2006 11:56 AM Index A abstraction, 3 actions completing before processing, 54 55 data flowing through, 53 passing control between, 51 performing, 155 157 as round-cornered

More information

Knowledge Discovery: How to Reverse-Engineer Legacy Systems

Knowledge Discovery: How to Reverse-Engineer Legacy Systems Knowledge Discovery: How to Reverse-Engineer Legacy Systems Hugo Bruneliere, Frédéric Madiot INRIA & MIA-Software 1 Context of this work Knowledge Discovery: How To Reverse-Engineer Legacy Sytems The present

More information

Raising the Level of Development: Models, Architectures, Programs

Raising the Level of Development: Models, Architectures, Programs IBM Software Group Raising the Level of Development: Models, Architectures, Programs Dr. James Rumbaugh IBM Distinguished Engineer Why Is Software Difficult? Business domain and computer have different

More information

A Multidimensional Approach for Modelling and Supporting Adaptive Hypermedia Systems

A Multidimensional Approach for Modelling and Supporting Adaptive Hypermedia Systems A Multidimensional Approach for Modelling and Supporting Adaptive Hypermedia Systems Mario Cannataro, Alfredo Cuzzocrea, Andrea Pugliese ISI-CNR, Via P. Bucci, 41/c 87036 Rende, Italy {cannataro, apugliese}@si.deis.unical.it,

More information

A Model Driven Approach to Design Web Services in a Web Engineering Method 1

A Model Driven Approach to Design Web Services in a Web Engineering Method 1 A Model Driven Approach to Design Web Services in a Web Engineering Method 1 Marta Ruiz, Pedro Valderas, Victoria Torres, Vicente Pelechano 1 Departamento de Sistemas Informáticos y Computación Universidad

More information

Christian Doppler Laboratory

Christian Doppler Laboratory Christian Doppler Laboratory Software Engineering Integration For Flexible Automation Systems AutomationML Models (in EMF and EA) for Modelers and Software Developers Emanuel Mätzler Institute of Software

More information

On Using UML Profiles in ATL Transformations

On Using UML Profiles in ATL Transformations On Using UML Profiles in ATL Transformations Manuel Wimmer and Martina Seidl Business Informatics Group, Vienna University of Technology, Austria {wimmer seidl}@big.tuwien.ac.at Abstract. For defining

More information

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University Metamodeling Janos ISIS, Vanderbilt University janos.sztipanovits@vanderbilt.edusztipanovits@vanderbilt edu Content Overview of Metamodeling Abstract Syntax Metamodeling Concepts Metamodeling languages

More information

UWE AND OOWS: A COMPARATIVE APPROACH OF NAVIGATION MODELS FOR WEB ENGINEERING

UWE AND OOWS: A COMPARATIVE APPROACH OF NAVIGATION MODELS FOR WEB ENGINEERING UWE AND OOWS: A COMPARATIVE APPROACH OF NAVIGATION MODELS FOR WEB ENGINEERING Antônio D. Viniski, Fabrício L. Grzebielucka, Adriano Ferrasa Universidade Estadual de Ponta Grossa (UEPG) Ponta Grossa, PR

More information

Transforming UML Collaborating Statecharts for Verification and Simulation

Transforming UML Collaborating Statecharts for Verification and Simulation Transforming UML Collaborating Statecharts for Verification and Simulation Patrick O. Bobbie, Yiming Ji, and Lusheng Liang School of Computing and Software Engineering Southern Polytechnic State University

More information

Current trends and frameworks for modeldriven approaches to software development

Current trends and frameworks for modeldriven approaches to software development 1 Current trends and frameworks for modeldriven approaches to software development Trial Lecture Odd Petter Nord Slyngstad Trondheim, 1 st April 2011 Anita Gupta 28/05/2009 2 Overview What is a model-driven

More information

Orthographic Software Modeling A Practical Approach to View Based Development

Orthographic Software Modeling A Practical Approach to View Based Development Orthographic Software Modeling A Practical Approach to View Based Development Colin Atkinson University of Mannheim Germany MSI 2009 7 th October 2009 Oldenburg Outline Modern software engineering paradigms

More information

An Introduction to MDE

An Introduction to MDE An Introduction to MDE Alfonso Pierantonio Dipartimento di Informatica Università degli Studi dell Aquila alfonso@di.univaq.it. Outline 2 2» Introduction» What is a Model?» Model Driven Engineering Metamodeling

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

innoq Deutschland GmbH innoq Schweiz GmbH D Ratingen CH-6330 Cham Tel Tel

innoq Deutschland GmbH innoq Schweiz GmbH D Ratingen CH-6330 Cham Tel Tel innoq Deutschland GmbH innoq Schweiz GmbH D-40880 Ratingen CH-6330 Cham Tel +49 2102 77 1620 Tel +41 41 743 01 11 www.innoq.com Stefan Tilkov, stefan.tilkov@innoq.com 1 Goals Introduce MDE, MDA, MDD, MDSD,...

More information

model-driven development Separation of Concerns in Model-Driven Development

model-driven development Separation of Concerns in Model-Driven Development focus model-driven development Separation of Concerns in Model-Driven Development Vinay Kulkarni and Sreedhar Reddy, Tata Research Development and Design Centre To facilitate traceability, reuse, and evolution,

More information

Object-Oriented Design

Object-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 information

Model Driven Development of Component Centric Applications

Model Driven Development of Component Centric Applications Model Driven Development of Component Centric Applications Andreas Heberle (entory AG), Rainer Neumann (PTV AG) Abstract. The development of applications has to be as efficient as possible. The Model Driven

More information

OCL for the Specification of Model Transformation Contracts

OCL for the Specification of Model Transformation Contracts OCL for the Specification of Model Transformation Contracts Eric Cariou, Raphaël Marvie, Lionel Seinturier, and Laurence Duchien LIFL - Université des Sciences et Technologies de Lille UMR CNRS 8022 -

More information

25 Years of Model-Driven Web Engineering. What we achieved, What is missing

25 Years of Model-Driven Web Engineering. What we achieved, What is missing 25 Years of Model-Driven Web Engineering. What we achieved, What is missing Gustavo Rossi 1, Matias Urbieta 1, Damiano Distante 2, Jose Matias Rivero 1, Sergio Firmenich 1 1 LIFIA, F. de Informática, UNLP

More information

Extensibility Interaction Flow Modeling Language Metamodels to Develop New Web Application Concerns

Extensibility Interaction Flow Modeling Language Metamodels to Develop New Web Application Concerns Kurdistan Journal of Applied Research (KJAR) Print-ISSN: 2411-7684 Electronic-ISSN: 2411-7706 kjar.spu.edu.iq Volume 2 Issue 3 August 2017 DOI: 10.24017/science.2017.3.23 Extensibility Interaction Flow

More information

Semantics-Based Integration of Embedded Systems Models

Semantics-Based Integration of Embedded Systems Models Semantics-Based Integration of Embedded Systems Models Project András Balogh, OptixWare Research & Development Ltd. n 100021 Outline Embedded systems overview Overview of the GENESYS-INDEXYS approach Current

More information

Prototyping Navigation in Web-Based Information Systems Using WebML

Prototyping Navigation in Web-Based Information Systems Using WebML Prototyping Navigation in Web-Based Information Systems Using WebML Jaroslav KURUC 1, Peter DOLOG 2 and Mária BIELIKOVÁ 1 1 Institute of Informatics and Software Engineering, Faculty of Informatics and

More information

Model Driven Development Unified Modeling Language (UML)

Model 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 information

Modeling Requirements

Modeling 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 information