Team Everest
1 / 36

Team Everest Architectural Design Review September 15, 2011 - PowerPoint PPT Presentation

  • Uploaded on

Team Everest Architectural Design Review September 15, 2011. From: Team Members. Larry Battle (CSE). Chris Brown (SE). Erica Llaca (SE). Bikash Acharya (CS). * Product Summary * Requirements * Layers / Sub-layers * Testing

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about ' Team Everest Architectural Design Review September 15, 2011' - thanh

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Team Everest

Architectural Design Review

September 15, 2011


Team Members

Larry Battle (CSE)

Chris Brown (SE)

Erica Llaca (SE)

Bikash Acharya (CS)


* Product Summary

* Requirements

* Layers / Sub-layers

* Testing

* Motivation

* Flexibility

* Feasibility


Customer Requirements

1) The product will run in real time and have the results without lag.

2) The software shall process little response time

Customer Requirements

3) The product shall have minimally invasive hardware

Customer Requirements

4) The product shall track all ranges of concentration

Customer Requirements

5) The product shall have little to no notification of concentration awareness

Customer Requirements

6) Must run on an average computer system.

Question: What are specs for an average computer system in 2011?

Image from:

Question: What are specs for an average computer system in 2011?

Answer:CPU: 2.0GHz dual-core or betterRAM: 2-4GBHard drive: 160GB+Video: 512MB - 1GBOS: Windows XP or better

Image from:

Ads history

ADS History

Ads history1

ADS History

Ads history2

ADS History

Overview of Layers

Server Image from:


Sub Layers

Input Sub-layer


* Communicate with the external devices

* Simply the input data into categories.

* Compress all the input into one object.

Database Sub-layer


* Allow our program to communicate with the database.

Manager Sub-layer


* Provide an API for interfacing with our program.

Event Handler Sub-layer


* Coordinate sub-layers communicate.

Analyzer Sub-layer


* Analyzes the user state and action history to determine if the an attention getter should be launched.

Check Sub-layer


* Does error checking for the sub-layers.

* Calibrates the EEG.

* Reports errors to the Manager sub-layers.

Browser Sub-layer


* Communicate with the web browser.

* Controls when our program should be on and off.

Question: Which browser do you prefer?

Testing Driven Development

“Test-driven development (TDD) is a software development process that relies on the repetition of a very short development cycle” –

4 main stages of TDD.

1) Write a test case.

2) Watch it fail.

3) Program it to pass.

4) Refactor

Testing for I/O Layer

1) Can the input sub-layer process the input from

the external devices within a reasonable amount of time?

2) Can the database sub-layer add, update, delete

data from the database?

3) Does the input and database sub-layers sent data to the

appropriate location?

4) Does the input simplify the data correctly?

Testing Logic Layer

1) Can the Check Sub-Layer find and report errors?

2) Does the Event Handler send data to the function of the

assigned Destination?

3) Do all the sub-layers communicate

with the Event Handler correctly?

4) Does the Analyzer sub-layer launch an attention getter

event when the user isn’t concentrated for a certain time period?

Testing Controls

1) Can the Browser Sub-Layer communicate with the browser?

2) Are the attention getters appearing on the screen for

the designated time?

3) Can the Browser Sub-Layer turn off our program

when the browser is closed?

Possible Changes:

- Event Handler helps abstracts the functions calls to the sub-layers.

- Any changes to the inputs devices is handled by the Input Sub-Layer

Alternative Architecture 1


- Move the Manager Sub-Layer to the Controls Layer

- Integrate the Check sub-layer into the Event Handler sub-layer.

Alternative Architecture 2


- Try to make each sub-layer connect to only one sub-layer.

- Eliminate the Check and Event Handler sub-layers.


Possible Hardware alternative




Any Questions?