This module looks at what it means to be a Project Manager of a software engineering project. It examines the relationships between the Project Manager and the other stakeholders in a project, and the role that the Project Manager has in ensuring that the triple constraints of project management are balanced, and any technical debt is not accrued. The module practically looks at how the needs of the customer are responded to through the use of test-driven development and behaviour-driven development.
Module Outcomes
1.Identify and apply appropriate software engineering and project management methodologies, tools and techniques for the development of solutions to real-world problems.
2.Explore the implications of computer and network architectures for system-level design and development, as appropriate for risk and quality management.
3.Design, develop and evaluate management systems to produce solutions that handle constraints and uncertainty, contextualising BDD concepts and secure coding principles & practices in SDLC.
4.Systematically develop and implement the skills required to be effective member of a development team in a virtual professional environment, adopting real-life perspectives on roles and team organisation.
![](images/pic08.jpg)
Collaborative Discussion 1: Project Failure Study
In this discussion, we read the paper by Lehtinen et al. (2014) and then answer the following questions:.
1: What do you believe are the three most common reasons for project failure?
2: Give two examples of failures that support your choices
![](images/pic09.jpg)
Collaborative Discussion 2
Human emotions can affect the user experience, a fact which contributes to the complexity of user satisfaction with a product. Further complicating the process is the fact that user emotions on the first use of a product are likely to be different to their emotions once they become more experienced.
The discussion is based on a paper by Minge & Thuring (2018)
![](images/pic10.jpg)
Codio Activity: pytest
In this module, we investigated the test-driven development of an application in Python which makes use of pytest.
![](images/pic09.jpg)
Codio Activity - pylint
In this module experimented the use of Python linters to support the development of high-quality code. It also looked at how the concept of software quality has evolved over time and also examined how to recover a software engineering scenario from failure.
Professional Skill Matrix and Action Plan
This module tought me to apply Software Engineering and Project Management Methodologies: Effectively utilize software engineering and project management methodologies, tools, and techniques to develop solutions to real-world problems.
The module also taught me to Design, Develop, and Evaluate Management Systems: Design, develop, and evaluate management systems to address constraints and uncertainty, integrating Behavior-Driven Development (BDD) concepts and secure coding principles and practices within the Software Development Life Cycle (SDLC) framework.
In this module, we worked in groups and this helped me develop effective collaboration Skills: Systematically develop and implement the skills necessary to be an effective member of a development team in a virtual professional environment, adopting real-life perspectives on roles and team organization.