Project Management with JIRA

ITEC 3870 Software Development II,
Anca Doloc-Mihu and Cengiz Günay

(License: CC BY-SA 4.0)

Prev - Github Social Computing, Next - Project Design and Management

Project Management (PM)

What is Project Management?

Project management is the process of matching a project’s goals, tasks, and resources to accomplish a goal considering also constrains like limited time, money, and resources (people and tools) with which to accomplish the goal.

Project Step 1: Defining the goals of the project

  • entire team must participate
  • each team member must understand these goals
  • step ends with a list of goals and a statement of success

Defining success is necessary to make sure there is no ambiguity as to whether the goal has been accomplished or not. It also prevents teams from performing unnecessary iteration and improvement on a goal which has been sufficiently accomplished.

Project Step 2: Define project tasks/activities

Each goal or sub-set of goals should be matched to the tasks required to accomplish them. Team should agree on the tasks that will define the success of each goal.

Project Step 3: Determine and verify resource requirements

The most important here is to be realistic, meaning to determine what resources you need (like people, time, money, space, computers, software, etc.) to get the job done correctly, on time, and on budget.
  • Most common mistake is to underestimate the amount and type of resources required, which leads to projects that run over budget and fall behind schedule.

DO NOT: • Squeeze a project into a shorter time frame to please your boss • Cut corners to minimize resource requirements • Plan on a best-case basis, i.e. “If everything goes correctly, we will finish on time.”

  • A good idea is to build in a safety margin of 20% in terms of time and budget, which will give additional time to deal with unexpected occurrences.
  • Once the requirements have been set, it is important to make sure that the team has access to them to minimize risk.

Project Step 4: Identify risks and develop backup plans

Projects always involve an amount of uncertainty (risk) that may lead to problems and surprises during the project development. As a professional you will be required to help get the job done. You must learn how to deal with surprises and adversity, and not be pushed around by them.

Risk management is important as it helps the team accomplish the project with as little trouble as possible, and could be very complex.

One simple idea is to identify the risks for each task and build a backup plan to help keep you on schedule.

Project Step 5: Develop a schedule

Develop a schedule that includes the tasks, people responsible for these tasks, and a timeline.

Project Step 6: Execute the schedule

During this stage, the project manager is responsible for coordinating, though group members should communicate among themselves as required.

Each team member should document their activities during this step.

Project Step 7: Finish the project and assessing performance

After the goals have been achieved, it is good practice to evaluate the performance of the project team. We call this retrospective session.

To review the team’s performance we will use Burndown (see) and Velocity charts.

Velocity is the amount of work a team can handle during a set period of time (sprint). The velocity chart is a visual representation of the project’s progress.

Managers use velocity to measure the rate at which an Agile development team delivers value to a business.

Project Management in Our Case

  • We are using AGILE during the semester, with the project being split int 3 main phases (see for details on each phase). Thus, Steps 1-7 need to be implemented for each of these phases.
  • To help the project management process and the team build up a schedule and keep track of the tasks, we will be using a project management tool called Jira

JIRA

Backlogs:

  • Regular backlog: all remaining stories
  • Sprint backlog: stories assigned to specific sprints

You can add to backlogs:

  • User stories
  • Tasks (chores)
  • Bugs

Be creative about using tasks and bugs to add planning, learning, testing, and other time consuming tasks.

Prev - Github Social Computing, Next - Project Design and Management

Home