27

The Pro‘s and Con‘s of Employing the Unified Process for Web-Based Applications Renate Motschnig University of Vienna Department of Computer Science and

  • View
    213

  • Download
    0

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

Overview of the UPOverview of the UP

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

Overview of the UP revisitedOverview of the UP revisited

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