Web Engineering and Technology Unit I. Categories/Types of Web-Based Systems CategoryExamples Document centricOnline newspapers, manuals InteractiveRegistration.

Slides:



Advertisements
Similar presentations
PROCESS FRAMEWORK Lecture - 3. Topics covered PROCESS FRAMEWORK PROCESS MODELS DIFFERENCE.
Advertisements

Demonstrators: Mudasir Nazir(08-CS-41).  I am highly addicted to this field.  Working with W3C in research program(building CSS for creating web site.
Software Quality Assurance Plan
CS487 Software Engineering Omar Aldawud
Slide Set to accompany Web Engineering: A Practitioner’s Approach
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
These slides are designed to accompany Web Engineering: A Practitioner’s Approach (The McGraw-Hill Companies, Inc.) by Roger Pressman and David Lowe, copyright.
Alternate Software Development Methodologies
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
SE curriculum in CC2001 made by IEEE and ACM: Overview and Ideas for Our Work Katerina Zdravkova Institute of Informatics
Introduction to Systems Analysis and Design
Introduction to Software Testing
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
About Waterloo website Project report June Outline Overview of process Project deliverables Lessons learned.
1 Chapter 16 Web Engineering Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
Software Engineering Introduction. Why are you here? …alternatively, why do we think you need to be here? Why a course on software engineering? How is.
Credits: Adopted from Web Engineering: A Practitioner’s Approach (The McGraw-Hill Companies, Inc.) by Roger Pressman and David Lowe, copyright Agile.
What is Business Analysis Planning & Monitoring?
Chapter : Software Process
Process: A Generic View
Chapter 7 Requirement Modeling : Flow, Behaviour, Patterns And WebApps.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
What is Software Engineering?. Software engineering Multi-person construction of multi-version software (David Parnas) An engineering discipline whose.
Chapter 2 The process Process, Methods, and Tools
Software Project Management Introduction to Project Management.
1 WEB Engineering Introduction to Electronic Commerce COMM1Q.
Chapter 2 Process: A Generic View
1 Chapter 2 The Process. 2 Process  What is it?  Who does it?  Why is it important?  What are the steps?  What is the work product?  How to ensure.
Objectives  Testing Concepts for WebApps  Testing Process  Content Testing  User Interface Testing  Component-level testing  Navigation Testing.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
Web Analysis CIS 376 Bruce R. Maxim UM-Dearborn. Web Formulation Activities Identify business need for WebApp Work with stakeholders to describe WebApp.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Web Engineering Web engineering is the process used to create high quality WebApps. Web engineering is not a perfect clone of software engineering. But.
Chapter 2 Process: A Generic View
1 Chapter 5 Software Engineering Practice. 2 What is “Practice”? Practice is a broad array of concepts, principles, methods, and tools that you must consider.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Coming up: Software Engineering: A Practitioner’s Approach, 6/e Chapter 5 Practice: A Generic View copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
1 Chapter 23 Estimation for Software Projects. 2 Software Project Planning The overall goal of project planning is to establish a pragmatic strategy for.
Software Engineering Principles Principles form the basis of methods, techniques, methodologies and tools Principles form the basis of methods, techniques,
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Chapter 4 프로세스 모델 Process Models
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 5 Practice: A Generic View Software Engineering: A Practitioner’s Approach, 6/e Chapter.
1 Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Process: A Generic View Software Engineering: A Practitioner’s Approach, 7/e Chapter 2.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 Web Engineering “Web development is an adolescent … Like most adolescents, it wants to be accepted as an adult as it tries to pull away from its parents.
1 Chapter 2 A Generic View of Process Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
Software Engineering Introduction.
Chapter 22 Metrics for Process and Projects Software Engineering: A Practitioner’s Approach 6 th Edition Roger S. Pressman.
PI2134 Software Engineering IT Telkom.  Layered technology  Software Process  Generic Process (by Pressman)  Fundamental activities (by Sommerville)
Software Engineering (CSI 321) Software Process: A Generic View 1.
Software Engineering CE 501 Prepared by : Ashwin Raiyani.
1 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.
1 What is Software? Software is: (1) instructions (computer programs) that when executed provide desired features, function, and performance; (2) data.
WebApp Attributes.
Software Engineering (CSI 321)
Web Engineering.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Introduction to Software Engineering
Introduction to Software Testing
Chapter 25 Process and Project Metrics
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
What is Software? Software is: (1) instructions (computer programs) that when executed provide desired features, function, and performance; (2) data structures.
Chapter 32 Process and Project Metrics
Lecture 1 & 2 Software Engineering Tutor: Dr. Nadeem Ahmad Ch.
Chapter 26 Estimation for Software Projects.
Presentation transcript:

Web Engineering and Technology Unit I

Categories/Types of Web-Based Systems CategoryExamples Document centricOnline newspapers, manuals InteractiveRegistration forms TransactionalOnline banking Workflow-orientedStatus monitoring, Business-to-Business solutions (B2B solutions) in e-commerce, e-government applications Collaborative workDistributed authoring Social webDiscussion groups Web portalsShopping malls Download User Input

Web Application Characteristics Network intensiveness Concurrency Unpredictable load Performance Availability Data driven Content sensitivity Continuous evolution Immediacy Security Aesthetics

Web Engineering WebE is the process used to create high quality Web-based applications (WebApps) WebE draws heavily on the principles and management activities found in software engineering processes Web Engineering is the application of systematic and quantifiable approaches (concepts, methods, techniques, tools) to cost-effective requirements analysis, design, implementation, testing, operation, and maintenance of high-quality Web applications.

Goals of Web Engineering Develop High Quality Web applications –Effective –Efficient –Achieve desired application Maintain and evolve –Plan for change – solution may change the problem Encourage the use of systematic, disciplined and quantifiable approaches and process models

WebE Process Overview Formulation of the problem Planning WebApp requirements analysis Architectural, navigational, and interface design System implementation using specialized languages and tools associated with the Web Configuration management, quality control, and maintenance mechanisms are established early

Web Engineering Activities (1/3) Requirements specification and analysis Web-based system analysis and design Web development methodologies and techniques Migration of legacy systems to Web environments Web-based real-time applications development Web-based multimedia application development Testing, verification and validation techniques and tools Quality assessment, control and assurance

Web Engineering Activities (2/3) Management of access to applications and privileges Configuration and project management “Web metrics” – metrics for estimation of development effort Performance specification and evaluation Update and maintenance Development models, teams, and staffing Human and cultural aspects User-centric development

Web Engineering Activities (3/3) Graphics, animation and streaming Copyright, legal and social aspects

WebE Process Model: Formulation Goals and objectives –What is the motivation for the WebApp? –Why is the WebApp needed? –Who will use the WebApp? Informational goals –user's intention for using the content Applicative goals –ability to perform tasks within the WebApp

WebE Process Model: Planning Estimate project cost Evaluate risks Define finely granulated schedule for first increment Define coarser schedule for subsequent increments

WebE Process Model: Analysis Establishes requirements and identifies content items Content analysis –content provided by WebApp is identified Interaction analysis –use-cases developed to describe user interaction Functional analysis –usage scenarios used to define operations and functions applied to WebApp content Configuration analysis –WebApp environment described in detail

WebE Process Model: Engineering Content design Production tasks Architectural design Navigation design Interface

WebE Process Model: Page Generation and Testing Content and technical designs are merged to produce executable web pages Testing exercises WebApp navigation, attempts to uncover errors in applets/scripts/forms, and checks for environment incompatibilities

WebE Process Model: Customer Evaluation Each increment of the WebApp is reviewed Changes required by customer are applied to next increment

Difference between SE and WebE - Agility Main Reasons for not applying SE principles to WebE: „Business strategies and rules change rapidly „Management demands near-instantaneous – almost immediate reaction Responsiveness (even when such demands are completely unreasonable). 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

What is an Agile Process? „ Agile Web engineering combines a philosophy and a set of development guidelines. The philosophy encourages: –„ customer satisfaction –„ informal methods –„ overall development simplicity –„ early incremental delivery of the Web Application –„ small, highly motivated project teams –„ minimal work products „ An agile process stresses delivery over analysis and design (although these activities are not discouraged), and active and continuous communication between developers and customers.

Activities Web EngineeringSoftware Engineering Customer CommunicationSoftware Project Management PlanningFormal Technical Reviews ModelingRisk Management ConstructionSoftware Quality Assurance Delivery and FeedbackMeasurement Software configuration management Reusability management Work product preparation and production

Web Engineering Models Content Modeling Hypertext Modeling Presentation Modeling