Presentation is loading. Please wait.

Presentation is loading. Please wait.

CSC 440/540 Team 5 MOBILE SMIL IN THE CLOUD. INTRODUCTION Team 5 TED LANDIS.

Similar presentations


Presentation on theme: "CSC 440/540 Team 5 MOBILE SMIL IN THE CLOUD. INTRODUCTION Team 5 TED LANDIS."— Presentation transcript:

1 CSC 440/540 Team 5 MOBILE SMIL IN THE CLOUD

2 INTRODUCTION Team 5 TED LANDIS

3 INTRODUCTION Team 5 James Neilan Project Management, GUI and Composer Adil Khan Developer, Communications Keith Brown Architect, Cloud Communications Hans Hagen Developer, Player, Project Management Ted Landis Testing and Demo Creation

4 PROJECT OVERVIEW Team 5 HANS HAGEN

5 THE MOBILE PLATFORM Team 5 Android Version 2.2 API 8 Eclipse Plug-In Android SDK

6 PROJECT OVERVIEW Team 5 XMPP SMIL XMPP SMIL HTTP MEDIA HTTP MEDIA COMPOSER PLAYER COMMUNICATION PROVIDER CLOUD

7 DEPLOYMENT DIAGRAM - OVERVIEW Team 5

8 ACTIVITY DIAGRAMS - OVERVIEW Team 5 Helped us to realize the project breakdown.

9 CLASS DIAGRAMS - OVERVIEW Team 5 Helped us to communicate our code design.

10 COMPOSER & APP. GUI Team 5 JIM NEILAN

11 APPLICATION GUI Team 5 Issues How to Integrate Components How to Launch Activities  Intents How to Send Messages Framework Learning the Android SDK

12 COMPOSER Team 5 Issues How to Add/Remove Views How to Save/Send How Add Object Info  Intents Matching the Player Objects GUI and Comms

13 COMPOSER Team 5 Highlights Adding Image, Text, Audio, Video Saving,Sending, Deleting Setting Parameters Using Player for Previewing

14 USECASE DIAGRAMS - COMPOSER Team 5

15 ACTIVITY DIAGRAMS - COMPOSER Team 5

16 CLASS DIAGRAMS - COMPOSER Team 5

17 COMMUNICATION Team 5 ADIL KHAN

18 COMMUNICATION Team 5 COMMUNICATION PROVIDER Two Modules Comprise the CommunicationProvider SmilTransporter CloudDataProvider Both are Singletons

19 COMMUNICATION Team 5 COMMUNICATION PROVIDER

20 COMMUNICATION Team 5 COMMUNICATION PROVIDER Steps to Transmit the SMIL Message Upload assets (Audio,Video,Image to cloud) Handled by CloudDataProvider HTTP (Apache HttpClient Library) Returns BlobStore Key

21 COMMUNICATION Team 5 Encode the URL of the BlobStore Key in the Smil object. Replaces local path eg: “/sdcard/chair.bmp” With Cloud path: http://1.csc440mediastore.appspot.com/serve?blob- key=AMIfv945sJ1WUX9sIqeJr_jjAS3XcWCuNH5ReIuamFOuBCtOh0TENWzk wdCcRQMVnja0Gb0xO3YeaCecac6vmV8sX5_exnxUdb1s1JBxyc62Tj1JZMkt oLH2IdnPfTtoSc4i8kie4WZbtVmgzCO4Au-RCjmwdhOLrg"

22 COMMUNICATION Team 5 COMMUNICATION PROVIDER Generate XML using the Simple Xml Framework’s serialize functionality

23 COMMUNICATION Team 5 COMMUNICATION PROVIDER Simple XML SimpleFramework Light weight alternative to JAXB. Annotate Model Classe Serialize/Deserialize from JAVA to XML and back

24 COMMUNICATION Team 5 COMMUNICATION PROVIDER 4. Send SMIL XML to endpoint using XMPP protocol. Conducted in the SmilTransporter class Asmack Library is used to provide high level XMPP functionality ComposerPlayer XMPP via ASMACK Library

25 COMMUNICATION Team 5 COMMUNICATION PROVIDER 5.Player checks for new message, using the SmilTransporter class. CloudDataProvider used to download Assets from cloud SMILMedia List generated and consumed by Player to play the file. Player

26 COMMUNICATION Team 5 COMMUNICATION PROVIDER Player Files Downloaded. SMIL Objects renamed with local paths Http Request for download with blob-key SimpleXML framework used to Deserialize SMIL xml to List of SMILMedia Objects and made available to the Player

27 USECASE DIAGRAMS – COMMUNICATION PROVIDER Team 5 3 rd Party Libraries used: HttpClient http://hc.apache.org/httpcomponents-client-ga/ Asmack/Xmpp library: http://metajack.im/2010/02/10/xmpp-library-for-android-developers/ Simple XML Framework: http://simple.sourceforge.net/

28 USECASE DIAGRAMS – COMMUNICATION PROVIDER Team 5

29 ACTIVITY DIAGRAMS - COMMUNICATION PROVIDER Team 5

30 CLASS DIAGRAMS - COMMUNICATION PROVIDER Team 5

31 CLOUD ENVIRONMENT Team 5 KEITH BROWN

32 CLOUD ENVIRONMENT Team 5 Cloud Platform: Google App Engine  Some familiarity  Good integration with Eclipse IDE Seemed like a logical choice for Android

33 Design Considerations Team 5 Considerations: Had to be able to upload and download large multimedia files.  Blobstore API provided this functionality Had a choice of developing in Python or JAVA (modified J2EE)  Chose JAVA due to familiarity and performance  JAVA would be running as a Servlet which has inherent Multi- Threading  This would be more efficient than Multi-Processing which Python would be as a CGI

34 Implementation Issues Team 5 Issues Overcome: The greatest challenge was conforming to the API for the Blobstore  Blobstore designed more for accessing from a web page  Getting the upload key presented a challenge  Keeping track of file types also presented a challenge Where as our app should have been able to run for free in order to use the Blobstore billing needed to be enabled.

35 USECASE DIAGRAMS - CLOAD MULTIMEDIA STORE Team 5

36 ACTIVITY DIAGRAMS - CLOUD MEDIA STORE Team 5

37 CLASS DIAGRAMS – CLOUD MEDIA STORE Team 5

38 PLAYER Team 5 HANS HAGEN

39 PLAYER Team 5 PLAYER Functionally Play, Pause Resume, Stop Replay, Progress Count Down Timer Start End SMILMedia Objects

40 PLAYER Team 5 ArrayList of SMILMedia Objects SMILMedia Class(abstract) Parent Class Audio SMILVisual Class TextView ImageView VideoView PLAYER

41 Team 5 Issues Using SMILMedia Class with the Composer Object Creation Composer Preview Fixes Constructor Modification View.add vs. addContentView Added self references PLAYER

42 USECASE DIAGRAMS - PLAYER Team 5

43 ACTIVITY DIAGRAMS - PLAYER Team 5

44 CLASS DIAGRAMS - PLAYER Team 5

45 MULTI-THREADING Team 5 Android Activities was used to handled all of the our multitasking(AsyncTask Class). God Loves passing INTENTS! Non-blocking Activity calls, like a fork Handler Class – Tried to use, found better ways

46 PROJECT MANAGEMENT Team 5 JIM NEILAN

47 Project Management – Pass/Fail What Worked – Communication – X-Programming – Text and Sites – “Day of Code” Meetings – 2 Hour Design Meetings – SVN (At the end) – Google Talk Team 5 What Didn’t – Communication – Initial Assignments – Water Fall Method – Time Management – ½ hr. Discussions – SVN Usage “Tell me and I will forget. Show me and I may remember. Involve me and I will learn” - MIT

48 Project Task Partitioning Assessment of Skills Assignment of Tasks Semester Adjustments Team 5 MemberPriorsAssignmentUpdatesFinal HansC++, JavaPlayerLiaison, Meeting Chair Player, Chair KeithJava, C++, XML CloudCloud/Comm. And Architect Architect, OOP AdilJava, C++, XML CommsComms and SMILSMIL, Integration TedJava, C++, iPhone Composer SMIL Composer additions Developer JimC, C++Composer, App GUI Composer, Integration, App Integration

49 Project Schedule Team 5

50 Project Communication Weekly Meetings “Day of Code” Meetings (3) Email…A Great Many of Them… Google Project Hosting Minutes and Agendas Voice and Texts Google Talk Team 5

51 INSPECTION Team 5 HANS HAGEN

52 INSPECTION - DOCUMENTS Team 5 Formal Inspection Fagan Inspection Forms Reviewed each section of the document One final review for the document. Inspection Meeting Form Issue Logging Form Inspection Moderator Form

53 INSPECTION - CODE Team 5 Informal Review  Desk check of a software engineering  Verify that the software meets its requirements Pair Programming  Uncover errors in function, logic, and implementation

54 TESTING Team 5 ADIL KHAN

55 TESTING Team 5 White Box Testing Black Box Testing

56 TESTING Team 5 White Box Testing Tested SmilTransporter library with google chat client. Tested CloudDataProvider with local GAE server and then with actual Cloud with billing enabled. (inconsistencies found). Tested Composer/Player functionality, in playing various components on emulator/real device. (Inconsistencies on emulator found). Tested SMILMedia ArrayList Structures, passed to and from CommunicationProvider.

57 TESTING Team 5 Black Box Testing Tested Interface between Composer and Communication Provider. Upload of files Passing of SMIL Messages. Tested interface between Player and Communication Provider. Download of Files Receiving of SMIL Message.

58 TESTING Team 5 Black Box Testing (Continued) Tested consistency of SMIL message passed from Composer to Player. Play SMIL on composer and compare to Playing on player.

59 Demo Summary Team 5 TED LANDIS

60 Mobile SMIL in the Cloud DEMO Team 5


Download ppt "CSC 440/540 Team 5 MOBILE SMIL IN THE CLOUD. INTRODUCTION Team 5 TED LANDIS."

Similar presentations


Ads by Google