0% found this document useful (0 votes)
75 views

WebEngineering - Lecture 01

This document provides an overview of key concepts in web engineering. It introduces the course and discusses why web applications are important. It defines web engineering as applying software engineering principles to build high-quality web-based applications. The document outlines the typical web engineering process, including formulation, planning, analysis, construction, testing, deployment and evaluation. It also discusses different types of web applications and attributes like network intensity. Best practices are presented like understanding business needs, modeling interactions, and comprehensive testing.

Uploaded by

Hira Mazhar
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
75 views

WebEngineering - Lecture 01

This document provides an overview of key concepts in web engineering. It introduces the course and discusses why web applications are important. It defines web engineering as applying software engineering principles to build high-quality web-based applications. The document outlines the typical web engineering process, including formulation, planning, analysis, construction, testing, deployment and evaluation. It also discusses different types of web applications and attributes like network intensity. Best practices are presented like understanding business needs, modeling interactions, and comprehensive testing.

Uploaded by

Hira Mazhar
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 26

Lecture 01

Introduction to Web Engineering


Web Engineering - IT 401

1
Outline

 Introduction to the Course


 Web Application Development
 What is Web Engineering?
 Web Applications
 Categories of Web Applications
 Web Application Attributes
 Web Engineering Process
 Web Engineering Process Model
 Web Engineering Best Practices
1. Introduction to the Course

This course aims:


 to introduce the methods and techniques used in Web-based application development
 to develop practical web applications
1.1 Why Web Applications?

 WWW has massive and permanent influence on our lives


– Economy, Industry, education, healthcare, entertainment
 Why?
– global and permanent
– Comfortable and uniform access
 users demand for data accessibility in real time
1.2 Web Application Development

Interpret user’s selection and send to appropriate server


Accepts and Processes the
request
Browser

Sends requested files to the browser (.aspx, .html, etc.)


1.3 Web Application Development

 Hyper-text Markup Language (HTML)


 Cascading Style-sheets (CSS)
 Client-side Scripting Language (JavaScript)
 Serve-side Scripting Language (PHP)
 Database Language (MySQL)
1.4 Books and Resources

 Web Enabled Commercial Application Development Using Html, Java Script by Ivan Bayross
 Beginning Active Server Pages 3.0 by David Buser (Author), John Kauffman (Author), Juan t. Llibre
(Author), Brian Francis (Author), Dave Sussman (Author), Chris Ullman (Author), Jon Duckett (Author)
 Sams Teach Yourself ASP.NET in 21 Days by Payne, Chris; Mitchell, Scott; 2nd Edition(2005).
 Professional ASP.NET 2.0 (Programmer to Programmer). Bill Evjen, Farhan Muhammad, Srinivasa
Sivakumar. Wrox Series (2005)
2. Web Engineering

 Software engineering is an engineering discipline that is concerned with all aspects of software production
 Software Engineering is the science and art of building significant software systems that are:
 on time
 on budget
 with acceptable performance
 with correct operation
2. Web Engineering (contd.)

 Concept
 Web Engineering draws heavily on the principles and management activities found in software engineering
processes
 Planning,
 Web Architecture and system design,
 Testing,
 Quality Assurance and performance evaluation, and
 Continual update and maintenance of the systems
 Web Engineering extends Software Engineering to Web applications
2. Web Engineering (contd.)

 Definition - Web Engineering is the study of the process, used to create high quality Web-based applications
 The application of systematic and quantifiable approaches to cost-effective analysis, design, implementation,
testing, operation, and maintenance of high-quality web applications
2. Web Applications

 A distributed application that accomplishes a certain business need based on the standard and technologies of
WWW and that consists of a set of Web-specific resources.
E.g. Websites, blogs, wikis, WhatsApp, etc…
2.1 Categories of Web Applications

 Document-centric web - online newspapers, online classifieds, online books


 Interactive web applications - online games
 Transactional web applications - online shopping (ordering goods and services), online banking, online
airline reservation
 Workflow-based web applications - online planning and scheduling, inventory management, status
monitoring, supply chain management
 Collaborative and social web applications - Distributed authoring systems, collaborative design tools
 Portal-oriented web applications
2.2 Web Application Attributes

• Network intensive – resides on internet, intranet or extranet


• Content-driven
• Continuous evolution
• Immediacy
• Security
• Aesthetics
2.2 Web Application Attributes

• Concurrency - A large number of users may access the application at one time; patterns of
usage among end-users will vary greatly.
• Unpredictable load - The number of users of the application may vary by orders of magnitude
from day to day.
• Performance - If a web application user must wait too long (for access, for server-side
processing, for client-side formatting and display), he or she may decide to go elsewhere.
• Availability - Although expectation of 100 percent availability is unreasonable, users of popular
web application often demand access on a “24/7/365” basis.
3. Web Engineering Process

• Must accommodate
• Incremental delivery
• Frequent changes
• Short timeline
• Therefore,
• An incremental process model should be used in virtually all situations
• An agile process model is appropriate in many situations
3. Web Engineering Process Model
3. Web Engineering Process Model:
3.1 Formulation/Communication

• Goals and objectives, scope for first increment


• What is the motivation for the Web Application?
• Why is the Web Application needed?
• Who will use the Web Application?
• Informational goals
• user's intention for using the content
• Applicative goals
• ability to perform tasks within the Web Application
3. Web Engineering Process Model:
3.2 Planning

• Estimate project cost


• Evaluate risks
• Define finely granulated schedule for first increment
• Define coarser schedule for subsequent increments
3. Web Engineering Process Model:
3.3 Analysis

• Requirements are analyzed with the help of analysis model


• Content analysis
• content (text, graphics and images, and video and audio data) provided by Web Application is
identified
• Interaction analysis
• the manner in which the user interacts with the WebApp
• Functional analysis
• the operations that will be applied to WebApp content and describes other processing functions that are independent
of content but necessary to the end user.
• Configuration analysis
• the environment and infrastructure in which the WebApp resides
3. Web Engineering Process Model:
3.4 Construction

• Aesthetic Design - colors, layout, text size, font and placement etc.
• Navigational Design - the navigational flow between content objects and for all the WebApp
functions.
3. Web Engineering Process Model:
3.5 Page Generation and Testing

• Content and technical designs are merged to produce executable web pages
• Testing exercises Web Application navigation, attempts to uncover errors/failures
in in the application’s required services/functionality, and checks for environment
incompatibilities
3. Web Engineering Process Model:
3.6 Deployment and Customer Evaluation

• Deployment: Configure it to suitable for terminal client operation environment.


• Each increment of the Web Application is reviewed
• Changes required by customer are applied to next increment
4. Web Engineering Best Practices

1. Take time to understand the business needs and product objectives, even if Web
Application details are vague.
2. Describe how users will interact with the Web Application using a scenario-
based approach.
3. Develop a brief project plan.
4. Spend time modeling what you are going to build.
4. Web Engineering Best Practices (contd.)

5. Review models for consistency and quality.


6. Use tools and technology that enable you to construct the system with as many
reusable components as possible.
7. Don’t rely on users to debug the Web Application , design comprehensive tests
and execute them before releasing the system.
5. Conclusion

• Why Web Applications.


• How does a typical web application work.
• Web Engineering maps Software Engineering principles
• Web Application, Categories, Attributes
• Web Engineering Process Model
• Web Engineering Best Practices
• Questions?

You might also like