LFGA Web

Week 7 - What I learned


I've gotta say that this week was so long and exhausting and I will tell you later on what happened during the week. Finally, in this week we could see and show the system integrated, I mean the front and back end together working but to do this, once again we encountered a lot of things and I learned a lot of them. Let's get to it, I'm going to talk about the expected goals of the week, what we actually did, the problems that we faced, the solutions that we found, the results, and the final learnings of the week.

The goals of the week

The primary goal was to finish all the work of the first week, integrate the back and front end. We had some things done by the time we wanted to integrate things so we kind of had this done. We also wanted to finish the tasks that we had in our plans for week 2 and finally prepare a good demo for the client. First of all, let's say that this was not crazy to do, that's what we thought at first. We wanted to recover the time that we lost, we didn't want to lose a week of work so basically, those were the main goals of the week, finish week's 1 and 2 work.


How we worked.

We worked this way, we gather and discuss how tasks should be separated and we did it that way. We have our user stories and then we have little tasks to accomplish a user story, we noticed that we have to break those tasks into something small something that can't be broken again, atomic is the word. This way each member of the team could develop a single independent task and by doing this we solved the problem of not knowing how to organize the tasks.

how

The plan was that some members of the team were going to work on the back end of the application and the other part on the front end, but we noticed that we didn't have enough experience to work on the selected technology so members of the back end had to work on the front end too.

At the end that's how we ended working, everyone working on one single task, one at the time it doesn't matter if it's the front or back end and we also tried to have good communication putting everything in the chat.


Problems we faced

how

1. One of the problems was the chosen technology for the front end, we didn't have enough expertise to develop a whole app like the needed one, I mean we could develop a view and some components but not whole permission and secure front app. There were a lot of technologies involved in this part like Javascript, JWT, React, Material UI, and others.

2. The other problem that we faced during the week was that we lost focus on the actual goal or scope. We defined the scope for the week, but that line was not clear enough so members of the team got confused, and at the end, we defined one but well.. it was kind of different from what we expected.

3. Due to the previous problem, we couldn't measure the scope and the effort needed to finish all the tasks. We couldn't finish all the work, we only finish all the tasks for week 1, this means that by now we have one week of delay in work. We didn't measure the effort needed, but I think that this is hard to do, I mean planning and estimating is something hard to do and sometimes takes years to master.

4. And finally, the main problem was that we didn't have the complete system that we promised to the client and maybe the final product it's not going to be on time due to the week of delay.


Solutions that we found

1. We had a really good reset phase so we understand that a programming language or framework is just a tool and that we can learn it fast. That's what we did some members took a short course others just got to the code it and trying to figure things out is how they got to solve tasks and that way is how we learned. By the end of the week, we were more efficient doing ode and doing tasks.

2. We just defined a final scope and I think that the problem here was the visibility, now is in a place where anybody can see it at any time.

3 and 4. First of all, we didn't have the complete application for the demos to solve this was just to tell our clients that we couldn't achieve the goals telling them the truth that we underestimated the scope. Somebody told us that the clients are somebody to trust and that we can always negotiate if we have the right time to do it. That's what we did, we 'simplified' the scope for the final version and show that to the client. The client accepted and In my opinion, the client was happy with the results. This was hard to do, I mean you have to make decisions and try to find a way to solve all the problems.


Results

At the end of the week we got:

Lessons learned

- The organization is important, once again we tried to follow some models or techniques to organize tasks but In my opinion, each team needs to find the way that works for them. Also, don't waste a lot of time here, find the specific point where you can have enough organization to start working.

- All the decisions, documents, boards, and activities need to be visible to everyone in the team and try to avoid ambiguous things.

- If you are on time you can negotiate with the people you are working for, but this is not that easy, you can negotiate scope or time but you have to be careful about what you are negotiating with the client. The client doesn't want to lose value so once again you have to find the exact point.

- The client is somebody that you have to trust, so tell them the truth just the information that it needs.

- Measuring scope and effort is hard but not impossible.