0% found this document useful (0 votes)
49 views25 pages

1 QuarDroiders Together Document VERSION 6.0

1. The document outlines the requirements and development progress of the "Together" app, a chatting application that allows users within 500 meters to share messages. 2. The app was developed by a team of 4 students over 5 milestones, with functionality including posting messages, adding friends, messaging friends, viewing messages, blocking users, and displaying others' locations on a map. 3. Each milestone section describes the original goals, contributions of team members, outcomes, and references the source code in the version control system. Revisions to the document were also tracked.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
49 views25 pages

1 QuarDroiders Together Document VERSION 6.0

1. The document outlines the requirements and development progress of the "Together" app, a chatting application that allows users within 500 meters to share messages. 2. The app was developed by a team of 4 students over 5 milestones, with functionality including posting messages, adding friends, messaging friends, viewing messages, blocking users, and displaying others' locations on a map. 3. Each milestone section describes the original goals, contributions of team members, outcomes, and references the source code in the version control system. Revisions to the document were also tracked.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Version 6.

0
Date: November 16th
Class name: Software Engineering
University: United International College
For: Meizu company

App: Together
M8 introduction project

Team name: QuarDroiders


Name ID Google issues name Subversion user name

Huang Qizhi 0830300018 kiddhuang2010@[Link] 0830300018


Xie Shukun 0830300039 champoier@[Link] 0830300039
Yang Jiaqi 0830300044 sevenorseven273@[Link] 0830300044
Zhang Haoran 0830300051 rockswing@[Link] 0830300051

Together is an chatting application. The main feature is that users can share
messages with others who are no farther than 500 meters from the specific users.
Through this app, the users and others who are no farther than 500 meters from the
specific users would be located by GPS module on the devices. They can
communicate with each other with messages. Users can also add friends and send
messages which only can be seen between themselves to their friends.
“Together” uses GPS device, multi-touch screen and networking devices of M9.

1
This app not only can show how good M9 is, but also provide a useful communicated
platform for M9 users.

Contents
Contents...............................................................................................................................................2
1. Initial requirement...........................................................................................................................4
2. Requirement....................................................................................................................................5
2.1 Overview ..................................................................................................................................5
2.2 Prioritized list of use cases........................................................................................................5
2.3 List of actors..............................................................................................................................6
2.4 Use case diagram.......................................................................................................................6
2.5 List of use case details...............................................................................................................7
2.5.1 Post messages to strangers in your area.............................................................................7
2.5.2 Check and add friends........................................................................................................8
2.5.3 Communication with others.............................................................................................10
2.5.4 Read and reply the messages to strangers in your area...................................................12
2.5.5 Block someone and check the blocked list......................................................................13
2.5.6 Obtain the position of others from Google map..............................................................15
3. Milestone and Status.....................................................................................................................16
3.1 Milestone 1..............................................................................................................................16
3.1.1 Original target..................................................................................................................16
3.1.2 Planned deadline..............................................................................................................16
3.1.3 Current Status...................................................................................................................16
3.1.4 Individual contributions..............................................................................................16
3.1.5 Actual outcome.................................................................................................................17
3.1.6 Subversion History........................................................................................................17
3.1.7 Source code reference....................................................................................................17
3.2 Milestone 2..............................................................................................................................17
3.2.1 Original target..................................................................................................................17
3.2.2 Planned deadline..............................................................................................................17
3.2.3 Current Status..............................................................................................................17
3.2.4 Individual contributions..............................................................................................18
3.2.5 Actual outcome.................................................................................................................18
3.2.6 Subversion History........................................................................................................18
3.2.7 Source code reference....................................................................................................18
3.3 Milestone 3..............................................................................................................................19
3.3.1 Original target..................................................................................................................19
3.3.2 Planned deadline..............................................................................................................19
3.3.3 Current Status...................................................................................................................19
3.3.4 Individual contributions...................................................................................................19
3.3.5 Actual outcome.................................................................................................................19

2
3.3.6 Subversion History........................................................................................................19
3.4 Milestone 4..............................................................................................................................20
3.4.1 Original target..................................................................................................................20
3.4.2 Planned deadline..............................................................................................................20
3.4.3 Current Status...................................................................................................................20
3.4.4 Individual contributions...................................................................................................20
3.4.5 Actual outcome.................................................................................................................21
3.4.6 Subversion History........................................................................................................21
3.4.7 Source code reference......................................................................................................21
3.5 Milestone 5..............................................................................................................................22
3.5.1 Original target..................................................................................................................22
3.4.2 Planned deadline..............................................................................................................22
3.4.3 Current Status...................................................................................................................22
3.4.4 Individual contributions...................................................................................................22
3.4.5 Actual outcome.................................................................................................................22
3.4.6 Subversion History.........................................................................................................22
3.5.7 Source code reference......................................................................................................23
4. Revision history.............................................................................................................................23
4.1 Version 1..................................................................................................................................23
4.2 Version 2..................................................................................................................................24
4.3 Version 3..................................................................................................................................24
4.4 Version 4..................................................................................................................................24
4.5 Version 5..................................................................................................................................24
4.6 Version 6..................................................................................................................................24
Appendix...........................................................................................................................................25

3
1. Initial requirement

Functional Non-Functional
Essential 1. Introduction to GPS module 1. Space must be less than 99M
1.1 Locations of users shown
on Google Map 2. Adaptable the screen resolution
1.2 Locations of strangers of M9
shown on the Google Map
3. Run on any devices with Android
2. Introduction to the GSM, 2.2
3G, WIFI module
2.1 Accessible to Internet
2.2 Messages can be sent and
received
Optional 1. Messages can be updated 1. Space must be less than 10M
automatically
2. Power saving
2. Messages can be sent to 2.1Screen would be shut down if
strangers who are no farther there is no action in latest 1min.
than 500 meters from specific
user 3. App can be started in 3s.

3. Messages can be sent to a 4. App can run in any Android


specific person and received version
from a specific person
5. Other screen resolutions can be
4. Friends list can be modified fit automatically

5. Block list can be modified

6. Introduction to the multi-


touch screen
6.1 Google Map can be
Zoom-in and Zoom-out

4
2. Requirement

2.1 Overview
Together is a convenient and useful app which runs on Android system. Its main
function is to provide a communication platform for users to share messages with
others who are no farther than 500 meters from them. It is so easy and convenient.
Users can enjoy their entertainment with using this app.

2.2 Prioritized list of use cases


(1) Post messages to strangers in your area;
(2) Check and add friends;
(3) Communication with others
(4) Read and reply the messages to strangers in your area
(5) Block someone and check the blocked list
(6) Obtain the position of others from Google Map

5
2.3 List of actors
(1) Users: People who use Together on his device.
(2) Friends: Friends, who also are users, can receive messages from a specific
user, if the receiver is a friend of the sender.
(3) Strangers in your area: The other people that users do not know are in the
same area with users.
(4) Servers: The machine is in charge of managing the server to ensure users are
able to use this app.

2.4 Use case diagram

6
2.5 List of use case details

2.5.1 Post messages to strangers in your area

Post messages to strangers in your area: Users can post some messages on
the app which can be read by the other unknown users who are no farther than 500
meters from the senders.

(1) Participating Actors


1. Users: People use Together in his phone.
2. Strangers in your area: The other people that users do not know
are in the same area with users.
3. Servers: The machine is in charge of managing the server to
ensure users are able to use this app.

(2) Entry Condition


Click the “Edit” button of this function.

(3) Exit Condition


Click the "Exit" button of this function.

(4) Flow of events


Clicking the corresponding button, users enter in the editing page to

7
input some words they want to share with others. They can click the "Submit" button
to post messages. If they want to leave this page, they can click the "Exit" button to
go to the other page.

(5) Global special requirements


1. User can not input more than 150 words in your message.
2. Cell phone must have the GPS function.
3. User need to agree shares your location.
4. Cell phone need to connect Internet.

2.5.2 Check and add friends

Check and add friends: Users can add friends in the app, and they can
check their friends’ message if they are on line.

(1) Participating Actors


1. Users: People who use Together on his device.
2. Friends: Friends, who also are users, can receive messages from a
specific user, if the receiver is a friend of the sender.
3. Servers: The machine is in charge of managing the server to

8
ensure users are able to use this app.

(2) Entry Condition


Click the "Add" button of this function.

(3) Exit Condition


Click the "Exit" button of this function.

(4) Flow of events


Clicking the corresponding button, users can add some people as
their friends. In this way, when friends are on line, users can see and send message
with them. Users can click the "Check" button to check the friends list. If they want to
leave this page, they can click the "Exit" button to go to the other page.

(5) Global special requirements


1. User can not input more than 150 words in your message.
2. Cell phone must have the GPS function.
3. User need to agree shares your location.
4. Cell phone need to connect Internet.

9
2.5.3 Communication with others

(chat with anybody in your area)

(chat with your friends)


Communication with others: Users can reply or send messages with
others when they are in the same area.

1
0
(1) Participating Actors
1. Users: People who use Together on his device.
2. Friends: Friends, who also are users, can receive messages from a
specific user, if the receiver is a friend of the sender.
3. Strangers in your area: The other people that users do not know are in
the same area with users.
4. Servers: The machine is in charge of managing the server to ensure
users are able to use this app.

(2) Entry Condition


Click the "Edit" button of this function or click the "Reply" button to
reply the messages of other people.

(3) Exit Condition


Click the "Exit" button of this function.

(4) Flow of events


Clicking the corresponding button, users can input some words to
send or reply messages with other people. If they want to leave this page, they can
click the "Exit" button to go to the other page.

(5) Global special requirements


1. User can not input more than 150 words in your message.
2. Cell phone must have the GPS function.
3. User need to agree shares your location.
4. Cell phone need to connect Internet.

11
2.5.4 Read and reply the messages to strangers in your area

Read and reply the messages to strangers in your area: Users can read the
messages which are sent by strangers in this area, and reply the messages.

(1) Participating Actors


1. Users: People who use Together on his device.
2. Friends: Friends, who also are users, can receive messages from a
specific user, if the receiver is a friend of the sender.
3. Strangers in your area: The other people that users do not know are in
the same area with users.
4. Servers: The machine is in charge of managing the server to ensure
users are able to use this app.

(2) Entry Condition


Click the logo of Together to open it.

(3) Exit Condition


Click the "Exit" button of this function.

1
2
(4) Flow of events
Open the app, users can see all the messages posted in this area on
the main page. They can read the messages easily. If users want to reply messages,
they need to click the "Reply" button. If they want to leave this page, they can click
the "Exit" button to go to the other page.

(5) Global special requirement


1. User can not input more than 150 words in your message.
2. Cell phone must have the GPS function.
3. User need to agree shares your location.
4. Cell phone need to connect Internet.

2.5.5 Block someone and check the blocked list

Block someone and check the blocked list: Users can block someone
they do not like and check the list they have blocked.

(1) Participating Actors

1
3
1. Users: People who use Together on his device.
2. Strangers in your area: The other people that users do not know are in
the same area with users.
3. Servers: The machine is in charge of managing the server to ensure
users are able to use this app.

(2) Entry Condition


Click the ''Block" button of this function.

(3) Exit Condition


Click the "Exit" button of this function.

(4) Flow of events


Clicking the corresponding button, users can block the people they
do not like. Then, it will add these people's name to the blocked list. Users can click
the "Check" button to check the blocked list. If they want to leave this page, they can
click the "Exit" button to go to the other page.

(5) Global special requirements


1. User can not input more than 150 words in your message.
2. Cell phone need to connect Internet.

1
4
2.5.6 Obtain the position of others from Google map

Obtain the position of others from Google map: Users can see the
position of others who are in the same area with users.
(1) Participating Actors
1. Users: People who use Together on his device.
2. Friends: Friends, who also are users, can receive messages from a
specific user, if the receiver is a friend of the sender.
3. Strangers in your area: The other people that users do not know are in
the same area with users.
4. Servers: The machine is in charge of managing the server to ensure
users are able to use this app.

(2) Entry Condition


Click the logo of Together to open it.

(3) Exit Condition


Click the "Exit" button of this function.

(4) Flow of events


Clicking the corresponding button, users can obtain their position on

1
5
the Google map. In addition, users also can click the name of the people to obtain the
position where people stay at on the Google map. If they want to leave this page, they
can click the "Exit" button to go to the other page.

(5) Global special requirement.


1. Cell phone must have the GPS function.
2. User need to agree shares your location.
3. Cell phone need to connect Internet.

3. Milestone and Status

3.1 Milestone 1

3.1.1 Original target


(1)Include at least a picture (allowing user to move or zoom in/out), a video,
an audio piece (e.g. mp3), and a flash video in the Hello World app.
(2) Determine if the multi-touch feature requires a physical phone to test
(3) Determine if the G-sensor feature requires a physical phone to test

3.1.2 Planned deadline


28th Oct. 2010

3.1.3 Current Status


Done

3.1.4 Individual contributions


(1) Kidd: implement the pictures
(2) Seven: implement the audio piece
(3) Bruce: find a solution to G-sensor features implemented on a simulator
(4) Colin: implement the video and put functions into one app

1
6
3.1.5 Actual outcome
We implemented the function of a picture (allowing user to move or zoom
in/out), a video, and an audio piece in the Hello World app. We conclude that flash
video cannot be implemented on a simulator since no flash player can be use on it. We
also found a solution to implement the G-sensor function on the simulator. And we
got a conclusion that the multi-touch feature requires a physical phone to test.

3.1.6 Subversion History


r 2010-10-21 [Link] 0830300018 Implement the function that adding
1 pictures into the app.
r 2010-10-23 [Link] 0830300051 Make video can be played in the app.
2
r 2010-10-25 [Link] 0830300039 Find a solution to make G-sensor work on
3 a simulator.
r 2010-10-26 [Link] 0830300044 Audio pieces can be played now.
4

3.1.7 Source code reference


(1) Package “Zoom” from
Android one finger zoom tutorial – Part 1
[Link]
one-finger-zoom-tutorial-part-1/

3.2 Milestone 2

3.2.1 Original target


(1) Write a demo for GPS and Google Map API. This demo can get
information from GPS device and show where you are in Google Map;
(2) Determine the app name

3.2.2 Planned deadline


8th Nov. 2010

3.2.3 Current Status


Done

1
7
3.2.4 Individual contributions
(1) Colin will in charge of task 1, 2
(2) Seven will in charge of task 1, 2
(3) Bruce will in charge of task 1, 2
(4) Kidd will in charge of task 1, 2

3.2.5 Actual outcome


We had done our entire milestone. Then, we found we also had some time to
do some extra things. So Colin wrote a demo to access to database and read and write
in the database. Kidd and Seven get to know how to use list activity. Bruce knew how
to use anti-resolution to get address from location. We add another function in our
demo called footprint. It can save some footprints in database and read them. Then
display them on the list activity. When a user clicks a list item, the map will show the
location of the item.

3.2.6 Subversion History


r 2010-11-3 [Link] 0830300044 Implement the function that the Google
5 Map can be shown on the device.
r 2010-11-4 [Link] 0830300051 Add the features that data can be stored in
6 the SQLite database, and read from the
database.
r 2010-11-5 [Link] 0830300039 The location of device can be located by
7 GPS, and shown on the Google Maps.
r 2010-11-5 [Link] 0830300018 Implement the features that we can get the
8 address if the latitude and longitude of the
location of device through anti-address
resolution technology.

3.2.7 Source code reference


(1) Address class from
服务 - Google 地图 API - Google 代码
[Link]

CN/apis/maps/documentation/javascript/v2/[Link]#ReverseGeocoding

1
8
3.3 Milestone 3

3.3.1 Original target


(1) Let our device connect a server to server
(2) Send and receive messages between 2 devices
(3) Use GPS device to calculate a square area.
(4) Design GUI of our application; draw them on paper or in computer.
(5) Prepare some images for our GUI; get all images that we need for GUI.

3.3.2 Planned deadline


18th Nov. 2010

3.3.3 Current Status


Done

3.3.4 Individual contributions


(1) Bruce will in charge of task 1, 4
(2) Colin will in charge of task 2, 4
(3) Kidd will in charge of task 3, 5.
(4) Seven will in charge of task 3, 4.

3.3.5 Actual outcome


We had done our entire milestone. Also we let server can handle a command
from client – “exit”. If server gets this command from client, server can close the
socket to that client and delete that client form the list which contains the users who is
online.

3.3.6 Subversion History


r9 2010-11-13 [Link] 0830300039 Add a class to calculate the distance
between 2 location
r1 2010-11-14 [Link] 0830300051 Add a server class
0
r11 2010-11-14 [Link] 0830300044 Demo’s GUI
r1 2010-11-15 [Link] 0830300051 The demo can connect to server, and send
2 and receive messages.

1
9
r1 2010-11-16 [Link] 0830300018 Server can handle the “exit” command
3

3.4 Milestone 4

3.4.1 Original target


(1) Make a demo to show "tab" function in our project. Fist tab to show our
milestone 2, second tab can show our milestone 3.
(2) Implement a function. That function can do that if we touch the screen
and move from right to left, another activity will replace the old activity. The new
activity will show some information about next task.
(3) Develop a polished intro screen that introduces the M8/M9 feature(s) that
your app highlights. The feature(s) of your choice should be explained and/or
illustrated. Then, a "demo" or "show" button/link will take user to the actual game or
app that will showcase the selected feature.
(4) Perfect the chat function, the message you sent only can display on users
who are not far away from you. This function can get users' location and calculate the
distance.

3.4.2 Planned deadline


25th Nov. 2010

3.4.3 Current Status


Done

3.4.4 Individual contributions


(1) Bruce will in charge of task 1, 4
(2) Colin will in charge of task 1, 4
(3) Kidd will in charge of task 2, 3
(4) Seven will in charge of task 2, 3

2
0
3.4.5 Actual outcome
We had done our entire milestone. The intro page is so easy, we will do it
more in the next time to make it better. Also we use a new subversion control system
is google code.

3.4.6 Subversion History


r1 2010-10-06 [Link] / Initial directory structure
r2 2010-11-19 [Link] champoier This is Milestone 1
r3 2010-11-20 [Link] rockswing initialize our Milestone4
r4 2010-11-20 [Link] rockswing main class
r5 2010-11-20 [Link] rockswing try to rename the package and delete
the old package
r6 2010-11-20 [Link] rockswing delete old package to make the folder
more clearly
r7 2010-11-20 [Link] rockswing delete the old version of this demo
r8 2010-11-22 [Link] kiddhuang2010 map tab cannot be run in our project
r9 2010-11-22 [Link] kiddhuang2010 new tab demo, Burce plz add the map
function
r1 2010-11-24 [Link] champoier delete the old version and will
0 reconstructe in android 2.2
r11 2010-11-24 [Link] sevenorseven273 Improt a new version
r1 2010-11-24 [Link] sevenorseven273 intro page
2
r1 2010-11-24 [Link] champoier first page is inrto page, then we touch
3 the screen, and move our finger from
right to left. it can show our demo
r1 2010-11-24 [Link] rockswing Improt a new version
4
r1 2010-11-24 [Link] rockswing server in milestone 3
5
r1 2010-11-25 [Link] rockswing server can save location, calculate
6 distance. But without test
r1 2010-11-25 [Link] rockswing Can update geo location
7
r1 2010-11-25 [Link] kiddhuang2010 Delete some useless files
8

3.4.7 Source code reference


(1) anim folder and Guest class from

2
1
如何通过 GestureDetector 实现屏幕事件监听(滑动切换 Layout) -
Envisage123 - JavaEye 技术网站
[Link]

3.5 Milestone 5

3.5.1 Original target


(1) Addition of a login page.
(2) Complete the UI with public post, page to input text and personal
chat.
(3) Complete the database with attribute usr_name and pwd on server side.
(4) Show location of friends on the Google map.

3.4.2 Planned deadline


2rd Dec. 2010

3.4.3 Current Status


Done

3.4.4 Individual contributions


(1) Bruce will in charge of task 3
(2) Colin will in charge of task 2
(3) Kidd will in charge of task 4
(4) Seven will in charge of task 1

3.4.5 Actual outcome


We had done our entire milestone. We use the subversion control system,
Google code.

3.4.6 Subversion History


r1 2010-11-24 [Link] seven Create LoginActivity

2
2
9
r2 2010-11-24 [Link] seven Finished the title and button of
0 LoginActivity
r2 2010-11-24 [Link] kiddhuang2010 Add the introActivity to the app
1
r2 2010-11-25 [Link] rockswing Add The public post tab into the UI
2
r2 2010-11-25 [Link] rockswing Add the personal chat tab into the UI
3
r2 2010-11-25 [Link] champoier Complete the database with attribute
4 user_name and pwd.
r2 2010-11-25 [Link] rockswing Add the input text into the UI
5
r2 2010-11-26 [Link] champoier Add the friends lists
6
r2 2010-11-26 [Link] kiddhuang2010 Show friends on the Google Map.
7

3.5.7 Source code reference


(1) How to find the position of item which is long clicked on the
ListView interacting ContextMenu.
[Link]

4. Revision history

4.1 Version 1
(1)Bruce: milestone 1, 2 definition and status, revision history record;
(2) Colin: Cover page, initial requirement, tables of contents;
(3)Seven: List of actors, UML - the use case diagram;
(4) Kidd: Overview, Prioritized list of use cases, List of use case details,
name of app.

2
3
4.2 Version 2
(1) Colin: Cover page, initial requirement, tables of contents, updates the
milestone and contents
(2) Seven: Re-define List of actors, UML - the use case diagram
(3) Kidd: Re-define Overview, Prioritized list of use cases
(4) Bruce: Re-define List of use case details, name of app

4.3 Version 3
(1) Colin: Typesetting
(2) Seven: Modify UML - the use case diagram
(3) Kidd: Modify Prioritized list of use cases
(4) Bruce: Modify List of use case details

4.4 Version 4
(1) Colin: Typesetting, subversion history
(2) Bruce: Source code reference

4.5 Version 5
(1) Colin: subversion history of milestone4
(2) Kidd: Change appendix to a table

4.6 Version 6
(1) Colin: Typesetting subversion
(2) Bruce: history of milestone4
(3) Seven: Sequence Diagram

2
4
Appendix
1 “M8 展示软件开发.ppt” from Meizu Company.
2 The parameter table of M8 from Meizu Company.
3 M8 MZOS 操作的互动模拟体验: [Link]
4 M8 手机外观 3D 模型体验: [Link]
5 M8 手机宣传视频:[Link]
6 M8 新 UI 宣传视频:[Link]

2
5

You might also like