project3_presentation

Download Report

Transcript project3_presentation

Object Oriented Help Wizard
●
●
●
James Sheets, CIS - SE
Mike Kinnell, ECE - CE
Brian Rodriguez, CIS - SE
Introduction
●
●
●
●
The project aims to:
Create a web-based program to aid in the
construction of layered, object oriented software.
Break down a project into layers, with reusable
components exposed through an interface to higher
layered components.
Include help topics and explanations to better aid
users in constructing a layered application.
Project Requirements
●
Take user input and store it
●
Display a visual breakdown of the layered system
●
Help system which can easily be navigated, to
allow the user to better use the program
Major Constraints
●
Simple program; limited in depth.
●
Requires web server with PHP
Data Design
●
●
A Component represents a basic functionality that
should be implemented in a layer.
A Layer stores a number of Components, the
layer's name, and the layers level.
Data Design
●
●
Data structure stored in a SESSION variable.
Help Data class holds a static listing of all help
topics and documentation.
Architecture
Diagram
Input field component
●
Each page passes input information into program.
Help link component
●
Subject links to help data.
Next button component
●
HTML button; step through program.
Finish button component
●
HTML button; show display diagram.
Back button component
●
Web browser button; move back in program.
Restrictions, limitations,
constraints
●
●
●
Requires a web server that supports PHP and
Pear’s HTML/Quickform extensions for PHP
Requires a client computer with a web browser
that supports the World Wide Web Consortium
(W3C) HTML 3.0 standard and may not operate
properly other browsers.
Does not support WAP or mobile web browser
applications.
User Interface
●
Font Sizes:
We use a relatively large font size to make it easy
for users to read the screen without distractingly
large.
User Interface
●
Separation of Areas:
Simple, easy-to-use design.
User Interface
●
Color Scheme:
Easy on eyes.
Errors stand out.
Unit Testing
●
●
●
Black box testing
Each input page will have test data entered
This will prove that each of the output generation
modules are fully functional and will also test for
the appropriate actions of the hyperlinks and input
modules if the input data is incorrect or missing
Integration Testing
●
●
●
●
Top down integration testing strategy
Will involve the incorporation of the input and
output modules into the CGI handler of the host
web server
The modules should generate the proper HTML
pages as predicted without error.
We will also be testing each page and module for
correct handling of the browsers built-in caching
functions and what happens if the user hits the
browsers back or forward buttons.
Validation Testing
●
●
●
●
Every function will be tested to demonstrate
conformity with the requirements
The Next and Help hyperlinks buttons will be
tested to ensure that the resulting output page has
the correct information
The system will be tested with different browsers
and should handle the browsers back and forward
functions properly
The final layered system model displayed should
be accurate and complete.
High-order Testing
●
●
●
Stress testing will be done using a macro program
that will rapidly and repeatedly navigate though
the user interface. The website should generate the
appropriate output without errors or unpredicted
results.
Performance testing will be done on modules to
ensure that no significant bottlenecks are present
and that the modules can handle rapid calls
without degradation to system performance.
Beta test version will be generated to test the entire
system and ensure that the system performs as
expected with various users and user inputs.
Demo Time
Questions?