SlideShare une entreprise Scribd logo
1  sur  13
Miss any of these 10 important points in a
software development project and you are most
likely going to fail!
Medullus Systems
Excellence in software development, Cloud, EDI, Reporting, ERP, Sharepoint, Legacy software, Project Management &
Consulting…for your business
Who should read this: Anyone remotely connected with IT!
Tips: Be sure to click through the links - there are some cool videos and tools we use that you might find helpful.
(1) Start an official charter meeting - even
if it is a 1 day project, and list everyone
involved in the project
It just makes the project official. Create a
document, project asset, minutes or it can
even be an email to all involved stating (a)
project name, (b) project manager, (c) team
and responsibilities (could have a RACI if it is
a more involved project), (d) briefly, what the
project is going to achieve
2) Create a scope baseline, get it signed by the project champion
and make it visible to every stakeholder
We call it “spec freeze”. Scope, simply put, is the sum total of what
the project needs and agreed upon by all parties. The reality is that
the scope is forever changing. James in Accounting thought of
something new, Mark in procurement had a better idea, Jill in
Inventory thought of one exception…you get the picture. We create
detailed wireframes upfront - it can be time consuming, but it is totally
worth it. EVERY TIME. It gets the project “live” in front of the end user
before we even start to develop. So once James, Mark, Jill and the
gang is sure (at least as of now!) we stamp it as a “scope baseline”.
Any change is recorded but it is kept in a queue till after we deliver on
that initial scope baseline. For the customer they see an end and not
an unending project with changes upon changes. It keeps our
development, testing and implementation clean.
(3) Research and find out all the negative
stakeholders (not just the positive ones)
Every project has at least 1 negative stakeholder,
someone who is negatively affected by the
outcome of the project. It could be a person, a
department, a customer, a vendor, a belief or
even a competitor. Sometimes such impacts
cannot be avoided. But it is a good idea to know
how to work through them. Surprises are never
pleasant during a software development project.
(4) Create 2 specs - one for the techies and one for the
business folks and make sure they are both synced with
the scope
In any software development project you will have to find out
who the main consumer of the software will be - it can be 1 or
more users. That user or users will be able to articulate what the
project needs to do. As a software architect and also as a
project manager you should be able to see the software from
the eyes of the business as well as the eyes of IT. If you cannot
do this, then make sure you have someone who can do that or
tag team. When you are creating the specifications, create a
user spec and a software spec - make sure these are in sync.
Updates to one should update the other and communicated to
the right parties.
(5) Regardless of your project management methodology
(waterfall, scrum etc), make sure you have a detailed
work breakdown structure
Take a project. Break it down into modules - a module is a
finite part that can be developed and tested independent from
the rest. Now take each module and break it into tasks. A task
is a finite part of a module that can be measured start to finish
- one to which you can clearly add a start and an end date.
Next take the task and break it (if you can) into chunks that
makes it easy to estimate time. There are many ways to
estimate time - but increments of 2, 4, 6 or 8 hrs works for us.
So 5 hrs is 6; 3 hrs is 4 (round up). We also use PERT
methods if there are several unknowns in the beginning.
(6) Write out the test plans in a bug
management system - it could even be google
docs or excel - but write it
When you articulate and write down a test plan
your testing becomes more methodical. The
project can be just 1 text box and 1 button. But
when you start to write it out in steps 1, 2, 3 etc
you will see a 4th test that you would have
probably missed. You may use automated testing
tools, but for functional testing this is a must.
(7) Track progress daily - project the finish line
based on current completion
Especially true for those long projects, spread across
multiple teams, time zones and sub projects (more like a
program). A daily top down view of the project
milestones, KPIs like burndown charts or % completion
or earned value measures should be assessed daily -
you can do it start or end of the day. Surprises spring
when a project is “sleeping” or on “auto-pilot” - those are
not good words for a software development project. It
needs to be tracked, monitored and managed. DAILY.
(8) Keep communication channels open across all
team members
Getting mathematical! Number of channels = n*(n-1) - so if
5 people are involved, that creates 5*4 = 20 channels - that
is a lot of communication! The single most reason why
projects fail is lack of clear communication and open
channels. Daily 15 minute meetings (scrums) is one good
solution. It should be unofficial - answer 3 questions - what
did you do yesterday, what will you do today and what
roadblocks are you facing to get the project done. Have
each of the 5 people (or whatever the project team size)
answer these. Another option is to use a collaboration tool
like Basecamp, Producteev, Asana, Sharepoint, Zoho etc.
(9) Be honest - dead honest
If you messed up own up to it right then and there with an apology,
but more importantly, with a way to fix it and how it will impact the
work breakdown structure and the timeline. It lets the project
manager recalculate, crash the project or rearrange resources etc.
If something is sensitive, but you feel it will affect the success of the
project be honest and mention it, but mention it to the right person.
First explain why you are going to talk about it and then explain
how the situation will affect the project.
Politics is a great way to get things done! But politicking for the
sake of it or to hide inefficiencies is a cancer to any project. Be
honest and call it out if you see it. Create the “political arena” where
it can be brought out to the key stakeholders.
(10) Always close the project, finished
or not, successful or not
Let the project champion know “this closes
the project.” Then write 1 (just 1) main
lesson learned from the project. This really
helps. At a glance you can see how many
projects you have done (count the lessons
learned!) and before starting a new project
it is a good read.
Have a good time with everyone, enjoy
the ride and remember:
“The goal of a software project is to
solve a business problem. It is
empowering when you know that your
software will help a business to
prosper.”

Contenu connexe

Tendances

Lecture 1 introduction to applied software project management
Lecture 1   introduction to applied software project managementLecture 1   introduction to applied software project management
Lecture 1 introduction to applied software project management
anasz3z3
 
Lecture 01
Lecture 01Lecture 01
Lecture 01
Rana Ali
 

Tendances (20)

The Mythical Man Month
The Mythical Man MonthThe Mythical Man Month
The Mythical Man Month
 
Mythical Man Month Essays on Software Engineering
Mythical Man Month Essays on Software EngineeringMythical Man Month Essays on Software Engineering
Mythical Man Month Essays on Software Engineering
 
Design talk
Design talkDesign talk
Design talk
 
Lecture 1 introduction to applied software project management
Lecture 1   introduction to applied software project managementLecture 1   introduction to applied software project management
Lecture 1 introduction to applied software project management
 
Mythical Man-Month
Mythical Man-MonthMythical Man-Month
Mythical Man-Month
 
How To Handle Exploding Complexity in Product Development
How To Handle Exploding Complexity in Product DevelopmentHow To Handle Exploding Complexity in Product Development
How To Handle Exploding Complexity in Product Development
 
Deadly Sins Estimation
Deadly Sins EstimationDeadly Sins Estimation
Deadly Sins Estimation
 
Put to the Test
Put to the TestPut to the Test
Put to the Test
 
Pair programming
Pair programmingPair programming
Pair programming
 
Let trust our estimates
Let trust our estimatesLet trust our estimates
Let trust our estimates
 
Lecture 01
Lecture 01Lecture 01
Lecture 01
 
Humane assessment on cards
Humane assessment on cardsHumane assessment on cards
Humane assessment on cards
 
Pair Programming - a pratical guide
Pair Programming - a pratical guidePair Programming - a pratical guide
Pair Programming - a pratical guide
 
Agile 2 - The Next Iteration of Agile - Lisa Cooney for Agile Nova 7-29-2021
Agile 2  - The Next Iteration of Agile - Lisa Cooney for Agile Nova 7-29-2021Agile 2  - The Next Iteration of Agile - Lisa Cooney for Agile Nova 7-29-2021
Agile 2 - The Next Iteration of Agile - Lisa Cooney for Agile Nova 7-29-2021
 
Software Development Practices Patterns: from Pair to Mob Programming
Software Development Practices Patterns: from Pair to Mob ProgrammingSoftware Development Practices Patterns: from Pair to Mob Programming
Software Development Practices Patterns: from Pair to Mob Programming
 
Michał Stryjak, Poznaj Context-Driven Testing
Michał Stryjak, Poznaj Context-Driven TestingMichał Stryjak, Poznaj Context-Driven Testing
Michał Stryjak, Poznaj Context-Driven Testing
 
Developer Nirvana
Developer NirvanaDeveloper Nirvana
Developer Nirvana
 
Richmond Spin - How To Sell A Traditional Client
Richmond Spin - How To Sell A Traditional ClientRichmond Spin - How To Sell A Traditional Client
Richmond Spin - How To Sell A Traditional Client
 
Agile Gurgaon 2016 Conference | The game has changed! | Sudipta Lahiri
Agile Gurgaon 2016 Conference | The game has changed! | Sudipta LahiriAgile Gurgaon 2016 Conference | The game has changed! | Sudipta Lahiri
Agile Gurgaon 2016 Conference | The game has changed! | Sudipta Lahiri
 
No estimates - 10 new principles for testing
No estimates  - 10 new principles for testingNo estimates  - 10 new principles for testing
No estimates - 10 new principles for testing
 

Similaire à Software development project management

importance of resources allocation in formal method of software engineering ...
 importance of resources allocation in formal method of software engineering ... importance of resources allocation in formal method of software engineering ...
importance of resources allocation in formal method of software engineering ...
Abdul Naqashbandi
 
COMPUTER APPLICATION PROJECT ON
COMPUTER APPLICATION PROJECT ON COMPUTER APPLICATION PROJECT ON
COMPUTER APPLICATION PROJECT ON
Jitender Suryavansh
 
aw_survivalguide_r2opt
aw_survivalguide_r2optaw_survivalguide_r2opt
aw_survivalguide_r2opt
Reza Abed
 
hroughout the fifty-odd years of software development, the ind.docx
hroughout the fifty-odd years of software development, the ind.docxhroughout the fifty-odd years of software development, the ind.docx
hroughout the fifty-odd years of software development, the ind.docx
pooleavelina
 
NIDOS Log frames training 14th March 2013 - Jill Gentle
NIDOS Log frames training 14th March 2013 - Jill GentleNIDOS Log frames training 14th March 2013 - Jill Gentle
NIDOS Log frames training 14th March 2013 - Jill Gentle
NIDOS
 
Deliverable 2 - Using Visuals to Enhance Viewer PerceptionCompet.docx
Deliverable 2 - Using Visuals to Enhance Viewer PerceptionCompet.docxDeliverable 2 - Using Visuals to Enhance Viewer PerceptionCompet.docx
Deliverable 2 - Using Visuals to Enhance Viewer PerceptionCompet.docx
theodorelove43763
 
Deliverable 2 - Using Visuals to Enhance Viewer PerceptionCompet.docx
Deliverable 2 - Using Visuals to Enhance Viewer PerceptionCompet.docxDeliverable 2 - Using Visuals to Enhance Viewer PerceptionCompet.docx
Deliverable 2 - Using Visuals to Enhance Viewer PerceptionCompet.docx
cargillfilberto
 
The principles of agile development
The principles of agile developmentThe principles of agile development
The principles of agile development
Rajat Samal
 

Similaire à Software development project management (20)

Software engineering
Software engineeringSoftware engineering
Software engineering
 
importance of resources allocation in formal method of software engineering ...
 importance of resources allocation in formal method of software engineering ... importance of resources allocation in formal method of software engineering ...
importance of resources allocation in formal method of software engineering ...
 
COMPUTER APPLICATION PROJECT ON
COMPUTER APPLICATION PROJECT ON COMPUTER APPLICATION PROJECT ON
COMPUTER APPLICATION PROJECT ON
 
Software design.edited (1)
Software design.edited (1)Software design.edited (1)
Software design.edited (1)
 
Top 10 project management tips
Top 10 project management tipsTop 10 project management tips
Top 10 project management tips
 
Martin folwer
Martin folwerMartin folwer
Martin folwer
 
aw_survivalguide_r2opt
aw_survivalguide_r2optaw_survivalguide_r2opt
aw_survivalguide_r2opt
 
Ben Mkt 347 Week 4
Ben Mkt 347 Week 4Ben Mkt 347 Week 4
Ben Mkt 347 Week 4
 
What is Lean UX?
What is Lean UX?What is Lean UX?
What is Lean UX?
 
hroughout the fifty-odd years of software development, the ind.docx
hroughout the fifty-odd years of software development, the ind.docxhroughout the fifty-odd years of software development, the ind.docx
hroughout the fifty-odd years of software development, the ind.docx
 
10 ways to keep your windows 7 migration on track
10 ways to keep your windows 7 migration on track10 ways to keep your windows 7 migration on track
10 ways to keep your windows 7 migration on track
 
NIDOS Log frames training 14th March 2013 - Jill Gentle
NIDOS Log frames training 14th March 2013 - Jill GentleNIDOS Log frames training 14th March 2013 - Jill Gentle
NIDOS Log frames training 14th March 2013 - Jill Gentle
 
Originate - Think In Hours Not Sprints
Originate - Think In Hours Not SprintsOriginate - Think In Hours Not Sprints
Originate - Think In Hours Not Sprints
 
Deliverable 2 - Using Visuals to Enhance Viewer PerceptionCompet.docx
Deliverable 2 - Using Visuals to Enhance Viewer PerceptionCompet.docxDeliverable 2 - Using Visuals to Enhance Viewer PerceptionCompet.docx
Deliverable 2 - Using Visuals to Enhance Viewer PerceptionCompet.docx
 
Deliverable 2 - Using Visuals to Enhance Viewer PerceptionCompet.docx
Deliverable 2 - Using Visuals to Enhance Viewer PerceptionCompet.docxDeliverable 2 - Using Visuals to Enhance Viewer PerceptionCompet.docx
Deliverable 2 - Using Visuals to Enhance Viewer PerceptionCompet.docx
 
Forget the A to Z of why it projects fail, here’s the S to L of successful!
Forget the A to Z of why it projects fail, here’s the S to L of successful!Forget the A to Z of why it projects fail, here’s the S to L of successful!
Forget the A to Z of why it projects fail, here’s the S to L of successful!
 
The principles of agile development
The principles of agile developmentThe principles of agile development
The principles of agile development
 
about start up for you 12
about start up for you 12about start up for you 12
about start up for you 12
 
Project Management vs Task Management: What Works Best for You
Project Management vs Task Management: What Works Best for YouProject Management vs Task Management: What Works Best for You
Project Management vs Task Management: What Works Best for You
 
Introduction of Software Engineering
Introduction of Software EngineeringIntroduction of Software Engineering
Introduction of Software Engineering
 

Dernier

Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
chiefasafspells
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
masabamasaba
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
masabamasaba
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 

Dernier (20)

Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security Program
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 

Software development project management

  • 1. Miss any of these 10 important points in a software development project and you are most likely going to fail! Medullus Systems Excellence in software development, Cloud, EDI, Reporting, ERP, Sharepoint, Legacy software, Project Management & Consulting…for your business
  • 2. Who should read this: Anyone remotely connected with IT! Tips: Be sure to click through the links - there are some cool videos and tools we use that you might find helpful.
  • 3. (1) Start an official charter meeting - even if it is a 1 day project, and list everyone involved in the project It just makes the project official. Create a document, project asset, minutes or it can even be an email to all involved stating (a) project name, (b) project manager, (c) team and responsibilities (could have a RACI if it is a more involved project), (d) briefly, what the project is going to achieve
  • 4. 2) Create a scope baseline, get it signed by the project champion and make it visible to every stakeholder We call it “spec freeze”. Scope, simply put, is the sum total of what the project needs and agreed upon by all parties. The reality is that the scope is forever changing. James in Accounting thought of something new, Mark in procurement had a better idea, Jill in Inventory thought of one exception…you get the picture. We create detailed wireframes upfront - it can be time consuming, but it is totally worth it. EVERY TIME. It gets the project “live” in front of the end user before we even start to develop. So once James, Mark, Jill and the gang is sure (at least as of now!) we stamp it as a “scope baseline”. Any change is recorded but it is kept in a queue till after we deliver on that initial scope baseline. For the customer they see an end and not an unending project with changes upon changes. It keeps our development, testing and implementation clean.
  • 5. (3) Research and find out all the negative stakeholders (not just the positive ones) Every project has at least 1 negative stakeholder, someone who is negatively affected by the outcome of the project. It could be a person, a department, a customer, a vendor, a belief or even a competitor. Sometimes such impacts cannot be avoided. But it is a good idea to know how to work through them. Surprises are never pleasant during a software development project.
  • 6. (4) Create 2 specs - one for the techies and one for the business folks and make sure they are both synced with the scope In any software development project you will have to find out who the main consumer of the software will be - it can be 1 or more users. That user or users will be able to articulate what the project needs to do. As a software architect and also as a project manager you should be able to see the software from the eyes of the business as well as the eyes of IT. If you cannot do this, then make sure you have someone who can do that or tag team. When you are creating the specifications, create a user spec and a software spec - make sure these are in sync. Updates to one should update the other and communicated to the right parties.
  • 7. (5) Regardless of your project management methodology (waterfall, scrum etc), make sure you have a detailed work breakdown structure Take a project. Break it down into modules - a module is a finite part that can be developed and tested independent from the rest. Now take each module and break it into tasks. A task is a finite part of a module that can be measured start to finish - one to which you can clearly add a start and an end date. Next take the task and break it (if you can) into chunks that makes it easy to estimate time. There are many ways to estimate time - but increments of 2, 4, 6 or 8 hrs works for us. So 5 hrs is 6; 3 hrs is 4 (round up). We also use PERT methods if there are several unknowns in the beginning.
  • 8. (6) Write out the test plans in a bug management system - it could even be google docs or excel - but write it When you articulate and write down a test plan your testing becomes more methodical. The project can be just 1 text box and 1 button. But when you start to write it out in steps 1, 2, 3 etc you will see a 4th test that you would have probably missed. You may use automated testing tools, but for functional testing this is a must.
  • 9. (7) Track progress daily - project the finish line based on current completion Especially true for those long projects, spread across multiple teams, time zones and sub projects (more like a program). A daily top down view of the project milestones, KPIs like burndown charts or % completion or earned value measures should be assessed daily - you can do it start or end of the day. Surprises spring when a project is “sleeping” or on “auto-pilot” - those are not good words for a software development project. It needs to be tracked, monitored and managed. DAILY.
  • 10. (8) Keep communication channels open across all team members Getting mathematical! Number of channels = n*(n-1) - so if 5 people are involved, that creates 5*4 = 20 channels - that is a lot of communication! The single most reason why projects fail is lack of clear communication and open channels. Daily 15 minute meetings (scrums) is one good solution. It should be unofficial - answer 3 questions - what did you do yesterday, what will you do today and what roadblocks are you facing to get the project done. Have each of the 5 people (or whatever the project team size) answer these. Another option is to use a collaboration tool like Basecamp, Producteev, Asana, Sharepoint, Zoho etc.
  • 11. (9) Be honest - dead honest If you messed up own up to it right then and there with an apology, but more importantly, with a way to fix it and how it will impact the work breakdown structure and the timeline. It lets the project manager recalculate, crash the project or rearrange resources etc. If something is sensitive, but you feel it will affect the success of the project be honest and mention it, but mention it to the right person. First explain why you are going to talk about it and then explain how the situation will affect the project. Politics is a great way to get things done! But politicking for the sake of it or to hide inefficiencies is a cancer to any project. Be honest and call it out if you see it. Create the “political arena” where it can be brought out to the key stakeholders.
  • 12. (10) Always close the project, finished or not, successful or not Let the project champion know “this closes the project.” Then write 1 (just 1) main lesson learned from the project. This really helps. At a glance you can see how many projects you have done (count the lessons learned!) and before starting a new project it is a good read.
  • 13. Have a good time with everyone, enjoy the ride and remember: “The goal of a software project is to solve a business problem. It is empowering when you know that your software will help a business to prosper.”