Fund Factsheet Generator


Day 1 - Introduction to the project

Having completed the training in UST, our boss assigned us with a major project. We were tasked to create a web app. The application is able to crawl through the web daily for stocks information and store them in a database. Then, the application is able to access 1 year worth of data and generate a fund fact sheet. If the client wishes to do so, he can enter the application and configure fund information. Our heads went spiralling. What even is a mutual fund?


Week 1 - Software Requirement Specification

Possible the most confused state we were in during the whole project. We were spending time skimming through finance websites and trying to understand the different finance terminologies. Ignoring the calculations and formulas, we barely scrapped by a SRS that contains all the functionalities of the app.


Week 2 - Design

This week we went heavily into the systems of the application. Turns out the database design wasn't as simple as I thought. login, stocks information, past records... everything had to be there. Yet you can't just create a table for anything you thought of. It should not appear twice as that is just inefficient programming. Add in primary keys and foreign keys. Gah!


Week 3-6 - Creating the software

We spent the next three weeks creating the software. We used UiPath to scrape daily data. As we were very experienced in that, that was the easiest for us. The web app itself is probably the most difficult task as it had the most functionality. It can view past fact sheets, change funds, edit investor's list etc...

For the last week we spent the time integrating the systems together. As we had cleverly designed the database to be the bridge between the scraping of data and the web app, we only need to ensure that the database connects well with the others.


Week 7 - Testing

It was testing time! Although we didn't managed to implement automated testing, we still learned quite a bit about them. What we did do was manual testing. We looked at the SRS and formulated a series of tests that the app was supposed to pass. We had to make many changes to the software upon testing.


Week 8 - Presentation

It was finally presentation time. I was very nervous as we were the first to go and our boss had brought in two subject matter expert. It was a deep learning experience as we learn about many of the flaws that we had made. Dependency injection, defensive coding, it was like there was still so many things we had to learn.


Week 9+ Moving forward

We were to continue improving on our product. Unfortunately/Fortunately for me, I was then deployed to singtel so that was the last I had touched upon the project.