HeaderSIS.jpg

Difference between revisions of "IS480 Team wiki: 2017T1 Renew Midterm Wiki"

From IS480
Jump to navigation Jump to search
 
(47 intermediate revisions by 2 users not shown)
Line 38: Line 38:
 
<div style="margin-top:10px; background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px"><font face="Arial" color="#000000"> <b>Deployed Site Link</b></font>
 
<div style="margin-top:10px; background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px"><font face="Arial" color="#000000"> <b>Deployed Site Link</b></font>
 
</div>
 
</div>
Link here!<br/>
+
[http://fashionyourfuture.com.sg/ Fashion Your Future]<br/>
 
<br/>
 
<br/>
  
 
<div style="margin-top:10px; background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px"><font face="Arial" color="#000000"> <b>Midterm Slides</b></font>
 
<div style="margin-top:10px; background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px"><font face="Arial" color="#000000"> <b>Midterm Slides</b></font>
 
</div>
 
</div>
Link here!<br/>
+
[[Media:Renew_Midterm.pdf|Mid-Terms Slides]]<br/>
 
<br/>
 
<br/>
  
Line 52: Line 52:
 
* <b>Major Milestones:</b> Midterm Presentation (10 October)<br/>
 
* <b>Major Milestones:</b> Midterm Presentation (10 October)<br/>
 
* <b>Functions:</b> Blog, Roster<br/>
 
* <b>Functions:</b> Blog, Roster<br/>
<br/>
 
 
<br/>
 
<br/>
  
<div style="margin-top:10px; background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px"><font face="Arial" color="#000000"> <b>Project Highlights</b></font>
+
<h4 style="background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px">Project Highlights</h4>
</div>
 
 
* Multiple changes in scope since our original start, even after acceptance. <br/>
 
* Multiple changes in scope since our original start, even after acceptance. <br/>
 
* The design aspect of our public facing website is constantly changing.<br/>
 
* The design aspect of our public facing website is constantly changing.<br/>
Line 63: Line 61:
 
* We had problems deploying to the server provided by the client and learnt about the server provided to us.<br/>
 
* We had problems deploying to the server provided by the client and learnt about the server provided to us.<br/>
 
* The team is consistently thinking of ways to value add to our project, even up to midterms.<br/>
 
* The team is consistently thinking of ways to value add to our project, even up to midterms.<br/>
<br/>
 
 
<br/>
 
<br/>
  
 
== Project Management ==
 
== Project Management ==
 
+
<h4 style="background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px">Project Status</h4>
<div style="margin-top:10px; background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px"><font face="Arial" color="#000000"> <b>Project Status</b></font>
 
 
</div><br>
 
</div><br>
 +
[[File:Renew_MidtermProjectStatus.png|800px|center]]
 +
<br>
 
{| class="wikitable" style="margin: auto;width:90%; text-align:center; background: white;"
 
{| class="wikitable" style="margin: auto;width:90%; text-align:center; background: white;"
 
! style="background: #404040; color: white; font-weight: bold; width:20%" | Module
 
! style="background: #404040; color: white; font-weight: bold; width:20%" | Module
Line 122: Line 120:
 
|-
 
|-
 
| Blog
 
| Blog
| 0%
+
| 33%
| 0.5
+
| 0.6
| Future Development
+
| In Development
 
|-
 
|-
 
| Roster
 
| Roster
 
| 0%
 
| 0%
| 0.5
+
| 0.4
| Future Development
+
| In Development
 
|-
 
|-
 
|}
 
|}
Line 143: Line 141:
 
<u><b>Actual</b></u><br>
 
<u><b>Actual</b></u><br>
 
[[File:Midterm_Scope_New.png|center|800px]]
 
[[File:Midterm_Scope_New.png|center|800px]]
<br/>
+
<br>
 +
<b>Changes since Acceptance:</b><br>
 
{| class="wikitable" style="margin: auto;width:90%; text-align:center; background: white;"
 
{| class="wikitable" style="margin: auto;width:90%; text-align:center; background: white;"
 
! style="background: #404040; color: white; font-weight: bold; width:5%" | S/N
 
! style="background: #404040; color: white; font-weight: bold; width:5%" | S/N
Line 179: Line 178:
 
| Addition of Module
 
| Addition of Module
 
| Request from Client.
 
| Request from Client.
 +
|-
 +
| 5
 +
| Resume Parser
 +
| Job
 +
| Good-To-Have
 +
| Removal of Function
 +
| Discussion with client on the value of this function.
 
|-
 
|-
 
|}
 
|}
 
<br/>
 
<br/>
  
<div style="margin-top:10px; background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px"><font face="Arial" color="#000000"> <b>Project Schedule Changes</b></font></div><br>
+
<h4 style="background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px">Project Schedule Changes</h4>
 
<u><b>Planned (from Acceptance)</b></u><br>
 
<u><b>Planned (from Acceptance)</b></u><br>
[[Image: Renew_Timeline_10Aug_Ver_3.png |800px]]  
+
[[Image: Renew_Timeline_10Aug_Ver_3.png |center |800px]]  
 
<br>
 
<br>
 
<u><b>Actual</b></u><br>
 
<u><b>Actual</b></u><br>
[[Image:Renew ScheduleChangesHighlighted.png|800px]]
+
[[Image:Renew ScheduleChangesHighlighted.png |center |800px]]
 
<br>
 
<br>
 
<b>Changes since Acceptance:</b><br>
 
<b>Changes since Acceptance:</b><br>
{| class="wikitable" style="width:75%; text-align:center; background: white;"
+
{| class="wikitable" style="width:75%; text-align:center; background: white; margin-left: auto; margin-right: auto; border: none;"
! style="background: #404040; color: white; font-weight: bold; width:650px" | Change(s)
+
! style="background: #404040; color: white; font-weight: bold; width:15%" | Previous Iteration
! style="background: #404040; color: white; font-weight: bold; width:1150px" | Reason(s)
+
! style="background: #404040; color: white; font-weight: bold;  width:15%" | New Iteration
 
+
! style="background: #404040; color: white; font-weight: bold;  width:35%" | Change(s)
 +
! style="background: #404040; color: white; font-weight: bold; width:35%" | 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
 
|-
 
|-
| ♦  Midterms date is finalised <br/> <br/>♦ Date where website goes live was pushed forward.<br/> <br/>♦ Third party module is being replaced by Blog module<br/>
+
| Iteration 8
| ♦  Booking of midterms was opened.<br/> <br/>♦ This is suggested during the acceptance presentation to ensure more data can be collected. <br/> <br/>♦ Change in sponsor's needs and decided to remove the idea of a third party module, and instead add a blog module.<br/>
+
| 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
 
|-
 
|-
 
 
|}
 
|}
 
<br/>
 
<br/>
  
<div style="margin-top:10px; background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px"><font face="Arial" color="#000000"> <b>Project Metrics</b></font>
+
<h4 style="background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px">Project Metrics</h4>
 +
 
 +
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 [[IS480 Team wiki: 2017T1 Renew Metrics|Renew Metrics]]<br/>
 +
 
 +
<b><u>Task Metrics:</u></b>
 +
<br>
 +
[[File:Renew MidtermTaskMetrics.png|center|800px]]<br>
 +
<br>
 +
<b><u>Bug Metrics:</u></b>
 +
<br>
 +
[[File:Renew MidtermBugMetrics.png|center|800px]]
 +
<br>
 +
<h4 style="background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px">Project Risks</h4>
 +
For a full list of all our risks along with their status and our mitigation strategies employed, do take at our [[IS480 Team wiki: 2017T1 Renew Risk Management|Risk Management]]
 +
[[Image: Type_of_Risk.png |center |800px]]
 +
 
 +
<h4 style="background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px">Technical Complexity</h4>
 +
<div style="background: none; font-weight: bold; padding: 8px; text-align:left"><font color= #4169E1>Focus on UI that is easy to maintain and change</font></div>
 +
<div style="background: none; text-align:left; padding: 8px;">
 +
'''Situation:'''<br>
 +
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.<br>
 +
1. Ability to upload images<br>
 +
2. Text in the form of a paragraph must be attached to the image<br>
 +
3. Easy to use without training as editors will be HR personnel who are not trained in any IT skills.<br>
 +
4. Liberty for user to edit changes and reverse mistakes instantaneously without the need to redeploy portion of the project<br>
 +
<br><br>
 +
'''Solution:'''<br>
 +
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. <br>
 +
<br><u>Sample Page:</u><br>
 +
[[File:MidtermImg1.png]]<br>
 +
[[File:MidtermImg2.png]]<br>
 +
<br><u>Dropbox Integration:</u><br>
 +
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. <br>
 +
<br><u>How Our Blobs Work:</u><br>
 +
(i) Year Blob:<br>
 +
Decades – /LegacyHome.jsp<br>
 +
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 <br>
 +
Within each decade – eg: /LegacyTemplate.jsp?decade=1980<br>
 +
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<br>
 +
[[File:MidtermImg3.png]]<br>
 +
(ii) Timeline Blob:<br>
 +
The individual “timeline circles” are blobs, which are also retrieved along with the year blob and printed.<br>
 +
[[File:MidtermImg4.png]]<br><br>
 +
<u>Sample Blob from Database:</u><br>
 +
[[File:MidtermImg5.png]]<br>
 +
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.<br>
 +
[[File:MidtermImg6.png]]<br>
 
</div>
 
</div>
<br>
 
<div style="margin-top:10px; background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px"><font face="Arial" color="#000000"> <b>Project Risks</b></font>
 
</div><br>
 
  
<div style="margin-top:10px; background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px"><font face="Arial" color="#000000"> <b>Technical Complexity</b></font>
+
<div style="background: none; font-weight: bold; padding: 8px; text-align:left"><font color= #4169E1>Usage of C# to integrate with our client’s POS system</font></div>
 +
<div style="background: none; text-align:left; padding: 8px;">
 +
'''Situation:'''<br>
 +
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. <br>
 +
[[File:MidtermImg7.png]]<br>
 +
<br>'''Solution:'''<br>
 +
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. <br><br>
 +
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.<br><br>
 +
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.<br><br>
 +
[[File:MidtermImg8.png]]<br>
 +
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. 
 
</div>
 
</div>
  
 
==Quality of Product ==
 
==Quality of Product ==
 +
<h4 style="background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px">Intermediate Deliverables</h4>
 +
{| class="wikitable" style="margin-right:500px ;text-align: left; background: white; width: 400px; height: auto;"
 +
|-
 +
! style="background: #404040; color: white; font-weight: bold; width: 150px; height: 30px;" | Area of Interest
 +
! style="background: #404040; color: white; font-weight: bold; width: 250px; height: 30px;" | Link
 +
|-
 +
|rowspan="5"| Project Management
 +
|| [[IS480 Team wiki: 2017T1 Renew Minutes | Minutes]]
 +
|-
 +
|| [[IS480 Team wiki: 2017T1 Renew Change Management | Changes]]
 +
|-
 +
|| [[IS480 Team wiki: 2017T1 Renew Risk Management | Risks]]
 +
|-
 +
|| [[IS480 Team wiki: 2017T1 Renew Project Management | Schedule]]
 +
|-
 +
|| [[IS480 Team wiki: 2017T1 Renew Quality Assurance | Metrics]]
 +
|-
 +
|rowspan="2"| Requirements
 +
|| [[IS480 Team wiki: 2017T1 Renew Scope | Scope]]
 +
|-
 +
|| [[IS480 Team wiki: 2017T1 Renew Description and Motivation | Overview]]
 +
|-
 +
|rowspan="3"| Analysis
 +
|| [[IS480 Team wiki: 2017T1 Renew Diagrams#Use Case Diagram | Use Case]]
 +
|-
 +
|| [[IS480 Team wiki: 2017T1 Renew Market Research | Market Research]]
 +
|-
 +
|| [[IS480 Team wiki: 2017T1 Renew Diagrams#Architectural Diagram | Architectural Diagram]]
 +
|-
 +
|Design
 +
| [[IS480 Team wiki: 2017T1 Renew Project Documentation | Prototypes]]
 +
|-
 +
|Testing
 +
| [[IS480 Team wiki: 2017T1 Renew Regression Testing | Test Information]]
 +
|-
 +
|}
  
<div style="margin-top:10px; background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px"><font face="Arial" color="#000000"> <b>Intermediate Deliverables</b></font>
+
<h4 style="background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px">Deployment</h4>
</div><br>
+
For the live version of our website, do visit [http://fashionyourfuture.com.sg/ 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!<br/>
 +
<br/>
  
<div style="margin-top:10px; background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px"><font face="Arial" color="#000000"> <b>Deployment</b></font>
+
<h4 style="background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px">Testing</h4>
</div>
 
 
<br>
 
<br>
 +
<b>Total number of testing: </b><br>
 +
<li>3 UATs in total, 2 already tested.</li>
 +
<li>Internal testing of new function when developed</li>
 +
<li>Regression testing at the end of every iteration</li>
 +
<li>Testing before website-goes-live</li>
 +
<i>Internal and regression testing are completed with documented test cases</i>
 +
<br><br>
  
<div style="margin-top:10px; background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px"><font face="Arial" color="#000000"> <b>Testing</b></font>
+
[[File:Renew MidtermTesting.png|700px|]] 
</div><br>
+
 
 +
More details about our testing can be found below:<br>
 +
{| class="wikitable" style="background-color:#FFFFFF;"
 +
|-
 +
! style="font-weight: bold;background: #CAD4EC;color:#000;" | Regression Testing
 +
! style="font-weight: bold;background: #CAD4EC;color:#000;" | UAT 1
 +
! style="font-weight: bold;background: #CAD4EC;color:#000;" | UAT 2
 +
|-
 +
| [[Image:Renew_MidtermRegression TestingLogo.png|110px|link=IS480 Team wiki: 2017T1 Renew Regression Testing]]
 +
| [[Image: Renew_UAT1MidtermLogo.png |110px|link=IS480_Team_wiki:_2017T1 Renew UAT1]]
 +
| [[Image: Renew_UAT2MidtermLogo.png.png |110px|link=IS480_Team_wiki:_2017T1 Renew UAT2]]
 +
|-
 +
|}
  
 
== Reflections ==
 
== Reflections ==
 
<br>
 
<br>
<div style="margin-top:10px; background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px"><font face="Arial" color="#000000"> <b>Team Reflection</b></font>
+
<h4 style="background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px">Team Reflection</h4>
</div><br>
+
<br>
 
+
[[File:Renew_MidtermTeamReflection.png|500px|center|]]<br>
<div style="margin-top:10px; background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px"><font face="Arial" color="#000000"> <b>Individual Reflection</b></font>
+
<h4 style="background:#CAD4EC; padding: 10px; line-height: 1em; text-indent: 0px; font-size: 18px">Individual Reflection</h4>
</div><br>
+
<br>
 +
[[File:Renew_MidtermIndividualReflection.png|1200px]]<br>
  
  

Latest revision as of 00:31, 10 November 2017

Renew.png


HOME

ABOUT US

PROJECT OVERVIEW

PROJECT MANAGEMENT

DOCUMENTATION


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


Planned

Midterm Scope Old.png


Actual

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


Actual

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

Situation:
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


Solution:
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:
MidtermImg1.png
MidtermImg2.png

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
MidtermImg3.png
(ii) Timeline Blob:
The individual “timeline circles” are blobs, which are also retrieved along with the year blob and printed.
MidtermImg4.png

Sample Blob from Database:
MidtermImg5.png
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.
MidtermImg6.png

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

Situation:
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.
MidtermImg7.png

Solution:
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.

MidtermImg8.png
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
Changes
Risks
Schedule
Metrics
Requirements Scope
Overview
Analysis Use Case
Market Research
Architectural Diagram
Design Prototypes
Testing Test Information

Deployment

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!

Testing


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

    Reflections


    Team Reflection


    Renew MidtermTeamReflection.png


    Individual Reflection


    Renew MidtermIndividualReflection.png