Title: 76.4115 Software Development project 2nd Iteration demo
176.4115 Software Development project2nd
Iteration demo
- Supporting Collective and Collocated Use
- of Contextual Media
2Agenda
- Project status (20 min)
- Goals
- Tasks
- Hours
- Used work practices
- Risks
- Next iteration
- Work results (25 min)
- Quality assurance and assessment
- Architecture
- Demo
3Introduction to the project Goals
Supporting Collective and Collocated Use of
Contextual Media
- Create a system that enhances mobile media
sharing with context awareness and features
for collocated interaction - Create a system that is unique with no
commercial or academic substitutes - Create a robust system that can be trialed in
the field with at least 8 users
- Functionality
- Integrating Context Awareness in mobile group
communication - Multimedia messages with sound and videos
- Bluetooth network
- Visual codes
- Quality
- Implement immediacy (instant messaging)
- Interaction design
- Crossmedia access to media also through the web
- Research logs
IP1
4Project status
5In this iteration
- All 8 set goals have been achieved, some of which
still need to be reinforced in I2 - Three functionalities delivered
- Context messaging
- Multimedia messaging
- Permanent message storage
- Planned tasks have been mostly realized to a
reasonable extent and some new tasks added - All members have spent quite many of their hours
and everybody worked hard. We had a rush hour at
the end of the iteration.
6Detailed status of IP1s goals
7Detailed status of IP1s goals
8Deliverables status
9Realization of the tasks
10Realization of the tasks (continued)
11Realization of the tasks (continued)
12Realization of the tasks (continued)
13Working hours by person Realized hours in
this iteration
14Plan in the beginning of this iterationvs.
Latest Plan (realized hours)
15Latest Plan (realized and left hours in chart)
16Reasons for discrepancies
- Changes to the project
- New requirements from the customer
- Customer provided a new solution to the system
Mikas contextPhone waiting time 2 weeks - Developers need time to understand the previous
year system. - Bugs from previous system took many time to be
fixed. Many new bugs found during last test
session and took time to fix. - Context messaging features are new to us, it
turned out to be more complicated than expected
to our developers after the functionalities are
detailed. - Busy schedule of group members. LD went on
business trip when the system design and
implementation work was at its critical moments.
17Reasons for discrepancies
- Monitoring and control efforts not enough tasks
checked every week, but to what extent? - Communication takes time, and distributed
software development surely makes this problem
more obvious. - Jing took Tomas role while he was away. She
spent more time than planned. - Jimmy spent a large amount of time on the server
side because it is very complex and the source
codes are bad commented and documented. - The skills and experience among our developers
are at different level. - GUI is important in this project because every
thing our developers had worked so hard on had to
be shown through GUI. Our GUI was implemented on
the previous years codes, our developers first
had to spend time understanding those codes.
18Used work practices
- Weekly time report
- Time report sent to PM on Sunday
- Time summary by person uploaded on server
regularly - Tasks redistribution after time review in
internal meetings - MSN e-mail as the major channels for
communication - Emails exchanged on daily basis e.g. number of
emails - MSN used for minor issues or instant answers
- Telephone used for urgent issues
- Weekly meeting held to communicate within the
group - 1h meeting going through what has been done since
last meeting and what will be done before next
meeting - Task list distributed by PM to all the group
members - Discussion of common problems and some updated
issues concerning the project
19Used work practices (continued)
- Bi-weekly demo held with customer to get a better
control of the progress - Milestones agreed at the beginning of the
iteration - Participants mainly from management group
- Customer feedback solicited during demo
- Communicating to the developers in the next
internal meeting - Quality assurance
- Code review
- Intensive group testing sessions
- Group integration testing session
- Risk management
- Jing took Tomas role voluntarily while he was
away - Communicating with mentor for advice
- Contacting customer/technical advisor if needed
- Increasing internal communication via phone calls
or msn - SEPAs practices in programming
- Refactoring
- Static methods
20Risks and possible actions taken
21Plan for next iteration
- Quality
- Implement immediacy
- (instant messaging)
- Â
- Interaction Design
- Crossmedia access of media also through the webÂ
- Research logs
- Functionality
- integrating Context Awareness in mobile group
communication - Multimedia messages with sound and videos
- Bluetooth network
- Visual codes
IP2
- We need a group review meeting for members
feeling after 2 iterations - Freeze requirements for two last functionalities,
focus on Bluetooth and Visual code - Technical design must be finished at the
beginning of IP2 - More system level testing as well as customer
acceptance testing - Finalizing Context and Multimedia features and
fix bugs according to severity - Deliver all the required documents on time
22Results of the iteration
23QA Plan
- Testing Area
- Context Awareness, Multimedia Content, Permanent
storage and updating - Testing activities
- Planned activity
- - Integration testing
- - System testing functional usability testing
- - Acceptance testing at the end of the
iteration - Realized activity
- - integration testing 2 sessions
- - system testing usability (1 session),
functional (2 session) - - acceptance testing this week
- Review
- document review carried out for most of the
release document - code review to bring everyone up to the same
level - Bug fixing
- many existing bug in mGroup
- new bugs in CoMedia
24Quality metrics
Bug metrics
- Blocker Bug
- Users view freezes, blocker
- Users details / single member view not working,
critical - message viewing not fully working, critical
- other QA metrics
- Planned Test Cases / Proposed Requirements 100
- Tested Test Cases / Planned Test Cases 100
- Fixed defects / Reported Defects 27
- New developed code / total lines of code 17.5
25Quality assessment
- quality Evaluation the of the different
functional areas of the system - effort that has been put on test execution 13
of total hours - full coverage specified, not all tested
- the quality result of CoMedia is not satisfactory
during the testing session - all the bugs detected at the moment are based on
the current implementation which is not yet
completed. -gt more bugs existed when the
development can be finished. - The quality of the current CoMedia application is
under the quality goal specified for this period.
Legend Coverage 0 nothing 1 we looked at
it 2 we checked all functions 3 its
tested Quality J quality is good K not
sure L quality is bad
26System architecture
- The system consists of client mobile devices and
a server application with a MySQL database
27System architecture
- The added functionality in Iteration 1
- Multimedia Content
- Added Audio and Video components to messages
- Local Storage
- Added local serialization of content data
- Context Awareness
- Added functionality for retrieving and
distributing information about the environment of
users
28System architecture
- Multimedia Content
- Audio
- Views for recording and playing audio, featuring
timer - MIDP Audio playing objects
- Video
- Views for recording and playing video
- MIDP Video playing objects
29System architecture
- Local Storage
- FileConnection interface to memory card
- PacketSerializer
- Store stories and messages meta-data locally
- New server-client communication, message cues
- Achieve off-line mode
30System architecture
31System architecture
- Context Awareness
- MySQL database with added tables for user, story,
message contexct information - Server-Client communication, context reports and
context updates - Context Logger Symbian application
- Writes context information in XML format to a
socket
32System architecture
33Use cases
- Adding a sound file to a Message and play the
sound - Adding a video file to a Message and play the
Video - Stories and Messages Update and Permanent Storage
- Delete Media Message
- CoMedia server advertises new content
- All subscribed members context information on
the client - Message reading events are logged and displayed
- Current users in a Story displayed
- User context information location, phone usage,
CoMedia in foreground, Bluetooth visible users
34Software size in Lines of Code (LOC)
- Added functionality, more LOC
- Multimedia content Local storage more client
side - Context awareness required work on both sides
- refactoring reduced LOC
- KXML library added to the client/lib directory is
not counted here
35Software size in Lines of Code (LOC)
36Software size in Lines of Code (LOC)
37Demo
- Start CoMedia
- Demonstrate the developed software
- first tell briefly to the audience what you are
going to demonstrate - distributing a demo script to the audience helps
following the demo - concentrate on new functionality
38Demo script
- Multimedia message content
- Log in on CoMedia
- Create story invite others to the story
- Create message with multimedia content
- Text
- Picture
- Audio
- Video
39Demo script
- Local storage of media content
- Messages are stored locally
- When updated, only new messages are sent
- Delete message, after update the message should
not appear
40Demo script
- Context awareness
- Story context
- How many users are currently viewing the story
- Who wrote the last message and when
- Are there unread messages?
41Demo script
- Context awareness
- User context
- Check the user list
- CoMedia in foreground
- Phone usage
- Location
- Bluetooth visible users
42Demo script
- Context awareness
- Message context
- Reading events
43Thank you!