HeaderSIS.jpg

IS480 Team wiki: 2012T1 Timber Werkz Final Wiki

From IS480
Jump to navigation Jump to search

IS480 FINAL WIKI

<< MAIN WIKI           << MID-TERM WIKI

TW developed by.jpg



Project Progress Summary

View our one minute pitch HERE

1.   Final Presentation Slides

2.   Casting3 Deployed Site Link



  • Timberwerkz has completed 13 sprints in total and is now finishing its final milestone.
  • This is where we are on the timeline:

TW milestone v5.jpg

Project Highlights

Event (#) Highlights / Issue Description
Sprint 10
Audition Scheduling: Hungarian Algorithm changed to First-Come First-Served Algorithm

Client requested to change the current audition scheduling algorithm from Hungarian Algorithm to FCFS algorithm to better suit the auditioning process flow of the company.

Team accepted the change request and put in extra hours to fulfill the change requirement.

Sprint 11
Business Development Executive (Point-of-Contact from Client) left her position

The Business Development Executive, who is the POC from our client has left the company. We had to work with another Executive Assistant during the interim period for about 1 week. Subsequently on November 9, we had to update the new Business Development Executive about the system and to manage new change requests.

Refer to Client Meeting 10 for our first meeting with the new Business Development Executive.

Back to Top

Project Challenges

Event (#) Challenges
Developing the Audition Assignment Algorithm
  • Developing the Audition Assignment Algorithm required thorough research and self-study of the Hungarian Algorithm
  • Team also had consultations with Professor Hady Wirawan Lauw from the School of Information Systems, SMU
  • Considered as a technical complexity
  • However, a change request required us to change this algorithm to a First-Come First Served one to better suit the client's business requirements

Usability Test 2
  • Faced difficulties in getting a real Casting Call for a field test because it does not coincide with our UT2 schedule.
  • Managed to conduct a UT2 Lab Test instead on 25 October 2012

Back to Top

Project Achievements

1. Usability Testing Methodology

  • Methodology was beneficial in providing a high visibility and clear approach in managing improvements from participants' feedback
  • Invited by Professor Benjamin Gan to his IS306 Interaction Design Prototyping class to share lessons learnt and improvements that can be made.
    Presentation Slides
TWnote.png


2. Change Request Management Process

  • Process was beneficial in prioritising and managing change requests from the client
  • It also helps us to keep within the project schedule by focusing on the 'important or necessary' requests


Back to Top

Project Management

Schedule (Planned VS Actual)

TW timeline v5full.png

Brief Summary

Since the Mid Terms, everything went as planned, except for the following changes to the project schedule:

Change #1: Minor changes to the dates to reflect the actual date of User Testing 2 and Final Presentation
Change #2: Addition of a new Field Test session. Oak3 Films is using our application in one of its Casting Call auditions

High resolution timeline link


Back to Top



Metrics

Schedule Metric

The diagrams below show the burn-down & schedule ratio charts of Sprints 9 - 13 since MidTerms.


Burn-down Charts

TW BurnDownFinal.png  TW Sprint13 2.png



Schedule Ratio Charts

TW BurnDownFinal2.png  TW Sprint 13.png



Key Issues

1. Sprint 10:

  • Delay in the last 3 days of Sprint 10.
  • Team needs to settle the following important change requests:
1. Change Hungarian algorithm-based audition scheduling to first-come-first-served basis
2. Export audition schedule to CSV file
3. Submit required video with YouYube URL
4. Include time interval of 15 minutes for scheduling
  • Our response was to hold two sessions on October 23 and 24 to resolve all the outstanding tasks (last 3 days of sprint 10)


Links
1. Schedule Metric Calculation
2. Schedule Metric Documentations

Back to Top


Bug Metric

Number of Bugs Discovered Chart and Bug Severity Chart
TW Bug9-13.png  TW BugImpact9-13.png


Key Issues


1. Sprint 11:

  • Highest Bug severity points (16)
  • 6 of 7 bugs found were minor aesthetic issues which were discovered during Usability Test 2
  • The remainder is a medium severity bug
  • Bugs were scheduled to be fixed within Sprint 11


Links
1. Bug Metric Documentation (Scroll right for Bug Score Table)

Back to Top



Technical Complexity


Technical complexity listed in order of highest complexity:

Complexity Description
1. Multifunctional Calendar
  • What the feature is
  • Simplify the complex process of scheduling auditions using commonly recognized calendar interface
  • Casting Manager can create an audition schedule by clicking and dragging slots
  • Artistes can select slots that are available
  • What was complex
  • Implementing drag and drop efficiently in the calendar
  • Assign elements to be “draggable”
  • Auditionee slots that exist on the calendar
  • Auditionees that has not selected a slot
  • Assign elements to be “droppable”
2. Photo
Upload Plugin

(Similar from
Mid Term)
  • What the feature is
  • A Production House or an Artiste can set a profile picture to best represent himself/herself when the portfolio is edited
  • What was complex
  • Process considerations & implementation such as:
  1. Select Photo (using HTML5 Canvas API)
  2. Cropping (JavaScript API, ebserver crops photo)
  3. Uploading Photos to Amazon S3 Bucket
  4. Cross browser support and Cropping aspect ratio
3. Video
Upload Plugin

(Maroon text
reflects addition
from Mid Term)
  • What the feature is
  • An artiste is required to upload a YouTube Video attachment when s/he is applying for a role in a Casting Call
  • What was complex
  • Get Access Token: Youtube Developer API
  • Request for one-time access token
  • Convert one-time access token to persistent session token
  • Upload new video from file
  • Set video metadata. E.g. Title, Description -> upload URL
  • Use existing YouTube video via URL
  • Locate thumbnail preview and display title


Back to Top



Quality of Product

Project Deliverables

Stage Specification Modules
Project Management Minutes
(Brown colour code for
minutes after Mid-Terms)
Metrics
Requirements Product Backlog
Change Requests Log
UI Mockups & Videos
Analysis Use Case
Design Deployment Diagram
Logical Diagram
Testing Usability Test 1
Usability Test 2
Field Test
Handover Set-up Guide
Handover Checklist
User Manual
Back to Top



Quality

Quality Attributes
SYSTEM
1. Scalable Design Architecture:

Casting3’s architecture is designed to allow the development of a fault tolerant and scalable environment.
(see deployment diagram: production environment)
  • Web server, File storage, Database and Email System exist as separate components that are independent of each other.
    This setup ensures that each component can be scaled individually without affecting others.
  • File Storage uses Amazon’s Simple Storage Service (S3), while the Email system utilizes Amazon’s Simple Email Service (SES).
    Both services scale automatically based on utilization levels without user intervention.
  • Web server and Database exists as single instances.
    However, clustering technologies have not been implemented on either of the components as it is currently an unnecessary overhead.
2. Configurable and extensible application design. (following Yii’s MVC framework):

  • Extensibility:
  • Allows extensibility for development of new features by providing automatic test scripts such as PHPUnit and Selenium.
  • Quickly and accurately ensure that modifications to the system does not break existing features by running automatic tests.
  • Configurability:
  • All system configurations are stored in a common configuration file, allowing easy customization of access credentials for database access and AWS services.
APPLICATION
1. Usability:

  • Casting3 emphasizes strongly on usability of the system and strives to reduce the learning curve of new users by providing extensive help for first time users such as:
  • Screenshots of overlays
  • Screenshots of tooltips
  • Screenshot of video
2. Javascript MVC:

  • Implemented simple Javascript-HTML templating engine to provide a well defined MVC framework between javascript and HTML.
  • Javascript should not contain any HTML syntax. However, some situations require Javascript to insert HTML syntax to provide dynamic content.
  • Hence, we have developed a lightweight templating engine that retrieves and manipulate HTML templates for Javascript.


  • Template Engine (Javascript function)
Template Engine (Javascript function).png
  • HTML Template (in HTML page)
HTML Template (in HTML page).png
  • Manipulating template
Manipulating template.png


Back to Top


Deployment


Casting3 has 3 separate deployed environments. These are development, staging and production environment.
The responsibilities for each of these environment are for code integration, product testing, and public release respectively.

Environment URL UserID / Password

Development

http://dev-casting3.hopto.org

  • Casting Manager: cm@cm.com / 123
  • Artiste: artiste@artiste.com / 123
  • Production House: prod@prod.com / 123
  • Or Sign Up

Staging

http://casting3.hopto.org

  • Casting Manager: cm@cm.com / 123
  • Artiste: artiste@artiste.com / 123
  • Production House: prod@prod.com / 123
  • Or Sign Up

Production

http://175.41.160.252


Back to Top



Usability Test 2

Objectives

1. Determine that the usage of the features in the application are consistent to the expectations of real users (Casting Managers & Artistes)

2. Obtain feedback from users such as to improve the usability (learnability, efficiency, errors, satisfaction) and aesthetics of our application



Lab Test Details & Outcome

Usability Test 2: Real users (Artistes) participating in the test at Oak3 Films


UT2 Lab Test was successfully conducted on 25 October 2012, 2–6pm at Oak3 Films.
These are the following participants:

  1. 1 Casting Manager
  2. 5 Artistes

For more information about how we planned and carried out Usability Test 2, please refer to: Main wiki: Usability Test 2



Feedback Links:

1. Casting Manager Feedback
2. Artistes Feedback
3. Response Plan to Artiste Feedback
4. Quantitative Feedback







Extract of Solutions to Most Common Feedback:

UT21.png


TW UT22.png




Field Test

Objectives

1. Determine if users are capable of handling the application on their own (without any guidance from us) in the actual environment where they would be using the application

2. Obtain feedback from users such as to improve the usability (learnability, efficiency, errors, satisfaction) and aesthetics of our application



Field Test Details & Outcome


Field Test was conducted from 28 November 2012 to 1 December 2012 remotely at the artistes' own comfort. With the help and support of Oak3, we managed to get some artistes to sign up as a user of Casting3, and to apply for an ongoing casting call, "Koffee did it". They will be provided with a link to an evaluation form, where they will asked to give us their feedback.

TW FieldTestMethod.png

As of the submission date of this wiki page (28 Nov), the field test is ongoing and results have yet to be collated. The results will be later concluded in the following links:

Feedback Links:

1. Profile of artistes who have signed up
2. Survey for Artistes and their feedback
3. Response Plan to Artiste Feedback




Reflections

Team Reflection


What we could have done better... in future!

  • Project Management
  • Schedule Metric
  • The "Remaining Effort" Line in the Burn Down Chart can be tweaked to form a curve based on the past trends of Burn Down Charts as shown:
  • TW BurnDownChart.png
  • Our team's Burn Down Charts typically start with a huge gap at the beginning since we included buffer time in each sprint for change requests and other unforeseen circumstances. Hence, by comparing remaining efforts required to the remaining time available in the form of a curve, it allows us to detect any schedule delay early.
  • Refer to the current burn down chart here.



  • Bug Resolution Effort Metric
  • It will also be good to track the amount of time we took to resolve a bug
  • This will provide us with greater visibility, instead of the current way which is to calculate manually from a Sprint Documentation
  • EffortTracker.png



  • Change Request Management
  • Gather statistics & display them graphically using the following data:
  1. No. of Change Requests Raised
  2. No. of Requests Implemented
  3. No. of Requests Placed On Hold/Not Implemented
  • This will allow our team to monitor change requests more effectively
  • It can also be used as a tool for the client to be kept informed and updated



Back to Top

Individual Reflection

Member Reflections Member Reflections
TWjunru.png
  • It was a rewarding experience to be a Project Manager for a project that involves real clients and business requirements.

  • Learnt to be more flexible (especially with the valuable feedback from the client) and to prioritize and make changes according to the schedule and time limitation.
TWwk.png
  • Better understood how to manage the expectations of the clients; and to negotiate and justify our ideas.

  • Also learnt to communicate and explain the consequences of change requests raised to allow the client to have a better perspective
TWnikita.png
  • Understood the real value of user testing because what developers see and what the users experience is totally different

  • With that, we have to learn how to balance the testers feedbacks with the original functions the client is looking out for
TWgen.png
  • I've enjoyed myself in this journey, I gained skills in developing in PHP and learnt how to program with Jquery and AngularJS. I also learnt how these are integrated together and the usefulness of frameworks, especially when learning about the Yii framework.

  • Picked up other interesting skills, such as, video editing (doing voice overs, animating videos etc) and copywriting skills when developing user manual and writing the script for the help videos.
TWreg.png
  • Learnt to analyze and understand client’s requirements and create a system that will aid in their business processes

  • Understood the importance of questioning and seeking the right answers in terms of what the client wants; and think through to see whether it will be useful if implemented
TWcal.png
  • It was a good experience working with the client as I get to understand better about how to manage change requests and the significance of User Tests

  • Team dynamics is really important to carry us through tough times; and I'm grateful that all of us were willing to help each other out during our busy periods of Weeks 12 - 15 in SMU!


   Additional Links: Roles & Responsibilities, Learning Experiences

Back to Top



Casting3 will enhance talent management processes in the entertainment industry. Creating a new community on this interactive networking platform, potential actors/actresses can upload auditions virtually to secure a role while casting managers can source from a larger pool of talent more efficiently.

The team at Timber Werkz has helped to create a platform suited to the industry’s needs.
Self-motivated and enthusiastic, they have often advised on feasibility of technical requests and provided innovative solutions during the development of this project.

~ Oak3 Films
28 November 2012


Back to Top