HeaderSIS.jpg

IS480 Team wiki: 2017T2 Bare Code Wiki Midterms

From IS480
Jump to navigation Jump to search
link=IS480_Team_wiki%3A_2017T2_Bare_Code

HOME

ABOUT US

PROJECT OVERVIEW

PROJECT MANAGEMENT

DOCUMENTATION

MAIN WIKI

WIKI FOR MIDTERMS

WIKI FOR FINALS

Project Progress Summary

Midterm slides: File:BARECODE MIDTERMS.pdf
Please see our deployed application [here]

Persona: Lecturer
Username: BBR12
Password:BBR12

Persona: Administrator
Username: admin
Password: password

Project Highlights

What unexpected events occurred?

  • 2 members dropped out of IS480 after acceptance
  • Roles were reshuffled, with team members having to take up deputy roles
  • Team members have to pick up a new programming language to ensure timely completion of project

Positive highlights

  • Sponsor agreed to a reduction in scope
  • Team managed to get an additional MacBook from the school to aid in development work

Project Management

Project Status:

BareCodeProjectStatus.png

Project Schedule (Planned vs Actual):

Scope Change
Past
Current
Timeline Change
Version 1 - Pre Acceptance
Version 2 - After Acceptance
Version 3- After Changes In Team

Project Metrics:

Please see our metrics here

Project Risks:

Please see our risks here

Technical Complexities:

S/N Complexity Rationale
1 Content Management - Storage for large files Initially we did it such that every time the lecturer uploads a video, it will go into one of the folders we created in our project. We were not too experienced and we realised when we deployed, that would not work because the files are just stored locally on our computer. We had to learn about web storage and how to access the storage using the application. We then did research on how to store files on AWS and found a solution that uses S3 bucket from AWS.


BareCode Tech Diagram.png
2 Acquisition of new skills within a short period of time As 2 of our key developers left the group, we had to take over their codes as quickly as possible to ensure that disruptions to our project timeline. Our previous PM took over the backend codes, while one of the previous frontend developers took on the challenge of developing the iOS portion of the product. With 5 weeks left to midterms, our new iOS coder had to learn and pick up Swift programming. We had no prior experience and the challenge was made greater due to time constraints. However, with the help of our frontend developer as well as countless books, tutorials and videos, our iOS has progressed rather stably till date.
3 Software Maintenance With the departure of 2 lead developers, we also had to understand rewrite their codes without form of comments when we took over the codes. This lead to a lot of confusion and impeded our learning process. As such, we had to seek help from Google, and friends, to make this process less painful.

Quality of Product:

Immediate Deliverables:

Stage Specifications Modules
Project Management Minutes Team, Supervisor, Sponsor Meetings
Metrics Bug Metrics, Task Metrics, Wellness Metrics
Diagrams ER Diagram ER Diagram
Use Case Use Case Diagram
Navigation Navigation Diagram
Design Persona & Scenarios Persona & Scenarios
Prototypes Prototypes
Testing User Testing 1 User Testing 1
User Testing 2 User Testing 2

Testing:

User Testing Date Venue Number of Testers
User Testing 1 6 November 2017, 1130AM - 230PM Ngee Ann Polytechnic 8
User Testing 2 13 February 2018, 430PM - 715PM Ngee Ann Polytechnic 20

Team Reflections:

Cheryl Lee Sze Min:

In terms of my change in role, moving to becoming PM has forced me to be a lot more detailed that I am. There are a lot of things to coordinate, be it between team and client, plus supervisor, and within the team itself, there's a lot of proper documentation to be done, and they need to be done well. Being the PM means taking the lead for many things, and that cultivated a greater sense of responsibility in myself. Being in a 4-man team has allowed me to re-evaluate my priorities in school and in life.

In life, we often don't get to control the things that happen to us, but what we can do, when problems hit, is to control how we react to these problems. Sure, we could cry and mope, but life goes on anyway. At the start, it was a major blow to us when we had to downsize our team but I learnt to work with what I have, which is a dedicated team of 4, along with our willingness to learn. There really is no point in trying to lament our circumstances because of decisions made by others - what we really should be doing is picking up the pieces and move on with it. Thankfully that's what the team did and I'm glad we didn't look back too often.

How the new team dealt with the changes in the team was my key takeaway for this project. We received plenty of help from our peers, the teaching team and our supervisor and I am immensely grateful for that. Fortunately, we figured we didn't have a lot of time for internal drama as the focus was on creating the final product. As such, this paved the way for clearer communication and judgment-free conversations, as we took and gave all suggestions constructively. A budding friendship is on the way!

Cheau Nor Ailin:

Given the opportunity to be a backend developer has been a mixture of amazing and stressful. I truly enjoyed the experience of managing the backend codes and database. From this experience, I learnt how important it is to constantly communicate with my team to ensure that the end goal is met and the integration is smooth. I also got to appreciate how tough it was to manage both the backend codes and database given this short period of time i had after the handover.

Even though we went through steep bumps, it taught us strong resilience in many ways. We had to recover quickly and even though we had very little to continue with, we never gave up and we steered ahead with all we've got, bringing us here to where we are now.

Nevertheless, we would definitely have not made it through all these without all the help and guidance we got from the people around us. From the professors that helped get us out of survival mode to friends that stayed to guide us through our uncertainties. It has truly been an amazing journey with my team.

Grace Foo Huan Ting:

Firstly, we had to be flexible and open to changes when unexpected things happen. Whenever unexpected things happen we are shocked and stressed, however, I learnt that such things are common in the workplace and these situations that will allow us to become more resilient. Im sure we will definitely feel less shocked when our team member quits the company to go to another company and this resilience is an important soft skill that is required when we go to work as developers in the future.

Secondly, our team has become more resilient and closer throughout this project. All of us knew there was no time to waste, thus everyone was assigned a shift of roles, and even though I am the frontend developer for webapp, I learnt Swift programming to help with our iOS application. Our group members are supportive and we learnt Swift together. It was an arduous process as we needed to understand Htet Soe’s codes, Swift language and code out a working function.

Thirdly and also the most important, the team morale must be kept high and positive during this arduous period which I find is very important to the team. Since things have happened we should not cry over spilt milk and look forward to what we can do instead of what we can. I am glad and thankful to my team for being supportive all the way throughout the project.

Lee Pei Jia

I had multiple first time experiences through this FYP and resilience would be a value I would love to master, be it tackling all the bugs, or building my mental strength. After deciding that we will proceed with a four man team, I had alot of worries and fear. However, I'm thankful to have groupmates who are way more positive than I am. And I feel more assured, when I see them having faith in our group that we will all pass this. We do have differences in opinions and working styles at times, but I'm happy that all of us are open-minded, and we agreed to be more transparent in our thoughts so as to reach our common goal. This is the very first time in a project team, that I feel all our goals are clearly aligned, and each and everyone of us is working really hard so we can reach the end point together. And to be honest, I feel that I'm happier in the current group, because we had more interaction, more communication, and I feel that we are closer than before.

Technical wise, I learnt about the importance of having proper documentation for my codes, so that the next person taking over my codes won't suffer. Its been a tough journey for me in terms of getting used to using Mac, since I've been an Android user for all my life, learning the basics of swift, analysing and trying to understand Htet Soe's codes, and ultimately to produce a new function. I've never imagine my FYP will turn out to be a roller coaster ride for us, but I'm very thankful we met a lot of kind people along the way. Its been a tough journey, but I have faith that we will all survive this.

However, I'm very thankful for the help given by my supervisor, who managed to help us borrow a macbook when we were told by instructor that its difficult for the school to lend a macbook, also grateful for friends in school who are willing to take the time to sit down to teach me the basics of swift.