IS480 Team wiki: 2017T1 Renew Midterm Wiki
- 1 Project Progress Summary
- 2 Project Management
- 3 Quality of Product
- 4 Reflections
Project Progress Summary
- Current Iteration: Iteration 8
- Iteration Period: 9 October 2017 - 22 October 2017
- Major Milestones: Midterm Presentation (10 October)
- Functions: Blog, Roster
- 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.
|Module||Status||Confidence Level (0-1)||Comment|
|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.|
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)
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|
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
For a full list of all our risks along with their status and our mitigation strategies employed, do take at our Risk Management
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.
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.
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
|Area of Interest||Link|
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:
|Regression Testing||UAT 1||UAT 2|