Short history of Project Management discipline
Project management has been practiced for many years in different ways depending on the body of knowledge of every person — I’m sure that there was some kind of “project management” approach for building the great 7 wonders of the world or other similar large efforts many years ago, but it probably wasn’t even thought of as project management in those days.
They didn’t use any Gantt charts and Pert charts and other sophisticated project planning and management tools, because those things weren’t even invented until the twentieth century. The Project Management Institute(PMI) was created in 1969 when large-scale projects start to emerge after WW2 and these discipline needed standardisation.
Managing any project is a challenging activity. There are many reasons why projects could fail but one of the main reasons is because of the misalignment between the business strategy and the project goals.
The term ‘Agile’ was first created in early 2000’s when 17 high-tech leaders from around the world gathered to share their ideas and theories of frameworks to help allay business frustration and meet the demands of the rising customer market.
Even if in the Agile Manifesto(you can learn more about Agile here) or in Agile frameworks is not necessarily specified the term still emerged from higher number of fails rate(for example in software industry in early 2000 more than 64% of projects were failures).
Why do we need a totally new approach?
Failure. Failure. Failure...in people' mindset. Agile changed from the ground up how we approach projects or products. A totally new paradigm (Waterfall vs. Agile)
Which photo do you think it represents an Agile approach?To answer this let's find out more about the Agile approach/mindset:
- Early and fast delivery of a project/product as opposed to a fixed deadline.
- Welcome Change at any step of the development to endorse continuous improvement of the way work is done.
- Iterations that last from 1 to 4 weeks maximum, to focus on bringing business value as a competitive advantage.
- Collaboration between agile teams, stakeholders and clients at every step of the process for successful completion of product as per requirements.
- The working product is the main goal at the end of each release.
- It incorporates continuous adaptive planning that allows continuous improvement of the project/product.
So, which photo summarises an Agile approach? Please comment below.
Difference between Agile and Traditional development.
Traditional - Everything is predictable, and can be built through extensive planning.
Agile - It offers the tech advantage into the market by giving first high value and by addressing risks from the beginning.
Traditional: Process-centric approach
Agile: People-centric approach
- Agile: Leadership-and-collaboration
Agile: Implicit and everything could be learned
Traditional: Individual — specialised in a profession
Agile: Self-organising teams — people are free to gain new skills in the team and so roles become interchangeability
- Agile: Informal
Agile: Critical - it is where you "take the light"
Traditional: Guided by tasks or activities
Agile: Guided by product features
Traditional: Life cycle model - Waterfall with some other variations
Agile: The evolutionary-delivery model
Traditional: Mechanistic - very well defined
- Agile: Organic - decided by teams
Traditional: No restriction
Agile: Applying a growth mindset towards technologyAnd the winner is...
Agile terms that every project manager should know
A customer is a person with an understanding of both the business needs and the operational constraints for a project which provides guidance during development.
A particular business needs to be assigned to the software development team. Stories must be broken down into small enough components that may be delivered in a single development iteration.
An iteration is a single development cycle, usually measured throughout a week or two.
A daily progress meeting (literally every stand up and meets to keep engaged and motivated), traditionally held within a development area.
A defined period of time during which a task must be accomplished.
It confirms that a story is complete by matching a user action scenario with the desired outcome. Acceptance testing is also called beta testing, application testing, and end user testing.
The application domain responsible for creating a shared language between business and IT.
Used to track the progress of an agile development project. After iteration planning, stories are written on cards and pinned up in priority order on a planning board.
A planning game is a meeting attended by both tech and business teams that are focused on choosing stories for a new iteration.
A deployable software package that is a culmination of several iterations of development.
An evolving flowchart (that could change rapidly depending on the business' competitive advantage) that describes which features will be delivered in upcoming releases.
It could be a technical debt or a business debt and it is addressed by a time-boxed investigation in order to understand what is needed to be estimated.
How many story points a team can deliver in iterations based on empirical measurements.
Some (final) thoughts
Even if the PM role is not well defined in any Agile practice this doesn't mean that it cannot be applied to day by day activities, successfully facing the project management challenges.
This article is part of a bigger topic called Agile Project Management.