2.
3 Modeling Web
Application
Summary – Web Engineering
Requirements
Analysis
Maintenance Design
Testing Implementation
SWE 444: Internet & Web Application Development 2.2
Why Create Models?
Define an abstract view of a real-world entity
Finding & discovering objects/concepts in a domain
Assigning responsibilities to objects
Tool of thought
Reduce complexity
Document design decisions
Means of communication
SWE 444: Internet & Web Application Development 2.3
Web Modeling
Modeling static & dynamic aspects of
content, hypertext, and presentation.
We focus on object-oriented analysis &
design
Analysis: Finding & discovering objects/ concepts
in a domain
Design: Defining software objects & how they
interact to fulfill requirements.
Key skill: Assigning responsibilities to
objects
SWE 444: Internet & Web Application Development 2.4
Assigning Responsibilities
Responsibilities: are obligations or specific
behaviors related to its role.
What does an object do?
Doing something itself
Pass actions (messages) to other objects
Controlling & coordinating the activities in other objects
What does an object know?
Private, encapsulated data
Its related objects
Items it can derive or calculate
SWE 444: Internet & Web Application Development 2.5
Software Application Modeling
Levels
User interface
Application Logic
Phases
Structure Analysis Design Implementation
Behavior
Aspects
Levels – the “how” & “what” of an application
Aspects – objects, attributes, and relationships; function & processes
Phases – Development cycle
SWE 444: Internet & Web Application Development 2.6
Unified Modeling Language (UML)
“The Unified Modeling Language is a visual
language for specifying and documenting the
artifacts of systems.” [OMG03a]
Language of choice (and ISO standard) for
diagramming notation in OO development.
Structural – Class diagrams
Behavioral – Use Case diagrams, State machine
diagrams
SWE 444: Internet & Web Application Development 2.7
Web Application Modeling
Levels
Presentation
Hypertext
Customization
Content
Phases
Structure Analysis Design Implementation
Behavior
Aspects
Levels – Information, node/link structure, UI & page layout separate.
Aspects – Same as Software Applications
Phases – Approach depends upon type of application
Customization – Context information
SWE 444: Internet & Web Application Development 2.8
Requirements Modeling
Serves as a bridge between Requirements &
Design phases
Uses cases are the preferred modeling technique for
functional requirements, especially since they can be
represented graphically
By utilizing use cases, functional requirements
written as a collection of related success &
failure scenarios.
Scenario – a sequence of actions & interactions
between actors and a system.
SWE 444: Internet & Web Application Development 2.9
Use Cases
Defining valid use cases:
The Boss Test – measurable value
The EBP Test – one person, one place, one time
The Size Test – more than one step
Which is a valid use case?
Negotiate a Supplier Contract
Handle Returns
Log In
Move Piece on Game Board
SWE 444: Internet & Web Application Development 2.10
Use Cases
Critical components
1. Use Case Name – starts with a verb
2. Level – “user-goal” or “sub-function”
3. Primary Actor – the user whose goal is fulfilled
4. Stakeholders & Interests – Who cares, and what do they
want?
5. Preconditions – What must be true before use case
starts
6. Success Guarantee – defines the successful completion
of the use case for all stakeholders and ensures all
stakeholders’ expectations are met
These components help structure a use case clearly, making it useful for
stakeholders, developers, and testers
SWE 444: Internet & Web Application Development 2.11
Use Case – Example 1
Use Case 1: Create User
Scope: University or business network
Level: user goal
Primary Actor: user (system administrator)
Stakeholders and Interests:
System Administrator: Wants control over users’ access to system resources.
New User: Wants access to system resources for communication, business,
and research.
Organization: Wants security and controlled access of organization resources,
data; wants employees/students to have appropriate system access to fulfill the
goals of the organization.
Preconditions: User is identified, authenticated, and has opened
administration tool
Success Guarantee: New user account is created and saved. Username
and password grant the new user access to network.
SWE 444: Internet & Web Application Development 2.12
Use Case Guidelines
Use shorts sentences
Delete “noise” words
NO : “The System authenticates the user”
YES: “System authenticates user”
Avoid technology-specific terms (initially, at
least)
NO : “Cashier swipes Product ID across scanner.”
Tied to barcode scanners
YES: “Cashier enters Product ID.” Covers multiple
input methods
SWE 444: Internet & Web Application Development 2.13
Use Case Diagram for Library Management System
SWE 444: Internet & Web Application Development 2.14