27
Windows Azure Team 9 Ben Holland Bao Nguyen Eric Petrowiak Barret Schloerke

Windows Azure Team 9 Ben Holland Bao Nguyen Eric Petrowiak Barret Schloerke

Embed Size (px)

Citation preview

Windows AzureTeam 9

Ben HollandBao Nguyen

Eric PetrowiakBarret Schloerke

Problem Statement

Windows Azure (Cloud hosting platform) is new and bugs need to be found

Playing the role of 3rd party developer to design and implement a web system which should then be migrated to the Microsoft Azure Cloud.

 Must use:• Silverlight• Azure, Microsoft SQL, RIA Services

Requirements

• Create an application that tests Azure’s capabilities and general issueso Cloud Hosting Powero Security/Personalized Informationo Integration with application

 • Use Required Systems

o Windows Azureo Silverlighto RIA

 • Document cloud migration issues• At the same time choose a challenging project that we can

enjoy working on

Project Proposal

• A Personalized Readero Fetches articles or blog posts that matches your search criteria

 

• This differs from other search engines…o Our system allows for passive userso Searches specific stories on specific domainso Proactive search apposed to reactive (on demand)o User’s history/results are saved

Concept Diagram

Development Environments

• Visual Studio 2008o .NET frameworko Silverlighto RIAo Azure SQL

• Subversion• Virtual Machines with remote access

Customer Functional Requirements

• Must be hosted on the Azure Platform

• Must use Silverlight for the user view

• Must use RIA Services to perform the middle tier operations

• Must be a user centric applications which includes user profiles

 • Ability to iteratively update application once already installed

on Azure

Customer Non-Functional Requirements

• User security (profile and user data is private) • Project must scale with user traffic appropriately (throttling)

 • Background operation of fetching materials is efficient (third

party libraries and throttling)

Architectural Sequence Diagram

Sequence Diagrams

Demo

Show Demo of Cloud Reader Application 

• Login Functionality            • Atomic CRUD Operations

Design Constraints

• How to add different search engines?      (Modularization)

• How do different search engines return results?     (Hierarchical interfaces, Results -> ImageResult, TextResult)

• How can we throttle the processing usage?     (Thresholds for computed time to complete queues)  • How can we limit exceeding our allocated storage

resources?    (User quotas)

Technical Approaches (Overview)

Technical Approaches (Entity Framework)

Technical Approaches (Server Side Framework)

Testing Description

• Automated unit tests     (Entity CRUD Operations, Search engine queries)

• Visual inspection     (Interface interaction)

• Stress/Performance testing     (High/Medium/Low load testing, throttling inspection)

Measurable Milestones

• Twitter working on one account

• More than one data source working

• Migrate application to Microsoft Azure Cloud

• Full Scale Testing / Real Time Interaction • Ability to demonstrate throttling abilities

Risks

•  Learning Curve (New technology, confusing/conflicted documentation)

 • Server side processing

• Interface Usability (Silverlight issues) • Third Party API limitations (Rate limiting on Twitter, Digg,

Reddit, ect.)

• Migrating to Azure Cloud (Compatibility issues) • Client does not want the application; instead, they want to

know the difficulties we faced

Project Resource Costs

• Project Hosting (break down on following slide)

• Microsoft has provided student software site licenses o  Visual Studio IDEo  Microsoft SQL Servero  Windows Server

Hosting Costs

Conclusion

A lot of progress has been made and we about on par with our original aggressive goals.

Conclusion

• Positive Feedback from Microsoft • Positive Feedback from Adviser

 • Working Demo produced to perform atomic CRUD

operations on entities and user account authentication • Progress is starting on the background server operations

Plan for Next Semester

• Labelso "Creating a Label", "Saving a Label", and "Editing a Label"o 4/30/2010

• Ruleso "Scheduling Rules", "Rule Based Searching", "view Results",

"Remove Results", and "Remove Label"o 5/31/2010

• Validation and Throttlingo 6/30/2010

• Rule Supporto 7/31/2010

• Search Digg and Twittero 9/30/2010

• Stress Testo 10/31/2010

• Final Documentation