View
213
Download
0
Tags:
Embed Size (px)
Citation preview
The Pro‘s and Con‘s of The Pro‘s and Con‘s of Employing the Unified Employing the Unified
Process for Web-Based Process for Web-Based ApplicationsApplications
Renate MotschnigRenate Motschnig
University of ViennaUniversity of ViennaDepartment of Computer Science and Business Department of Computer Science and Business
InformaticsInformatics
Research Goals and InterestsResearch Goals and Interests
Develop a process model for the Develop a process model for the effective development of high-quality effective development of high-quality web-applicationsweb-applications
Primary process-model requirements:Primary process-model requirements:• Provide guidance yet sufficient room for Provide guidance yet sufficient room for
individual solutionsindividual solutions• Provide tool supportProvide tool support• Respect special features of Web-Respect special features of Web-
applicationsapplications
Is the Unified Process qualifiedIs the Unified Process qualified
……from the point of view of our from the point of view of our experienceexperience……
Case Study – UniKid Case Study – UniKid (http://www.univie.ac.at/unikid)(http://www.univie.ac.at/unikid)• Social Web-application Social Web-application • … … as source for examplesas source for examples
Other case studiesOther case studies
Overview Overview
IS the UP helpful in developing web-IS the UP helpful in developing web-applications?applications?• Special features of web-applicationsSpecial features of web-applications• Brief survey of Unified ProcessBrief survey of Unified Process• Which features are helpful?Which features are helpful?• What is missing?What is missing?• ConclusionsConclusions• Further workFurther work
Web-ApplicationWeb-Application
A web-application is a web-system (web-A web-application is a web-system (web-site) that allows its users to execute site) that allows its users to execute business logic with a web-browser. business logic with a web-browser. (Conallen, 1999).(Conallen, 1999).… User input affects the state of the … User input affects the state of the “business“…“business“…
A web-application provides a web-A web-application provides a web-interface to an information- or knowledge interface to an information- or knowledge management system. (Motschnig)management system. (Motschnig)
Web-Application - CharacteristicsWeb-Application - Characteristics
Rich content, structure essentialRich content, structure essential Navigation is essentialNavigation is essential Design for maintenance and changeDesign for maintenance and change Often:Often:
• Very diverse user profilesVery diverse user profiles• integration of legacy systemsintegration of legacy systems
InterfacesInterfaces
• Peak interactionPeak interaction• … …
Unified ProcessUnified Process
Generic Process Template Generic Process Template Needs to be customized and Needs to be customized and
instantiatedinstantiated Characteristics:Characteristics:
• Iterative and incrementalIterative and incremental• Architecture-centricArchitecture-centric• Use-Case DrivenUse-Case DrivenLanguage (UML) integration and tool Language (UML) integration and tool
supportsupport
Deliverable of Inception phase 1. Iteration 2. Iteration
Feature list started Refined
First version of a business or domain Model existed to some degree
reflected in glossary
First cut of Use-Case Model done Refined
First cut of Analysis Model - Done
optionally: Implementation/Test model - test of use-cases planned
First version of supplementary requirements done Continued
First draft of candidate architecture description with views of individual models
- concept for software - and content architecture
Optional: proof-of-concept prototype - only for DB-module
Initial risk list done Updated
Use-Case ranking list - two priorities assigned
Beginnings of a plan for the entire project very rudimentary Done
First draft of business case for first phase only Done
Time schedule, duration 1.5 days 6 weeks
UniKid – Deliverables of the Inception Phase
Member of university
sitting partnership
User
search child-care
look for information
mail contribution
publish contribution
enquire and maintain information
forward information
adapt and evolve system
Editor
perform statistics
Use-Cases
Inception
timer
(1.1) publish ad from inputlist
(1.2) update or delete ad from inputlist
Ads of users not having authorization from the university must be explicitly published/ /deleted/updated v...
(10.1) authentification via editorial
User
(1) process inputlist
(2) edit ad
(4) update ad
(5) enquiry
(6) inspect sample ad
(7) print ad
(11) undelete
(12) update samole ad
Editor
(9) perform statistics
(8) inspect list of deleted ads
(10) authentification
Member of University
(10.2) UniversityDB authentification
UniversityDBs
(3) delete ad
First Cut on System ArchitectureFirst Cut on System Architecture
Relational Database
Parent2Parent service
ContentProvision
Contacts and Discussion
Web-ApplicationServer
Complement to the Deliverables of the Inception Complement to the Deliverables of the Inception Phase for Web-ApplicationsPhase for Web-Applications
Activity / Deliverable 1. Iteration 2. Iteration
Initial collection of content material
started continued, organized in a physical folder along topics
Analysis of information available on the internet
discussed documented systematically
Initial documentation of relevant links
listing only done in brief to be complemented
Initial ideas on graphic layout and user interface
- discussed, documented in notes
Deliverables of the Elaboration PhaseDeliverables of the Elaboration Phase
Deliverable Handling of deliverable
Preferably a complete business (or domain) model which describes the context of the system
not further refined
New version of all models (complete between 10% - 80%):use-caseanalysisdesigndeployment, implementation
done, also activity diagramsdone for Parent2Parent packagepartly, for complex use-cases-
Executable architectural baseline basic, high-level navigation
Architecture description done wrt. system- and content structure
Updated risk list done, no new risks found
Project plan for the construction and transition phases refined
Completed business case done as one of the first tasks
Time schedule, duration 6 weeks
Complements to Deliverables of the Complements to Deliverables of the Elaboration Phase for Web-ApplicationsElaboration Phase for Web-Applications
Deliverable or aspect: The way it was dealt with:
concept and specification of graphic layout done and presented as prototype
user interaction and navigation design specified in class diagrams and in story-board-like diagrams
page structure view done as skeletons in HTML
prototype of user interface (or its update) done and tested briefly
concept for information update (e.g. html-editor, web-editor, etc.)
decided
means of interconnection with other web-sites (e.g. links, frames )
decided
strategy for authorization specified in activity diagrams
Construction PhaseConstruction Phase
Basically refinement and Basically refinement and implementation of DB and interfacesimplementation of DB and interfaces
2 increments:2 increments:• Use - cases for user viewUse - cases for user view• Use – cases for editor viewUse – cases for editor view
TestingTesting
Use-Case drivenUse-Case driven• Detailed specification of use-cases Detailed specification of use-cases
including all alternative scenarios including all alternative scenarios proved very worthwhileproved very worthwhile
• Many “errors“ and inconsistencies foundMany “errors“ and inconsistencies found Navigation path driven – for content Navigation path driven – for content
issuesissues
UP features found helpful:UP features found helpful:
Customization of process templateCustomization of process template Tool and UMLTool and UML Thoughtful suggestion of deliverables per Thoughtful suggestion of deliverables per
phase, UML diagrams (Use-Case, Class,..)phase, UML diagrams (Use-Case, Class,..) Iterative and incremental proceedingIterative and incremental proceeding Management workflow: Management workflow:
• risk reduction, risk reduction, • planning aspects planning aspects • initial and final business case initial and final business case
The UP does not support:The UP does not support:
Graphic-layout considerationsGraphic-layout considerations Content issues like acquisition,intuitive Content issues like acquisition,intuitive
naming, structure, design decisionsnaming, structure, design decisions Navigation designNavigation design Interaction design (good tools available)Interaction design (good tools available) INTEGRATION of graphic, content and INTEGRATION of graphic, content and
software techical issues within processsoftware techical issues within process• They are highly interdependent, need They are highly interdependent, need
coordinationcoordination
What needs to be added?What needs to be added?
ContentWeb-ApplikationSoftware aspects
Graphic-layout
O.K. with specialization:
•Special NFR•Usability•Design for change•Performance, …
•Special architecture
Missing:
AcquisitionStructuringInterlinkingNavigationIntegrationMaintenance
Missing:
Page structureLook and feelIntegration with content and user-interaction
…and a sensible integration of these workflows!!!
ConclusionsConclusions UP: highly valuable process template UP: highly valuable process template Supporting: Supporting:
• useful set of deliverables, incremental processuseful set of deliverables, incremental process• Language – process – tool integrationLanguage – process – tool integration• Management issues, risk reductionManagement issues, risk reduction
For full support, the UP needs to be For full support, the UP needs to be complemented, in particular wrt.complemented, in particular wrt.• Content and Graphics workflowContent and Graphics workflow• Navigation design (also diagramming Navigation design (also diagramming
technique required)technique required)• Integration of these workflows into the processIntegration of these workflows into the process
Related and Further WorkRelated and Further Work
Content structuring conceptsContent structuring concepts• Organize complexityOrganize complexity
Navigation design with templatesNavigation design with templates Role of the web in knowledge construction, Role of the web in knowledge construction,
cooperative learning, organizational cooperative learning, organizational learning – as a complement to face-to-face learning – as a complement to face-to-face meetings.meetings.
… … in order to use New Media to in order to use New Media to improve communication and problem-improve communication and problem-solvingsolving