Transcript Slide 1

Android SMIL Messenger
Presented By:
Alex Povkov
Brad Gardner
Jeremy Spitzig
Santiago Jamriska
Introduction
This application uses the Android 1.6 Platform and later
and will provide a multimedia messaging system for
users to communicate with each other, sharing
pictures, videos, audio, and text-based content using
messages created based on the SMIL specification.
The Team
Participant
Alex Povkov
Jeremy Spitzig
Roles
Related Experience
 Implementation,
 Java, Web Technologies,
Development, Testing
Databases, XML
 Implementation,
 Java, Source control
Development,
management, Databases,
Configuration, Testing
XML
 Documentation,
 Java, MySQL databases,
Santiago Jamriska
Implementation,
PHP and web
Development, Testing
development.
 Java, Databases, Web
 Team Lead,
Technologies, XML,
Brad Gardner
Implementation,
Source control
Development, Testing
management
How does it work?
• Users can create or
view messages
• Multiple media types
can be added to a
message
• You can preview,
save or send any
message
Use Cases
• We have three
Actors: the Sender,
the Receiver and
the Server
•Both the Sender
and the Receiver
have the same main
interaction with the
application
•The server is the
mediator
Implementation (GUI)
• Main Menu: Users can
choose to create a new
message or view stored
messages
Implementation (GUI)
• Messages: In here, the
user can view received
messages, sent
messages, and saved
unsent messages.
Implementation (GUI)
• New Message: In here,
users can define the
layout of the message
After defining the layout,
users can go on to
creating the contents of
the message
Implementation (GUI)
• Add Components: Users
can choose what type of
components to add to the
message
• Text
• Images
• Audio Files
• Video Files
Implementation (GUI)
•Settings: Users can insert text, files, duration time, and
a start time to the specific components
Implementation (GUI)
• Player: Users can
preview the messages
before sending them,
and view the messages
as they are received
Implementation (Communications)
• HTTP Sockets:
Using sockets, the devices are able to communicate to
a central server where they can download the
message details.
• SMS Messaging:
SMS (Short Message Service) will be used to notify
devices that they have a new message in the central
server.
Implementation (Detailed)
Project Task Partition
Project Management
Software Configuration Management
• The Android Messenger Project was versioned and
managed using Google Code hosting.
• Project Site URL:
http://code.google.com/p/csc440androidproject/
Inspection (Communications)
Deliverable Communications
_____________________ Page 1 of 1
Team#2
Team members Brad Gardner, Alex Povkov, Santiago Jamriska,
Jeremy Spitzig
__________________________
Date 03/20/2010
No
1
2
3
4
5
6
File
SmilReceiver
SMSReciever
ClientHandler
CommunicationManager
MessageAction
SmilReceiver
LOC
Severity
Minor
Minor
Minor
Minor
Minor
Major
7
ClientHandler
8
ClientHandler
98
Minor
9
ClientHandler
62
Minor
10
ClientHandler
38
Minor
11
ClientHandler
31
Major
12
ClientHandler
33
Major
13
Major
Description
Enter comments on this file
Enter comments on this file
Enter comments on this file
Enter comments on this file
Enter comments on this file
Change the SmilConstants to the
appropriate file
Change the SmilConstants to the
appropriate file
“port” variable needs to be
referenced with “this.”
“key” variable needs to be
referenced with “this.”
“context” variable needs to be
referenced with “this.”
“action” variable has to be
declared private
“context” variable has to be
declared private
By
Santiago
Santiago
Santiago
Santiago
Santiago
Santiago
Santiago
Santiago
Santiago
Santiago
Santiago
Santiago
Inspection (Database)
Deliverable Database
_____________________________ Page 1 of 1
Team#2
Team members Brad Gardner, Alex Povkov, Santiago Jamriska,
Jeremy Spitzig _______________________________________________ Date 03/20/2010
No
LOC
File
Severity
1
151
DBAdap
ter.java
Minor
Description
Need resource.setId(-1); for the message’s
By
Alex
resource in some form here?
2
1517
Messag
e.java
Minor
Useless comments?
Alex
3
1819
Messag
e.java
Minor
Unaligned with rest of code
Alex
4
208
DBAdap
ter.java
Minor
unused variable
Alex
Minor
Code formatting (use java conventions)
Alex
5
6
Inspection (SMIL)
Deliverable SMIL API
___________________________ Page 1 of 1
Team#2
Team members Brad Gardner, Alex Povkov, Santiago Jamriska,
Jeremy Spitzig
_______________________________
Date 03/20/2010
N
o
1
File
LOC
Severity
SMILMessage.java
Minor
2
SMILReader.java
3
4
All Files
SMILMessage.java
83167
77144
All
104
143
5
Minor
Major
Minor
Description
Replace hardcoded “magic strings” with
symbolic constants.
Replace hardcoded “magic strings” with
symbolic constants.
More comments necessary
A generic function could be written for this
code accepting the serializer, tag name, a
series of attributes/values, and any text which
goes inside the tag, which builds the tag.
By
Jeremy
Jeremy
Jeremy
Jeremy
Inspection (User Interface)
Deliverable User Interface
Page 1 of 1
Team#2
Team members Brad Gardner, Alex Povkov, Santiago
Jamriska, Jeremy Spitzig
Date 03/20/2010
No LOC
File
1
24,3 TabsMenu.java
2,38
Severity
Minor
Description
Hard coded values for tab names.
By
Brad
Gardner
2
88
SMILPlayer.java
Minor
Generic Exception caught
SentTab.java
Major
Message Subject value is explicitly set
Minor
ID of extras attribute explicitly set to “test”
66
MessagePositio
n.java
InboxTab.java
Major
Message Subject value is explicitly set
6
69
DraftsTab.java
Major
Message Subject value is explicitly set
7
86
Minor
ID of extras attribute explicitly set to “test”
8
117
Major
Non-implemented catch block
9
41
FileBrowser.jav
a
FileBrowser.jav
a
AddImage.java
Minor
ID of extras attribute explicitly set to “test”
10
AddComponen
ts.java
AddComponen
ts.java
AddAudio.java
Minor
Magic Numbers used
Minor
ID of extras attribute explicitly set to “test”
12
6376
99115
43
Minor
ID of extras attribute explicitly set to “test”
13
31
AddAudio.java
Minor
ID of extras attribute explicitly set to “test”
Brad
Gardner
Brad
Gardner
Brad
Gardner
Brad
Gardner
Brad
Gardner
Brad
Gardner
Brad
Gardner
Brad
Gardner
Brad
Gardner
Brad
Gardner
Brad
Gardner
Brad
Gardner
3
65
4
30
5
11
30
Inspection (SRS Document)
Deliverable _SRS Document_______________________________ Page 1 of 1
Team#2
Team members Brad Gardner, Alex Povkov, Santiago Jamriska,
Jeremy Spitzig
Date 03/20/2010
N
o
1
Page
Severity
9
Major
2
3
3
10
Minor
Major
4
11
Major
5
6
5
All
Minor
Major
7
5
Minor
8
9
All
6
Minor
Major
10
11
12
13
14
15
16
7
15
7
13
13
12
11
Major
Minor
Minor
Minor
Minor
Major
Major
17
Description
Move connection from add items to create message to
point to decision
Extra colon character in table of contents
Preview use case should be removed and replaced by
create message implementing view message
Detailed Activity diagram: view details activity should
connect to decision before the add items activity
Add XML to definitions
Any android 2.0 reference should be changed to Android
1.6+
Add save/delete and other functionality into the overview
description
“Multimedia Message” capitalization errors
Multimedia Message Components section should be
moved, entire section should be re-worked to flow better.
Formatting of Messages and New Messages section
Streaming multimedia
Drafs description should have “and not sent” removed
Add drafts feature to other requirements
Add two-way messaging to other requirements
Sentence needs completed, ended in mid-thought
Detailed Activity diagram: added components should
connect to decision after the add items activity
By
Santiago
Alex
Jeremy
Jeremy
Alex
Jeremy
Alex
Jeremy
Jeremy,
Alex, Brad
Alex
Jeremy
Jeremy
Santiago
Brad
Alex
Jeremy
Team Communication
Gmail-based Communications
Team Communication
Google code and Wiki-based Communications
Android 1.6 Testing
• All media worked perfectly on the emulator
• Communications with the server and the other
emulated device worked perfectly as well
• Decided to deploy under Android 1.6
Device Testing
• Mounted application onto Android-based phone
(Running Android 1.6)
• Application worked perfectly on a single phone.
• Had a few issues in communications when using a
second phone.
• Issues were resolved by tweaking the code and the
server
Testing
Testing Models:
1. Android 2.1 Testing
2. Android 1.6 Testing
3. Device Testing
Android 2.1 Testing
• We emulated Android 2.1 for the first tests of the
application
• Emulation of the video playback didn’t work
• Dropped emulator to version 1.6
Testing
• Find Bugs: http://findbugs.sourceforge.net/
Testing
• Junit: http://www.junit.org/
Summary
We have successfully completed the requirements for
this project. A fully functional Android SMIL
Messenger application has been achieved according
to both the Android and SMIL component
specifications. The course objectives were also
followed and successfully completed throughout the
semester.