Lecture 5:
Web Engineering
Web Project Management
Muhammad Umair Naru
Overview
Chapter 9: Kappel et al.
Software to Web Project Management
Challenges
Managing the Development Team
Managing the Development Process
Project Risks & Risk Management
Purpose
Project management: A systematic approach to
planning and guiding project processes from
beginning to end.
It is a human-centered activity.
Like requirements analysis, conflict resolution is
critical.
Many development teams are still “new” to the
Web
Short history, inexperienced in management
Experienced in traditional software only
Objectives & Tasks
De
ip Planning
ve
sh
lo
er
pm
ad
en
Le
t
Software
Project
Testing Implementation
Monitoring
Balancing Conflicting Goals
A change in one goal
Budget
incurs trade-offs with the
others.
Be sure all stakeholders
are aware of this
relationship! Software
Project
Time Quality
Traditional vs. Web
In Traditional Projects: • In Web Projects:
Quality product at lowest • Usable product in shortest
cost time
10-100 team members • 3-10 team members
12-18 month horizon • 3-6 month horizon
$ millions • $ thousands
Requirements-based; • Agile methods; prototypes
structured phases; • Component-based
document-driven methods; multimedia;
OO methods visual programming
Rigid processes • Ad-hoc processes
Complex; poor reusability • Standardized; high
Experienced, professional reusability
developers • Multimedia designers;
Web programmers;
marketers
General Challenges
Leadership
Poor/incomplete planning
Unique/legacy software systems
Highly technical leadership
Development
Individuality
Many alternative solutions
Rapid change
Monitoring
Development Challenges
Novelty – unknown & uninformed
audiences.
Dynamics – time pressures
Parallelism – subteams & communication
Continuity – development to transition
Juvenility – youth; less experience
Immaturity – inadequate tools
Product-Related Challenges
Web apps are “simple”
Aesthetics
Spontaneity
Ubiquity
Compatibility
Stability & Security
Scalability
Managing the Development Team
Success is largely determined by group
dynamics & how well they are managed
Communication among team members
Motivation & coordination by Project Manager
Identify & resolve conflicts ASAP
Concurrent engineering
Primary & backup
Documentation is everyone’s responsibility
The Web Project Team
Web Project Team
Management Functionality Data
Project Manager Software Engineer Domain Expert
Multimedia Designer Business Expert
The Roles of the Project Manager
Mediator
Motivator
Communicator
Translator
Trainer
Customer liaison
Requirements during development
Post-deployment?
10 Golden Rules
1. Promote the professional self-conception of each team
member and ethical behavior.
2. Stress the importance of different app knowledge
3. Solve conflicts quickly
4. Keep roles well-defined
5. Look for parallel developments & synergies
6. Spread the documentation task fairly
7. Promote & coordinate continuous use of tools
8. Translate costs & values
9. Keep the customer involved
10. Monitor project progress and objectives
Managing the Development Process
Tool-driven vs. document-driven
Requirements & test suites
Communication (Wikis)
Configuration management
Versioning
Short iteration cycles
No project is too small for it!
Measuring progress
System specification
The application itself
Project Risks
Risk: the probability of an activity to result in a
loss.
Most critical risks:
Personnel deficits
Unrealistic time and cost specs
Incompatible third-party components
Misunderstood properties
Poor user interface
Nielsen’s Top Risks
Unclear definition of objectives
Wrong target audience
Development-oriented page structure
Inconsistent design
Insufficient budget for maintenance
Content recycling & poor linking
Mixing Internet & intranet
Marketing research is seen as usability
research
Risk Management
How likely is a problem to occur, what will be
the impact, and what are the solutions?
Assessment: Identify, analyze, & prioritize
Control: Provision, monitor, mitigate
Groups are better at assessing and managing
risk than individuals.
Perform a cost-benefit analysis to justify risk
management activities.