Software Project
Management
Tips and Tricks
By
Dr. Syed Hassan Amin
Objectives/Goals
 Stay within Budget
 Finish On-Time
 Stay In-Scope
 Create Quality
Basic Qualities of Project Managers
 Command of basic facts
 Proactiveness
 Assertiveness
 Command and Control
 Inquisitive Nature(ask questions)
 Creativity
 Mental Agility
 Relevant professional knowledge
 Ability to Learn and Adapt
 Emotional resilence
 Emotional Intelligence
 Empathy
 Developing Team Members
 Client Focus
Basic Management Skills
 Plan
 Coordinate
 Communicate
 Delegate
 Control
 Estimate
 Track
 Verify
P in Project Management
>> Planning
 Being agile means, you will be working with incomplete
information a lot of times
 A project without a critical path is like a ship without a
rudder.
 Think Ahead, Plan Ahead
 Planning is always done with client deadlines in mind
 Failure to plan, is planning for failure
Important Questions When Planning
 Purpose
 Stakeholders
 Expected output
 Constraints
 Budget
 Assumptions
 Work to be done
 Dependencies
 Resource Availability
 Risks
Project Management
>>Constraints
 Given all the time and all the resources, anyone can do it !
 Resources will always be limited, and there will always be deadlines
 Art of project management is like juggling three balls – time, cost and
quality.
Project Management
>>Estimation
 Estimation is always done with single resource assumption and
without having any specific resource !
 Differentiate between estimation, planning and scheduling
Project Management
>>Scheduling
 In project management, a schedule is a listing of a project's milestones,
activities, and deliverables, usually with intended start and finish dates.
 Those items are often estimated in terms of resource allocation, budget and
duration, linked by dependencies and scheduled events.
 Scheduling Tools
 Gantt Charts
 Milestones
Project Management
>>Schedule Compression
 To shorten the total duration of a project by decreasing the time allotted for
certain activities.
 It's done so that you can meet time constraints, and still keep the original
scope of the project.
 You can use two methods here:
 Crashing – This is where you assign more resources to an activity, thus decreasing
the time it takes to complete it. This is based on the assumption that the time you
save will offset the added resource costs.
 Fast-Tracking – This involves rearranging activities to allow more parallel work.
This means that things you would normally do one after another are now done at
the same time. However, do bear in mind that this approach increases the risk that
you'll miss things, or fail to address changes.
Project Management
>> Track Resource Utilization
 Always measure efforts involved in managing projects,
and getting various tasks done !
 Effective communication
 Don’t forget to track actual effort, including QA and
project management effort
Project Management
>>Assumptions !
 Assumption is the mother of all screw-ups
 Trust but verify
Project Management
>> Risk Identification and Mitigation
 Anything that can go wrong, will go wrong
 PM needs to plan and prepare for various risks
P in Project Management
 Get the right people.
 Then no matter what all else you might do
wrong after that, the people will save you.
 That’s what management is all about.
Project Management
>>Controls
 You can’t keep it all in your head.
 Project control tools are an absolute necessity for the control of large
projects.
 If it is not documented, it doesn’t exist …
 As long as information is retained in someone’s head, it is vulnerable
to loss.
 Project Status Reports(Daily, Weekly)
 Project Budget Tracking(estimated versus actual)
 Estimate and Effort Tracking
 Change Control
 QA Status
Controlling Project Progress
Agile Principles
>> Communication
 Business people and developers must work together daily
throughout the project.
 Build projects around motivated individuals. Give them
the environment and support they need, and trust them to
get the job done.
 The most efficient and effective method of conveying
information to and within a development team is face-to-
face conversation.
Agile Principles
>>Delivery
 Our highest priority is to satisfy the customer through early
and continuous delivery of valuable software.
 Welcome changing requirements, even late in development.
Agile processes harness change for the customer's
competitive advantage.
 Deliver working software frequently, from a couple of weeks
to a couple of months, with a preference to the shorter
timescale.
Agile Principles
>> Delivery
 Working software is the primary measure of
progress.
 Agile processes promote sustainable development.
 The sponsors, developers, and users should be able
to maintain a constant pace indefinitely.
 Continuous attention to technical excellence and
good design enhances agility.
Agile Principles
>> Simplicity
 Simplicity--the art of maximizing the amount of work not done-
-is essential.
 XP-term ‘YAGNI’ (‘You Aren’t Gonna Need It’) defines
simplicity
 Simplicity facilitates creating product with minimum
functionality that is easy to use and has simple user
interfaces and to achieve Minimum Viable Product (MVP)
 Doing refactoring now keeps code and design simple and
easy to change with less effort.
 The leaner/agile solution would be to write the first
implementation in the simple way just to get the product in
front of people.
Agile Principles
>> Agile Teams
 The best architectures, requirements, and designs
emerge from self-organizing teams.
 At regular intervals, the team reflects on how to
become more effective, then tunes and adjusts
its behavior accordingly.
References
 https://gcimmarrusti.wordpress.com/pm-quotes/
 http://agilemanifesto.org/principles.html
 https://www.mindtools.com/pages/article/newPPM_71.htm

Software Project Management Tips and Tricks

  • 1.
    Software Project Management Tips andTricks By Dr. Syed Hassan Amin
  • 2.
    Objectives/Goals  Stay withinBudget  Finish On-Time  Stay In-Scope  Create Quality
  • 3.
    Basic Qualities ofProject Managers  Command of basic facts  Proactiveness  Assertiveness  Command and Control  Inquisitive Nature(ask questions)  Creativity  Mental Agility  Relevant professional knowledge  Ability to Learn and Adapt  Emotional resilence  Emotional Intelligence  Empathy  Developing Team Members  Client Focus
  • 4.
    Basic Management Skills Plan  Coordinate  Communicate  Delegate  Control  Estimate  Track  Verify
  • 5.
    P in ProjectManagement >> Planning  Being agile means, you will be working with incomplete information a lot of times  A project without a critical path is like a ship without a rudder.  Think Ahead, Plan Ahead  Planning is always done with client deadlines in mind  Failure to plan, is planning for failure
  • 6.
    Important Questions WhenPlanning  Purpose  Stakeholders  Expected output  Constraints  Budget  Assumptions  Work to be done  Dependencies  Resource Availability  Risks
  • 7.
    Project Management >>Constraints  Givenall the time and all the resources, anyone can do it !  Resources will always be limited, and there will always be deadlines  Art of project management is like juggling three balls – time, cost and quality.
  • 8.
    Project Management >>Estimation  Estimationis always done with single resource assumption and without having any specific resource !  Differentiate between estimation, planning and scheduling
  • 9.
    Project Management >>Scheduling  Inproject management, a schedule is a listing of a project's milestones, activities, and deliverables, usually with intended start and finish dates.  Those items are often estimated in terms of resource allocation, budget and duration, linked by dependencies and scheduled events.  Scheduling Tools  Gantt Charts  Milestones
  • 10.
    Project Management >>Schedule Compression To shorten the total duration of a project by decreasing the time allotted for certain activities.  It's done so that you can meet time constraints, and still keep the original scope of the project.  You can use two methods here:  Crashing – This is where you assign more resources to an activity, thus decreasing the time it takes to complete it. This is based on the assumption that the time you save will offset the added resource costs.  Fast-Tracking – This involves rearranging activities to allow more parallel work. This means that things you would normally do one after another are now done at the same time. However, do bear in mind that this approach increases the risk that you'll miss things, or fail to address changes.
  • 11.
    Project Management >> TrackResource Utilization  Always measure efforts involved in managing projects, and getting various tasks done !  Effective communication  Don’t forget to track actual effort, including QA and project management effort
  • 12.
    Project Management >>Assumptions ! Assumption is the mother of all screw-ups  Trust but verify
  • 13.
    Project Management >> RiskIdentification and Mitigation  Anything that can go wrong, will go wrong  PM needs to plan and prepare for various risks
  • 14.
    P in ProjectManagement  Get the right people.  Then no matter what all else you might do wrong after that, the people will save you.  That’s what management is all about.
  • 15.
    Project Management >>Controls  Youcan’t keep it all in your head.  Project control tools are an absolute necessity for the control of large projects.  If it is not documented, it doesn’t exist …  As long as information is retained in someone’s head, it is vulnerable to loss.  Project Status Reports(Daily, Weekly)  Project Budget Tracking(estimated versus actual)  Estimate and Effort Tracking  Change Control  QA Status
  • 16.
  • 17.
    Agile Principles >> Communication Business people and developers must work together daily throughout the project.  Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.  The most efficient and effective method of conveying information to and within a development team is face-to- face conversation.
  • 18.
    Agile Principles >>Delivery  Ourhighest priority is to satisfy the customer through early and continuous delivery of valuable software.  Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.  Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
  • 19.
    Agile Principles >> Delivery Working software is the primary measure of progress.  Agile processes promote sustainable development.  The sponsors, developers, and users should be able to maintain a constant pace indefinitely.  Continuous attention to technical excellence and good design enhances agility.
  • 20.
    Agile Principles >> Simplicity Simplicity--the art of maximizing the amount of work not done- -is essential.  XP-term ‘YAGNI’ (‘You Aren’t Gonna Need It’) defines simplicity  Simplicity facilitates creating product with minimum functionality that is easy to use and has simple user interfaces and to achieve Minimum Viable Product (MVP)  Doing refactoring now keeps code and design simple and easy to change with less effort.  The leaner/agile solution would be to write the first implementation in the simple way just to get the product in front of people.
  • 21.
    Agile Principles >> AgileTeams  The best architectures, requirements, and designs emerge from self-organizing teams.  At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
  • 22.