ITS625 Day 2-3 Lecture Notes

Download Report

Transcript ITS625 Day 2-3 Lecture Notes

ITS 625:
Project Management
INSTRUCTOR: MARK JAMIL
COURSE WEBSITE:
WWW.MARKJAMIL.COM
CONTACT EMAIL:
[email protected]
Project Proposal #1
A local university wants to move into the digital age. They currently conduct all of their applications in paper and
communicate using fax. They want to switch to a all digital application process with email as a communication medium
instead of fax.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
For now they want to be able to allow perspective students to apply to the university through an online form.
The form requires that the student upload a few documents like proof of residence, proof of funds, etc.
Students should be able to save their application if it is incomplete so that they can log back in later to complete it.
Once the form is submitted the university want to get a notification by email that they have a new application.
The data should be stored in a private database.
Once submitted, the students should not be able to edit their application however they should be able to view if they
have been accepted or not.
The student should be able to pay the application fee online (using paypal) during submittal.
The university councilors need to be able to view the applications, preferably on the web.
They requested the ability to save entire applications in pdf format when needed.
They want to build a server room to house all the needed hardware for this project and would like us to build it for
them as part of this project.




11.
12.
You need a system diagram.
You need a network diagram.
You need to quote them a price for the hardware.
You need to give them an estimate for running costs.
This customer is extremely concerned about data security.
Lastly they need user documentation to teach their advisors and managers on how to use the new system and how to
maintain it. They also want technical documentation in case they want to do more work on this project in the future.
Project in 3 Steps…
A lot of book like to fill up pages with long winded
definitions, but projects are simple. Even the most
complex project can be summarized into 3 steps.
Who is the customer, and what do they want?
Can it be done with their budget?
1.
2.

3.
You may need to create a task list to estimate cost.
Complete the plan and/or assign tasks and execute.
Okay maybe its more like 3 steps and a couple of substeps…
Step 1
Who is the customer, and what do they want?
1.
Figuring out what a customer wants is usually obvious because it is the 1st thing they ask for when
they contacted you. The conversation usually begins with; “Can you develop a new IT system
for us?”
Project Scope (PMI calls this the “Project Charter”)
The 1st thing you should do is define the “scope” of the project IN WRITING!
Create a problem statement.
1.

What are the objectives/goals? Should be more detailed than the problem statement.
What is NOT expected (out of scope) from this project?
2.
3.
1.

6.
7.
8.
9.
Example: Does not need to be
Are there any specific requirements?
4.
5.
Example: “Develop a software and hardware solution to automate university application.”
Such as work location, security clearance, specific platforms, specific language, etc
What will you be delivering to the customer?
When is the project due?
List everyone that is involved (PMI calls them sponsors and stakeholders).
What is and is not expected (aka boundaries of the project).
IT MUST BE AGREED UPON BY BOTH PARTIES!
Step 1 Continued
Who is the customer, and what do they want?
1.
It sounds easy but figuring out who your customer will be is not as straight forward as you
think.
When dealing with large companies, it is unlikely that you will talk to just 1 person and even
less likely that you will ever talk to the real boss (top executives and directors). Instead
you will be dealing with other managers and sometimes it might just be some employee
from the purchasing department.
The 1st step is to figure out who the authorized representatives really are and who else needs
to be involved:
You must identify the person who has the power to initiate a project!
1.
1.
This is usually the boss of the person who contacted you initially.
You should make some effort to insure your customer can fund the project.
2.


This is a big problem for smaller businesses but it can be a problem for big businesses as well.
Big companies fail all the time. GE, GM, Sony and Apple almost failed, Atari, DeLorean Motors, Bank of
America, Kodak, Sears, Polaroid, Enron, almost all of the oil MLPS in the US went out of business this last 4
years, Commodor Computers, most of the Airlines are non-solvent, and even governments fail sometimes.
You must identify the manager who is responsible for this project on the customer side.
3.
1.
This is your direct contact when you need to report progress, make suggestions, request more money or
time, and the person who is AUTHORIZED to make decisions about the internal workings of the project.
Step 2
 Can it be done with their budget?
It all starts with breaking down the tasks of a project to smaller parts that can be
accomplished by 1 person in a reasonable amount of time. For example:

Build a MS SQL database server using the IBM SAN.
Create ER diagram for database.
Research best data structure for tables and implement.
Develop a test plan to benchmark database read/write.
Install server hardware at customer site and add to domain.

Install database software on server & client workstations.

Test the system to make sure it works on each workstation.




Here are some bad tasks:



Create a database.
Create an application to access the database.
Deploy to customer site.
The bottom line is that it is easier to measure how long a task will take if you break it
down to its smallest tasks. You could easily break down each of the “good” tasks into
even simpler tasks and for less experiences managers, that will make scheduling a
lot easier.
Step 2 Continued
Now that we have the tasks defined, the next step is to estimate how long each
will take to complete.
Task
Duration
Build a MS SQL database server using the IBM SAN.
1 Day
Create ER diagram for database.
3 Days
Research best data structure for tables and implement.
1 Day
Develop a test plan to benchmark database read/write.
2 Days
Install server hardware at customer site and add to domain.
2 Days
Install database software on server & client workstations.
2 Days
Test the system to make sure it works on each workstation.
2 Days
Important note: As a PM you should note that not all tasks need to be done in
sequential order. Some tasks can be done in parallel.
Step 2 Continued
At this point I strongly recommend you create a critical path diagram.
1.
Number each task for easier labeling.
2.
Figure out which tasks must be done consecutively.
1.
Mark if a task must be preceded by another task.
3.
Create a composite task list column.
4.
Calculate the composite time to complete the goal.
1.
Basically, the time it takes to get to this task plus the time for the task itself.
Task
Duration
1
Build a MS SQL database server using the IBM SAN.
2
Preceded
By
Composite
List
Composite
Duration
1 Day
1
1 Day
Create ER diagram for database.
3 Days
2
3 Days
3
Research best data structure for tables and implement.
1 Day
2
2, 3
4 Days
4
Develop a test plan to benchmark database read/write.
2 Days
3
2, 3, 4
6 Days
5
Install server hardware at customer site and add to
domain.
2 Days
1
1, 5
3 Days
6
Install database software on server & client workstations.
2 Days
3
2, 3, 6
6 Days
7
Test the system to make sure it works on each
workstation.
2 Days
6
2, 3, 6, 7
8 Days
Step 2 Continued
Most of the time, the task with the longest Composite Duration will be “critical path.” The only exception
is when you know the tasks are optional or not critical by definition.
Using your task list, you can create a nice time based chart for your project plan. Start by laying down the
critical path along a straight line, then lay down all other paths above and below the critical path.
Task
Duration
1
Build a MS SQL database server using the IBM SAN.
2
Composite
List
Composite
Duration
1 Day
1
1 Day
Create ER diagram for database.
3 Days
2
3 Days
3
Research best data structure for tables and implement.
1 Day
2
2, 3
4 Days
4
Develop a test plan to benchmark database read/write.
2 Days
3
2, 3, 4
6 Days
5
Install server hardware at customer site and add to domain.
2 Days
1
1, 5
3 Days
6
Install database software on server & client workstations.
2 Days
3
5
2, 3, 6
1, 5, 6
6 Days
5 Days
7
Test the system to make sure it works on each workstation.
2 Days
6
2, 3, 6, 7
8 Days
1 Day
start
2 Days
3 Days
Preceded
By
end
1 Day
2 Days
2 Days
2 Days
end
finish
Critical Path Chart
Day 1
1 Day
start
Day 3
2 Days
3 Days
Day 4
Day 6
Day 8
end
1 Day
2 Days
2 Days
2 Days
end
The critical path chart is a powerful tool:
 Easily estimate the total time a project will require.
 Easily estimate if a project is on schedule or not.
 Easily figure out how many workers you need.
 Easily recognize when labor can be reallocated.

This will help if you want to finish a task faster.
finish
Step 2 Continued
The rest should be obvious. Since you know how many
workers you need and how many hours are needed to
complete all tasks, you can estimate the cost of labor.


Remember to add other costs such as equipment, rent, utilities,
permits, insurance, marketing, etc.
Also don’t forget, YOU are a worker as well. Remember to add your
hours to the labor cost.
Cost <
Cost >=
Budget
Budget
= Profit
= Renegotiate or Terminate
The only thing left to consider is risks.
Step 2 Continued
Risks are hard to assess but you must consider them. Here are some common
risks to consider:
 Will the quality be high enough to please customer?
 Is the information (idea/data) accurate?
 Will the people be available when needed?

What happens if the client is not there to communicate?
 Will equipment be available when needed?
 What happens if expenses exceed budget?
 What happens if time exceeds expectation?
Ultimately, there is no easy way to calculate many of these risks and the only
recommendation I can give is to use your previous projects as a basis for
comparison.
If a project has a lot of risk, consider renegotiate the budget or schedule. If the
customer will not negotiate, it might be best to decline the project.
Step 3
Complete the plan and/or assign tasks and execute.
 Review tasks to make sure they are accurate.

Split them into smaller parts if necessary.
 If you are using traditional management style:




PM creates a schedule using task list.
PM assigns tasks to workers deemed most suitable.
If a critical task is behind schedule, the PM needs to decide if they should reassign people to
assist on the task.
PM reports on the progress of the project every few weeks.
 If you are using an Agile style:




Team member select what task they wish to work on.
Team does a quick meeting every week to report on their task progress (usually limited to 2
minutes per person).
If a critical task is behind schedule, the team may drop what they are doing to assist in
completing the critical task.
PM reports on the progress of the project every few weeks.