Web application analysis focuses on three areas, the information or content to be presented, the end-user functions to be performed, and the WebApp behaviors presented in response to user actions. Web engineers, content specialists, and the stakeholders develop the analysis model. Analysis modeling allows the Web engineering team to create a concrete representation of WebApp requirements. WebApp analysis modeling focuses on four fundamental aspects of the problem (content, interaction, function, and configuration). The work product from WebE analysis modeling is a set of UML diagrams and descriptive text describing the results of the four analyses performed. Analysis work products are reviewed for correctness, completeness, and consistency.
Conditions Favoring Analysis Modeling
Large or complex WebApp to be built
Large number of stakeholders
Large number of Web engineers and other contributors
WebApp goals and objectives will affect business bottom line
WebApp success will have strong bearing on success of company
WebApp Requirements Analysis Tasks
Formulation
Identify goal and objectives for WebApp
Define categories of users and create user hierarchy
Requirements Gathering
Communication between WebE team and stakeholders intensifies
Content and functional requirements are listed
Interaction scenarios (use-cases) are developed
Analysis modeling
Content model
Interaction model
Functional model
Configuration model
Use-Case Package Evaluation Criteria
Comprehensible – all stakeholders understand purpose of functional package
Cohesive – all packages addresses closely related functions
Loosely coupled – high function or class collaboration inside package, minimal collaboration outside package
Hierarchically shallow – number of levels within use-case hierarchy minimized to all for easy navigation and easy understanding by end-users
WebE Analysis Types
Content analysis – content provided by WebApp is identified (data modeling techniques may be helpful)
Interaction analysis – use-cases can be developed to describe user interaction with WebApp
Functional analysis – usage scenarios used to define operations and functions applied to the WebApp content
Configuration analysis – WebApp environmental infrastructure is described in detail)
WebApp Analysis Model
Structural elements – identify classes and content objects required to create a WebApp that meets stakeholders needs
Dynamic elements – describe how structural elements interact with one another and how they interact with end-users
Content Model
Structural elements that represent WebApp content requirements
WebApp content objects – text, graphics, photographs, video images, audio
Includes all analysis classes - user visible entities created or manipulated as end-users interact with WebApp
Analysis classes defined by class diagrams showing attributes, operations, and class collaborations
Content model is derived from careful examination of WebApp use-cases
Entity-relationship diagrams may be part of the content model
Interaction Model
Use-cases – dominant element of WebApp interaction models
Sequence diagrams – provide representation of manner in which user actions collaborate with analysis classes
State diagrams – indicates information required to move users between states and represents behavioral information, can also depict potential navigation pathways
User interface prototype – layout of content presentation, interaction mechanisms, and overall aesthetic of user interface
Functional Model
User observable behavior delivered to end-users
Operations contained in analysis classes to implement class behaviors
UML activity diagrams used to model both
Configuration Model
May be a list of server-side and client-side attributes for the WebApp
UML deployment diagrams can be used for complex configuration architectures
Relationship-Navigation Analysis (RNA)
Stakeholder analysis – identifies user categories and establishes stakeholder hierarchy
Element analysis – identifies content objects and functional elements of interest to end-users
Relationship analysis – describes relationships among WebApp elements
Navigation analysis – examines how users access elements or groups of
elements
Evaluation analysis – considers pragmatic issues (e.g. cost/benefit) associated with implementing each relationship
Relationship Analysis
Purpose is to position element within the WebApp and establish element relationships
Web engineers should seek answers to questions about each element (content object or function)
It is possible to develop a relationship taxonomy and categorize each relationship using a fixed criteria
Navigation Analysis
Web engineers consider requirements that dictate how each type of user will navigate from one content object to another
Navigation mechanics are defined as part of design
Web engineers and stakeholders must determine navigation requirements
To learn more about the book this website supports, please visit its Information Center.