IS480 Team wiki: 2017T1 Renew Midterm Wiki

From IS480
Jump to navigation Jump to search






Project Progress Summary

Deployed Site Link

Fashion Your Future

Midterm Slides

Mid-Terms Slides

Deployment Progress
  • Current Iteration: Iteration 8
  • Iteration Period: 9 October 2017 - 22 October 2017
  • Major Milestones: Midterm Presentation (10 October)
  • Functions: Blog, Roster

Project Highlights

  • Multiple changes in scope since our original start, even after acceptance.
  • The design aspect of our public facing website is constantly changing.
  • Related to the above point, design is equally important to functionality as our client is a fashion retailer thus necessitating a different approach to building the project.
  • Our end client has changed constantly throughout the project from the IT director to the IT department to the HR director to the HR department.
  • We had problems deploying to the server provided by the client and learnt about the server provided to us.
  • The team is consistently thinking of ways to value add to our project, even up to midterms.

Project Management

Project Status

Renew MidtermProjectStatus.png

Module Status Confidence Level (0-1) Comment
Job 100% 1 Nil
Admin 100% 1 Nil
Account 100% 1 Nil
Welfare 100% 1 Nil
Engagement 100% 0.95 There are concerns arising from our UAT regarding the design.
Reward 100% 0.9 There is a need to integrate with an existing POS system we have no control over.
Reporting 100% 0.9 Suggestions to improve this design-wise was raised in both UAT and supervisor meetings and the design has been altered but has not gone through UAT.
CMS 90% 0.8 Content is still being changed by the Client.
Communication 85% 0.75 Not tested in UAT.
Blog 33% 0.6 In Development
Roster 0% 0.4 In Development

Project Scope Changes


Midterm Scope Old.png


Midterm Scope New.png

Changes since Acceptance:

S/N Function Module Function Type Type of Change Reason
1 a. Viewing of Exclusive Deals
b. Viewing of Leave Entitlement
Welfare Secondary Addition of Function Request from Client.
2 Email Previous Applicants of New Jobs Communication Secondary Removal of Function Request from Client.
3 Beeline Third Parties Good-To-Have Removal of Module After discussion with the Client, what Beeline can offer does not meet the Client's requirement hence the request to remove it.
4 a. Blog for Staff to Upload Newsletters
b. Ability to add videos to posts
Blog Good-To-Have Addition of Module Request from Client.
5 Resume Parser Job Good-To-Have Removal of Function Discussion with client on the value of this function.

Project Schedule Changes

Planned (from Acceptance)

Renew Timeline 10Aug Ver 3.png


Renew ScheduleChangesHighlighted.png

Changes since Acceptance:

Previous Iteration New Iteration Change(s) Reason(s)
Iteration 6 - Job (III) module was dropped, and Blog (I) module was replaced. Discussion with client on the value of Job (II) function. Dropping the module gives us more time in the iteration to focus on finding appropriate themes for Blog (I) module for sponsors.
Iteration 7 Iteration 7 Date where website goes live was pushed forward This was suggested during acceptance presentation to ensure more data can be collected
Iteration 8 Iteration 8 Midterms date was finalised Booking of midterms was opened
Iteration 8 Iteration 8 Third-Party module was replaced by Blog module Change in sponsor's needs led to the removal of the planned third party module, and the addition of the blog module

Project Metrics

For a complete breakdown of how we calculated our metrics as well as for more information pertaining to our metrics, do take a look at Renew Metrics

Task Metrics:

Renew MidtermTaskMetrics.png

Bug Metrics:

Renew MidtermBugMetrics.png

Project Risks

For a full list of all our risks along with their status and our mitigation strategies employed, do take at our Risk Management

Type of Risk.png

Technical Complexity

Focus on UI that is easy to maintain and change

We have a project whereby the UI is very important and must fulfil 4 basic needs whilst having a consistent look and feel across the website.
1. Ability to upload images
2. Text in the form of a paragraph must be attached to the image
3. Easy to use without training as editors will be HR personnel who are not trained in any IT skills.
4. Liberty for user to edit changes and reverse mistakes instantaneously without the need to redeploy portion of the project

Based on the research done by us, existing CMS are overloaded with non-essential functionalities and would require elaborate access control via other systems. To aid us, we have used blobs and containers as well as Dropbox which allows us to change our display on the go.

Sample Page:

Dropbox Integration:
This is to cut down on the resources needed due to concerns regarding the size of the database as well as to reduce the time taken to load the images. To achieve this, we have brought in the Dropbox API for images. However, this does not solve the concerns regarding the editing of the text.

How Our Blobs Work:
(i) Year Blob:
Decades – /LegacyHome.jsp
At this page, the code goes into database to search in table “DecadeBlobs”. Retrieves the blobs in increasing decade order(1990s, 2000s, 2010s, etc) and prints them in LegacyHome.jsp
Within each decade – eg: /LegacyTemplate.jsp?decade=1980
At this page, the code goes into database to search in table “YearBlobs”. Retrieves the blobs whose decade=the selected decade, and prints them in LegacyTemplate.jsp
(ii) Timeline Blob:
The individual “timeline circles” are blobs, which are also retrieved along with the year blob and printed.

Sample Blob from Database:
Regarding the usage of blobs, it has become a key point of our project as our previous efforts did not manage to give it the consistency we needed. For reference, our previous efforts are shown below alongside common HTML tags which we were exposed to. While it showcases a decent product, it is not something we felt was spectacular and deserving of a company which is firmly rooted in the fashion industry which places a high emphasis on design.

Usage of C# to integrate with our client’s POS system

As part of our requirements, we are to integrate our system, which is coded mainly in java, with the current POS system that F J Benjamin has in place for a purpose of validating a voucher. Through this, we had to analyse their POS system and to aid us, they have kindly offered a code extract.

Our solution is to create a RESTful web service which makes use of XML to be able to update both systems when the proper conditions are met. This has meant that we have had to analyse their current systems and see where we could come in.

Based on what we have seen, the way a voucher is parsed into the POS system is that the system will digest the data in the interim of the POS system and parse it to their Backend system to act upon. However, our approach is that we do not do the digestion in the interim but rather, route it to a specific system before letting the data is digested to retrieve the needed information. Therefore, this makes the need to recompile the POS system redundant when there is a change in information which needs to be digested as compared to the previous approach.

This involved convincing the IT Team at F J Benjamin of the benefits of the modularity basis we used to approach this issue as well as being able to demonstrate the effectiveness of this approach as this is a clear departure from their established process. Through this basis of modularity, our own webservice needed to be coded in C# and was presented to them in the format of a .DLL file which can be thought of as a compile version of a C# project which offers plug and play capabilities.

Our code as seen, makes use of a byte array to transmit our voucher code to our database to verify the voucher’s validity which is returned in the format of an XML document to showcase the extensibility of this particular method.

Quality of Product

Intermediate Deliverables

Area of Interest Link
Project Management Minutes
Requirements Scope
Analysis Use Case
Market Research
Architectural Diagram
Design Prototypes
Testing Test Information


For the live version of our website, do visit Fashion Your Future and browse through the legacy of F J Benjamin and understand their story. Feel inspired and confident about the rich history behind the brand and the testimonials from our people and take the plunge to apply for a career with us!


Total number of testing:

  • 3 UATs in total, 2 already tested.
  • Internal testing of new function when developed
  • Regression testing at the end of every iteration
  • Testing before website-goes-live
  • Internal and regression testing are completed with documented test cases

    Renew MidtermTesting.png  More details about our testing can be found below:

    Regression Testing UAT 1 UAT 2
    Renew MidtermRegression TestingLogo.png Renew UAT1MidtermLogo.png Renew UAT2MidtermLogo.png.png


    Team Reflection

    Renew MidtermTeamReflection.png

    Individual Reflection

    Renew MidtermIndividualReflection.png