Module 2: Project Management Methodologies
Looking for ‘DevOps on AWS and Project Management Module 2 Answers’?
In this post, I provide complete, accurate, and detailed explanations for the answers to Module 2: Project Management Methodologies of Course 6: DevOps on AWS and Project Management
Whether you’re preparing for quizzes or brushing up on your knowledge, these insights will help you master the concepts effectively. Let’s dive into the correct answers and detailed explanations for each question!
Self-reflection: Improving your Processes
Graded Assignment
1. After you complete this course, your manager requests your help in identifying bottlenecks in the software development process that is currently in place at your company. For the last few years, the company has been developing software by using the waterfall methodology, and they want to make some improvements. The current development process looks like the following:
The project manager gathers feedback about their software from customers and internal stakeholders. To get an idea about what needs to improve, the project manager spends a week going through all the tickets and bug fixes that were filed. For minor complaints, this process could lead to the development of a software update. However, if the tickets contain many complaints about a specific process, this process could result in the development of an entirely new piece of software. After the project manager gathers the feedback, they present this information to the managers of the various IT departments. From there, the project manager and IT managers form a consensus on what needs to be done and who will do it. (Time: 1 week)
After the goal of the work has been established, the managers go back to their teams and distribute the work to developers, solution architects, system administrators, and other key staff. Over the next week, each team member mocks up their individual parts of the work and then creates a solution that solves the task they were assigned. On the Tuesday after each person creates mockups and solutions, the departments come back together to compare solutions. The goal of the comparison is to ensure that the individual pieces that are being built will work together. (Time: 1.5 weeks)
In the next phase, the IT professionals start to work on their individual pieces. They spend the next 3 weeks creating their parts of the project. (Time: 3 weeks)
After these individual pieces are completed, the quality assurance (QA) team tests all the parts to ensure that they work together correctly. (Time: 1 week)
If the QA team finds any compatibility problems, they send the individual pieces back to the developers to resolve. After the developers make the necessary fixes, the QA team tests the individual pieces again to confirm that the problems were resolved. (Time: 1 week)
In the final portion of the process, the new code is deployed to a staging environment. From there, the code runs for 3 days to ensure that no other issues occur. After the 3 days are finished, 1 day is given to run the code in a beta environment. If all goes well, the team finally deploys the new application to the production servers on Friday. (Time: 1 week)
What would you change about this process? Would you completely redesign it by using an agile methodology? Or would you keep the process the same, but try to improve the steps to take less time?
To improve the current software development process, I would recommend transitioning from the traditional Waterfall methodology to an Agile framework—not by completely discarding what works, but by gradually introducing Agile principles to enhance flexibility, responsiveness, and collaboration.
Identifying Bottlenecks
After reviewing the process, several bottlenecks stand out:
- Delayed feedback loops – Feedback is only gathered after the full cycle, and issues are identified late (e.g., in QA or staging), which causes rework and inefficiencies.
- Sequential hand-offs – Each phase is completed in isolation, making it difficult to catch misalignments early.
- Lack of continuous testing – Testing happens only after all individual parts are completed, increasing the risk of integration problems.
- Long cycle times – The total process takes ~8.5 weeks before code reaches production, which limits the team’s ability to respond to change.
Recommended Approach: Agile Transition
Rather than improving each Waterfall step in isolation, a more impactful approach would be to redesign the process using Agile methodology, particularly Scrum or Kanban, depending on the team structure and product needs.
Key Agile Improvements:
- Break work into sprints
Work can be organized into 1–2 week sprints where small, incremental features are developed, tested, and reviewed. This ensures continuous delivery and feedback. - Cross-functional teams
Developers, testers, and other stakeholders collaborate from the start, avoiding siloed workflows. This ensures that integration issues are addressed early. - Daily stand-ups
Daily meetings promote alignment, help identify blockers early, and maintain momentum across teams. - Continuous integration and testing
Automated testing and frequent integration allow the QA process to run in parallel with development, significantly reducing delays caused by late discovery of defects. - Regular retrospectives
After each sprint, teams reflect on what went well and what could be improved, allowing the process itself to evolve based on real feedback.
Gradual Implementation Plan
To make the transition smooth and effective, I would propose the following phased approach:
- Pilot Agile with one project or team to demonstrate value and refine practices.
- Train key team members on Agile concepts and tools (e.g., Jira, Trello, CI/CD pipelines).
- Adopt hybrid models initially if needed (e.g., Agile within departments while keeping some Waterfall structure for overall coordination).
- Regularly collect metrics (e.g., velocity, cycle time, defect rate) to assess improvement and guide next steps.
Final Thoughts
While the current process is structured and predictable, it lacks the agility needed for modern software development, especially when customer needs evolve rapidly. By embracing Agile practices, the company can deliver higher quality software faster, reduce waste, and create a more collaborative and responsive development culture.
In summary, I recommend a thoughtful redesign of the process using Agile principles, implemented in phases, with continuous learning and adaptation.
Related contents:
Module 1: Defining the Project
Module 3: Introduction to DevOps
Module 4: Building a Better Pipeline
You might also like:
Course 1: Introduction to Information Technology and AWS Cloud
Course 2: AWS Cloud Technical Essentials
Course 3: Providing Technical Support for AWS Workloads
Course 4: Developing Applications in Python on AWS
Course 5: Skills for Working as an AWS Cloud Consultant
Course 7: Automation in the AWS Cloud
Course 8: Data Analytics and Databases on AWS
Course 9: Capstone: Following the AWS Well Architected Framework