Web Engineering Modeling Web Applications
Web Engineering Modeling Web Applications
Modeling Web
Applications
User interface
Application Logic
Phases
Structure Analysis Design Implementation
Behavior
Aspects
Presentation
Hypertext
Customization
Content
Phases
Structure Analysis Design Implementation
Behavior
Aspects
objects.
Classes – blueprints for creating objects of a
particular type.
Discovering Objects in a Domain
The way we represent a domain’s software model should
resemble the physical model as closely as possible.
To find key classes of objects:
Reuse existing models, if they exist.
Make a category list
People, places, things
Transactions
Events
Class Name
Multiplicity
Attributes
Operations
Invariant
Source: Web
Engineering –
Kappel et al.
Class Diagram – Example 2
Online Library Application (PITTCat)
State Machine Diagrams
For dynamic Web applications, they depict
important states and events of objects, and how
objects behave in response to an event
(transitions)
Show the life-cycle of an object.
Used only for state-dependent objects
For pure UML modeling, can be very useful for
hypertext models (next section).
State Machine Diagram - Example
The life-cycle of a Paper object in the conference
paper submission system.
Source: Web
Engineering –
Kappel et al.
Presentation Modeling
Purpose: To model the look & feel of the
Web application at the page level.
The design should aim for simplicity and self-
explanation.
Describes presentation structure:
Composition & design of each page
Identify recurring elements (headers/footers)
Presentation Element
A unit’s (node’s) informational components
Text, images, buttons, fields
Composition Model - Example
Paper and Author Page Templates
Object Instance
Lifeline
Focus of Control
Synchronous
Message
Destroy Object
Source: Web
Engineering
– Kappel et
al.
Dynamic Adaptation - AOM
Ex. Adaptive presentation (add “rejected” annotation)
Source: Web
Engineering –
Kappel et al.
Dynamic Adaptation - AOM
Previous example weaved into hypertext model.