i won't give up - javascript required

90
I Won’t Give Up Jason Mraz Main Vocal Guitar Harmony Vocals

Upload: khangminh22

Post on 20-Apr-2023

2 views

Category:

Documents


0 download

TRANSCRIPT

I Won’t Give UpJason Mraz

Main Vocal Guitar Harmony Vocals

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

01 INTRODUCTIONThe Supports . Our Client

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

OVERVIEWHow Our App Works

SCENARIO 1

WayPastCurfew Fans of WayPastCurfew

OVERVIEWHow Our App Works

SCENARIO 2

WayPastCurfew Web Portal

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 .

PROTOTYPING SOFTWAREWhat We Used for Prototyping?

InVision Prototyping on Paper (POP)

DATABASEWhere We Store Our Data?

Amazon Web Services (AWS); Amazon S3 Firebase

DEVELOPMENT ENVIRONMENTWhat We Used to Code?

Node.JS

DEVELOPMENT FRAMEWORKSWhat We Used to Code?

Ionic Framework ngCordova

EASY ADAPTATION

EXSITING PLUG-INS AVAILABLE

UI-UX FRAMEWORKSWhat We Used To Beautify?

Ionicons Materialize Framework

SweetAlert

LANGUAGESOverall Coding Languages

HTML CSS

JavaScript Objective C

IDEs USEDWhere We Code On?

WebStorm Xcode

TECHNOLOGY STACKHow Our Whole App Runs?

Languages

Enviro

nmen

t

Framework

UI-UX

IDE

Databases

04TECHNICAL COMPLEXITYArchitectural Diagram . Complexity of Functions. How Technology Used Aid Our Application

DIAGRAMArchitectural Diagram

Users Clients

Native Deployment

Database

TECHNOLOGYWhat Is Complex?

01 iOS9 Release (16 September)Application Security Transport

TECHNOLOGYWhat Is Complex?

02 Synchronous Playback

Native > ngCordova > Objective C

TECHNOLOGYWhat Is Complex?

03Audio RecordingNo available solution

05USER TESTINGNumber of User Testing . Details of UT . Changes Made

NUMBER OF TESTINGHow Many Did We Conduct?

1 USER TESTING CONDUCTED

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 1Test Objectives

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

DELAYED USER TESTINGChanges Made

Recording Function Removed

No New Functions for Users to Test

06CLIENT TESTDetails of Release . Process of Release . Scope of Release . Feedback Obtained .

CLIENT TEST 1.0Details of Release

FIRST BETA RELEASE

02 OCTOBER2015

WHEN?

OUR CLIENTS

WHO?

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

Our Targets

Deployment on Apple Store Reach 50 active users

X-FACTOR

X-FACTOROur Current Objective

Promote The Band

Interactive Mobile Platform

Advertisement for their Music01 02

PROJECT STATUSIteration and Progress

ITERATION11

CURRENT ITERATION

PROJECT SCHEDULEAcceptance (Then)

PROJECT SCHEDULEAcceptance (Then)

PROJECT SCHEDULEMid Terms (Current)

PROJECT SCHEDULEMid Terms (Current)

PROJECT SCHEDULEMid Terms (Current)

PROJECT SCHEDULEMid Terms – Iteration 7

No Changes Made

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 METRICSSchedule Metrics Criteria

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 METRICSBug Metrics Criteria

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 MANAGEMENTRisk Matrix

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 MANAGEMENTChange Matrix

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

08ROLES AND REFLECTIONSRoles and Responsibilities . Team’s Learning Outcomes .

ROLES AND RESPONSIBILITIES Darren Lim Fei Hong

TEAM’S LEARNING OUTCOMES Darren Lim Fei Hong

What We Want To Get Out Of This?

ROLES AND RESPONSIBILITIES Goh Ghee Gin Shane

TEAM’S LEARNING OUTCOMES Goh Ghee Gin ShaneWhat We Want To Get Out Of This?

ROLES AND RESPONSIBILITIES Lim Wei Yang

TEAM’S LEARNING OUTCOMES Lim Wei Yang

What We Want To Get Out Of This?

ROLES AND RESPONSIBILITIES Wong Qi Wen

TEAM’S LEARNING OUTCOMESWhat We Want To Get Out Of This?

Wong Qi Wen

ROLES AND RESPONSIBILITIES Zoey Lee Siew Jie

TEAM’S LEARNING OUTCOMES Zoey Lee Siew JieWhat We Want To Get Out Of This?

The end.ANY QUESTIONS?

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