--- May 02 - July 24, 2023 ---

Software Engineering Project Management

Module Reflection

Everyone may need some project management skills at some point, whether at home or work, and software engineering is not an exception. Projects may have different complexity levels for which only some have the required capabilities. The world is witnessing a significant leap in digitalization intermingled with advances in machine learning and artificial intelligence. Nevertheless, the project manager's role is still indispensable but changing in nature (Jaafari, 2003). So, my reflection for the software engineering project management module will be focused on successful project managers’ competencies, quality management, and my learning experience as a team member in a project management scenario.

Complex software development requires individuals with different expertise that can only be pursued by organizing the effort, time, and budget. One of the studies I reviewed during my preparation in a discussion about the analysis of causes of project failures concluded that most of them are due to social problems, like communication and collaboration issues that lead to poor requirements gathering or understanding (Lehtinen et al., 2014). This fact surprised me as I expected technical issues to be the leading cause of project failure.

However, the issue that surfaced above has more profound ramifications, in my opinion. For example, poor communication will waste time and effort and frustrate customers. On the other hand, poor collaboration will do just the same for the project manager and members. That will harm productivity, lead to schedule slips, and increase costs. A research group found that 70% percent of projects are completed, half will exceed the budget, and only 16% finish on time (Campbell & Baker, 2007). That led me to realize the importance of understanding the triple constraints of project management: time, cost, and scope (Van Wyngaard et al., 2012).

Project management is a challenging task. I believe it is not about technical knowledge only; a successful project manager should have several traits besides the understanding of requirements, engineering, development, and testing. They should possess several soft skills as well, like openness, trust, emotional intelligence, and time management, in addition to avoidance of micromanagement and obsessed behaviors that may negatively impact productivity and lead to an uncomfortable work environment (Castro et al., 2022; Stellman & Greene, 2005). Although it can be argued that such skills can be acquired through personal development or curricular activities (Snape, 2017), I would say that some people may perform better as project managers than others by nature. This has to do with the personality and way of life that might be hard to acquire through teaching. Thus, it is wise for anyone planning to get involved in project management to try that on small-scale projects first to test their capabilities and motivation.

It is hard to avoid the concept of quality assurance (QA) in project management. One of the things I learned in this module is that achieving quality is one of the targets of software engineering project management. This doesn't mean that QA is solely the project manager's responsibility. Instead, I learned that it is advised to have a dedicated team or department for this job (Ouabira & Fakhravar, 2021). Nevertheless, the project manager should still work closely with the responsible team and, for sure, do their role in a quality manner!

Exploring the definitions and frameworks of software quality was interesting to me. Definitions were variable, and so were the frameworks. But most, if not all, focused on delivering the required features as imagined by the stakeholders or customers (Fitzpatrick, 1996). Well, this brings us again to the importance of communication from one aspect, which should be invigorated by the project manager, and the importance of quality management.

Quality management, assurance, and control were confusing terms for me. Luckily, I was able to clear up that confusion during this module. It makes sense to me that quality management is an umbrella that encompasses quality planning, assurance, and control (Dixon, 1987). I have also learned that quality assurance warrants everything running on the right track with no defects (verification). In contrast, quality control is more active and involves testing (validation). So, how about keeping the quality in mind from the beginning? Well, this brings us to test-driven development methodology (Beck, 2003), which was hard for me to make sense of at first glance but made total sense later. This is because it is congruent with the quality assurance concept and the triple constraints. In other words, quality work from the start will save money and time.

It is easier to retain knowledge with practical applications. Though the duration of the module was limited to three months, it provided me with a good simulation of a real-life situation in project management. My team and I needed help understanding the details of the case study at the beginning, and we kept asking our tutor many questions while preparing the project proposal. However, this was practical training for me on the importance of communication between the team members, including the project manager and the stakeholders. This was, of course, the first lesson I learned.

The second lesson I learned during my work as a project team member is to never underestimate an idea or approach of a team member in solving a problem. What may seem silly initially may well be the key to the solution. The third lesson I learned is that team members must be responsible. If by any means I see the team heading toward the wrong path, I must intervene. It never hurts to be proactive and help the team. It hurts to have an unsatisfactory output for which no single person but the whole team will be blamed. This mentality will help the project management run smoothly.

The fourth lesson I learned is to divide tasks according to the expertise of the team members. In such situations, it might be tricky to balance the load between all the team members; what seems daunting for one member may be doable for the other. So, an honest discussion about task preference and individual capabilities is mandatory for the success of any project, significantly since some roles may overlap, which is the case in small teams.

Finally, this course has been a great learning experience for me that will provide me with working knowledge to help me accomplish my future goals. Thank you, Dr. Millward!

References

Beck, K. (2003) Test-driven Development: By Example. Addison-Wesley.

Campbell, G. M. & Baker, S. (2007) The Complete Idiot's Guide to Project Management. Alpha Books.

Castro, M., Barcaui, A., Bahli, B. & Figueiredo, R. (2022) Do the Project Manager’s Soft Skills Matter? Impacts of the Project Manager’s Emotional Intelligence, Trustworthiness, and Job Satisfaction on Project Success. Administrative Sciences 12(4).

Dixon,W.L. (1987) Quality Management. PM Network. Available from: https://www.pmi.org/learning/library/quality-management-9107 [Accessed 24 July 2023].

Fitzpatrick, R. (1996) Software Quality: Definitions and Strategic Issues. Dublin Institute of Technology.

Jaafari, A. (2003) Project Management in the Age of Complexity and Change. Project Management Journal 34(4): 47-57.

Lehtinen, T. O. A., Mäntylä, M. V., Vanhanen, J., Itkonen, J. & Lassenius, C. (2014) Perceived causes of software project failures – An analysis of their relationships. Information and Software Technology 56(6): 623-643.

Ouabira, M. M. & Fakhravar, H. (2021) Effective Project Management and the Role of Quality Assurance throughout the Project Life Cycle. European Journal of Engineering and Technology Research 6(5): 84-88.

Snape, P. (2017) Enduring Learning: Integrating C21st soft skills through technology education. Design and Technology Education 22(3): 48.

Stellman, A. & Greene, J. (2005) Applied software project management. Sebastopol, California: O'Reilly.

 [Accessed 03 May 2023].

Van Wyngaard, C. J., Pretorius, J. H. C. & Pretorius, L. (2012) Theory of the triple constraint — A conceptual review. 1991-1997.