Download COMP1640 - Enterprise Web Software Development and more Assignments Web Application Development in PDF only on Docsity!
Individual Report
COMP1640 - Enterprise Web Software Development
Subject Code: COMP
Subject Title: Enterprise Web Software Development
Student Name: Mai Tran Tuan Anh
Student ID: 001308504
Submission Date: 13/04/
Contents
I. INFORMATION
1. Project information
- I. INFORMATION..........................................................................................................................
- Project information..................................................................................................................
- Group information...................................................................................................................
- II. EVALUATION...........................................................................................................................
- Evaluation of product..............................................................................................................
- 1.1 Pros........................................................................................................................................
- 1.1.1 Functionalities.....................................................................................................................
- 1.1.2 Statistical analysis...............................................................................................................
- 1.1.3 Real-time notification.........................................................................................................
- 1.2 Cons.......................................................................................................................................
- 1.2.1 UI/UX.................................................................................................................................
- 1.2.2 Performance........................................................................................................................
- 1.3 Future improvements...........................................................................................................
- 1.3.1 Utilize user interface.........................................................................................................
- 1.3.2 User profile.......................................................................................................................
- 1.3.3 Chat bot.............................................................................................................................
- Evaluation of process.............................................................................................................
- 2.1 Pros......................................................................................................................................
- 2.1.1 Productivity.......................................................................................................................
- 2.1.2 Communication.................................................................................................................
- 2.2 Cons.....................................................................................................................................
- 2.2.1 Estimation.........................................................................................................................
- 2.2.2 Daily Scrum......................................................................................................................
- 2.3 Future improvements...........................................................................................................
- 2.3.1 Break down task...............................................................................................................
- 2.3.2 Solve problems together and improve as a team..............................................................
- Evaluation of team.................................................................................................................
- 3.1 Le Minh Nghia – Product Owner........................................................................................
- 3.2 Mai Tran Tuan Anh – Scrum Master...................................................................................
- 3.3 Doan Tuan Linh – Developer..............................................................................................
- 3.4 Vo Minh Quoc – Developer................................................................................................
- 3.5 Phan Minh Tri – Developer.................................................................................................
- 3.6 Trinh Do Duy Hung – Developer........................................................................................
- 3.7 Huynh Thi Kim Lam – Developer.......................................................................................
- Self-reflection........................................................................................................................
- 4.1 My contributions..................................................................................................................
- 4.2 Reflection on my own performance....................................................................................
- 4.3 Lesson learnt........................................................................................................................
- REFERENCES..............................................................................................................................
- Figure 1: Posting as anonymous......................................................................................................
- Figure 2: Posting as anonymous (2)................................................................................................
- Figure 3: Statistical analysis (1)......................................................................................................
- Figure 4: Statistical analysis (2)......................................................................................................
- Figure 5: Notification for QA Coordinator......................................................................................
- Figure 6: Notification for author......................................................................................................
- Figure 7: User interface of the website............................................................................................
- Figure 8: Posting comment performance.........................................................................................
- Figure 9: Department user interface..............................................................................................
- Figure 10: User profile interface....................................................................................................
- Figure 11: Chat bot........................................................................................................................
- Figure 12: Burndown chart of sprint 1..........................................................................................
- Figure 13: Burndown chart of sprint 2..........................................................................................
- Figure 14: Slack.............................................................................................................................
- Figure 15: Planning Poker online..................................................................................................
- Figure 16: Project meeting using google meet..............................................................................
- Figure 17: Breaking down tasks in Jira.........................................................................................
- Figure 18: Overall team contribution chart...................................................................................
- Figure 19: Details contribution chart.............................................................................................
Group Repository https://github.com/MernsFGW/Merns Group Board URL https://anhphoncute.atlassian.net/jira/software/projects/ML/boards/4/backlog Front End Tech ReactJS, Ant Back End Tech NodeJS, Express Database Tech MongoDB, Cloudinary Screen Cast URL https://youtu.be/eq6Jp3obVE
2. Group information
Full Name Role Le Minh Nghia Product Owner Mai Tran Tuan Anh Scrum Master Doan Tuan Linh Developer Trinh Do Duy Hung Developer Vo Minh Quoc Developer Phan Minh Tri Developer Huynh Thi Kim Lam Developer
II. EVALUATION
1. Evaluation of product
1.1 Pros
1.1.1 Functionalities
- The main concept of the projects is a school social website where user can freely post their ideas, which the developed system is able to satisfied all of the requirements. User can freely post their ideas with full information such as title, content, images, etc. Moreover, they can post ideas and comments anonymously so that their identity will not be reveal
Figure 3 : Statistical analysis (1) Figure 4 : Statistical analysis (2)
1.1.3 Real-time notification
- The requirement indicates that whenever a new post is added into the system, the QA will receive a notification via email. We have also successfully developed this feature using EmailJS package. The email will also include all information of the post so that the QA can see which idea has been posted, who is the author without having to access to system
Figure 5 : Notification for QA Coordinator
- When user comment on a post, the author will get a notification via email as well Figure 6 : Notification for author
1.2 Cons
1.2.1 UI/UX
- Although the FE developer has done a great job in developing user interface, it is only utilized for computer or laptop screen. This does not mean that the website can not be used by other electronic devices such as mobile phone or laptop, but the interface of the website can be unstable, which will lower the user experience
1.3 Future improvements
1.3.1 Utilize user interface
- Although most pages are well developed, some of the page still need to improve. Most of them is for the admin actions, for example department UI, account UI and so on. Development team also have to pay attention on the ratio of UI on different electronic devices Figure 9 : Department user interface
1.3.2 User profile
- For now, user can only view their profile with basic information and ideas they have posted. Because this is a social website, we want to develop it more. In the future, we want to add more information to the profile pages and also interaction between people on the website. Users will be able to view other’s user profile, make friends with each other and even chat with them. These features will fulfill the concept of the website Figure 10 : User profile interface
1.3.3 Chat bot
- Because the system is first deployed to real scenario, many users can find it difficult to understand how it works. For this reason, we can develop a chat bot, which user can use to learn
how the website works, regulations as well as finding help when they need. This will be an efficiency tools to make the website a lot easier and improve user experience. Figure 11 : Chat bot
2. Evaluation of process
2.1 Pros
2.1.1 Productivity
- A burndown chart, which displays how rapidly a team is working through a customer's user stories, is a project management chart. (Megan, 2022). Figure 12 : Burndown chart of sprint 1
Figure 14 : Slack
2.2 Cons
2.2.1 Estimation
- In the first stage of the development, we used MoSCoW method to prioritize requirements and estimate story point for each user story. Because it is the first time we use this method, it was a problem for all of us. Although we have used Planning Poker technique to performed the estimation, some of it was miscalculate since we do not have much experience. Because of this problem, during the developing process, the team has to host a meeting to recheck all user story points. Figure 15 : Planning Poker online
2.2.2 Daily Scrum
- A daily Scrum is a short meeting, intended to be less than 15 minutes, where a team involved in a project meets and discusses what they've worked on since the last meeting (Indeed, 2022). Daily meeting is a part of Scrum process. Our team host daily Scrum through out the first sprint, but in the 2nd^ sprint we no longer hold this meeting anymore. Instead of daily Scrum, we turn it into project meetings, which will be host weekly and last for about 1 -2 hours. These meeting can be host both in person or online Figure 16 : Project meeting using google meet
2.3 Future improvements
2.3.1 Break down task
- One of the main reasons that lead to wrong story point estimation is that we do not break down task for each user story. By breaking down a big task into many smaller one, the team will know what action need to be taken so that the task can be defined as done. It also helps the development team to stay motivated and prevent getting tired.
3.2 Mai Tran Tuan Anh – Scrum Master
- With the role of Scrum Master, I will be the one that ensure the team follow Scrum process appropriately. I coached the whole team about Scrum process, principles we have to follow and how to done it right, eliminated the distance between team members, encourage the team to work and help each other. I also initiate constantly with the development team, keep tracked with the process and remove any roadblocks they were facing. Learning about project management tools is a part of my jobs, where I implement tools such as burndown chart, velocity chart to the process to know about the team performance, which aspects need to be improved and so on
- The drawback is that this is the first time I play role as a Scrum Master, so I do not have much experience. There are a lot of potential tools that can be used to analyze and improve the team performance which I did not have chance to apply. I also have to learn more about how to analyze different performance chart to give comment and suggestion for the team.
3.3 Doan Tuan Linh – Developer
- Tuan Linh play a role as front-end developer, but he also contributed to the process of developing the logical part of the system. He is responsible for designing and developing user interface of the website. He is very flexible when its coming to his coding style and always willing to help other team members when they facing problems during the development process. He’s always told the back-end developer exactly what data he needs to display of the UI and make the work become a lot easier
- The only problem of Linh is that he being a procrastinator who delaying the work until the very end of the deadline or even after the deadlines. Often it gets the other developers stress because they cannot do anything until his task is finished. However, his work always seems to be perfectly done so this should not be a problem
3.4 Vo Minh Quoc – Developer
- Quoc is a back-end developer in the team. At first, he was responsible for set up the environment for the system such as adding packages into the code, creating entity relationship diagram, connecting with database, adding models and so on. He is a dynamic person with strong personality and a team-player. After finishing his assigned tasks, Quoc reported back to the development team and step up to take another task. This energy has spread for the whole team and push us to work harder to achieve the target.
- Beside of his strong personality, Quoc is also a careless person. When his work is done, he did not double-check the work or ask others team member to give a thought about it. He just pushes the code directly to the GitHub and sometimes it creates a huge mess since the code can be bad- handled or having error.
3.5 Phan Minh Tri – Developer
- Tri is also a back-end developer. Despite without any prior knowledge of the technological stack we employed for the projects, Tri still try his best to finish his job. He willing to learn about the new technology and use it to develop the project. Despite the task given to him is easy
or difficult, he always takes it without hesitation and then learn how to do it through resources on the Internet.
- The drawback of Tri is that he is kind of hardly when it comes to communicate with the development team. He only says somethings when it is really important. This makes the team harder to catch up with his work since we have no idea whether he face any difficulty in his work or not. Me and Nghia have to constantly ask him to report back to us so that we can know what is going on.
3.6 Trinh Do Duy Hung – Developer
- Hung is the one that has most experience with the technology stack that we used for the project, therefore, beside being a developer, he can also be seen as a mentor for the group. He is responsible for developing advanced features for the system such as downloading files, statistical analysis and so on. When the project has a bug that no one can fix, he is always the one that came up with an appropriate solution. He also communicates a lot with other team members to help them if they are having roadblocks
- However, Hung is quite busy with his schedule. Except for the first meeting where we prioritize and give point for each user story, he rarely show up at any others meeting. This create a bit of frustrating for the team development because we want every one to show up and give their opinions about the project. Later on, we have to switch into online meeting to that he can arrange his schedule and join with the team
3.7 Huynh Thi Kim Lam – Developer
- Lam is responsible for designing and coding the user interface of the website. She has the enthusiasm to contribute her opinion throughout the process, let other members know about different perspectives when it comes to their work so that they can have suitable justify. She also the one that always show up for team meeting and bring the energy to the whole team.
- However, the quality of Lam’s work sometimes is not stable. She met a lot of difficulties during the process of development and have to frequently ask other team members to solve it for her. Lam is also irresponsibility since she always let her task until the final day of the deadline despite the task is easily handled and knowing that it will slowdown other’s members works. Factor Weight Le Minh Mai Tran Doan Tuan Vo Minh Phan Minh Trinh Do Duy Huynh Thi
Figure 19 : Details contribution chart
4. Self-reflection
4.1 My contributions
- In the project I played the role as a Scrum Master. The main responsibility of me is to ensure that the whole team working effectively, facilitating all events in Scrum methods and provide what the team needs in order to achieve the target. I have to gain knowledge about Scrum methods, its principles and how to work with Scrum in a right way, and then I will guide the team on how to do Scrum based on what I have learned. It is also my job to know which Scrum tools can bring the benefits to the team, improve the productivity and apply it to the team. For example, I have never use Jira before, but I still have to figure it out and optimize the potential of it
- Scrum Master is mainly about the people. Although being a Scrum Master meaning that I do not have to code much, the amount of work is very huge. I had to ensure the team can work effectively together. I paid attention on each individual in the development team, catch up their process, alert if they were having any difficulties and help them if they need it. Besides, I also learn how to analyze charts such as burndown, velocity, which is generated from the team performance to know which aspect needs to be improve. This will build up the team energy and push the development team to work harder.
4.2 Reflection on my own performance
- In the first stage of development, I have to work very hard to fulfill my duty. I did not have any experience then, so I started to learn everything such as what is Scrum methods, principles, tools, how to host Scrum event and so on. The main thing is that I need to have deep understanding about these things so that I can coach the team members afterward. Learning how to use tools is also difficulty as there are so many tools out there, and I have to each of their usage as well as
which one will be most suitable for the team. With all the hard work and a little bit of lucky, I have completed all my work without any doubt.
- From the middle of sprint 1, my work become lighter since every member has already familiar with Scrum methods. My main responsibility for now is hosting Scrum event, helping team members, ensuring the team productivity throughout the process. At the end. I also help my team by writing test case, performing testing to the system and logging bug out for the development team
4.3 Lesson learnt
- After the subject, I have learned a lot of new things. First of all is about Scrum methods and real practice with Scrum process. I have chances to use Scrum tools such as MoSCoW methods, timeboxing, planning poker and so on. I learned about Scrum roles, for particular Scrum Master, about the responsibility of this role and how it can affect the whole process and the goal of the project.
- This is also a chance to improve my team work skills, about how to work with other people effectively and being a team player. During the process of development, I face a lot of different challenges, from technical aspect to human interaction, which has improved my problem solving and working under stress skill. Not only learnt from the project, I have also gained my experience with my development team, learn their good habits and also tips in the IT industry, which will be crucial for my future career.
REFERENCES
Coursera. (2022). What Is a Scrum Master (and How Do I Become One)? Hoffman, D. (2021). Product Owner. Keup, M. (2022). Burndown Chart: What Is It & How to Use One for Agile. Raeburn, A. (2022). What is a product backlog? (And how to create one). Singh, V. (2021). Scrum Development Team.