1 / 31

Web Engineering: Software Engineering of Web Applications

Learn about web engineering and how it differs from normal software engineering. Explore the formulation, planning, analysis, design, and testing processes for web apps. Understand the importance of communication, requirements analysis, and delivery in web engineering. Discover the roles of different team members in web application development and support. Learn about creating web apps with outsourcing or in-house, and the analysis and design processes involved. Gain insights into testing web applications, including content, interface, navigation, component, configuration, security, and performance testing. Compare the planning and design stages in software engineering and web engineering.

cecillutz
Download Presentation

Web Engineering: Software Engineering of Web Applications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software Engineering of Web Applications SE Team 6 & SE Team 13 4-28-05

  2. Introduction of Team Members • Chris Gaul • Ruth Miller • Jefferson Hanifah • Ryan Dunn • Evan Tritsch • Amanda Jantz

  3. Overview • What is Web Engineering? • Formulation and Planning for Web Engineers • Analysis Modeling for Web Apps • Design Modeling for Web Apps • Testing Web Apps • Comparison Between Normal Software Engineering vs. Web Engineering

  4. Methods • Communication • Requirements Analysis • Design • Testing

  5. Processes • Delivery • Change • Timelines

  6. Customer Communication • Business Analysis • Formulation

  7. Framework • Planning • Modeling • Construction • Deployment

  8. Web Engineering Application Development Team • Content Developers • Web Publisher • Web Engineer • Business Domain Expert

  9. Application Support Staff • Support Specialist • Enhancements and adaptations to the application itself • Administrator (Webmaster) • Update content and layout changes

  10. Creating a Web App with Outsourcing • Analysis of functionality should be done internally • Design a rough draft • Project Schedule (dates & milestones) • List of Responsibilities • Degree of interaction between contractor and vendor should be identified

  11. Creating a Web App “In-House” • Clearly stated requirements and goals • Incremental project strategy • Perform a Risk Analysis • Quick Time Estimate • Development description • Establish a schedule • Defined project tracking mechanisms

  12. Analysis Modeling for Web Apps Defined • Focuses on 3 questions: • What information is to be presented or manipulated? • What functions are to be performed for the end-user? • What behaviors will the WebApp exhibit as it presents content and performs functions? • Answers are represented as part of an analysis model containing UML representations.

  13. Requirements • User Hierarchy • Developing use-cases • Refining the use case model

  14. Models • Analysis Model • Content Model • Defining Content Objects • Content Relationships and Hierarchy • Analysis Classes for Web Apps • Interaction Model • Functional Model • Configuration Model

  15. Relationship-Navigation Analysis • Key Questions • Navigation Analysis

  16. Quality Security Availability Scalability Time-to-market Goals Simplicity Consistency Identity Robustness Navigability Visual Appeal Compatibility Design Issues

  17. Visual Design • Interface Design • The structure and organization of the user interface. • Aesthetic Design • Graphic design • Look and Feel • Content Design • Layout, structure, and outline for all content • Relationship between objects

  18. Control Design • Architecture Design • Both content architecture and Web App architecture • Navigation Design • The navigational flow between content objects and web app functions • Component Design • Processing logic required to implement functional components

  19. How do we do it • Hypermedia Design Patterns • Object-Oriented Hypermedia Design Method • Design Metrics

  20. Testing Web Applications • More Complex then normal Application Testing • Big difference is that technology variables multiply in web applications. • Different technologies are patch worked together to bring a web application to life. • Types of Testing • Content • Interface • Navigation • Component • Configuration • Security • Performance

  21. Testing Web Applications • Content Testing • Text Errors • Grammatical mistakes • Errors in consistency • Cross referencing errors • Graphical Representations • Dynamic contented delivered from databases

  22. Testing Web Applications • Interface Testing • Implementation mechanisms or omissions • Inconsistencies • Ambiguities • Anything interfaced inadvertently into the interface

  23. Testing Web Applications • Component Testing • Testing each component encapsulated within the web site. • Configuration Testing • Client and server environment problems. • Create a matrix of hardware, operating systems, browsers, hardware platforms and communications protocols. • Test each possible configuration to get all the errors associated with each configuration.

  24. Testing Web Applications • Security Testing • Exploit vulnerabilities in the Web App and environment. • Demonstrate that a security breach is possible • Performance Testing • Response time and reliability effected by traffic • Identifying components responsible for the problems • Load Testing • N, concurrent users • T, online transactions • D, Data Load • P, Overall throughput • P = D X T X N

  25. Comparison Between Software and Web Engineering • Planning [1] • Design [1] • Production [1] • Maintenance [1]

  26. Planning • At this step, in both software and web engineering, they try to find the user needs, create schedule until the application is deployed

  27. Design • In the design of a software, the GUI has to be “user friendly,” and reliable • In the design of web applications, the user must be able to find data and links easily. Also, the user must be able to load the applications very fast.

  28. Production • In software and web engineering, programmers need to test before the applications are launched or deployed

  29. Maintenance • In software engineering, the programmers provide updates and patches for the software every time bugs have been found • In web engineering, the team members need to maintain the sites up-to-date

  30. Resources • http://www-3.ibm.com/ibm/easy/eou_ext.nsf/publish/572

  31. Summary

More Related