C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web...

73
C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright University of Washington , Marcia Tufarolo and Scott Stephenson 2004. This work is the intellectual property of the Authors. Permission is granted for this material to be shared for non-commercial, educational purposes, provided that this copyright statement appears on the reproduced materials and notice is given that the copying is by permission of the author. To disseminate otherwise or to republish requires written permission from the authors.

Transcript of C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web...

Page 1: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

C&C Project Consulting

University of Washington

80% is under the hood…Moving From Prototype Web Pages to a Working

Administrative Application Copyright University of Washington , Marcia Tufarolo and Scott Stephenson 2004. This work is the intellectual property of the Authors. Permission is granted for this material to be shared for non-commercial, educational purposes, provided that this copyright statement appears on the reproduced materials and notice is given that the copying is by permission of the author. To disseminate otherwise or to republish requires written permission from the authors.

Page 2: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

University of Washington

Marcia Tufarolo - Technology ManagerScott Stephenson - System Engineer

Computing & CommunicationsProject Consulting

Page 3: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Presentation

Moving From PrototypeWeb Pages to a Working

Administrative Application

80% is Under the Hood

ApplicationDevelopment Project

Prototype

C&C TravelApplication Project

Prototype toApplication

Typical ProjectApproach

Page 4: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

University of Washington

• State Research University

• 3 Major Campuses

• 40,000 Students

• 24,000 Faculty & Staff

Page 5: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

C&C Project Consulting

• Computing & Communications

• Consulting group for UW

• Self-sustaining operation

• C&C Project Consulting hired for work

Page 6: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Types of Consulting

• Web-based Database Applications

• Web-site Design

• Usability/Accessibility Studies

• Computing Needs Assessment

• Unix/Win2x Server/Network Assistance

Page 7: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Typical Project Approach

• Contacted by UW area with a need

• User meeting

• Prepare proposal with estimates

• System specifications & prototype

• Development & implementation

• On-going support

Page 8: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Sample Projects

• UW Web Credit Card

• MyChem (Lab Safety System)

• UW Web Conference

• UW Web Store

• Training & Development Registration

Page 9: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

C&C Travel Application Project

• Contacted by C&C Business and Finance

• Provide a common way for C&C staff to request, plan and complete travel

• Meet UW Travel requirements

Page 10: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

C&C Travel Application Project

• Application prototype ‘completed’

• Ready to develop the application

Page 11: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

C&C Travel Application Project

• Not our typical approach to a project

• Start much earlier in the process

Page 12: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

C&C Travel Application Project

• Prototype review meeting

• Significant work had been completed

Page 13: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Prototype

Page 14: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Prototype

Page 15: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Prototype

Page 16: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Prototype

Page 17: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Prototype

Page 18: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Prototype

Page 19: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

C&C Travel Application Project

• Prototype focused on the user experience

• Four major functions

Page 20: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

User Experience

• Traveler Profile

• Travel Authorizations

• Trip Planning

• Travel Reimbursement

Page 21: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Traveler Profile

• Set of data about a traveler

• Personal preferences

• Travel preferences

Page 22: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

User Experience

• Traveler Profile

• Travel Authorizations

• Trip Planning

• Travel Reimbursement

Page 23: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Travel Authorization

• Request a business trip

• Director’s trip approval

Page 24: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

User Experience

• Traveler Profile

• Travel Authorizations

• Trip Planning

• Travel Reimbursement

Page 25: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Trip Planning

• After approval

–Plan flights, hotel, rental car, registration…

Page 26: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

User Experience

• Traveler Profile

• Travel Authorizations

• Trip Planning

• Travel Reimbursement

Page 27: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Reimbursement

• Receive reimbursement for travel expense

–Full reimbursement

–Misc reimbursement

Page 28: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

User Experience

• Traveler Profile

• Travel Authorizations

• Trip Planning

• Travel Reimbursement

Page 29: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

C&C Travel Application

• To support the four User functions… what administrative pieces are needed?

• Complex parts of the application were missing

Page 30: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Administrative Functions

• Authentication/Authorization

• Maintenance/Actions

• State and State Transitions

• Reports

Page 31: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Administrative Functions

• Authentication: who

• Authorization: what

Page 32: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Administrative Functions

• Authorization level drives:

–Application functionality access

–Menu structure

Page 33: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Administrative Functions

• Authentication/Authorization

• Maintenance/Actions

• State and State Transitions

• Reports

Page 34: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Administrative Functions

• Maintenance/Actions

– Maintain Trip– Maintain Travel Agents– Forward Travel Reservations– Approve Travel Auth Request– Process Travel Reimbursement– Maintain Administrators– Maintain Travel Auth Administrators

Page 35: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Administrative Functions

• Authentication/Authorization

• Maintenance/Actions

• State and State Transitions

• Reports

Page 36: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

State and State Transitions Status Code Description

• AUTH_SUBMITTED Travel authorization request submitted• AUTH_APPROVED Travel authorization request approved• AUTH_DENIED Travel authorization request denied• AUTH_ERROR Travel authorization request error• TRIP_INITIAL Travel reservation request saved• TRIP_SUBMITTED Travel reservation request submitted• TRIP_FORWARDED Travel reservation request forwarded• TRIP_ERROR Travel reservation request forward error• TRIP_CLOSED Travel reservation request closed• FULL_REIM_INITIAL Full reimbursement request saved• FULL_REIM_SUBMITTED Full reimbursement request submitted• FULL_REIM_TEV_SENT Full reimbursement request TEV sent to traveler• FULL_REIM_TEV_RETURNED Full reimbursement request TEV returned by traveler• FULL_REIM_ISSUED Full reimbursement issued• FULL_REIM_CLOSED Full reimbursement request closed• MISC _REIM_SUBMITTED Misc. reimbursement request submitted• MISC_REIM_TEV_SENT Misc. reimbursement request TEV sent to traveler• MISC_REIM_TEV_RETURNED Misc. reimbursement request TEV returned by traveler• MISC_REIM_ISSUED Misc. reimbursement issued• MISC_REIM_CLOSED Misc. reimbursement request closed.

Page 37: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

State and State Transitions

TRIP_SUBMITTED

TRIP_FORWARDED

Admin

TRIP_CLOSED

Admin

Admin

TRIP_INITIAL

Traveler

Admin

Admin

Trip Records

Admin

MISC_REIM_SUBMITTED

MISC_REIM_TEV_SENT

MISC_REIM_TEV_RETURNED

MISC_REIM_ISSUED

Admin

Admin

Admin

Admin

MiscReimburse Records

FULL_REIM_SUBMITTED

FULL_REIM_TEV_SENT

FULL_REIM_TEV_RETURNED

Admin

Admin

FULL_REIM_ISSUED

Admin

Admin

FULL_REIM_INITIAL

Traveler Admin

FullReimburse Records

Traveler

AUTH_SUBMITTED

AUTH_APPROVED AUTH_DENIED

Traveler(Pre-approved)

or AdminAdmin

Auth Records

TRIP_ERROR

Application

AUTH_ERROR

Application(Copies to Trip

Table)

Application

Admin

MISC_REIM_CLOSED

Admin

Admin

Admin

FULL_REIM_CLOSED

Admin

Admin

Admin

Admin

Admin

Traveler

CCBF Travel ApplicationAllowable States and Transitions

Page 38: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Administrative Functions

• Authentication/Authorization

• Maintenance/Actions

• State and State Transitions

• Reports

Page 39: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Administrative Functions

• Reports –Travel History–Travel Status–Traveler Summary Travel –Authorization History–Travel Authorization Summary

Page 40: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Administrative Functions

• Filtering and search screens

• Links between reports and maintenance functions

• Transaction change tracking

Page 41: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

C&C Travel Application

• User Functions - 20%

• Administrative Functions - 80%

Page 42: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Prototype to Application

How did we get there…

Scott Stephenson

Page 43: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

How Did We Get There?

• Design

• Develop/Implement

• Test and Release

• Support

Page 44: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Design Process

Client/UserInterviews

FunctionalSpecification

ApplicationPrototype

UsabilityTesting

Client/UserDesign

Sessions

DevelopmentTeam Design

Sessions

Page 45: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Don’t Forget the Client/Users!

• Engage the client to make them feel ownership in the process

• Demonstrate that real progress is being made– Generate excitement!

• Make sure what we’re doing is what the client and users want/need– Contain scope creep– Avoid wasted time and money– Catch “hidden” requirements early in the process

• Discuss outstanding issues and problems

Page 46: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Design Process

• Client and user interviews– Involve them early and often– Discover key business processes to be

included in the application– Discover “hidden” requirements early

• Development Team design sessions– What are the functional elements of the

system?– How do these elements work together?

Page 47: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Design Process cont’d

• Client/user design sessions

– Discuss outstanding issues/questions– Create/review application prototype– Refine prototype after each session

• Usability testing

– Scope of application and user base determines if it’s needed

• Write detailed functional specification

Page 48: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Functional Specifications

• UML use cases for each functional element

– Prototype screen shots

– Detailed documentation of integration points

– Document any issues

Page 49: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

UML Use Case

• Actor is an entity (people or systems) that interacts with the system to achieve a desired goal.

• Summary describes the interaction between the actor and the system and the value that the use case adds to the system.

• Preconditions are external conditions outside the scope of the use case that must be satisfied before the use case can occur.

• Postconditions are actions that must be satisfied after the use case has completed successfully.

• Trigger describes conditions that are expected to be true when an actor enters a use case. The trigger may describe a business need or be time-related, or could be the completion of another use case.

Page 50: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

UML Use Case cont’d

• Normal Flow describes the steps that the actor and the system go through to satisfy the goal of the use case. Normal flow describes the most common scenario for the use case.

• Alternate Flow describes the less common or unusual events of the use case, although it does not include errors or exceptions.

• Exception Flow shows the interactions that occur when an error or exception is encountered.

• Issues document assumptions, external conditions, unresolved issues, or possible future enhancements related to the use case.

Page 51: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Example Use CaseActor

World

Summary

UW NetID and password are entered in order to authenticate as a valid UW NetID holder.

Preconditions

Actor must already have a UW NetID in order to log in.

Postconditions

None.

Trigger

Actor requests a page in the application that requires UW Authentication.

Normal Flow

The System presents the UW NetID login page.

Actor enters UW NetID and password.

The System authenticates the Actor as a UW Affiliate and continues on to Authorization.

Page 52: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Example Use Case cont’dAlternate Flow

None.

Exception Flow 1

Actor does not have a UW NetID. A link is already provided on the UW Authentication Page which presents information on how to obtain a UW NetID.

Exception Flow 2

Actor has a UW NetID but has forgotten the password. A link is already provided on the UW Authentication Page which explains how to get a new password assigned.

Issues

On the C&C IIS servers, this page is displayed automatically if the destination URL is beneath a secured directory and the Actor has not already authenticated. Secured directories are named ‘uwnetid’.

Authentication functionality is already in place using central resources.

Page 53: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Functional Specifications cont’d

• Miscellaneous processes

– e.g. batch processes and external system dependencies

• Database schema discussion

– Schema diagram– Purpose statement for each table– Detailed description of all table columns

Page 54: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Database Schema Diagram

TravelStatus

PK status_code

group_namedisplay_valuedescriptioninitial_uwnetidinitial_timestampupdate_uwnetidupdate_timestamp

TravelAgent

PK travel_agent_id

agent_name_firstagent_name_lastagent_phoneagent_emailagent_faxagency_nameactiveinitial_uwnetidinitial_timestampupdate_uwnetidupdate_timestamp

FullReimburse

PK,FK1 trip_id

special_considerationscar_rentaltaxi_shuttlepers_vehicle_to_locpers_vehicle_to_milespers_vehicle_from_locpers_vehicle_from_milesparkingairfareother_transportlodginguse_per_diemmeals_no_reimburseevent_reg_feephoneinternet_hookuplaundryother_expenses

FK2 status_codeinitial_uwnetidinitial_timestampupdate_uwnetidupdate_timestamp

MiscReimburse

PK misc_reimburse_id

FK1 trip_iddescription

FK2 status_codeinitial_uwnetidinitial_timestampupdate_uwnetidupdate_timestamp

CentralSecurity

PK uwnetid

FK1 security_levelname_firstname_lastinitial_uwnetidinitial_timestampupdate_uwnetidupdate_timestamp

SecurityLevel

PK security_level

descriptionreportadministersuperuserinitial_uwnetidinitial_timestampupdate_uwnetidupdate_timestamp

Division

PK division_code

short_namelong_nameactiveinitial_uwnetidinitial_timestampupdate_uwnetidupdate_timestamp

AuthSecurity

PK auth_security_id

FK1 division_codeuwnetidname_firstname_lastemailactiveinitial_uwnetidinitial_timestampupdate_uwnetidupdate_timestamp

Trip

PK trip_id

FK1 traveler_idFK2 auth_id

destinationdeparture_monthdeparture_daydeparture_yeardeparture_timereturn_monthreturn_dayreturn_yearreturn_timepurposeevent_nameevent_urluse_leaveleave_datesuse_air_travelair_originair_destinationair_departure_monthair_departure_dayair_departure_yearair_departure_timeair_return_monthair_return_dayair_return_yearair_return_timeair_number_ticketsair_number_stopsair_trip_typeuse_lodginglodging_checkin_monthlodging_checkin_daylodging_checkin_yearlodging_checkin_timelodging_checkout_monthlodging_checkout_daylodging_checkout_yearlodging_checkout_timelodging_preferred_hotellodging_is_event_hotellodging_number_guestsuse_rental_carcar_pickup_locationcar_dropoff_locationcar_pickup_monthcar_pickup_daycar_pickup_yearcar_pickup_timecar_dropoff_monthcar_dropoff_daycar_dropoff_yearcar_dropoff_timecar_sizecar_othercar_explanationspecial_considerations

FK3 status_codepo_numbertravel_coordinatornotes

FK4 travel_agent_idforward_timestamperror_messageinitial_uwnetidinitial_timestampupdate_uwnetidupdate_timestamp

Traveler

PK traveler_id

name_firstname_lastuwnetidphoneemail

FK1 division_codemailboxuse_corporate_cardemerg_contact_nameemerg_contact_phonespecial_considerationsrestrictionsseat_aftseat_aisleseat_bulkheadseat_exit_rowseat_forwardseat_windowdiet_dairy_freediet_diabeticdiet_fruit_platediet_kosherdiet_low_fatdiet_low_sodiumdiet_vegandiet_vegetarianff_airline1ff_number1ff_airline2ff_number2ff_airline3ff_number3room_typebed_typeroom_handicaplodging_othercar_sizecar_otherinitial_uwnetidinitial_timestampupdate_uwnetidupdate_timestamp

Auth

PK auth_id

FK1 traveler_iddestinationdeparture_monthdeparture_daydeparture_yeardeparture_timereturn_monthreturn_dayreturn_yearreturn_timepurposeevent_nameevent_urluse_leaveleave_datesuse_air_traveluse_lodginguse_rental_carcar_explanationuse_event_regspecial_considerationspre_approveddecision_uwnetiddecision_commentdecision_timestamp

FK2 status_codeerror_messageinitial_uwnetidinitial_timestampupdate_uwnetidupdate_timestamp

CCBF TravelApplication

Database Schema

Page 55: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Database Schema Descriptions

MiscReimburse

This table stores the traveler’s miscellaneous reimbursement request information. There can be one or more of these per trip.

Field Description Type Meaning

misc_reimburse_id integer unique id assigned by the application

trip_id integer unique id of trip in the Trip table

description varchar(2048) description of miscellaneous expense

status_code varchar(25) unique status code from the TravelStatus table

initial_uwnetid varchar(12) UWNetID of person who created the record

initial_timestamp datetime date and time the record was created

update_uwnetid varchar(12) UWNetID of person who last modified the record

update_timestamp datetime date and time the record was last modified

Page 56: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Functional Specifications cont’d

• List of all assumptions

– What is and what is not in the application

• List of outstanding issues

– Discussion points for client meetings– May result in additional assumptions

• List of future enhancements

– Desired functionality not in the first version.

Page 57: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

How Did We Get There?

• Design

• Develop/Implement

• Test and Release

• Support

Page 58: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Development Process

• Regular client meetings (as before)

• Iterative code<- ->test cycle

– Code to the specification!– Employ collaborative coding where

useful– Peer code reviews– Write and run unit tests

Page 59: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Development Process cont’d

• Peer code review– Does my coding approach/design make sense?– What did I miss?

• In-code documentation– Standard file headers (copyright, author, date, notes,

etc.)– Modification notes (in version control too)– Javadoc or similar

• Use Common Application Architecture

Page 60: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Common Application Architecture

• A structured, common set of development “best practices” and reusable classes (Java and C#) with a “standard” API.– Makes 2+/3-tier Web development realizable

despite tight schedules– Simplifies XML generation and XSLT

transformations– Minimizes dependencies on platform dependent

code– Provides sophisticated logging capabilities to help

diagnose problems

Page 61: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Common Application Architecture cont’d

– Eases application cross-training– Provides design and coding efficiencies– Helps provide better application support– Helps manage change– Handles multiple computing environments

Page 62: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Computing Environment

• Primarily a Microsoft shop

• “Yesterday”: ASP, Java, JavaScript, ADO, SQL Server

• “Today”: ASP.net, C#, ADO.net, SQL Server

• “Tomorrow”: ????

Page 63: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Computing Environment cont’d

DEVELOPMENT EVALUATION RELEASECANDIDATE

PRODUCTION

DesktopMachine

RCServer

Eval.Database

Dev.Server

Eval.Server

Dev.Database

Read-Only

Dev. VSS

Prod.Server 1

Eval.VSS

RC VSS

Prod.Database

Prod.Server N

Prod.Server 2

ooo

Automated Process

Read-Only

Prod.Database

Page 64: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Tools We Use

• C# and Java

• XML and XSLT

• ASP.net, ASP and JavaScript.

• Visual Studio.net and Visual Studio

• Visual Source Safe (version control)

• ADO.net and ADO

Page 65: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

How Did We Get There?

• Design

• Develop/Implement

• Test and Release

• Support

Page 66: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Test and Release Process

• Evaluation release for testing

• Track bugs in a database and prioritize

• Iterative beta testing with client

• Write and execute detailed functional test plans (integration testing)

Page 67: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Bug Tracking

Page 68: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Test Plans

Page 69: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Test and Release Process cont’d

• Use unit test suite as element of regression testing

• Release candidate testing

• Client/user training sessions

• Production!

• Refresh documentation

Page 70: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

How Did We Get There?

• Design

• Develop/Implement

• Test and Release

• Support

Page 71: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Support Process

• Additional client/user training sessions, as required (train the trainers)

• Application health monitoring

• Bug tracking and resolution

• General computing infrastructure support

Page 72: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Lessons Learned

• Stick with a proven process

• Don’t skip the client/user interviews

– Start with the need, not the solution

• Don’t be afraid to “over communicate”

• Always have a project wrap-up

Page 73: C&C Project Consulting University of Washington 80% is under the hood…Moving From Prototype Web Pages to a Working Administrative Application Copyright.

May 2004 Cumrec 2004

C&C Project Consulting

Project Wrap-up

[email protected]://depts.washington.edu/cac/projects