Project management Ismail Ceylan Kutay Kocayurt Martin Konicek

  • Slides: 22
Download presentation
Project management Ismail Ceylan Kutay Kocayurt Martin Konicek

Project management Ismail Ceylan Kutay Kocayurt Martin Konicek

What is a project �Temporary activity with start date and end date

What is a project �Temporary activity with start date and end date

What is project management �Planing , managing resources �Time, money, people, equipment, services �PM

What is project management �Planing , managing resources �Time, money, people, equipment, services �PM triangle Change of one constraint affects the others

Project phases �Design �Implementation �Maintenance

Project phases �Design �Implementation �Maintenance

Design + Prototyping �Create a small prototype and show it to users! �Do it

Design + Prototyping �Create a small prototype and show it to users! �Do it early - in the design phase �Do this iteratively

Implementation �Many methodologies: waterfall, iterative �Includes everything: data conversion, user training, …

Implementation �Many methodologies: waterfall, iterative �Includes everything: data conversion, user training, …

Maintenance �Remember after acceptance the project is not over! �Users will have a lot

Maintenance �Remember after acceptance the project is not over! �Users will have a lot of comments �Maintenance costs often are higher than development costs

Project manager

Project manager

Project manager �Responsible for planning and execution of whole project

Project manager �Responsible for planning and execution of whole project

Project manager �Responsible for planning and execution of whole project �Must have critical thinking

Project manager �Responsible for planning and execution of whole project �Must have critical thinking �See potential problems �Identify unstated assumptions �Resolves interpersonal conflicts �Makes communication between team members easy

Project manager �Responsible for Risk management �Minimize uncertainity

Project manager �Responsible for Risk management �Minimize uncertainity

Methodology

Methodology

Gantt chart – planning

Gantt chart – planning

COCOMO - estimating �COnstructive COst MOdel �Estimation of time + money based on �Size

COCOMO - estimating �COnstructive COst MOdel �Estimation of time + money based on �Size of the project (Lines Of Code) �Complexity of the project �Skill of the team �Basic COCOMO �Intermediate COCOMO �Detailed COCOMO

COCOMO - estimating �Distinguishes 3 classes of projects: �Organic projects �Small, simple, not so

COCOMO - estimating �Distinguishes 3 classes of projects: �Organic projects �Small, simple, not so tight requirements �Semi-detached projects �Mix of levels of complexity, mix of rigidness of requirements �Embedded projects �Tight HW, SW and operational constraints

COCOMO - estimating �Effort in person-months �Development time �People needed E=a*(KLOC)b D=c*(E)d P=E/D �Coefficients

COCOMO - estimating �Effort in person-months �Development time �People needed E=a*(KLOC)b D=c*(E)d P=E/D �Coefficients depend on the type of project: Project a b c d Organic 2. 4 1. 05 2. 5 0. 38 Semi-detached 3. 0 1. 12 2. 5 0. 35 Embedded 3. 6 1. 20 2. 5 0. 32

COCOMO - estimating �Example: 8200 lines text editor E = a*(KLOC)b =2. 4*(8. 2)1.

COCOMO - estimating �Example: 8200 lines text editor E = a*(KLOC)b =2. 4*(8. 2)1. 05 = 21. 9 person-months D= c*(E)d=2. 5*(21. 9)0. 38 = 8. 1 months P= E/D= 21. 9 / 8. 1 » 3 persons

Project team �Use small teams (up to 8) �Skill: good developer can be up

Project team �Use small teams (up to 8) �Skill: good developer can be up to 10 times more effective than a bad one �Team players realizing the overall goal are important

The client �Defines the project �Monitors the evolution of the project �Approves modifications to

The client �Defines the project �Monitors the evolution of the project �Approves modifications to agreed-on constraints �Typical case: “We need more time” �Making good relations with the client helps get future projects �We want to do many projects for this client, not just one

The client - communication �Prepare �Have clear objectives for the meeting �Define priorities

The client - communication �Prepare �Have clear objectives for the meeting �Define priorities

The client - communication �Clarify client’s idea to the maximum �Use client’s language, don’t

The client - communication �Clarify client’s idea to the maximum �Use client’s language, don’t get too technical! �Consider alternatives and compromises – be flexible �Show client different views (some features are unnecessary) �Clients don’t know what they want but they want it soon

The client - communication �Prepare to listen to the client �Don’t interrupt speaking client!

The client - communication �Prepare to listen to the client �Don’t interrupt speaking client! �Be open, client might actually have clever ideas �Respect pauses �Give feedback to make future meetings more effective �Be humble �Demonstrate real interest