KEMBAR78
Lecture_1_Introduction (Web Engineering).ppt
WEB ENGINEERING
1
Source: Web Engineering: A Practitioner’s Approach
by Roger S. Pressman and David Lowe
CONTENT
 What is web application ?
 Types of web application
 Technology of web application stack
 Web Engineering
 Application/Software Development Life Cycle (SDLC)
 SDLC Models
2
WEB APPLICATION
 The term Web application (WebApp) encompasses:
 Everything from a simple Web page that might
include just an informative site to a comprehensive
website.
 Included within this category are complete websites,
specialized functionality within websites, and
information-processing applications that reside on the
Internet or on an Intranet.
3
WEBAPP ATTRIBUTES
 Network intensiveness: Every WebApp resides on a network
and must serve the needs of a diverse community of clients
 Concurrency: A large number of users may access the WebApp
at one time.
 Unpredictable load: The number of users of the WebApp may
vary by orders of magnitude from day to day
 Performance: performance is critical issue in web based
applications. If a WebApp 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: Users of popular WebApps often demand access
on a “24/7/365” basis.
4
WEBAPP ATTRIBUTES
 Data driven: WebApps are commonly used to access information
that exists on databases (e.g., e-commerce).
 Content sensitive: The quality and aesthetic nature of content
remains an important determinant of the quality of a WebApp.
 Continuous evolution: Unlike conventional application software
that evolves over a series of planned releases, WebApps evolve
continuously.
 Security: In order to protect sensitive content and provide secure
modes of data transmission, strong security measures must be
implemented throughout the infrastructure.
 Aesthetics: An undeniable part of the appeal of a WebApp is its
look and feel. Aesthetics have as much to do with success as
technical design.
5
WEBAPP TYPES
 Static Web Application: one that contains read only content with
simple navigation and links. It directly displays the content without
fetching any data from server end. (Example is Wikipedia.)
 Dynamic: The one that interacts with the client and generates real-
time data based on user's request. (Example is google.)
 Interactive: A web application that provides a feeling of
community among visitors—a place where people can chat, ask and
answer questions, provide product testimonials, and the
like.(Example is Facebook(meta))
 Transaction-oriented: Where A transaction between the user and
the WebApp occurs.(Example is Flipkart)
 Service-oriented: Where web application provides services to the
users.(Example is olx)
6
TECHNOLOGY OF WEB APPLICATION STACK
7
WEB ENGINEERING
 Web Engineering is the process of systematic, disciplined
and quantifiable approaches to develop, operate, and
maintain the Web-based applications.
8
APPLICATION DEVELOPMENT LIFE CYCLE
9
Reference: https://www.ibm.com/docs/en/zos-basic-skills?topic=zos-
application-development-life-cycle-overview
 Design phase
10
Reference: https://www.ibm.com/docs/en/zos-basic-skills?topic=zos-
application-development-life-cycle-overview
 Development phase
11
Reference: https://www.ibm.com/docs/en/zos-basic-skills?topic=zos-
application-development-life-cycle-overview
 Testing
12
Reference: https://www.ibm.com/docs/en/zos-basic-skills?topic=zos-
application-development-life-cycle-overview
 Production
13
Reference: https://www.ibm.com/docs/en/zos-basic-skills?topic=zos-
application-development-life-cycle-overview
Software Development Life cycle Models
14
WATERFALL MODEL
15
WATERFALL MODEL
 In this model each phase should be completed
before the start of next phase.
 This model is most suitable where:
 Requirements are very well documented, clear
and fixed.
 There are no ambiguous requirements.
 Ample resources with required expertise are
available to support the product.
 The model is not suitable for complex projects,
where requirements are not clear.
 This model are not suppose to accommodate
requirements during development.
16
PROTOTYPING MODEL
17
PROTOTYPING MODEL
 This model requires that a working prototype of the
system should be built and deliver to the client
before carrying out the development of actual
software.
 A prototype is a sample of original system having
limited functionalities and inefficient as compared to
actual product.
 In a scenario where there is an absence of detailed
requirements or clients are not aware of their full
requirements, the prototyping model may be
employed.
 The problem with Prototype is that it often becomes
the final product.
18
THE ITERATIVE MODEL
19
THE ITERATIVE MODEL
 In the Iterative model, we start with a simple
implementation of a small set of the software requirements
and iteratively enhances the complete system.
 The main idea behind this model is to develop a system
through repeated cycles (iterative) and in smaller portions
at a time (incremental).
 The benefit of this model is that there is a working model of
the system at a very early stage of development and
hence it is easier to find functional or design flaws.
 The model is suitable for large project only since smaller
project can not be substantially divided into smaller parts.
20
V-SHAPE MODEL
21
V-SHAPE MODEL
 This model is an extension of the waterfall model,
where testing task is associated for each
corresponding development stage.
 This is a highly-disciplined model and the
subsequent phase starts once the previous phase
is completed.
 Similar to waterfall model no working software is
produced until late during the life cycle.
22
AGILE METHOD
23
AGILE MODEL
 Web engineering is an agile, yet disciplined
framework for building quality oriented WebApps.
Why Agility?
 Business strategies and rules change rapidly.
 Management demands near-instantaneous
responsiveness.
 Stakeholders often don’t understand the consequences
of the Web and keep changing their mind even as they
demand rapid delivery.
 An agile approach helps cope with this fluidity and
uncertainty.
24

Lecture_1_Introduction (Web Engineering).ppt

  • 1.
    WEB ENGINEERING 1 Source: WebEngineering: A Practitioner’s Approach by Roger S. Pressman and David Lowe
  • 2.
    CONTENT  What isweb application ?  Types of web application  Technology of web application stack  Web Engineering  Application/Software Development Life Cycle (SDLC)  SDLC Models 2
  • 3.
    WEB APPLICATION  Theterm Web application (WebApp) encompasses:  Everything from a simple Web page that might include just an informative site to a comprehensive website.  Included within this category are complete websites, specialized functionality within websites, and information-processing applications that reside on the Internet or on an Intranet. 3
  • 4.
    WEBAPP ATTRIBUTES  Networkintensiveness: Every WebApp resides on a network and must serve the needs of a diverse community of clients  Concurrency: A large number of users may access the WebApp at one time.  Unpredictable load: The number of users of the WebApp may vary by orders of magnitude from day to day  Performance: performance is critical issue in web based applications. If a WebApp 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: Users of popular WebApps often demand access on a “24/7/365” basis. 4
  • 5.
    WEBAPP ATTRIBUTES  Datadriven: WebApps are commonly used to access information that exists on databases (e.g., e-commerce).  Content sensitive: The quality and aesthetic nature of content remains an important determinant of the quality of a WebApp.  Continuous evolution: Unlike conventional application software that evolves over a series of planned releases, WebApps evolve continuously.  Security: In order to protect sensitive content and provide secure modes of data transmission, strong security measures must be implemented throughout the infrastructure.  Aesthetics: An undeniable part of the appeal of a WebApp is its look and feel. Aesthetics have as much to do with success as technical design. 5
  • 6.
    WEBAPP TYPES  StaticWeb Application: one that contains read only content with simple navigation and links. It directly displays the content without fetching any data from server end. (Example is Wikipedia.)  Dynamic: The one that interacts with the client and generates real- time data based on user's request. (Example is google.)  Interactive: A web application that provides a feeling of community among visitors—a place where people can chat, ask and answer questions, provide product testimonials, and the like.(Example is Facebook(meta))  Transaction-oriented: Where A transaction between the user and the WebApp occurs.(Example is Flipkart)  Service-oriented: Where web application provides services to the users.(Example is olx) 6
  • 7.
    TECHNOLOGY OF WEBAPPLICATION STACK 7
  • 8.
    WEB ENGINEERING  WebEngineering is the process of systematic, disciplined and quantifiable approaches to develop, operate, and maintain the Web-based applications. 8
  • 9.
    APPLICATION DEVELOPMENT LIFECYCLE 9 Reference: https://www.ibm.com/docs/en/zos-basic-skills?topic=zos- application-development-life-cycle-overview
  • 10.
     Design phase 10 Reference:https://www.ibm.com/docs/en/zos-basic-skills?topic=zos- application-development-life-cycle-overview
  • 11.
     Development phase 11 Reference:https://www.ibm.com/docs/en/zos-basic-skills?topic=zos- application-development-life-cycle-overview
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
    WATERFALL MODEL  Inthis model each phase should be completed before the start of next phase.  This model is most suitable where:  Requirements are very well documented, clear and fixed.  There are no ambiguous requirements.  Ample resources with required expertise are available to support the product.  The model is not suitable for complex projects, where requirements are not clear.  This model are not suppose to accommodate requirements during development. 16
  • 17.
  • 18.
    PROTOTYPING MODEL  Thismodel requires that a working prototype of the system should be built and deliver to the client before carrying out the development of actual software.  A prototype is a sample of original system having limited functionalities and inefficient as compared to actual product.  In a scenario where there is an absence of detailed requirements or clients are not aware of their full requirements, the prototyping model may be employed.  The problem with Prototype is that it often becomes the final product. 18
  • 19.
  • 20.
    THE ITERATIVE MODEL In the Iterative model, we start with a simple implementation of a small set of the software requirements and iteratively enhances the complete system.  The main idea behind this model is to develop a system through repeated cycles (iterative) and in smaller portions at a time (incremental).  The benefit of this model is that there is a working model of the system at a very early stage of development and hence it is easier to find functional or design flaws.  The model is suitable for large project only since smaller project can not be substantially divided into smaller parts. 20
  • 21.
  • 22.
    V-SHAPE MODEL  Thismodel is an extension of the waterfall model, where testing task is associated for each corresponding development stage.  This is a highly-disciplined model and the subsequent phase starts once the previous phase is completed.  Similar to waterfall model no working software is produced until late during the life cycle. 22
  • 23.
  • 24.
    AGILE MODEL  Webengineering is an agile, yet disciplined framework for building quality oriented WebApps. Why Agility?  Business strategies and rules change rapidly.  Management demands near-instantaneous responsiveness.  Stakeholders often don’t understand the consequences of the Web and keep changing their mind even as they demand rapid delivery.  An agile approach helps cope with this fluidity and uncertainty. 24

Editor's Notes

  • #3 Informality leads to an easy work environment—one in which you can do your own thing. Urgency leads to action and rapid decision making. Intuition is an intangible quality that enables you to “feel” your way through complex situations. Art leads to aesthetic form and function—to something that pleases those who encounter it.