July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 1 Web development processes A/Prof David Lowe University of Technology,

Slides:



Advertisements
Similar presentations
Software Processes.
Advertisements

©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
1 Chapter 2 Software Processes An overview of conventional software process models, Rational Unified Process, and CASE tools.
The software process A software process is a set of activities and associated results which lead to the production of a software product. This may involve.
CS3773 Software Engineering Lecture 01 Introduction.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Rapid software development.
Alternate Software Development Methodologies
Systems Engineering in a System of Systems Context
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 4 Slide 1 Software Process Models.
Chapter 6 Prototyping, RAD, and Extreme Programming
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Process Models.
Organizational Influences and Life Cycle
COMP 350: Object Oriented Analysis and Design Lecture 2
IS550: Software requirements engineering Dr. Azeddine Chikh 4. Validation and management.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Rapid software development.
Agile Process: Overview n Agile software engineering represents a reasonable compromise to conventional software engineering for certain classes of software.
An Agile View of Process
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 27Slide 1 Chapter 27 Software Change.
Chapter 9 – Software Evolution and Maintenance
Release & Deployment ITIL Version 3
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Rapid software development to validate requirements l.
Describing Methodologies PART II Rapid Application Development* Systems Analysis and Design II.
Software Processes Sumber dari : cc.ee.ntu.edu.tw/~farn/courses/SE/ch4.ppt.
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
Software Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
Software Processes lecture 8. Topics covered Software process models Process iteration Process activities The Rational Unified Process Computer-aided.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 3 Slide 1 Software Processes l Coherent sets of activities for specifying, designing,
Introduction to Interactive Media The Interactive Media Development Process.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Overview of the rest of the semester Building on Assignment 1 Using iterative prototyping.
Chapter 11: Software Prototyping Omar Meqdadi SE 273 Lecture 11 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Rapid software development to validate requirements.
 CS 5380 Software Engineering Chapter 2 – Software Processes Chapter 2 Software Processes1.
Cohesive Design of Personalized Web Applications Presented by Yinghua Hu Schwabe, D. Mattos Guimaraes, R. Rossi, G. Pontificia Univ. Catolica do Rio de.
Interaction Design CMU. Today’s objectives Continue Design approaches (UCD, ACD)  User-Centered Design  Activity-Centered Design.
소프트웨어공학 강좌 1 Chap 7. Software Prototyping - Rapid software development to validate requirements -
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
IS Methodologies. Systems Development Life Cycle - SDLC Planning Planning define the system to be developed define the system to be developed Set the.
© Bennett, McRobb and Farmer Avoiding the Problems Based on Chapter 3 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and Design.
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 4 Agile Development Discussion of Agile Development and Agile Process.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Chapter 13: Software Life Cycle Models Omar Meqdadi SE 273 Lecture 13 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
CMPS 435 F08 These slides are designed to accompany Web Engineering: A Practitioner’s Approach (McGraw-Hill 2008) by Roger Pressman and David Lowe, copyright.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Software Prototyping Rapid software development to validate requirements.
Software Engineering 1 Object-oriented Analysis and Design Chap 24 Iteration 2 More Patterns.
27/3/2008 1/16 A FRAMEWORK FOR REQUIREMENTS ENGINEERING PROCESS DEVELOPMENT (FRERE) Dr. Li Jiang School of Computer Science The.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
 Many models have been proposed to deal with the problems of defining activities and associating them with each other  The first model proposed was the.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2000, Tom Dietterich 2001 Slide 1 System prototyping l Prototyping is the rapid development of a system l In the past, the developed system.
Agenda: Overview of Agile testing Difference between Agile and traditional Methodology Agile Development Methodologies Extreme Programming Test Driven.
Software Engineering, 8th edition. Chapter 4 1 Courtesy: ©Ian Sommerville 2006 FEB 13 th, 2009 Lecture # 5 Software Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Rapid software development.
Software Development - Methodologies
Prototyping in the software process
Introduction to Software Engineering
CS310 Software Engineering Lecturer Dr.Doaa Sami
Rapid software development
System Development Methods
Presentation transcript:

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 1 Web development processes A/Prof David Lowe University of Technology, Sydney

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 2 Software Engineering Wisdom “Some Facts: Before software and computing systems can be developed, their requirements must be reasonably well understood. Before requirements can be finalised the application domain, as it is, must be fairly well understood” ‘Domain Engineering: A “Radical Innovation” for Software and Systems Engineering? A Biased Account’, Dines Bjorner

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 3 Software Engineering Heresy  For Web projects, design and requirements can only be jointly resolved!  I will explain why this heresy is appropriate within Web development, and the (incorrect) assumptions that underlies conventional SE wisdom. Domain Understanding RequirementsDesign

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 4 Intro / Overview  What makes Web devel. difficult  Web systems impacting on the system domain: mutual constitution  Dealing with the differences PrototypingPrototyping Design modelsDesign models Agile DevelopmentAgile Development  Other issues  …

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 5 Web Development  Discrepancy between research and commercial practice!  Research has focused on design and information architectures  Commercial practice has focused on the broader development process, and in particular understanding the develop-client interaction.  Strong divergence of views on numerous issues

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 6 Web Development We interview the clients to determine requirementsWe interview the clients to determine requirements We interview intended users to determine requirementsWe interview intended users to determine requirements It is important to respond to changes in reqt’s as they occurIt is important to respond to changes in reqt’s as they occur Changes in user reqt’s require the application to be renegotiated.Changes in user reqt’s require the application to be renegotiated. We often have difficulty in the relationship with clientsWe often have difficulty in the relationship with clients We prefer a single client liaisonWe prefer a single client liaison It is important to identify technologies as soon as possibleIt is important to identify technologies as soon as possible It is important to be able to modify the system once it is completedIt is important to be able to modify the system once it is completed Technical, design and management staff work well togetherTechnical, design and management staff work well together The project size/costs are tracked and corrective actions are takenThe project size/costs are tracked and corrective actions are taken

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 7 How is Web development different?  Minor Differences Increased emphasis on UIIncreased emphasis on UI Uninformed competitivenessUninformed competitiveness Fine-grained organic evolution.Fine-grained organic evolution. Open modularised architectures and component-based developmentOpen modularised architectures and component-based development Rapidly changing technologiesRapidly changing technologies Variable client understandingVariable client understanding Diverse teamsDiverse teams

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 8 How is Web development different?  Three key differences: Poor understanding of link between business needs and application functionalityPoor understanding of link between business needs and application functionality Tighter synergism between business needs and technologyTighter synergism between business needs and technology Tighter development timeframes and rapid pace of changeTighter development timeframes and rapid pace of change

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 9 How is Web development different?  These key issues all relate back to one single “killer” issue:  The system changes the domain! business workflowsbusiness workflows business modelbusiness model interactions with clients and customersinteractions with clients and customers … and ultimately even your clients!… and ultimately even your clients!

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 10 But is this really different?  So what – isn't this true for normal SE / IT development? YES! But impact is more immediate and greater in scope.YES! But impact is more immediate and greater in scope. “Conventional” IT development largely ignores this impact, and addresses it through subsequent system refinement and/or BPR!“Conventional” IT development largely ignores this impact, and addresses it through subsequent system refinement and/or BPR!  We ignore it at our peril for Web projects!

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 11 Organisation Changing the domain Workflows Roles Activities Resources Tools Communications Expectations

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 12 Organisation Changing the domain

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 13 Changing the domain Organisation Domain of Influence Domain of Change

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 14 Organisation Changing the domain

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 15 Organisation Changing the domain

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 16 Organisation Changing the domain Domain of Influence Domain of Change

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 17 Mutual constitution The problem drives the solution The solution changes (creates?) the problem © MC Escher

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 18 So how do we deal with this?  Various approaches Prototypes to explore the impactsPrototypes to explore the impacts Design models that link design to business issuesDesign models that link design to business issues Agile development and evolvable architecturesAgile development and evolvable architectures  Web developers understand much of this inherently … but little of it is rigorous or formally managed.… but little of it is rigorous or formally managed.

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 19 Prototyping… Prototyping…  Allows impact exploration  But different from conventional prototyping: 1.Validation of requirements 2.Design exploration 3.Impact exploration  Useful sources of concepts IBM Patterns for E-BusinessIBM Patterns for E-Business Rapid Application DevelopmentRapid Application Development Information modellingInformation modelling

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 20 Prototyping  Issues raised: What prototypes should we use?What prototypes should we use? When should these be used?When should these be used? What system characteristics should emerge at different stages of the development?What system characteristics should emerge at different stages of the development? How is this integrated into the development process?How is this integrated into the development process? How does this affect contractual negotiations?How does this affect contractual negotiations? How do clients interact with prototypes?How do clients interact with prototypes? …

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 21 Prototyping Analysis

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 22 Prototyping Contract Prototype Development Specification Evaluation Prototypes / Partial Designs Client Feedback Specification

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 23 Prototyping  Preliminary research  What factors influence the ability to understand the impacts of a proposed system when presented with a series of early web design artefacts?  Lessons Use of storyboards, screen shots and business process models was valuable!Use of storyboards, screen shots and business process models was valuable! WebML content models, example site navigation maps, database schemas were not useful!WebML content models, example site navigation maps, database schemas were not useful! Clients made assumptions about business elements which are not covered by the prototypes (and outside the system scope).Clients made assumptions about business elements which are not covered by the prototypes (and outside the system scope).

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 24 Prototyping  Lessons Clients had variable understanding of functional aspects. This was typically not well addressed by the prototypes.Clients had variable understanding of functional aspects. This was typically not well addressed by the prototypes. Weak correlation between understanding of existing business and understanding of impacts! And between understanding of modelling approaches and understanding of impacts.Weak correlation between understanding of existing business and understanding of impacts! And between understanding of modelling approaches and understanding of impacts. Way in which the prototypes were explored appears to be crucial!Way in which the prototypes were explored appears to be crucial! There is little difference between Engineering/IT and Business participants in ability to understand business impactsThere is little difference between Engineering/IT and Business participants in ability to understand business impacts

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 25 Design Models  Need to provide a clearer link between low-level design and business issues i.e. how do specific functional or informational elements provide business value, and if they are changed, what are the impacts on the value chains.i.e. how do specific functional or informational elements provide business value, and if they are changed, what are the impacts on the value chains. ? ?

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 26 Design Models

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 27 Design Models

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 28 Agile development  Agile development eXtreme ProgrammingeXtreme Programming  But… How do we define an overall architecture (particularly one which is evolvable)?How do we define an overall architecture (particularly one which is evolvable)? What elements should be designed first (i.e. interplay between providing business value and understanding business impacts)?What elements should be designed first (i.e. interplay between providing business value and understanding business impacts)?

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 29 Other Issues  Necessity for changes to the tendering process and contractual arrangements  When can full quotations be provided?  How do we managed evolutionary / incremental development?  Client engagement with the development / Developer engagement with the business  How do we educate clients about technological impacts?  How do we educate developers about business drivers?  External drivers for domain change  How is this handled?  Different technological / business evolution paths?  How do we select between different possibilities?

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 30 Take-home messages  Web development is still software development BUT  Web projects have unique characteristics Poor understanding of link between business needs and application functionality and contentPoor understanding of link between business needs and application functionality and content Tighter synergism between business needs and technologyTighter synergism between business needs and technology Tighter development timeframes and rapid pace of changeTighter development timeframes and rapid pace of change  But especially: Inter-dependence if problem and solution domainsInter-dependence if problem and solution domains  Conventional approaches work, but need to be adapted appropriately!

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 31 Invitation  Ongoing research: Role of prototypesRole of prototypes How do clients understand system impactsHow do clients understand system impacts How can we relate designs and business processes and models more explicitlyHow can we relate designs and business processes and models more explicitly  Activities: Case studies of system evolution (emergence of understanding, and what affects this)Case studies of system evolution (emergence of understanding, and what affects this) Impact prediction toolsImpact prediction tools  We are looking for commercial collaborators Critique of (and report on) your processesCritique of (and report on) your processes Model your systems and business processesModel your systems and business processes Use of our tools and knowledgeUse of our tools and knowledge

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 32 References / Additional Info  Textbook: D. Lowe and W. Hall, Hypermedia and the Web: An Engineering Approach, Wiley, 1998  Other References: M. Abrams, World Wide Web: Beyond the Basics, Prentice-Hall, 1998M. Abrams, World Wide Web: Beyond the Basics, Prentice-Hall, 1998 J. Nielson, Multimedia and Hypertext, 1995, Academic PressJ. Nielson, Multimedia and Hypertext, 1995, Academic Press  Design models: WebML: (and especially (and especially UML: UML+UID: OOHDM:

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 33 References / Additional Info  Design methods XP: RUP and UML: and and UML: and JAD and PD: and and PD: and  Miscellaneous Web Configuration Management: Configuration Management: SUE: Garzotto F and Matera M (1997) "A Systematic Method for Hypermedia Usability Inspection", The New Review of Hypermedia and Multimedia, Vol 3, pp39-65SUE: Garzotto F and Matera M (1997) "A Systematic Method for Hypermedia Usability Inspection", The New Review of Hypermedia and Multimedia, Vol 3, pp39-65 TAM: Davis, F.D. “Perceived Usefulness, Perceived Ease of Use, and User Acceptance of Information Technology”, MIS Quarterly, 1989, 13(3): TAM: Davis, F.D. “Perceived Usefulness, Perceived Ease of Use, and User Acceptance of Information Technology”, MIS Quarterly, 1989, 13(3):  Numerous Web Engineering workshops and conferences: See

July 29-31, 2003 WebTech'03 - "Web Development Processes", David Lowe, UTS Slide 34 Questions ??????