Web Engineering
Upcoming SlideShare
Loading in...5

Web Engineering



Web Engineering

Web Engineering



Total Views
Slideshare-icon Views on SlideShare
Embed Views



1 Embed 1

http://www.linkedin.com 1



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

    Web Engineering Web Engineering Presentation Transcript

    • WEB ENGINEERING Deniz KILINÇ [email_address]
    • What is it?
      • Web Engineering is the process used to create high-quality WebApps.
      • Web Engineering is not a perfect clone of software engineering.
      • It borrows many of software engineering’s fundamental concepts and principles.
    • What are the steps?
      • Problem is formulated
      • Project is planned
      • Requirements of the WebApp are analyzed.
      • Architectural, navigational and interface design are conducted.
      • The system is implemented using specialized languages.
      • Tested.
    • The attributes of Web-Based Applications
      • Network Intensive; Resides on a network(Internet, Intranet, Extranet) and must serve the needs of a diverse community of clients.
      • Content Driven; Primary function of a WebApp is to use hypermedia to present text, grphics, audio and video content to the end-user.
      • Continuous Evolution; Unlike convetional application software, Web Applications evolve continuously.
    • The characteristics of Web-Based Applications(I)
      • Immediacy; Developers must use methods for planning, analysis, design, implementation and testing that have been adapted to the compressed time schedules required for WebApp development.
      • Security; Because WebApps are available via network access, it is difficult to limit the population of the end-users who may access the application. Strong security measures must be implemented throughout the infrastructure that supports WebApp like SSL.
    • The characteristics of Web-Based Applications(II)
      • Aesthetics; Undeniable part of WebApp is its look and feel. When an application is designed to market or sell products aesthetics becomes much more important.
      • General characteristics apply to all WebApps with different degrees
    • Web Application Quality
      • Usability; Understandability,Aesthetic
      • Functionality; Searching, Navigation, Browsing
      • Reliability; Correct Link, Error Recovery, Input Validation
      • Efficiency; Response Time Performance, Page and Graphic Generation Speed
      • Maintainability; Extensibility
    • The technologies
      • Component Based Development; Three major infrastructure standards are available for Web engineers:CORBA,COM/DCOM, and Java Beans.
      • Security; A variety of security measures are provided by the network infrastructure, encryption techniques, firewalls and other measures.
      • Internet Standards; HTML enables the developer to provide a series tags that describe the appearance of objects(text, graphics, audio/video, forms...).A new standard, XML has been developed.
    • Framework For WebE Content Design Production Architectural Design Navigation Design Interface Design Formulation Planning Analysis Customer Evulation Page Gen. & Testing
    • Formulation(I)
      • Allows the customer and developer to establish a Goals and Objectives for the construction of WebApp.
      • Identifies the scope of the development effort.
      • Questions at the beginning of the formulation step;
          • What is the main motivation for the WebApp?
          • Why is the WebApp is needed?
          • Who will use the WebApp?
    • Formulation(II)
      • Example; Manufacturer of home Security System decided to establish e-commerce Web Site.
        • Answer1: Site will allow customers to purchase compenents for home/bussiness security.
        • Answer2: Eliminate retailer cost. Increases sales %25 percent.
        • Answer3: Homeowners and Owner of small bussiness.
      • These answers imply specific goals. Two categories of goals;
        • Informational Goals: Provides content information.
        • Applicative Goals: Ability to perform some task like selling and buying.
    • Analysis
      • Technical activity that identifies data,functional requirement for the WebApp.
      • Four types of anaylsis exists for WebE.
        • Content Analysis; Content to be provided is identified. Content includes text,graphics,image,video and audio data.
        • Interaction Analysis; The manner in which the user interacts with the WebApp is described in detail.
        • Functional Analysis; All operations and functions are described.(Search...)
        • Configuration Analysis; The environment and infrastructure in which WebApp resides are described in detail.
    • Design
      • Problem : Must establish a design that solves the immediate bussiness problem while at the same time defining application architecture that has the ability to evolve rapidly over time.
      • Three design types focuses;
        • Architectural Design
        • Navigation Design
        • Interface Design
    • Architectural Design
      • Focuses on the
        • Definition of hypermedia structure
        • Design patterns
        • Constructive templates
    • HyperMedia Structures(I)
      • Depends on goals established , the content to be presented , the users who will visit .
        • Linear Structures; Predictable sequence of interactions.
      • Tutorial presentation in which pages of information along with related graphics are generally presented one by one.
      • Product order entry sequence in which specific infromation must be entered in specific order.
    • HyperMedia Structures(II)
        • 2. Grid Structures; Applied when content orginized categorically in two or more dimensions.
      • E-commerce site sells golf club.Horizontal dimension of of grid represents the type of club(woods,irons...).Vertical dimension represents offerings provided by various golf club manifacturers.
      • Architecture is useful when the content is regular.
    • HyperMedia Structures(III)
        • 3. Hierarchical Structures; Allows rapid navigation. But it can lead to confusion for user.
    • HyperMedia Structures(IV)
        • 4. Networked Structures; Similar to object-oriented architecture. Each component(web page) is connected to every other component.Has navigation flexibility but can be confusing to user.
    • Navigation Design(I)
      • Designer must define navigation pathways that enable a user to access WebApp content.
      • WebApp have different roles : Visitor, registered, privileged.
      • Each of these roles associated with different levels of content access.
      • SNU(Semantic Navigation Unit) : for each user role’s goal is created.
        • WoN(Way of Navigating) : Set of navigational sub-structures which describe SNU.
        • WoN represents the best navigation path to achieve goal.
    • Navigation Design(II)
      • Mechanics of each navigation link must be identified for appropriate content:
        • Text-based links, icons, buttons, switches...
      • In addition to mechanics, the designer should establish navigation convention.
        • Icons and graphical links should look “clickable”
        • Color should indicate the navigation link for text-based navigation.
    • Interface Design
      • The user interface is “First Impression”
      • Poorly designed interface will disappoint the potential user.
        • Server errors causes to users to leave sites.
        • Do not force the user to read much text.
        • Avoid “under construction” signs.
        • Users prefer not to scroll.
        • Navigation menus and headbars should be available on all pages.
        • Navigation options (link to other contents) should be clear.
    • Testing(I)
      • The content model for the WebApp is reviewed to uncover errors - Check grammatical mistakes, errors in content, errors in graphical representation.
      • The design model for the WebApp is reviewed to uncover navigation error -Use cases allow to exercise each usage scenario. -These nonexecutable tests help uncover navigation errors.
      • Selected processing components and Web pages are unit tested -The smallest testable unit is generally a Web Page. -Unlike conventional unit testing which focus on algorithmic detail, page-level testing is done by processing content.
      • The architecture is constructed and integration test is made -Thread based testing can be used to integrate the set of Web pages. -Regression testing is applied to ensure that no side effects occur. -Cluster testing integrates a set of collaborating pages.
    • Testing(II)
      • 5. The assembled WebApp is tested for overall functionality. -Like conventional validation, test focuses on user-visible actions and user-recognizable output from system.
      • -To assist validation test, the tester should hold use-cases
      • 6. The WebApp is implemented in a variety of different configuration
      • and is tested for compatibility.
      • -A cross-reference matrix that defines all probable operating systems, browsers, hardware platforms and communication protocols is created.
      • -With each possible configuration tests are conducted.
      • 7. The WebApp is tested by monitored population of end-users.
      • -The WebApp is exercised by the chosen users and the results of their interaction with the system are evulated for all errros.
    • Management Issues
      • Web Engineering is a complicated activity.
      • Many people are involved often working in parallel
      • In order to avaoid failure
        • Planning must occur
        • Risks must be considered
        • A schedule must be established and tracked
        • Controls must be defined
    • The WebE Team(I)
      • Content developer and provider
        • Generation and collection of content
        • Marketing or sales staff may provide product information and graphical images
        • Media producers may provide video and audio
        • Graphic designers may provide layout design and aesthetic content.
      • Web publisher
        • Must understand the both content and WebApp technology including HTML, XML, XHTML, database functionality, scripts and general Web-Site navigation.
    • The WebE Team(II)
      • Web engineer
        • May have range of activities : architectural, navigational, interface design, implementation, testing
        • Understanding of component technologies, client/server architectures,HTML/XML and database technologies.
        • Working knowledge of multimedi-concepts, hardware-software platforms,network security.
      • Support specialist
        • Responsible for corrections, adaptations and enhancement to th site, updates to content, implementation of new procedures and forms.
    • The WebE Team(III)
      • Administrator
        • Development and implementation of policies for operations.
        • Implementation of security procedures and access rights.
        • Measurement and analysis of Web-site traffic.
        • Coordination with support specialists.
    • Project Management(I)
      • Process and project metrics, project planning, risk analysis and management, scheduling and tracking.
      • In theory most of these activities can be applied to WebE projects.
      • But in practice, the WebE approach is considerably different.
    • Project Management(II)
      • First; Most of the WebApps are outsourced to vendors.
        • How is the capabilities of vendor determined?
        • How does one know whether a price quote is reasonable.
      • Second; No WebE metrics have been published in the literature.
        • Estimation is purely based on past experience with similar projects.
        • Although this estimation is useful,is open to error.