Upload
sabrina-clark
View
225
Download
0
Tags:
Embed Size (px)
Citation preview
76.4115 Software Development project
2nd Iteration demo
Supporting Collective and Collocated Useof Contextual Media
Agenda Project status (20 min)
Goals Tasks Hours Used work practices Risks Next iteration
Work results (25 min) Quality assurance and assessment Architecture Demo
Introduction to the project – Goals
Functionality
Integrating Context Awareness in mobile group communication
Multimedia messages with sound and videos
Bluetooth network
Visual codes
• 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
‘Supporting Collective and Collocated Use of Contextual Media’
Quality
Implement immediacy (instant messaging)
Interaction design
Crossmedia: access to media also through the web
Research logs
IP1
Project status
In 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.
Detailed status of IP1’s goals
Goal Status Note
Finish technical design ok Commented by the customerForm two developer teams and divide implementation tasks in the two teams
ok Teams were divided on 19.10.2005 right after Design Phase demoDi/Magnus – Team1Jimmy/Lucas – Team 2
Focus on organized implementation works in order to realize all the milestones for this iteration
ok Bi-weekly demo with customer about agreed milestonesThree demos doneMajor milestones deliveredContext messaging postponed to the last week
Deliver two required system functionalities to the customer with good quality: Context messaging and Multimedia messaging
Partial Di/Magnus – Multimedia messaging,UI, databaseJimmy/Lucas – Context messaging and message storageBugs yet to be fixed
Detailed status of IP1’s goals
Goal Status Note
Finish or partially finish Permanent media content storage
ok An ’invisible ’ feature
Decide SEPAs topics and finish half of SEPAs at the end of this iteration
ok Liang/Tomas – monitoring & controlDi/Magnus – static methodsJimmy/Lucas – refactoring
Integrate SEPAs practices into the software development process with an attempt to improve the process
ok All SEPA doers have used time during IP1 to practice what they want to write about
Finish all the other deliveries for this phase with high quality work and communicate the contents to all the group members
ok QA plan/Test report/ Test casesProject plan/Re. Spec UpdatedUI specificationProgress report
Deliverables statusDeliverables Status Note
QA Plan ok
Technical specification ok Approved by customer
Test plan cancelled QA plan = Test plan
Test report ok With test charter
SEPA diaries ok 3 SEPA diaries delivered
Progress report ok
Updated project plan ok
Updated requirements specification
ok Some new requirements added
Meeting minutes/memo ok 6 memo delivered for IP1
Bi-weekly demo for milestones to the customer
ok 3 milestone demos held with customerContext feature postponed to the last week
Realization of the tasks
Managerial Tasks Status Real Plan Diff
QA plan writing and reviewing Ok 18 10 +8
Test plan writing and reviewing cancelled 0 12 -12
Support RM for QA plan and Test plan cancelled 0 5 -5
Iteration plan preparation, writing and reviewing Ok 5.5 6 -0.5
Update Project plan Ok 3 4 -1
Write Progress report Ok 13.5 10 +6.5
Support/help PM in iteration plan, project plan updating /progress report writing
Ok 7 10 -3
Update Requirement Specification Ok 9 4 +4
Mentor meeting Ok 8 16 -8
Customer meetings Ok 25.5 - -
Internal meetings Ok 46.5 48 -1.5
Writing meeting minutes Ok 5 6 -1
Writing SEPA Ok 13 16 -3
Personal SE practice Ok 12 16 -4
Realization of the tasks (continued)
Managerial Tasks Status Real Plan Diff
Other project management (Project manager) Ok 19 15 +4
Other project management (group members, if applicable)
Ok 18.5 - -
Plan the next iteration Ok 0 8 -8
Technical Tasks Status Real Plan Diff
GUI design Ok 11 8 +3
UI specification writing Ok 7 8 -1
Technical design specification writing Ok 57 15 +31
Support tech. design/writing Ok 6 2 +4
Studying the last year implementation 4h/week*4 weeks
Ok 51.5 48 +8
Study the requirements of the whole project and pervious year implementation
Ok 22 26 -4
Quality assurance Ok 5 4 +1
Technical implementation (Tomas) Cancelled 0 20 -20
Realization of the tasks (continued)
Technical Tasks Status Real Plan Diff
Technical implementation Ok 209 128 +80
Details Context Awareness:
Implement parser for ContextPhone logImplement ContextCue database structureImplement ContextCue delivery format from server to the clientsIntegrate context cues into GUI components
Multimedia content:Implement control mechanism for recording & playing mediaImplement sound recorder & playerImplement video recorder & playerImplement methods for attaching media content to messages
Permanent media content storage:Implement data storage structure for MMC cardsImplement media content download mechanismImplement media story, message & user database structure (server)Implement new content advertiser on serverImplement client-server handshake modelImplement data-management tools
Realization of the tasks (continued)
Technical Tasks Status Real Plan Diff
Test case design/documenting Ok 16.5 20 -5.5
Test execution/fixing and report bugs Partial 56.5 50 +2.5
Testing Usability Ok 5 4 +1
Preparing for demo Ok 9 8 -5
Unplanned Tasks Status Real Plan Diff
Setting environment Ok 8.5 -
Adopting tools Ok 4 -
Context phone search Ok 2.5 -
Context phone meeting with Mika Ok 2 -
TOTAL 676 531 +141
Working hours by person – Realized hours in this iteration
Members Real Plan DiffLiang Fang 68 55 +13Teppo Helles 52 52 0Jing Jing 71 52 +19Jimmy Kjällman 102 82 +20Tomas Martelin 99 74 +25Magnus Sandberg 90 72 +9Lucas Vikström 97 72 +25Di Zhu 97 72 +25Total 676 531 +145
I1 hours (Realized vs. Planned)
68
52
71
102 9990
97 97
55 52 52
8274 72 72 72
130
19 20 25
9
25 25
0
20
40
60
80
100
120
Name
Ho
ur
Real Plan Diff
Hours spent on weekly basis
0
5
10
15
20
25
30
35
40
week 42 week 43 week 44 week 45 week 46 week 47 week 48
Week
Hour
Li ang J i ng Tomas Teppo Lucas Magnus J i mmy Di
Plan in the beginning of this iterationvs. Latest Plan (realized hours)
PP IP1 Σ IP2 Total
Liang Fang
56 55 111 59 170
Teppo Helles
52 52 104 46 150
Jing Jing 52 52 104 46 150Jimmy Kjällman
10 82 92 78 170
Tomas Martelin
51 74 125 45 170
Magnus Sandberg
38 72 110 60 170
Lucas Vikström
32 72 104 66 170
Di Zhu 32 72 104 66 170
Total 323 531 854 466 1320
PP IP1 Σ Total Left
Liang Fang
68 68 136 170 34
Teppo Helles
52 52 104 150 46
Jing Jing 52 71 123 150 27Jimmy Kjällman
10 102 112 170 58
Tomas Martelin
28 99 127 170 43
Magnus Sandberg
18 90 108 170 62
Lucas Vikström
15 97 112 170 58
Di Zhu 20 97 117 170 53
Total 263 676 939 1320 381
Latest Plan (realized and left hours in chart)
Realized and Left Hours by Person
6852 52
1028 18 15 20
68
5271
102
9990 97 97
34
4627 58
4362 58 53
0
20
40
60
80
100
120
140
160
180
LiangFang
TeppoHelles
Jing Jing Jimmy Kjällman
TomasMartelin
MagnusSandberg
LucasVikström
Di Zhu
Name
Ho
urs
PP IP1 Left
Reasons for discrepancies Changes to the project
New requirements from the customer Customer provided a new solution to the system –
Mika’s 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.
Reasons 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 year’s codes, our developers first had to spend time understanding those codes.
Used 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
Used 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
Risks and possible actions taken
Risk Action taken
Vague work division among the developer teams
Clearer task lists made in internal meeting and list sent out to group members after meeting (checked in the next)
Technical design cannot be completed on time
Proper pressure from the whole teamSeeking help from technical advisor
Requirements change or addition Frozen requirements with customer as early as possible
The previous application has bugs or bad documentation
Nothing much can be done. Seeking help from technical advisor
Critical bugs found in last testing session & no time to fix them all
More active unit testingFix some bugs during winter holiday
Devices do not work properly Contacted customers in time
Not all required functionalities can be delivered on time
More monitor and control neededCheckup regularly on how developers are proceeding
Key member was not available Other members took the role when things were critical
The measurements on outcomes are not defined well
We didn’t realize this risk and no effective actions had been taken
The functionalities required by the customer are very demanding to us
We have tried our best
Plan for next iteration
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 of media also through the web
Research logs
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
IP2
Results of the iteration
QA 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
Reviewdocument review – carried out for most of the release documentcode review – to bring everyone up to the same level
Bug fixing many existing bug in mGroupnew bugs in CoMedia
Quality metrics
Blocker Bug: Users view freezes, blocker User’s 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%
I1 I2 Total
Reported 41 - 21
Closed 11 - 11
Open 30 - 30
Bug metrics
Blockers
Critical
Major
Normal
Minor
Trivial Enhance
Total
Total open 1 2 11 9 4 1 2 30
This iteration reported
1 4 16 11 6 1 2 41
Blocker3 % Critical
7 %
Major37 %
Normal30 %
Minor13 %
Trivial3 %
Enhancement7 %
Quality 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. -> 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.
Functional area Coverage
Quality
Comments
Context Awareness
2 Many bugs (blocker, critical & major) in this area, mainly on the GUI level
Multimedia Content
3 Some minor bugs reoccurred after fixing
Permanent storage and updating
3 A few major bugs (mainly from mGroup)
Legend
Coverage:
0 = nothing
1 = we looked at it
2 = we checked all functions
3 = it’s tested
Quality:
= quality is good
= not sure
= quality is bad
System architecture
The system consists of client mobile devices and a server application with a MySQL database
System 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
System 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
System 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
System architecture
System 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
System architecture
Use 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
Software 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
PP I1 Added
Total (NCLOC + COM) 28 547 34 586
PP I1 Added
Client 12 915 17 106
Server 15 632 17 480
Software size in Lines of Code (LOC)
Client PP I1 I2
/ 633 735
/connection 1240 1329
/contextinfo 0 929
/localstorage 499 974
/proto 444 444
/protocol 1248 1439
/researchlog 460 460
/storage 1565 1821
/ui 6826 7742
/util 1233 1233
Software size in Lines of Code (LOC)
Server PP I1 I2
/ 7194 7317
/dal 3891 4404
/protocol 3841 4548
/protocoltest 475 475
/tests 147 147
/util 84 84
Demo
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
Demo script
Multimedia message content Log in on CoMedia Create story – invite others to the story Create message with multimedia content
Text Picture Audio Video
Demo 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
Demo script
Context awareness Story context
How many users are currently viewing the story
Who wrote the last message and when
Are there unread messages?
Demo script
Context awareness User context
Check the user list CoMedia in
foreground Phone usage Location Bluetooth visible
users
Demo script
Context awareness Message context
Reading events
Thank you!
Q & A?