Model-Driven Web Engineering
UWE Approach
Nora Koch
Web Engineering Group
Ludwig-Maximilian-Universitt Mnchen (LMU)
Germany
Madrid, 28.05.2008
Web Engineering Group of LMU
Current staff
Alexander Knapp and Nora Koch
Gefei Zhang (PhD student)
Christian Kroi and Marianne Busch (students)
Martin Wirsing (head of department)
Projects
UWE
MAEWA
SENSORIA
Cooperations
Universities of Alicante, Extremadura, Mlaga, Sevilla (ES), Milano (IT),
Viena & Linz (AT), Lingby (DK), LaPlata (AR)
Industry: FAST/Cirquent, S.Co LifeScience
Other activities
ICWE conferences since 2003
MDWE workshops since 2005
MDWEnet initiative since 2006
Madrid 2008 Nora Koch
Web Engineering
Software Engineering for the Web domain
Concept introduced by San Murugesan in 1998
Definition
Web engineering is the application of a systematic and quantifiable approach to costeffective requirements analysis, design, implementation, testing, operation, and
maintenance of high-quality Web software.
Web engineering is also the scientific discipline concerned with the study of these
approaches.
Gerti Kappel, Birgit Prll, Siegfried Reich, Werner Retschitzegger
Web Engineering (2006)
Established as own discipline
Model-Driven Web Engineering relevant topic as many Web engineering
approaches follow a model-driven development approach
Madrid 2008 Nora Koch
Outline
Web Software and Model-Driven Development
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Outlook
Madrid 2008 Nora Koch
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Web Software
Web information system (WIS)
software system based on client/server technology provides information through a user
interface (Web browser). Pages belong to a particular domain name or subdomain on
the World Wide Web
Web site, homepage, Web portal
Web application
software system that provides Web specific resources such as content and services
through a Web browser
Web service1
software system designed to support interoperable machine to machine interaction
over a network. Web services are frequently just application programming interfaces
(API) that can be accessed over a network, such as the Internet, and executed on a
remote system hosting the requested services
1W3C,
Madrid 2008 Nora Koch
www.w3.org
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
complexity
Categories of WIS and Web Applications
semantic web
ubiquitous
collaborative
workflow-based
portal-oriented
transactional
interactive
document
based
Madrid 2008 Nora Koch
Gerti Kappel, Birgit Prll, Siegfried Reich,
Werner Retschitzegger: Web Engineering, (2006)
time
6
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Web Specifics in Engineering
Hypermedia paradigm
nodes & links
text & multimedia
Omnipresent due to the nature of the Web
global and permanent availability
comfortable and unified access
distributed information / services
Dynamic development
incremental number of Web pages
continuous improvement of existing Web applications (content, links, layout)
offer of new services
adaptation required by new Web technologies
Management aspects
multidisciplinary development team
inhomogeneous and immature technical infrastructure
short product lifecycles
short development cycles
Specific engineering methods
for the Web domain
Madrid 2008 Nora Koch
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Model-Driven Development
MDD approaches based on
models, metamodels and model transformations
MDD approaches require languages for
specification of models
UML, BPMN,
description of metamodels
UML, MOF, OCL,
definition of model transformations
MDD
Java
computational independent model (CIM)
platform independent model (PIM)
platform specific model (PSM)
Madrid 2008 Nora Koch
Models
Model-Driven Architecture (MDA)
Meta models
ATL, QVT,
Model transformations
Graph transformations
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Model Transformations
Goal is automatic translation between source and target models
Translation performed by a transformation
engine that executes transformation rules
Set of rules
seen as a model
based on a transformation
metamodel
Metamodels are based on a
metametamodel
MDA model transformations
CIM2PIM
PIM2PIM
PIM2PSM
Model transformation pattern (J. Bzivin, 2004)
Madrid 2008 Nora Koch
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Web Engineering Methods
HDM / HDM-lite
Hera
NDT
MIDAS
Hypertext Design Model
Navigational Development Technique
Hypertext Modeling Method (HM3)
Service-Oriented Development Method (SOD-M)
OO-H
OOHDM
OOWS
Object-Oriented Hypermedia Method
Object-Oriented Hypermedia Design Method
Object-Oriented Web Solution
RMM
UWE
W2000
Relationship Management Methodology
UML-based Web Engineering
WAE / WAE2
WebML
WebSA
WSDM
Web Application Extension
Web Modeling Language
Web Software Architecture
Web Site Design Method
based on
ER Entity Relationship Model
OMT Object Modeling Technique
UML Unified Modeling Language
Madrid 2008 Nora Koch
10
Model-Driven Development in the Web Domain
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Several methods propose building models
Hera, MIDAS, OOHDM, OO-H, UWE, WebML,
separation of concerns
content
navigation
presentation
business processes
adaptation,
similar Web specific modeling elements
different notations
Some methods define metamodels for modelling languages
MIDAS, OO-H, UWE, W2000, WebML,
Few approaches address model transformations
MIDAS, OOWS, UWE, WebSA,
Goal of almost all
Platform specific models in a late development stage
Madrid 2008 Nora Koch
11
UWE in a Nutshell
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Main characteristic is the use of UML for all models
pure UML whenever possible
UML extension for Web specific features: UML profile
Use of OMG standards, such as UML, MDA, MOF, OCL, XMI,
Focuses on systematisation and automatic generation
UWE comprises
a modelling language for the graphical representation of models of Web applications
a metamodel for UWE modelling elements
a development process
tools supporting semi-automatic generation
MagicUWE & ArgoUWE editors for the design
set of ATL transformations
model-to-model and model-to-code transformations
set of plugins integrated in eclipse environment
Madrid 2008 Nora Koch
12
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Dimensions of Web Modelling
levels
presentation
hypertext
adaptivity
content
structure
behaviour
requirements
analysis
phases
design
implementation
aspects
Modelling process
information-driven ("content first")
presentation-driven ("layout first")
functionality-driven (business processes first)
Source: Kappel et al. Web Engineering,
d-punkt (2003)
Madrid 2008 Nora Koch
13
Why UML?
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
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
Madrid 2008 Nora Koch
14
UML Extensions
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Light weight extension
called a UML profile
based on extension mechanisms provided by UML
defines 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
CASE tool support by UML tools
Heavy weight extension
different notation
other diagram types not defined in the UML
need of proprietary CASE tool
Madrid 2008 Nora Koch
15
Analysis and Design Models in UWE
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Analysis models of a Web application
functional requirements are specified by
uses cases
workflows
data (content) requirements are specified by
domain models
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
Madrid 2008 Nora Koch
16
Example: Simple Music Portal
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Inspired by www.mp3.com
offers albums for downloading
contains information about albums, songs and artists
this information is available for free
registered users can download them
for downloading they need to have enough credit on their prepaid account
accounts are rechargeable
Madrid 2008 Nora Koch
17
Modelling Requirements with UWE
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Graphical visualization by UML use
case diagram
to model required functionality
distinguishes between navigation and
process use cases
Web specific model elements
(not yet implemented in MagicDraw)
navigation use cases for browsing
tasks
browse use cases
view use cases
search use cases
web process use cases for other
tasks
other use cases
Madrid 2008 Nora Koch
18
Content Modelling
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Representation of domain information
persistent data
Modelling technique
UML class diagram
plain UML
no additional
semantics required
Madrid 2008 Nora Koch
19
User Model
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Representation of session specific information
allows for customization
Represented as UML class diagram
normal UML classes
Visit object for each session
visitClass
Madrid 2008 Nora Koch
20
Navigation Modelling
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Goals
to represent nodes and links of the hypertext structure
to design navigation paths
to avoid disorientation and cognitive overload
Navigation model
represented by a UML class diagram
uses specific modelling elements for Web concepts
Basic elements 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
Madrid 2008 Nora Koch
21
Access Primitives
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Systematic enhancement of the navigation structure model by
index for all navigation links which have multiplicity > 1 at the directed association end
menu for all navigation classes with more than 1 outgoing association
Design decision to include
guidedTour instead of index
query for selection of instances of a navigation class
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)
Shortcuts for more complex constructs (if represented in UML without extension)
Madrid 2008 Nora Koch
22
Navigation Model Elements: Menu
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Menus are used to structure the outgoing links from a node
usually associated to a navigation class by composition
consists of a set of links to heterogeneous elements, such as indexes, guided
tours, queries, instances of navigation classes or other menus
UML stereotype: menu
Semantics of menu
Madrid 2008 Nora Koch
23
Navigation Model
(excerpt)
Madrid 2008 Nora Koch
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
24
Modelling Processes in UWE
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
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
Madrid 2008 Nora Koch
25
Process Elements
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
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
Madrid 2008 Nora Koch
26
Navigation Model: Including Web Processes
Madrid 2008 Nora Koch
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
27
Modelling the Process Flow
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
The behavior of a Web process is defined by the process flow model
represented by UML activity diagram
result of the refinement of the activity diagram drawn for requirements specification
process class stereotype
optional use of nested activity diagrams
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
in UML2 the semantic of activities is based on control and data token flows, similar to
Petri nets
Madrid 2008 Nora Koch
28
Process Model: Login
Madrid 2008 Nora Koch
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
29
Modelling Presentation
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
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,
# of columns in table, type of menu,
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
Madrid 2008 Nora Koch
30
Presentation Model Elements
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Structural presentation elements
presentationClass/ presentationGroup:
container of user interface elements
representing a logic unit of presentation
associated to a navigation class or process
class
presentationPage: presentation class at
highest level
presentationAlternatives: container for
presentation classes which are not shown
simultaneously
User interface elements
anchor
button
text
image
textInput
selection
Madrid 2008 Nora Koch
31
Adaptive Web Applications
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Adaptation/Customization 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)
Madrid 2008 Nora Koch
32
Modelling Adaptivity
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
UWE uses a technique called AspectOriented Modelling (AOM)
Identification of
pointcut (including conditions)
advice
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
BuyAlbum
Madrid 2008 Nora Koch
33
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
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
so-called light-weighed extension of UML
metamodel
MOF
M3
instantiate
metamodel
UML
M2
metamodel
UWE
instantiate
UWE Application
Model
Madrid 2008 Nora Koch
M1
34
UWE Metamodel Characteristics
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
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)
Madrid 2008 Nora Koch
35
UWE Metamodel: Navigation
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
(see stereotypes used in the example)
Madrid 2008 Nora Koch
36
UWE Profile: Navigation
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
UML stereotypes for
Web specific
concepts used for the
specification of the
hypertext structure
Extends relationships
UML metaclasses
Madrid 2008 Nora Koch
37
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
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)
Madrid 2008 Nora Koch
38
UWE Development Process
Requirements to Functional Models
Madrid 2008 Nora Koch
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
39
Construction of Functional Models
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
UWE metamodel and UWE profile
navigation elements: navigation class, navigation link, index,
presentation elements: presentation class, anchor, image,
Case tool ArgoUWE/MagicUWE
extension of ArgoUML/MagicDraw
provides UWE Profile
supports (semi-)automatic execution of transformations
Madrid 2008 Nora Koch
40
Transformation Content to Navigation
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
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
Implementation
ArgoUWE/MagicUWE plugin implemented in
Java
ATL (ATLAS Transformation Language)
Madrid 2008 Nora Koch
41
Refinement of Navigation Model
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
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/MagicUWE
ATL
Madrid 2008 Nora Koch
42
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Integration with Architecture Models
Web Software Architecture (WebSA) approach*
domain specific language for modelling architectural views of Web applications
subsystem model
configuration model
Web Functional Viewpoint
Web Architectural Viewpoint
integration model
UML profile of architectural
modelling elements
Web component
Functional
Models
(OO-H,UWE)
Subsystem
Model
Analysis
Merge
Web port
T1
Web connector
server page,
etc.
Platform
Independent Design
model transformations
written in QVT-P
Configuration
Model
Models to Model
Transformation
Integration Model
T2
T2'
T2'
Implementation
J2EE models
.NET models
Other models
*Santiago Mela, University of Alicante, PhD Thesis (2007)
Madrid 2008 Nora Koch
43
Generating Big Picture Model
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
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
Madrid 2008 Nora Koch
44
Big Picture: Transformation of Navigation Model
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
Capture navigation nodes as states (with parameters for data)
Example: music portal: transformation for navigation node song
Madrid 2008 Nora Koch
45
Big Picture: Transformation of Business Process
Madrid 2008 Nora Koch
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
46
Model Validation
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
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
(http://www.pst.ifi.lmu.de/projekte/hugo)
Automation of transformation process using Attribute Graph Grammars (AGG)
Madrid 2008 Nora Koch
47
Generation of Web Applications
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
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)
Madrid 2008 Nora Koch
48
Model to Code Transformations
Madrid 2008 Nora Koch
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
49
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
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
Madrid 2008 Nora Koch
50
Tool Support for UWE
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
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
Madrid 2008 Nora Koch
51
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
ArgoUWE & MagicUWE
Extension of ArgoUML
Extension of MagicDraw
advantages
advantages
open source UML CASE tool
based on UML 2
easy extension of design critics feature
for checking model consistency
UML profile definition support
XMI output as basis for code
generation
disadvantages
still based on UML 1.x
XMI output
disadvantages
commercial tool
distribution of UML profile
inherited usability problems
Plugin for ArgoUML 0.16
Plugin for MagicDraw 15.0
Plugins for other CASE tools
Rational Software Modeller
interest in further extensions supporting UWE
notation and model transformations
Madrid 2008 Nora Koch
52
MagicUWE
Madrid 2008 Nora Koch
Web Software & MDD
UWE Approach
Modelling Language
Metamodel
Development Process
Tool Support
53
Development Environment
Eclipse based
PIM2PIM transformations (ATL)
PIM2PSM & PSM2Code (ATL)
written in ATL
Spring Framework
Java Server Pages
Madrid 2008 Nora Koch
54
Web Software & MDD
Tool Support
Outlook
Evolution of UWE
Current Status
Ongoing Work
Future Work
Modelling
Language
Metamodel
Development
Process
Tool support
UML profile for
content, navigation,
process, abstract
presentation,
adaptation
Conservative
extension of UML
metamodel (lightweight) and
profileable
Different languages
for model
transformations
CASE tool
ArgoUWE,
Eclipse plugins
Spring
JSP
Extension for
concrete
presentation,
requirements and
services
Evolving to include
modelling elements
for concrete
presentation and
services
Model
transformation
language ATL
Plugin for
MagicDraw
Eclipse plugins
JSF
Extension for
Web 2.0
Evolving to include
modelling elements
for Web 2.0
Model
transformation
language QVT (if
standardized)
Plugins for other
CASE tools
Editors for
development
environment
Madrid 2008 Nora Koch
55
Web Software & MDD
Tool Support
Outlook
Vision for Model-Driven Web Engineering
Underlying
Modelling Language
OMT
ER
UML
HDM
1993
1994
RMM
1995
1996
OOHDM
HDM-Lite
WSDM
1997
1998
WAE
1999
WebML
2000
2001
W2000
UWE
OOWS
Hera
WAE2
2002
2003
MIDAS
OO-H
2004
NDT
WebSA
2005
2006
2007
Madrid 2008 2008
Nora Koch
Data-oriented
Hypertext-oriented
Object-oriented
Software-oriented
56
Literature
Web Software & MDD
Tool Support
Outlook
Web Engineering: Modelling and Implementing Web Applications
G. Rossi, O. Pastor, D. Schwabe, L. Olsina (eds.), Springer (2008).
Web Engineering: Systematic Development of Web Applications
Gerti Kappel, Birgid Prll, Siegfried Reich, Werner Retschitzegger (eds.)
dpunkt-verlag (German version), 2003,
John Wiley & Sons (English version), 2006.
Model-Driven Generation of Web Applications in UWE
Andreas Kraus, Alexander Knapp and Nora Koch
3rd International Workshop on Model-Driven Web Engineering (MDWE 2007), Como, Italy
Metamodelling the Requirements of Web Systems
Mara Jos Escalona and Nora Koch
2nd International Conference on Web Information Systems and Technologies (WebIST'06), Setubal,
Portugal, pages 310-317. INSTICC, 2006.
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, 406416, 2005.
Madrid 2008 Nora Koch
57
Muchas gracias!
Nora Koch
www.pst.ifi.lmu.de/people/staff/koch
nora.koch (at) pst.ifi.lmu.de
UWE
www.pst.ifi.lmu.de/projekte/uwe
uwe (at) pst.ifi.lmu.de
MDWEnet
www.pst.ifi.lmu.de/projekte/mdwenet
mdwenet (at) pst.ifi.lmu.de
Madrid 2008 Nora Koch
58