Skip to main content

Software Requirements: Is it a Toaster or an Aircraft Carrier?

Building software solutions begins with identifying business requirements, and many project failures can be traced to poor requirements.

Part of the problem is that features and requirements language is often too broad or ambiguous, leading to conflicting interpretations, as I discussed in a blog post Stuff Passing as Requirements. These include meaningless expressions such as "intuitive," "user friendly" and "seamless integration" as well as impossibly broad statements like "meets all applicable compliance requirements."

One of my favorite classic information technology textbooks is Exploring Requirements: Quality Before Design by Donald C. Gause and Gerald Weinberg.  The book is a great foundation for understanding product development, not just for software development.  It will encourage you to ask more questions and think about requirements in new ways to make your projects more successful.

Another, related problem, is that information technology is by its nature both abstract and plastic, because it may be applied in so many different ways.  We often search for metaphors to help us scope software projects.  Sometimes the metaphor can illuminate, but often it obscures.

One of the most common metaphors I hear in software projects is the automobile.  "Do you want a Chevrolet, or a Cadillac?"  The idea is to separate required features from optional features.  This often fails in software projects, because a requirement of "red, has four wheels and carries passengers" applies to Radio Flyer wagons and to Ferraris.  One of our clients described a software requirement as so broad, you could use it to build an aircraft carrier. 

We also hear the analogy of a house or building.  How many rooms, or stories, or how tall do you want your software?  Again, this can be a point of departure, but often we end up with a skyscraper resting on the foundation of a shack because of changes made during the course of a project.

In the end, I often find that users cannot determine what they want or need until they see it. Prototyping and looking at comparable systems is much more useful than blue sky requirements brainstorming.  This approach allows you to benefit from the experience of others who have already covered similar territory rather than starting from scratch. 

Please share your software requirements experiences with me on Twitter @jamestownsend. 

Popular posts from this blog

The DATA Act Driving Grant Management Automation

The Digital Accountability and Transparency Act enacted in May 2014 calls for making spending data available in open, standardized formats to be published online.  It is a continuation of transparency initiatives and lessons learned with experiences such as grants.gov, the 2009 economic stimulus under the Recovery Act and the spending site USASpending.gov.

Government grantees will have significant new administrative responsibilities.  Many organizations that were tracking grants in spreadsheets or documents will have to adopt more sophisticated automated grant management systems such as Microsoft Grants Manager to keep up with reporting rules.

For profit companies will lose some privacy as a result of this law.  Grant recipients will be required to disclose information including officer salaries.

Continued improvements to publishing grant opportunities such as grants.gov may make it easier to find grants. These reforms together are designed to improve the effectiveness of grant prog…

Dynamics 365 for Government Contractors (GovCon) Frequently Asked Questions (FAQ)

One of InfoStrat's most popular solutions is Dynamics 365 for Government Contractors (GovCon).



Here are some answers to frequently asked question on this solution:
Can I add new fields to the solution?  -- Yes, the solution is fully customizable and you can add your own new fields to any form, view or report.Does Dynamics 365 for GovCon work on mobile devices?  -- Yes, Microsoft offers mobile apps for all the most popular platforms including iPhone, iPad, and Android phone and tablets.Does Dynamics 365 connect with bid data systems such as Deltek and Onvia?  -- Some information services, such as Onvia, offer integration with Dynamics 365.  Others require third party solutions such as the InfoStrat integration with Deltek GovWin IQ.What do customers typically customize for their unique requirements? -- Not all contractors follow the same steps in the capture process.  Most clients will tailor the business process to add or remove steps in order to match their sales methodology.  Of…

Getting the Most from Dynamics CRM Online -- Synchronous v Asynchronous Workflows

This video shows highlights from the InfoStrat March 2015 seminar "Getting the Most Out of Dynamics CRM Online" presented by Dmitri Riz, the leader of the InfoStrat Dynamics CRM practice.  This is the second part of a series of blog posts.  The first is Benefits and Cloud Thinking.



In order to make your CRM workflows perform best, you need to understand the difference between synchronous and asynchronous workflows so you can choose which is appropriate for your applications.



Synchronous workflows are a new feature that was introduced in Dynamics CRM 2013.  Unlike asynchronous workflows which are sent to a queue, synchronous workflows execute in a single transaction. 

This means you can eliminate the need for many plug-ins which were created for previous versions of Dynamics CRM.

You may want to disable synchronous workflows during import operations, because they will could be triggered by each new record and significantly slow down the import process.