Where to look when Requirements do not Exist in today’s Software Projects


Professor Hubert Vaughan

Beijing, China

Anyone managing software development projects will agree that it is extremely difficult to identify “Requirements” that enable us to define “specifications” for the solution today, thus causing continuous changes during our development cycle, delaying project delivery and resulting in cost over-run.

A lot had been discussed and written about the techniques or ways for identifying requirements during the early stage of system development. It is unfortunate that we don’t seem to gain from any of these ideas and experience.

Today’s “information age” is very much different from the “automation age” of the past. Most project Sponsors and Stakeholders really don’t have any ideas about what the requirements will be during project initialization stage. We can never identify “Requirements” that do not exist from our customers or users.

On top of the non-existent “Requirement”, most project managers fail to define a Project Scope that can be managed. Without a manageable scope definition, we can never manage the subsequent changes requested during delivery. The PMBoK made very clear the importance of Scope Management, only if you can manage the project scope can you manage the Change Requests because Project Scope bounded the requirements for development.

Scope and Requirements in the 70s

It is the early stage of our automation age, that is, changing our manual business processes into computer systems that help us improve our productivities in our work environment. Instead of project scope that we know today, we called it “Terms of Reference” that bounded our undertakings.

If we were given an assignment to develop an Inventory Control System for the warehouse, we may receive an instruction like “Develop a system that identifies and keeps counts of all goods (Raw materials, semi-finished and finished products) that go into the warehouse, and all goods that leave for the production floor or for delivery to customers”.

The Terms of Reference gave us the boundary of our assignment that specified any business processes inside the warehouse that should be automated. The System Analyst then conducted a “Fact Finding” exercise, by interviewing warehouse management to identify the business processes that took place when goods come into warehouse, how and where they are stored, what triggered goods to be picked up for the production floor or for delivery to customers. The analyst identified how and where inventory counts were recorded, updated, transferred, and removed from the record. He or she reviewed report formats, contents and forms used inside the warehouse operations.

Armed with the information gained from the Fact Finding exercise and based on all those processes, the analyst would identify data capture requirements, file format requirements, data update requirements, and reporting requirements. The Terms of Reference basically bounded the Requirements of the development work.

Please take note that Users never gave out requirements, they told the Analyst their operational processes and the Analyst had to define the Requirements AFTER his understanding of the warehouse management operation.


To read entire paper (click here)

Editor’s note:  Second Editions are previously published papers that have continued relevance in today’s project management world, or which were originally published in conference proceedings or in a language other than English. This paper was originally presented at Tsinghua University in Beijing, China in 2008.  It is republished here with author’s permission. 

About the Author                                                    

pmwj17-dec2013-vaughan-AUTHOR IMAGEProfessor Hubert Vaughan (Retired) flag-china

Beijing, China

Hubert Vaughan commenced his career in the field of computer technology in early 1972. For thirty years, Hubert practiced and served a number of International technology and financial Organizations including IBM, DEC, Unisys, Tandem, Bell Canada, Andersen Consulting, Lucent Technologies, National Mutual, ANZ Banking Group and Bank of Montreal; holding senior management positions in Technology related services. His career covered the five major continents around the world as Department Manager, Director, Assistant Vice President, and Vice President that spanned across software development, professional services, product development, technology consulting, project/program management, strategic planning as well as business development.

The last ten years, Hubert joined the Academic Institutions in China as Professor at the Institute of International Engineering Project Management (IIEPM) of Tsinghua University. Hubert also lectured at the Graduate School of China Academy of Science, the Beijing University of Aeronautic and Astronautic teaching Innovation Management, Management of Technology, Program Management, Project management, and Software Engineering.

Apart from his teaching engagements, Hubert is a Research Fellow at the China Academy of Management Science, a member of the International Society of Professional Innovation Management (ISPIM), a former member of PMI’s Certification Governance Council (CGC); a co-founder of First International Innovation Management Alliance (FiiMA), and an Editorial Advisor of professional e-journal PM World Journal. Hubert is a Program Consultant to a number of multi-billion dollars projects run by State-Owned technology organizations and financial institutions in China.

Hubert is a regular presenter at international conferences and seminars in North America, Europe, Middle-East and Asia-Pacific. He had published more than fifty papers related to Software Engineering, Project Management, Program Management, and Innovation Management subjects both in China and in various international professional journals.  Retired from his academic engagement in July 2013, Hubert continues his research work in Innovation Engineering and presents at international events about his research findings throughout his career. He can be contacted at [email protected]