WebApp Attributes

Support this Page: http://amzn.to/2kgnzrf
WebApp Attributes

1 Network intensive 2 High concurrency 3 Unpredictable user loads 4 Performance (fast delivery) 5 High availability 6 Data driven 7 Content sensitive 8 Continuous evolution 9 Immediacy 10 Security 11 Aesthetics

WebE Application
1 Informational (read only content provided with simple navigation)

2 Downloads (user downloads information from server)

3 Customizable (user customizes content to specific needs)

4 Interaction (community of users communicate using chat rooms, bulletin boards, or instant messaging)

5 User input (users complete on-line forms to communicate need)

6 Transaction-oriented (user
makes request fulfilled by
WebApp — places an order)
7 Service-oriented (application provides service to user, e.g., helps user determine mortgage payment)

8 Portal (application directs users to other web content or services)

9 Database access (user queries a large database and extracts information)

10 Data warehousing (user queries large collection of databases and extracts information)

WebApp Enabling Technologies

1 Component-based development (CORBA, COM/DCOM, JavaBeans)

2 Security (encryption,
firewalls, etc.)
3 Internet standards (HTML, XML, SGML)

WebApp Development Process Characteristics

1 WebApps are often delivered incrementally 2 Changes occur frequently 3 Timelines are short

WebApp Process
1 Customer communication

. Business analysis — defines business and organizational context for WebApp

. Formulation — involves stakeholders in gathering information needed to describe WebApp requirements

2 Planning

. Plan consisting of task definition and timeline for the WebApp increment being developed

3 Modeling

. Rapid analysis and design modeling tasks are adapted to WebApp

. Models define the requirements and define the WebApp needed to satisfy them

4 Construction

. WebE tools used to construct WebApp from model

. Constructed increment is subjected to rapid tests to ensure errors (i.e., content, architecture, interface, navigation)

5 Delivery and evaluation

. WebApp configured for its operational environment and delivered to end-users

. Users evaluate WebApp in their environment and provide feedback to the development team

. Increment is modified as required

WebE Analysis and Design Questions 1 How important is a Web site homepage? 2 What is the most effective page layout? 3 What media applications have the most impact?
4 How much work can we expect the user to do when searching for information?

5 How important are navigational aids in a complex WebApp?

6 How complex can input forms
be without irritating the user?
7 How important are search capabilities to users?

8 Will the WebApp be designed to be accessible to users with disabilities?

WebE Task Set
1 Customer Communication (Analysis/Formulation)

. Identify business stakeholders

. Formulate business context

. Define key business goals and objectives

. Define information and
applicative goals

. Identify the problem

. Gather requirements 2 WebE Planning

. Define development strategy

. Assess risks

. Define development schedule

. Establish metrics for content management and change control

3 WebE Modeling

. Refine content classes

. Identify content relationships

. Refine user tasks

. Identify computational

. Identify database

. Refine interface requirements

. Design the WebApp

. Design the interface

. Design the navigational scheme

. Design appropriate security and privacy mechanisms

. Review the design

4 WebE Construction

. Build or acquire the content and integrate it into WebAPP architecture

. Establish navigational

. Implement computational functions

. Address configuration issues

. Test all WebApp components

. Address configuration issues

. Test all WebApp components (content and function)

. Test navigation

. Test usability

. Test security and performance

. Test increment for different configurations

5 WebE Delivery and evaluation

. Deliver WebApp increment to representative end-users

. Evaluate end-user interaction

. Assess lessons-learned and consider all end-user feedback

. Make modifications to WebApp increment as required

Web Engineering Best Practices

. Take time to understand the business needs and product objectives, even if WebApp details are vague.

. Describe how users will interact with the WebApp using a scenario-based approach.

. Develop a brief project plan.

. Spend time modeling what you are going to build.

. Review models for consistency and quality.

. Use tools and technology that enable you to construct the system with as many reusable components as possible.

. Don’t rely on users to debug the WebApp, design comprehensive tests and execute them before releasing the system.

WebE Formulation Activities

1 Identify business need for WebApp
2 Work with stakeholders to describe WebApp objectives

3 Develop user profile(s)

4 Define major features and functions
5 Develop an integrated
statement of scope
6 Establish requirements gathering activity that leads to development of analysis model

Formulation Questions
1 What is the main motivation (business Need) for the WebApp?

2 What are the objectives
that the WebApp must
3 Who will use the WebApp?
4 What are the WebApp’s informational goals (user’s intention for using the content)?
5 What are the applicative
goals (ability to perform
tasks within the WebApp)
for the WebApp?
Requirements Gathering Goals

1 Identify content requirements
2 Identify functional requirements
3 Define interaction scenarios for each user class

Gathering Steps
1 Ask stakeholders to define user categories and develop descriptions for each

2 Communicate with stakeholders to define basic

WebApp requirements

3 Analyaze information gathered and use information to follow-up with stakeholders

4 Define use-cases that describe interaction scenarios for each user class

Defining User
1 What is the user’s overall objective when using the WebApp?

2 What is the user’s background and sophistication relative to the content and functionality of the WebApp?

3 What generic WebApp characteristics does the user like or dislike?

Stakeholder Communication Options

1 Traditional focus groups -trained moderator meets with group of representative end-users

2 Electronic focus groups — on-line version of traditional focus group

3 Iterative surveys — series of focused surveys sent to representative end-users (often web-based or e-mail)
4 Exploratory surveys — web-based survey tied to WebApps having user similar to the expected users of the proposed WebApp

5 Scenario-building — selected end-users asked to create informal use-cases that describe specific WebApp interactions

Analyzing Information Gathered

1 Create a stack of cards for the identified content objects, operations applied to objects, WebApp functions, and nonfunctional requirements
2 Shuffle the cards to
randomize their order
3 Give the shuffled cards to
representative users and ask them to arrange cards into groupings that represent how they would like content and functionality organized in the WebApp

4 WebE team examines the arrangements from several users and seeks to identify common groupings from the various arrangements

5 Labels are assigned to these groupings by the WebE team

6 Users are asked to sort cards again using these labels (the intent is to see the labels are communicating the location of information and functionality)
7 Process of labeling and
sorting continues until
consensus is obtained

Developing Use-Cases
1 Use-cases provide detail
necessary to create an
effective analysis model
2 Use-cases help the developer understand how users perceive their interaction with the WebApp

3 Use-cases help to
compartmentalize WebE
4 Use-cases provide important guidance to those testing the WebApp

WebE Analysis Types
1 Content analysis — content
provided by WebApp is
identified (data modeling
techniques may be helpful)
2 Interaction analysis — use-cases can be developed to describe user interaction with WebApp