Library tutorials & articles

Secrets of Successful Software Requirements

Secrets of Successful Software Requirements

Although most companies do some form of requirements, there is often a lack of understanding as to exactly why the requirements need to be created and the level of detail that should be included in the requirements.

Software is always created to solve a need for a client. The client may be an internal client, an external client, or even the general public. Detailed requirements are important to ensure that a program correctly and fully addresses client’s needs.

Detailed requirements make initial development easier and faster because the developers know exactly what should be developed and do not need to make their best guess at the functionality to be implemented or delay development by creating requirements during development. Giving the developers accurate requirements will also result in less rework at the end of development because the stakeholder’s requirements will have been implemented correctly initially and will not be arrived at through trial and error.

A project manager can use the detailed requirements to create accurate timelines and give correct estimates to the client. This ensures that stakeholders are completely aware how long development will take so they can adjust the scope of a project or proactively add resources if necessary.

Finally, testers can use the requirements to create test plans while development is ongoing rather than waiting until development is complete. The requirements give them information about what the program will do so there cannot be disputes between developers and testers as to what the program functionality should be. High quality requirements also describe problem paths that may need additional testing.

Even though highly detailed requirements make development easier in future phases, this is not always possible due to time constraints imposed by the client or market conditions. With this in mind, let’s look at some secrets to improve your requirements process even under tight deadlines.

Comments

  1. 07 Sep 2007 at 15:26
    Yes ofcourse you are absolutely correct
  2. 19 Jun 2007 at 02:24

    You are absolutely right !  Been there, done that for 10+ years in a global business environment, and currently offering this as a service for companies who don't have the skills in-house.

    What you described is the role of Product Management in a (software) product development environment: to act as the intermediary between the "business" (users, general management, marketing, sales, finance, and who knows else...)  and the development team.  Consolidate the business requirements, match these against (corporate) strategy, and work closely with the development team to translate the results into technological solutions.

    Based on my experience, in many companies this is an underestimated, or even totally ignored part of product development.  But, if implemented well, it leads to quicker development cycles, higher quality software, and feature-sets that meet or even exceed the expectations of the end-users.  As a result:

    • developers feel more valued, as they deliver products that are highly appreciated
    • sales and marketing feel better, as the products they asked for meet their clients' needs
    • general management is happy, as the above will lead to higher revenues and lower costs

    and most importantly

    • clients will be impressed with how well you address their needs, and spend more money with you !

    To do this right, you need professionals who have the skills to understand / interpret business needs, as well as how technology can be applied to address these.  This is a challenging task in a project for a single company, more challenging when you're talking about a single country, multi-client (commercial) application, and a potential nightmare if you're dealing with a (large) number of clients across multiple countries.

    People who can do this well are rare, but worth their weight in gold !  With their support, a development team can decrease time-to-market, improve quality, and start to truly deliver on customers' needs.

    Erwin Bergsma
    Managing Director - Global Retail Business Solutions Ltd

  3. 01 Jan 1999 at 00:00

    This thread is for discussions of Secrets of Successful Software Requirements.

Leave a comment

Sign in or Join us (it's free).

Igor Jese
AddThis

Related podcasts

  • Scott talks to Martin Fowler and David Heinemeier Hansson

    Scott sits down with Martin Fowler of Thoughtworks and David Heinemeier Hansson of 37 signals and talks about beauty, making developers happen, the death (or life) of HTML, the future of Microsoft, and asks if we should care about Rich Internet Applications. DHH is the creator of the Ruby on Rail...

Events coming up

  • Oct 23

    Social Media in Business

    Marlow, United Kingdom

    Social media is influencing corporate communication, reputation and marketing.Social Media is now in everyday public use as well as being an integral part of the marketing industry.The world of social media enables ALL your consumers, empl...

Want to stay in touch with what's going on? Follow us on twitter!