Project Management for Software Engineers

Learning outcomes

  1. Become familiar with methodologies helpful for better software project
    management, including PMI, Prince II, CMMI, Agile, Scrum, Kanban, Lean, Six
    sigma.
  2. Have hands on experience using specific tools like free PM software (Asana,
    Trello, Wrike, etc.)
  3. Better time estimation and management skills; recognition of bottlenecks,
    understanding the value of eliminating bottlenecks; WIP limit role.
  4. Practice developing metrics helpful for projects management; basic agile metrics.
  5. Differentiate between requirements management and requirements
    development; get to use some requirements management techniques
  6. Be prepared to participate and possibly lead Kaizen events, learn basic
    visualization tools.
  7. Give feedback to peers in a tactful encouraging manner, improve teamwork skills,
    deal with difficult situations on a team/with a supervisor/customer/company.
  8. Practice oral and written communications, event networking techniques,
    understand communications ethics, etiquette, and expectations management;
    improve presentations skills
  9. Take initiative, state assumptions of understanding, research unknown concepts,
    ask questions, present a point of view and defend it, be clear about goals, make
    necessary requests in a timely tactful manner.
  10. Focus on a big picture relevant to both, projects and a company strategy.
  11. Use communication templates for reports and Standard Operating Procedures;
    revise your CV, apply for a position in Dublin.
  12. Understand processes from various perspectives and why it is important to have
    perspectives. Learn through the games (at least one in each class).

Topics

  • What is a project? Managing data science related projects
  • Methodologies overview (PMI, Prince II, CMMI, Agile, Scrum, Kanban, Lean, Six sigma)
  • Differentiation between leadership and management skills. Why to talk about leadership skills in a project management course? Leadership lessons from West Point military school and multinationals
  • Teamwork and managing difficult team situations
  • Requirements management vs requirements development; requirements traceability. User stories for scope management. Negotiating when and how to accept change requests: give them a pickle!
  • Planning, estimations, and time management. Estimations analysis. Why estimation is important for Agile development?
  • Process and integration focus for keeping a big picture in mind. Kaizen events. Visualisation tools
  • Agile and lean development. PM and Agile metrics. How PMBOK process groups are relevant to Agile development?
  • PM tools (Asana, Trello, Wrike, etc.) Critical path. Gantt chart
  • Communications in Agile software development environment. Kanban boards. WIP. Bottlenecks. Retrospectives
  • Oral and written communication ethics, etiquette, templates. Making requests and following up on your requests. Reporting to supervisors, top management, investors. Communications on EU/EC funded projects. SOPs
  • Presentation tools. Evaluations, giving feedback. Customer liaison and event networking techniques. Expectations management

Grading

Grading is based on discussions participation and presentations, homework, teamwork, report, quiz.

Prerequisites

None