project: web-based pet matching portal 09/09/09 by phil, edgar, and tuan

Post on 18-Jan-2016

213 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Project: Web-Project: Web-based Pet based Pet

Matching PortalMatching Portal09/09/0909/09/09

By Phil, Edgar, and TuanBy Phil, Edgar, and Tuan

1. Introduction 1. Introduction

We are creating a web-based We are creating a web-based matching service.matching service.

Create application that matches Create application that matches potential pet owners with dogs potential pet owners with dogs based on characteristics of owners based on characteristics of owners and pets.and pets.

Create and manage a database of Create and manage a database of dogs and ownersdogs and owners

Customer DescriptionCustomer Description

Our customer is a dog and owner Our customer is a dog and owner matching companymatching company

Wants the system to be intuitive, Wants the system to be intuitive, user friendly, and secure. user friendly, and secure.

Wants a management console where Wants a management console where they can update the system library they can update the system library with new breed information and with new breed information and data.data.

User CharacteristicsUser Characteristics

USER1: The client (dog and owner USER1: The client (dog and owner matching company) will use management matching company) will use management console where they can update the system console where they can update the system library with new breed information and library with new breed information and data without needing to know SQL.data without needing to know SQL.

USER2: potential pet owners enter their USER2: potential pet owners enter their info and preferences. A program will then info and preferences. A program will then search through a database of dogs and search through a database of dogs and process a list of the best and runner up process a list of the best and runner up matches based on the customer profile.matches based on the customer profile.

Problem DefinitionProblem Definition

The client has multiple databases The client has multiple databases that need to be consolidatedthat need to be consolidated

The client needs a simple low cost The client needs a simple low cost way that customers can access this way that customers can access this database in an organized waydatabase in an organized way

The client needs a way to be able to The client needs a way to be able to keep this database up-to-datekeep this database up-to-date

Product DescriptionProduct Description

The system will consist of a 3-tier The system will consist of a 3-tier application model.application model. The presentation layer (GUI)The presentation layer (GUI) The functional layerThe functional layer The database layerThe database layer

Presentation LayerPresentation Layer

The The presentation layerpresentation layer will consist of will consist of a web-based graphical user interface a web-based graphical user interface which can be accessed from a which can be accessed from a workstation, a web page or a kiosk.workstation, a web page or a kiosk.

The GUI will consist of selectable The GUI will consist of selectable buttons and text input capability. buttons and text input capability. Input will be accessible by keyboard, Input will be accessible by keyboard, mouse or touchscreen. Output can mouse or touchscreen. Output can be seen by monitor and printer. be seen by monitor and printer.

Functional LayerFunctional Layer

The The functional layerfunctional layer will be processing will be processing 4 major components of the system.4 major components of the system.

Gathering inputted dog Gathering inputted dog characteristicscharacteristics

Storing user profile characteristics.Storing user profile characteristics. Searching the database for matches Searching the database for matches

according to dog characteristicsaccording to dog characteristics A Management consoleA Management console

Database LayerDatabase Layer

The database layer will store data The database layer will store data for the customer profiles and dog for the customer profiles and dog inventory.inventory.

Level – 0 DFDLevel – 0 DFD

InputsInputs

The customer will be The customer will be inputing two sets of data inputing two sets of data into the program through into the program through the use of a keyboard, the use of a keyboard, track-ball, and/or touch track-ball, and/or touch screen.screen.

The input data collected The input data collected will be of the dog will be of the dog specifications and the specifications and the customer specifications.customer specifications.

OutputsOutputs Here is just one example of the visual or Here is just one example of the visual or

printable output that would occur on the printable output that would occur on the monitor or printer. It would show monitor or printer. It would show information such as gender and breed information such as gender and breed information.information.

InterfaceInterface

This screenshot is a rough example This screenshot is a rough example of what the customer end GUI will of what the customer end GUI will look like. The final product is likely look like. The final product is likely to go through many revisions.to go through many revisions.

InterfaceInterface This screenshot is a rough example of what This screenshot is a rough example of what

the management console GUI will look like. the management console GUI will look like.

Machine InterfacesMachine Interfaces

External System External System InterfacesInterfaces

Human InterfaceHuman Interface

DFD - 1DFD - 1

Subsystem overviewSubsystem overview Dog Results SubsystemDog Results Subsystem – The dog results – The dog results

subsystem takes the desired traits entered by subsystem takes the desired traits entered by the customer and searches the database for the customer and searches the database for matches.matches.

Customer Results SubsystemCustomer Results Subsystem – The customer – The customer results subsystem (rev. customer profile) stores results subsystem (rev. customer profile) stores information about the customer. *CRM module information about the customer. *CRM module expandability.expandability.

Management Console SubsystemManagement Console Subsystem – The – The management console will allow the management console will allow the operator/manager to customize the customer operator/manager to customize the customer GUI and update the inventory. They may also be GUI and update the inventory. They may also be able to pull custom reports from the database.able to pull custom reports from the database.

Dog / Customer Dog / Customer SubsystemSubsystem

* Does not reflect latest revisions – Virtual Pets should be Dog Inventory

Management Console Management Console SubsystemSubsystem

* Does not reflect latest revisions – Virtual Pets should be Dog Inventory

Diagrammatic Models for Diagrammatic Models for Subsystems – Dog ResultsSubsystems – Dog Results

Diagrammatic Models for Diagrammatic Models for Subsystems – Customer Subsystems – Customer

ResultsResults

Diagrammatic Models for Diagrammatic Models for Subsystems – Management Subsystems – Management

ConsoleConsole

Database DescriptionDatabase Description

Our database model is relational. Our database model is relational. The benefits of relational databases The benefits of relational databases are: are: Information can be created by Information can be created by

retrieving data from multiple files even retrieving data from multiple files even if they are not all stored in the same if they are not all stored in the same locationlocation

Abundance of commercial products Abundance of commercial products exist to create or manage them.exist to create or manage them.

Data DictionaryData Dictionary

TABLE NAME ATTRIBUTE NAME CONTENTS TYPE FORMAT RANGE REQUIRED PK / FK FK REF TABLE

DOG DOG_ID dog code CHAR(5) 99999 Y PK

DOG_BREED what breed of dog VARCHAR(40) Xxxxxx Y

TRAITS_KEY traits for dog CHAR(4) 12345 Y FK TRAITS

CUSTOMER CUS_ID customer code CHAR(5) 99999 Y PK

CUS_LNAME customer's last name VARCHAR(40) Xxxxxx Y

CUS_FNAME customer's first name VARCHAR(40) Xxxxxx Y

ADDRESS_ID customer's address CHAR(5) 99999 Y FK ADDRESS

TRAITS_KEY traits for customer CHAR(4) 12345 Y FK TRAITS

TRAITS TRAITS_KEY traits code CHAR(4) 1234 Y PK

DOG_SIZE dog size (1-5) INT(1) 1 1-5 Y

DOG_ACTIVE exercise frequency (1-5) INT(1) 2 1-5 Y

DOG_GROOM grooming frequency (1-5) INT(1) 3 1-5 Y

DOG_SOCIAL the dog's socialbility (1-5) INT(1) 4 1-5 Y

ADDRESS ADDRESS_ID Address ID CHAR(5) 99999 Y PK

Address Address info VARCHAR(40) Xxxxxx Y

City City info VARCHAR(40) Xxxxxx Y

State State info VARCHAR(40) Xxxxxx Y

Zipcode Zipcode info CHAR(5) 99999 Y

Lessons LearnedLessons Learned

A custom pet breeding project was A custom pet breeding project was complex and unrealistic. Had to change complex and unrealistic. Had to change focus.focus.

Progress tracking was inherently Progress tracking was inherently accomplished by using e-mail as our accomplished by using e-mail as our main communication medium.main communication medium.

A versioning system that is A versioning system that is understandable amongst the team is understandable amongst the team is important for efficiently organizing team important for efficiently organizing team efforts.efforts.

Re-design and ReflectionRe-design and Reflection

Unforeseen roadblocks and challenges Unforeseen roadblocks and challenges may cause a significant change to the may cause a significant change to the project design.project design.

Reduced the complexity of the project by Reduced the complexity of the project by changing the focus of our project.changing the focus of our project.

Likely to go through many changes and Likely to go through many changes and revisions from rapid prototype to final revisions from rapid prototype to final design.design. --Unless your group finishes their final product during rapid Unless your group finishes their final product during rapid

prototyping.prototyping.

Successful ExperiencesSuccessful Experiences

We were able to maintain conceptual We were able to maintain conceptual integrity likely due to being a smaller integrity likely due to being a smaller group.group.

We were able to solve many design We were able to solve many design challenges by changing the main focus challenges by changing the main focus of our design. of our design. Although this changed the concept, it was a Although this changed the concept, it was a

unanimous decision as a unit.unanimous decision as a unit. We have been successful at meeting our We have been successful at meeting our

Gantt chart deadlines thus far.Gantt chart deadlines thus far.

top related