Presentation is loading. Please wait.

Presentation is loading. Please wait.

February 26, 2008 Andy Chang · Osei Simba Hinds · Rachal Royce.

Similar presentations


Presentation on theme: "February 26, 2008 Andy Chang · Osei Simba Hinds · Rachal Royce."— Presentation transcript:

1 February 26, 2008 Andy Chang · Osei Simba Hinds · Rachal Royce

2 From the Requirements:  Personal accounts Registration Login Manage account settings  Log functionality Exercise activity entry Food item entry Item entry assistance Field selection  Goal functionality Goal entry Goal progress tracking  Reporting functionality Tables Graphs  Other Web-based Database Specific pages, i.e. User Homepage (Summary Page) and Welcome/Help Page

3 System Architecture  Multi-tier, not Model-View-Controller architecture User interface tier (presentation layer) Processing tier (application layer) Data storage and access (data layer) Model-View-ControllerThree-tier

4 Presentation Layer  User interface Accepts requests from the user Displays page contents and its layout Renders output to the screen  Passes requests to the application layer

5 Application Layer  Handles requests Processes input from presentation layer ○ Checks for validity ○ Converts to system format ○ Performs calculations Calls data layer to retrieve data if necessary Returns output to presentation layer

6 Data Layer  Accepts calls from application layer  Generates database queries to retrieve the necessary data or to update the necessary tables  Returns requested output or errors to the application layer

7 Class Design  Use of Abstract Factory Pattern  Each layer divided up so that the classes correspond to the main pages/functions from the requirements Presentation Layer Dispatcher ControllerFactory AbstractController HomepageController AccountController GoalsController ReportsController Application Layer ApplicationFactory HomepageApplication AccountApplication GoalsApplication ReportsApplication Data Layer DataAccessFactory AccountDAO ExerciseLogDAO FoodLogDAO ExerciseDAO NutritionDAO GoalsDAO SessionDAO

8 Database Design

9 Request Cycle

10

11 Client Application Layer Presentation Layer Data Layer Navigates to www.nutlog.com. inputs an invalid username and password combination and presses > Sends the inputted information to Application Layer and requests for login validation Calls account data access object in the data layer to retrieve login information pertaining to the inputted username Sends a query to the database to retrieve the username’s data from the accounts table Returns the query result to the application layer Compares the user input with the retrieved information and returns an error signal to the presentation layer Generates to the output conveying the result of the request, i.e. “Invalid username or password” Slams keyboard and mutters “nutlog is a piece of $@#%!”

12 Testing Plan  Tools Mock Database ○ Store initial state information  Strategies Unit Testing ○ Test each subsystem in isolation Integration Testing ○ Top-down integration strategy Performance Testing ○ Simulate stress situations through automation Regression Testing ○ Regular compilation and running of tests Manual Testing ○ Customers as testers

13 Implementation Plan  Six builds, incrementally adding features Build 1: Shell System Build 2: Log System for Single User Build 3: User Accounts/Multiple Logs Build 4: User Guide and Help System Build 5: Goals Build 6: Reports Build n: More features

14 Problems  Design Not specific and comprehensive enough Cannot know exact design until implementation  Implementation Plan Dividing work equally ○ How to calculate time units accurately  Security Password encryption Storing sessions


Download ppt "February 26, 2008 Andy Chang · Osei Simba Hinds · Rachal Royce."

Similar presentations


Ads by Google