WebE Framework
Chapter -2 (Pressman)
“Web engineering proposes an agile, yet
disciplined framework for building
industry-quality WebApps.”
What does Agility means
• An agile team is a active team able to
appropriately respond to changes.
• Changes in the software being built,
• changes to the team members,
• changes because of new technology,
• changes of all kinds that may have an impact on
the product they build
• or the project that creates the product.
What is a WebE Framework?
• ~ is the foundation for a complete Web engineering
process
• consist of a small number of framework activities
• applicable to all WebApp projects, regardless of
their size or complexity.
• In addition, the framework encompasses a set of
umbrella activities that are applicable across the
entire WebE process.
Generic WebE framework activities
• Communication
• Involves heavy interaction and collaboration with the
stakeholders
• encompasses requirements gathering and other related
activities.
• Planning
• Establishes an incremental plan for the WebE work
• Describes
• WebE actions that will occur
• technical tasks to be conducted
• risks that are likely
• Resource required
• the work products to be produced,
• work schedule.
Generic WebE framework activities
• Modeling
• the creation of models that assist the developer and the
customer to better understand WebApp requirements
and the design that will achieve those requirements.
• Construction
• the generation of HTML, XML, PHP, and similar code
• testing mechanism that is required to uncover errors in
the code.
• Deployment
• Delivers a WebApp increment to the customer who
valuates it and provides feedback based on the
evaluation.
Umbrella activities
• risk management,
• quality assurance,
• content management
Agility principles adapted by WebE Framework user
• highest priority is to satisfy the customer through
early and continuous delivery of valuable software.
• Welcome changing requirements, even late in
development.
• Deliver working software frequently, from a couple of
weeks to a couple of months, with a preference to
the shorter timescale.
• Business people and developers must work together
daily throughout the project.
followedbybyWebE
Agility principles adaped WebEFramework
Frameworks
user
• Build projects around motivated individuals. Give them
the environment and support they need, and trust
them to get the job done.
• The most efficient and effective method of conveying
information to and within a development team is face-
to-face conversation.
• Working software is the primary measure of progress.
• The sponsors, developers, and users should be able to
maintain a constant pace indefinitely.
Agility principles adaped by WebE Framework user
• Continuous attention to technical excellence and
good design enhances agility.
• Simplicity—the art of maximizing the amount of work
not done—is essential.
• The best architectures, requirements, and designs
emerge from self organizing teams.
• At regular intervals, the team reflects on how to
become more effective, then tunes and adjusts its
behavior accordingly.
Why Is WebE Process Agility So
Important?
• The Internet changed software development’s top
priority from what to when
• Reduced time-to-market has become the
competitive edge for successful companies
• reducing the development cycle is now one of
software engineering’s most important missions
WebE Methods within the Process Framework
• Communication methods
• Define the approach used to facilitate communication
between Web engineers and all other WebApp
stakeholders
• particularly important during requirements gathering
and whenever a WebApp increment is to be evaluated.
• Requirements analysis methods
for understanding
• the content to be delivered by a WebApp,
• the functions to be provided for the end user,
• and the modes of interaction that each class of user will
require.
WebE Methods within the Process Framework
• Design methods
• Encompass a series of design techniques that address
• WebApp content,
• application and information architecture,
• interface design, and
• navigation structure
• Construction methods
• Apply a broad set of languages, tools, and related
technology to the creation of WebApp content and
functionality.
• Testing methods
• wide array of testing techniques that address component-
level and architectural issues, navigation testing, usability
testing, security testing, and configuration testing.
Web Engineering Best Practices
1. Take the time to understand business needs and
product objectives, even if the details of the
WebApp are vague.
2. Describe how users will interact with the WebApp
using a scenario-based approach.
3. Develop a project plan, even if it’s very brief.
4. Spend some time modeling what it is that you’re
going to build.
Web Engineering Best Practices (Contd..)
5. Review the models for consistency and quality.
6. Use tools and technology that enable you to
construct the system
7.
with as many reusable components as possible.
8. Don’t reinvent when you can reuse.
9. Don’t rely on early users to debug the WebApp—
design comprehensive tests and execute them
before releasing the system.
From book
• Page 22