220 likes | 229 Views
Project management. Ismail Ceylan Kutay Kocayurt Martin Konicek. 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 triangle Change of one constraint affects the others.
E N D
Project management Ismail Ceylan Kutay Kocayurt Martin Konicek
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 triangle Change of one constraint affects the others
Project phases • Design • Implementation • Maintenance
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,…
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 • Responsible for planning and execution of whole project
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
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 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 E=a*(KLOC)b • Development time D=c*(E)d • People needed P=E/D • Coefficients depend on the type of project:
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 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 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 • 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! • Be open, client might actually have clever ideas • Respect pauses • Give feedback to make future meetings more effective • Be humble • Demonstrate real interest