i won't give up - javascript required
TRANSCRIPT
an onlyHUE Project
WayPastCurfew Mobile Application
MID TERMS PRESENTATIONDarren Lim Fei Hong . Goh Ghee Gin Shane . Lim Wei Yang . Wong Qi Wen . Zoey Lee Siew Jie
THE SUPPORTSBehind-The-Scene People
Christian and Shannon Chris BoeschCheok Lai-TeeSupervisor Project CoordinatorClients
OUR CLIENTWayPastCurfew (WPC)
Christian Shannon
Acoustic Duo .Weekly Busking at Sentosa . Youth Worship Leaders
02PROJECT OVERVIEWProblems . Purpose . Target Audience . Project Goal . Scenario Run-Through . Value to Client . Value to Users .
PROBLEMSWhy This Project?
WPC needs a platform for OUTREACH to public
Fans of WPC wants to HEAR THEM more often
People want to LEARN to sing HARMONY
SOLUTIONSOur Motivation
LEARNING how to sing in HARMONY with my favourite songs
COORDINATE with my GROUP on musical pieces
SINGING with WayPastCurfew all the time
AUDIENCEOur Target People
People who wants to LEARN HARMONY
MUSIC TEACHERS, BAND LEADERS and CHOIR MASTERS
FANS of WayPastCurfew
PROJECT GOALWhat We Aim To Achieve
CREATE a Mobile ApplicationTO HELP
WPC Band
The Community
ChoirDirectors
MusicDirectors
PROMOTE the WPC Experience
EASE learning to SING HARMONY
ENHANCE effectiveness for rehearsals
PROJECT VALUEValue To Our Clients
Platform to connect with the fans
Avenue to experiment with songs
Generate traffic to Spotify and original artistes
PROJECT VALUEValue To Our Users
Scenario Run-Through .
Bring home the WPC Experience
Learn to sing harmony Facilitate learning in groups
03TECHNOLOGY OPTIONSPrototyping Software . Database . Development Environment . Development Frameworks . UI Framework . Languages . IDEs . Technology Stack .
DEVELOPMENT FRAMEWORKSWhat We Used to Code?
Ionic Framework ngCordova
EASY ADAPTATION
EXSITING PLUG-INS AVAILABLE
04TECHNICAL COMPLEXITYArchitectural Diagram . Complexity of Functions. How Technology Used Aid Our Application
USER TESTING 1Study Group Involved
JULY
19
Fellow Church Mates from Gospel Light Christian Church
Novotel Ballroom Level 6
(LEADER)Joshua Chong
Jonathan Muk (LEADER)Jonathan Chong
Kevin Kranola
Shawn Koh
AGE 18-32
USER TESTING 1Study Tasks IDENTIFY flaws in design
CRITIQUE navigation actions of app
PROVIDE suggestions for improvements
SUGGEST what they like to see more of
COMMENT on what they like about the app
USER TESTING 1Feedback Obtained
01. USER INTERFACE
No Consistency
Not Minimalist
No Shading Differentiation
USER TESTING 1Feedback Obtained
02. DJ Page
Need for Sign-postings
More eye-catching UI
Allow for renaming
Allow scrolling of lyrics
Record button
USER TESTING 1Results Obtained
03. LOGIN FUNCTIONALITY
Consider REGEX validation
Need more extensive login validation
USER TESTING 1Changes Made
Interface of Mobile App to be more minimalistic
Icons in replacement of words for sign-posting
Validation included for various functions
Process of ReleaseBrief clients about the system Install and run application on
clients’ devices
Start testing of application Team observe and answer questions from clients
Obtain feedback from clients Debrief within team
CLIENT TEST 1.0
Scope of ReleasePlayback of Songs Playback of Tracks
Upload of Songs via Web Portal Control of Voting List
Overall User Interface
CLIENT TEST 1.0
Feedback Obtained
• Easy-to-use Web Portal for uploading of songs and tracks
• Full control over voting list• Simple navigation • Minimalist user interface
• Avoid alternating colors for song list page for clearer illustration
• Consider searching of songs beyond song title (e.g. genre)
• Consider classification of songs based on genre
CLIENT TEST 1.0
07 PROJECT MANAGEMENTX-Factor. Project Status . Scope Changes . Schedule Changes . Metrics . Plan Ahead
X-FACTOROur Current Objective
Promote The Band
Interactive Mobile Platform
Advertisement for their Music01 02
PROJECT SCHEDULEMid Terms – Iteration 9
NEW
OLD
GroupsCreate New GroupInvite MembersLeave GroupSearch Group(s)Edit AccessAnnouncement Board
GroupsCreate New GroupInvite MembersLeave GroupSearch User(s)Edit AccessAnnouncement Board
Search User(s)Search Group(s)
CHANGE IN FUNCTIONALITY
PROJECT SCHEDULEMid Terms – Iteration 10 MVP Commit
Debugging of Application“Simplifying” Application
PlaybackLink to SpotifyLink to iTunes
UsabilityInteractive TimelineCreate/Edit EventMultimedia Submission/ApprovalRequest Performance
NEW
OLDNeeded to push out a MVP Application upon multiple rejections by the Apple Store.
EMERGENCY REVAMP
PROJECT SCHEDULEMid Terms – Iteration 11
GroupsCreate New GroupInvite MembersLeave GroupSearch Group(s)Edit AccessAnnouncement BoardPassword ProtectionPromote Members
Playback Multiple Vol. Adjustment
Access ControlIn-App PaymentAccess Rights
NEW
OLDGroupsSharing w/ Groups
RecordingExport & Share
Removed “Recording” as one of the module.Reduced some features of “Groups” module due
to removal of “Recording” module
REORGANIZATION
PROJECT SCHEDULEMid Terms – Iteration 12
AnalyticsAnalytics DashboardData Tracking
Usability View Notification (Inbox)Send Notification
AssessmentUser SubmissionClient Review
NEW
OLDFocus shifted to “Analytics” module instead of personalization features due to the change in
client’s requirement.
REORGANIZATION
PROJECT SCHEDULEMid Terms – Iteration 13
NEW
OLD
FeedbackVote New Set ListEvents TimelineEvents Photo Gallery
AssessmentClient ReviewUser Submission
FeedbackAnalytics DashboardData TrackingExport Data
Retain “Feedback” and “Assessment” module due to project requirements (lower priority
compared to Groups and Analytics)
REORGANIZATION
PROJECT SCOPEAcceptance (Then)
Recording ModuleCreating Setlist
Groups ModuleProductivity
Enhancement Targets
Assess Control ModulePassword Reset
Usability ModuleApplication Tutorial
Feedback ModuleExport data
Playback ModulePreview SongsSearch Songs
Multiple Volume Adjustment
Auto-scroll Lyrics
Recording ModuleRecording Storage
Export and Share via Social Media
Assessment ModuleClient Review
Access Control ModuleConnect
via Social MediaView Profile (s)
Edit Profile (s)
Usability ModuleView Inbox
Send NotificationAbout WPC / Events
Offline Usage
Feedback ModuleUser Feedback
Vote New SongRequest New Song
Request Diff KeyAnalytics Dashboard
Data Tracking
Groups ModuleSearch Users
Edit AccessShare Recordings in
GroupsAnnouncement
Board
Playback ModuleAudio Playback
Synchronized PlaybackDownload Song(s)
Delete Song(s) from LocalDelete Song(s) from Server
Play, Pause SongSeek Section
Display Song ListUpload New Track(s)
Create Song
Recording ModuleAudio RecordingUpload Recording
Assessment ModuleUser Submission
Access Control ModuleLog inLog outCreate AccountRemote RUDPayment SystemAccess Rights
Groups ModuleCreate GroupInvite UsersLeave Group
LEGEND
Primary Functions
Secondary Functions
Tertiary Functions
PROJECT SCOPEMid Terms (Current)
LEGEND
Primary Functions
Secondary Functions
Tertiary Functions
Assessment Module
User Submission
Recording
Module
Creating Setlist
Groups Module
Productivity
Enhancement
Targets
Usability Module
Application Tutorial
Feedback Module
Export dataAssess Control Module
Password Reset
Playback Module
Preview Songs
Search Songs
Multiple Volume
Adjustment
Auto-scroll Lyrics
Recording Module
Recording Storage
Export and Share via Social
Media
Assessment
Module
Client Review
Access Control Module
Connect
via Social Media
View Profile (s)
Edit Profile (s)
Usability Module
View Inbox
Send Notification
About WPC / Events
Offline Usage
Feedback Module
User Feedback
Vote New Song
Request New Song
Request Diff Key
Vote New Set List
Events Timeline
Events Photo Gallery
Groups Module
Search Users
Edit Access
Share Recordings
in Groups
Search Group(s)
Announcement
Board
Analytics Module
Analytics Dashboard
Data Tracking
Recording Module
Audio Recording
Upload Recording
Access Control
Module
Log in
Log out
Create Account
Remote RUD
Payment System
Access Rights
Groups Module
Create Group
Invite Users
Leave Group
Password Protection
Promote Members
Audio Playback
Synchronized
Playback
Download Song(s)
Delete Song(s)
Play, Pause Song
Link to Spotify
Edit Track(S)
Edit Song(s)
Seek Section
Display Song List
Upload New Track(s)
Create Song
Link to iTunes
Playback Module
Completed Functions
Newly Added Functions
Deleted Functions
PROJECT SCOPEWhat Changed?
010203
REMOVAL of “Recording” ModuleTechnical Difficulties Faced
REDUCTION of certain “Groups” featuresRemoval of Recording features tied to Groups
FOCUS on “Groups”, “Analytics” and “Events”Change in project requirements and focus
PROJECT METRICSRecorded Schedule Metrics
0%
20%
40%
60%
80%
100%
120%
1 2 3 4 5 6 7 8 9 10
Iteration
Schedule Metrics After Acceptance
PROJECT METRICSWhat Is Significant? Why?
0%
20%
40%
60%
80%
100%
120%
1 2 3 4 5 6 7 8 9 10
Iteration
Schedule Metrics
Unexpected difficulties with “Track Upload” Functionality together with the need to learn and
adding “Amazon Web Service” to project.
ITERATION 3 – 50%
Added additional time to Iteration 3 to account for new tasks and monitor closely for next 2 iterations. Revised planned iteration days for Iteration 5 to 7
days instead of 14 days.
MITIGATION PLAN
PROJECT METRICSRecorded Bug Metrics
0
5
10
15
20
25
1 2 3 4 5 6 7 8 9 10
Iteration
Sum of Critical Bugs
Sum of High Bugs
Sum of Low Bugs
Sum of Bug Score
After Acceptance
PROJECT METRICSWhat Is Significant? Why?
0
5
10
15
20
25
1 2 3 4 5 6 7 8 9 10
Iteration
Sum of Critical Bugs
Sum of High Bugs
Sum of Low Bugs
Sum of Bug Score
Unable to upload files to Firebase, alternative must be found. Added “Amazon Web Service” to resolve
issue.
ITERATION 3 – Bug Score: 20
All development was ceased and new database was added to the application. Iterations were re-
organized to account for the lag time.
ACTION TAKEN
PROJECT METRICSWhat Is Significant? Why?
Difficulties faced with “Recording” functionality. Function was buggy and unable to run smoothly on
the application.
ITERATION 8 – Bug Score: 10
Called for client meeting for discussion. Application was re-organized with “Recording” functionality
shifted to the back of iteration plans.
ACTION TAKEN
0
5
10
15
20
25
1 2 3 4 5 6 7 8 9 10
Iteration
Sum of Critical Bugs
Sum of High Bugs
Sum of Low Bugs
Sum of Bug Score
PROJECT METRICSWhat Is Significant? Why?
Apple Store rejected application due to minor bugs within the application during review by Apple.
ITERATION 10 – Bug Score: 15
Halt other developments and focus on debugging application. Immediate priority was to push
application to Apple Store successfully. Called for client meeting to discuss functions’ priority.
ACTION TAKEN
0
5
10
15
20
25
1 2 3 4 5 6 7 8 9 10
Iteration
Sum of Critical Bugs
Sum of High Bugs
Sum of Low Bugs
Sum of Bug Score
RISK MANAGEMENTRisks and Mitigations
Risk Type Risk Description Impact Likelihood Impact Level Category Mitigation Plan Status Risk Type
Technical Risk
Team is unfamiliar with technology used (i.e. new languages for iOS development)
Project might potentially be delayed and the quality of
development might be compromised due to more
bugs detected.
High High A Instead of using Swift for iOS Development, we make use of ionic framework for the
development of the iOS.
Mitigated Technical Risk
Project Management
RiskClient changes requirements on Ad-Hoc Basis.
Project schedule might be affected/delayed.
Medium High A
Core functions will be up by acceptance and other modular functions requested by the clients after that will not affect the core
functions
Mitigated Project
Management Risk
External Risk
AngularJS 2.0 will be released towards the end of 2015, with a possibility of the previous library version being deleted or overwritten. However,
the possibility of them deleting the previous library is low due to the extreme community
response
Project might be affected due to the lost in library upon
release of the new version of Angular JS.
Low Low C
Our group will closely monitor the developers' blog as they continue to build the new version,
and cross-check to see if ionic framework would be affected
Mitigated External Risk
Technical Risk
Hybrid applications generally give slower performances than native applications.
However, our team estimates that the decrease in performance is minimal, and as such we will
continue on building a hybrid application
Users may face lower peformance compared to
native applications.Medium Medium B
Our group will need to carefully monitor the application to ensure that the performance is
acceptable, and be prepared to convert code to a native application if necessary
Mitigated Technical Risk
External RiskCoyright Issues where only original songs can be
used
Copyright restrictions might incur additional fees which the client might not want to
pay for it
Medium High A - - External Risk
Technical Risk
Deployment to the App Store may take longer than expected
Project schedule might be affected/delayed.
High Medium AUsing 2-3 weeks as a reference from the point
of releasesMitigated Technical Risk
External RiskiOS9 release in September may cause
compatibility issues with our current application.Project might be affected due
to the change in OSHigh High A
On-the-go amendments to the configurations within Xcode (e.g: config.xml; firebase-info.plist;
info.plistBeing Mitigated External Risk
RISK MANAGEMENTRisks and Mitigations
Copyright Issues with songs
App Store hidden requirements
Plan for iterations using 2 weeks as a gauge for how long App
Store will take to respond
Link to iTunes
CHANGE MANAGEMENT(Before Mid Terms) Changes Recorded and Status
Iteration Description Reason for Change Impact Feasibility Priority Level Accepted? Status
1 Project OverhaulMissing functionalities such as "About WPC", additional
screens and considerations had to be added.High High A Yes Completed
3 Add Amazon S3Firebase database unable to take multimedia files, needed
to add Amazon Web Services to store files.High High A Yes Completed
3 Iteration Re-planningUnexpected difficulties with our database forced us to push certain functionalities back, such as "Downloading Tracks"
High High A YesIncreased Duration of Iteration 3; Decreased Duration of Iteration 5;
Reshuffled Functionalities
4Additional Functions to be
added"Offline" capabilities for the application to be used at any
timeHigh High A Yes Completed
4Additional Functions from
ClientClient requested for Panning for individual tracks on the DJ
PageLow Low C No
Will require recoding from the beginning due to the need to implement a different library.
4Redesign UI of most
screens in application, notably for DJ Page
Feedback from Supervisor and UAT High High A Yes Completed
CHANGE MANAGEMENT(After Mid Terms) Changes Recorded and Status
Iteration Description Reason for Change Impact Feasibility Priority Level Accepted? Status
7Lyrics Removal from DJ
Page
Lyrics are copyrighted and cannot display on the application without proper approval. App store will not accept lyrics
otherwise.
High High A Yes Removed lyrics from DJ Page
7
Add a link to the original track in iTunes for any
cover song in the application uploaded by
the Client.
App Store could potentially reject the application if cover songs do not adhere to copyright laws. As such, our group
and our Client have agreed that providing a link to the original track might mitigate the issue.
High Medium A YesTo be done in Iteration 9
8Push back Recording
functionality development.
Recording functionality proved to be buggy and unable to work together with our Synchronous Playback functions.
Unable to access microphone and headphones at the same time.
High High A YesShifted Recording Functionality development to the very back of
Iteration plans.
10Restructure application for
MVP push.
App Store rejected application for the 8th time, our team needs to reorganize the remaining functionalities due to the
4 remaining commits left.High High A Yes
Meeting with Clients to discuss priority of remaining functionalities. Removal of Recording Functionality was decided, and Groups functions
were given higher priority.
CHANGE MANAGEMENTNotable Changes
Recording Function Difficulties
Copyright Issues with Lyrics
Function Removed after deliberation with Clients
Removed lyrics and auto-scroll lyrics functions
MOVING FORWARDOur Plan – Iterations by Release
010203
GROUPS MODULEFor Target Audience Use
ANALYTICS MODULEClient Knowledge and App Development
EVENTS MODULEInteractive Platform for Fans
REASONS FOR REJECTIONApple Store Rejection
First ReleaseApp was an in-house
application
Intended for employees or members
of organization
Second Release“Demo”, “Trial” or “Test” versions are
rejected
Beta Apps must be submitted via
TestFlight
Similar namingsrequired for App Store
and on device
Any third-party material are not to be
used
Third ReleaseAdditional Information needed upon review of
app by Apple