Presentation is loading. Please wait.

Presentation is loading. Please wait.

Comp 410: Final Project Christopher Alme Christopher Nunu Dennis Qian Stanley Roberts.

Similar presentations


Presentation on theme: "Comp 410: Final Project Christopher Alme Christopher Nunu Dennis Qian Stanley Roberts."— Presentation transcript:

1 Comp 410: Final Project Christopher Alme Christopher Nunu Dennis Qian Stanley Roberts

2 Comp 410 Software Engineering Methodology Create a Mock Software Company “Customer” commissions a new product Semester-Long Project Dr. Wong, 3 Teaching Assistants, 1 Client, 4 Students Warm-Up Project: Battle Ships

3 Team Organization Project Manager: Christopher Alme Student Directed Self Assigned Milestones Freedom to make choices (and mistakes) Team Collaboration Tools SharePoint Server: Collaboration Website Team Foundation Server: Version Control

4 Client Proposal Interactive Art Scalable number of users Dynamically changing inputs Possibly including game controllers Visual representation of the population of inputs

5 Into The Cloud Dynamic Scalability Minimal Initial Investment Communal Hardware Pay As You Go Classic Examples: Batch Processing Website Services offered by: Amazon, Google, IBM, Microsoft

6 Drawbacks of the Cloud Trust Communal Servers Data outside the corporation Vulnerability to Attack Data sent over the Internet Catastrophic Events Recovery at the mercy of the cloud owner

7 Ideal Cloud Customer Minimal cost Scalability Minimum Data Risk

8 Microsoft Azure Platform Compute Platform Storage Platform Development Tools

9 Uncharted Skies: Streaming Cloud Real time data streams ground -> cloud Process data in the cloud Stream the results back to the ground Huge Parallel Processing Capability

10 Practical Uses Air Traffic Control Environmental Sensors Inventory Tracking Surveillance Home Automation

11 User Experience: The Ground Connect Streams to the Cloud Manage Processing of Streams Visual Representation of Results

12 Architecture: The Ground Control Panel Cloud Settings Options Status Stream Manager Stream Stream Up Stream Manager Stream Stream Up Stream Manager Stream Stream Up Display Visual Representation of Cloud Output Stream Down Visual Representation of Cloud Output Display Visual Representation of Cloud Output Stream Down Stream Manager Provides a way for the user to connect streams up into the cloud Arbitrary number of running instances Dynamically add/remove Streams User Friendly Stream Manager Provides a way for the user to connect streams up into the cloud Arbitrary number of running instances Dynamically add/remove Streams User Friendly Display Receives streaming output from the cloud Renders the output from the cloud Displays the results on a screen Arbitrary physical location Display Receives streaming output from the cloud Renders the output from the cloud Displays the results on a screen Arbitrary physical location Control Panel Administration of cloud functionality How streams are used in processing Coordinate the Creation of Cloud Varies based on scale Control Panel Administration of cloud functionality How streams are used in processing Coordinate the Creation of Cloud Varies based on scale

13 User Experience Demo

14 Cloud Structure Control Process Creates the cloud structure Feature Extractor Cloud Entry Point Mixers Perform functional operations on streams Display Adapter Cloud Exit Point State Repository Stores information on cloud structure

15 Message Architecture – The Cloud Feature Extractor Stream Feature Extractor Stream Feature Extractor Stream Mixer Stream Display Adapter Stream Display Adapter 2-way Message Control Process Stream EntryProcessing of StreamsStream Exit State Repository Control Process Creates the Cloud structure Communicates the status of the cloud to the user on the ground Provides user access to the cloud structure Control Process Creates the Cloud structure Communicates the status of the cloud to the user on the ground Provides user access to the cloud structure Feature Extractor Stream entry into the cloud Single Stream Number Crunching Converts streams into internal events Forwards events to proper Mixer Feature Extractor Stream entry into the cloud Single Stream Number Crunching Converts streams into internal events Forwards events to proper Mixer Mixer Syncs and Processes Streams Given an arbitrary lambda Linked to produce a graph of operations Mixer Syncs and Processes Streams Given an arbitrary lambda Linked to produce a graph of operations Display Adapter Stream exit point, connection to Display Converts the processing results to Visualization commands Different adapters can be set to produce different results Display Adapter Stream exit point, connection to Display Converts the processing results to Visualization commands Different adapters can be set to produce different results State Repository Shared Database Stores Cloud Configuration Data Allows for re-creation of lost module State Repository Shared Database Stores Cloud Configuration Data Allows for re-creation of lost module

16 Software Engineering What it means to develop large software projects Making mistakes Proper planning and design What it means to be part of a team Time Management Division of labor Enterprise Architecture Design Understanding how to approach something new

17

18 Questions


Download ppt "Comp 410: Final Project Christopher Alme Christopher Nunu Dennis Qian Stanley Roberts."

Similar presentations


Ads by Google