University of Oxford

Innovative Application of AGILE in a Non-Software Environment

Innovative Application of AGILE in a Non-Software Environment

Author

Puneet Mathur PMP

Thesis Statement

Benefits of Agile software development methodology can be reaped by adapting and applying the metholology in non-software development environment projects.

We start with looking what Agile means. Dictionary meaning of Agile as per Oxford dictionary online[1] is : “able to move quickly and easily”

Agile Software Development Methodology is a buzz word these days. We hear it in every other job requirement as well as various articles written on the subject.

Traditionally Software development was carried out using Waterfall, Spiral, Iterative, CMMI methodologies.

Definitions and Terminologies

Before we proceed some common terminologies this paper will use :

Methodology[2] – One specific collection of principles and/or practices.

Framework [2] –    a skeleton (for methods) that must be customized/augmented before use.

Agile software development – As defined in the Online Wikipedia “is a group of software development methodologies based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams”[3].

 The above definition of of Agile gives the key ingredients like Iterative software development and the fact that requirements and solutions evolve through collaboration between cross-functional team and client. The cross-functional team has a big role to play in Agile as it is supposed to be self-organizing away from the traditional teams which are directed and told to do work.

 Usage of Agile in software environment

 1     What is OpenAgile ?

Definitions and Terminologies

We now take a look at what OpenAgile is about. The OpenAgile Institute’s definition is “To create an environment in which people are free to express their true nature and capacities to contribute to the betterment of their organization[4].It recognizes Truthfulness as the foundation for progress and success”4.

The OpenAgile methodology is particularly applicable to non-software environment. Through the case study discussed in this paper we would be looking at an innovative application of Agile and OpenAgile in a non-software development project environment.

The Agile Manifesto

 As per he history of Agile methodology (Agilemanifesto.org/history.html)[5], it was born in early part of year 2001 out of a meeting of 17 professionals from the industry. Emerging out of that meeting was the Agile Manifesto5 and naming of the group as the Agile Alliance. The Agile Alliance values :

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

Agile as we can see is a lightweight software development methodology which clearly is focused on Individuals, Working software, Customer involvement and flexibility. If we keep these four values in mind we can apply Agile in non-software development environment also.

How Software Environment is different from Non-software development Environment

Software environment projects are very different from Non-software environment projects. Software Projects have many characteristic features which typically are not found in other types of projects (Bullock J (1))[6]. We outline below the key factors that make the difference very clear :

Differentiation Factors

Software

Environment

Non-software

Environment

Nature of Work Artifacts

Not Physical

Physical

End State clarity on Final Outcome

Speculative

Definitive

Variability in Production

High

Low

Technical Complexity

Very high

High to Low

Incremental Production

Suited

Not Suited

Flexibility of Tools and Methods in Production

Very High

Low

Table 2 Differences between Software and Non-software environment

 In the Table 2 we have shown the factors which make the Software and Non-software environment different and unique. Since we are discussing application of Agile in Non-software development environment we will discuss from that perspective. The good part is the nature of work products and artifacts are physically available and inspectable for quality in non-software environment. The End state output or deliverables or the outcome is very clearly known in he case of Non-software development projects such as Building construction we have the blueprint of the construction site ready before the work on the project begins. The Non-software development environment projects are not technically complex barring high industry projects like Rocket science, Airplanes, Ship building, Power plant manufacture which are out of scope of this research paper. Non-software development projects involve production which is complete at the end of he cycle like construction of a building which is useful only when it is complete, versus the software environment projects where you can view the results incrementally like development of GUI, Backend database etc. There is flexibility of Tools and methods for software production like waterfall, Agile etc. versus the non-software projects which do not provide the flexibility in tools and methods of production which are pre-determined and planned before execution and can seldom be changed during he execution phase of the project.

 Prerequisites of implementing Agile

 In an agile environment some of the primary prerequisites are:

  1. Accessibility of the customers or a representative. This is an outcome from the 3rd value of the Agile Manifesto (agilemanifesto.org) which emphasizes on customer collaboration.
  2. In-stability of requirements/scope in projects. If requirements for the projects are not known or stable throughout the lifecycle of the project then Agile should be implemented. This is reflected in the 2nd Principle of Agile Alliance group (http://agilemanifesto.org/principles.html)[7].
  3. Project should have short time deliverables requirements. This is propounded in the third principle of the Agile Manifesto 7. The Working product should not take more than a couple of weeks to a couple of months.
  4. Availability of Business and technical staff to work together the Agile project on a daily basis. This is reflected in the 4th principle of the Agile Manifesto7.
  5. Face to Face Conversation is preferred method of communication as advocated by he 6th Principle of the Agile Manifesto7. This in turn means teams have to be co-located as opposed to virtual.
  6. Working product/software is to be taken as the measure of success as told in the 8th Principle of the Agile Manifesto7.
  7. Teams are self-organizing and have maturity to deliver best architecture, requirements and design. This si propounded by the 11th principle of Agile Manifesto7.

We have only discussed some of the 12 principles from the Agile Manifesto conveyed by Agile Alliance group as these are deemed to be generic and can be applied to non-software development environment projects directly.

Benefits of Implementing OpenAgile

 As an implementation of OpenAgile Methodology we have found he various benefits that can be outlined for businesses:

  1. Requirements can be changed frequently for projects where the end result is speculative at the time of project initiation, planning or execution.
  2. Entire production methodology is more people centric since the teams are self organizing and have more empowerment than traditional project management processes.
  3. Products where Customers have very low time to market are a best fit for OpenAgile methodology such as government deadlines to complete work and to meet judiciary judgments in he non-software development space.
  4. Due to the Iterative nature of OpenAgile customers can see the workproducts in increments. This increases customer confidence and is good for business.
  5. Embracing change becomes a part of the process as he Product Backlog / Value Drivers change during the various work cycles or sprints.
  6. Cross-functional team gives the ability for the business to interact with experts from all fields during the sprint or workcycle.

 Methodology

Roles

We now look at the various roles and paths of service which are required by any Openagile implementation.

Team Member – Performs work and creates value for stakeholders.

Paths of Service:

Growth Facilitator – Team member who managers list of value drivers. This role in Openagile maps to Product Owner role who owns the Product backlog in Agile environment.

Process Facilitator – Team member who facilitates the application of OpenAgile rules.This role in Openagile maps to Scrummaster role in Agile. Refer to my article http://www.articlesbase.com/project-management-articles/agile-the-case-of-the-missing-product-owner-4770648.html on Importance of Product Owner role

 Types of Projects

When considering implementation of Openagile in the non-software environment we are talking about the traditional manufacturing sector where projects are implemented. The prerequisites mentioned as part of this research paper exclude complex highly technical projects in industries like Rocket manufacturing, Aerospace, Plant construction, Oil Rigging to name a few. However the implementation as we will see in a non-software project can be taken as a case study to customize and apply in these complex industries as well. In scope for the proposed implementations of Open Agile are Support functions in an Information Technology or Manufacturing sector industries. Organizations in the services sectors such as Hotels, Banking, Hospitals where there is a need for small project imp,ementations can utilize the OpenAgile methology as well.

 OpenAgile in Action – Case Study

Project Objective:

The project was to move resources and provide cost savings to the organization based on permissibility of countries tax laws.

Project benefits:

Movement of resources would lead to optimizing in single building units.

Provide a cost saving of US$ 1.5 million over a period of 2 years.

Project Scope:

The project involved movement of 250 resources from one building location to another based on permissibility of countries tax laws.

Risks:

  • The entire scope of the project for number of resources was not known at the time of planning and execution.
  • Frequent changes to scope based on feasibility to move resources by tax authority approvals.
  • Co-location of Team members.
  • IT-Infrastructure dependencies not known.

Stakeholders:

The project internal stakeholders from department heads to team members affected as part of the movement. IT-Infrastructure team External stakeholders involved the tax authorities.

Conclusion

The Non-software development project involved various Non-IT functions to form cross-functional teams and was successfully implemented using OpenAgile methodology.

Disclaimer:

The Situation depicted in this article for a software company is fictitious and hypothetical and has no resemblance to any organization or situation in existence whatsoever. Author does not take responsibility if you apply these practices and fail. Please use your own discretion before applying in your current situation.

For comments or feedback please write to me fasleykum@gmail.com

 

References[1] Oxford Dictionaries, Dictionary, Copyright © 2010 Oxford University Press

[2] Appelo, Jurgen. Software Development Methodologies:The Definitive List [Internet]. Version 3. Knol. 2008 Jul 31. Available from: http://knol.google.com/k/jurgen-appelo/software-development-methodologies/z7e4mx2g6lir/2

[3] Wikipedia contributors. “Agile software development.” Wikipedia, The Free Encyclopedia. Wikipedia, The Free Encyclopedia, 11 Sep. 2010. Web. 14 Sep. 2010.

[4] OpenAgile Institute, Learning Manifesto: Purpose of OpenAgile, Available from: http://www.openagile.com/LearningManifesto

[5] History: The Agile Manifesto Available from: http://agilemanifesto.org/history.html

[6] Bullock James, 2003, Top 10 Ways software Projects are Different, http://www.pmforum.org/library/papers/2003/Top10WaysSoftwareProjectsRDifferent.pdf

[7] Principles behind Agile Manifesto Available from http://agilemanifesto.org/principles.html

[8] Visit Article on Importane of Product Owner role in Agilehttp://www.articlesbase.com/project-management-articles/agile-the-case-of-the-missing-product-owner-4770648.html

[removed]// <![CDATA[ var _gaq = _gaq || []; _gaq.push([‘_setAccount’, ‘UA-23438255-2’]); _gaq.push([‘_trackPageview’]); (function() { var ga = document.createElement(‘script’); ga.type = ‘text/javascript’; ga.async = true; ga.src = (‘https:’ == document.location.protocol ? ‘https://ssl’ : ‘http://www’) + ‘.google-analytics.com/ga.js’; var s = document.getElementsByTagName(‘script’)[0]; s[removed].insertBefore(ga, s); })();
// ]]>[removed]

Follow us