Home Project Ideas Project Guide Ask An Expert Blog Careers Teachers Parents Students

How to Analyze a Software Product or Website

When you start to identify your design requirements, you already know what problem you are trying to solve. But what does "solving" your problem really mean? Your design requirements are the specific needs that must be met in order to call your design a "solution."

For a software product or a website, your problem is likely related to completing a task on a computer in the easiest and most efficient way possible. An example is a website for ordering flowers. The problem statement is:

People need an easy way to buy and deliver flowers online, because they want to see what they are buying, but going to the florist is time-consuming.
  1. From the problem statement, you can start asking the right questions to create a list of design requirements. Pull the major need or needs of your solution from your problem statement.

    Example: A flower website needs to:
    • Sell flowers
    • Allow users to arrange for delivery of the flowers
    • Be easy to use
  2. For each need, ask yourself: "What is absolutely essential to satisfy this need?" Right now, do not brainstorm. Instead figure out what MUST happen to meet the need in your future solution. Your answers to these questions are your first design requirements. (Note: if you can remove your answer to the question and still meet the need, then your answer is not a design requirement.) The "Needs" table illustrates how to find the first design requirements for the flower website example.
Major Needs from Step 1 What is Essential to Meet the Need
(Possible Design Requirements)
Sell flowers
  • Flowers available for purchase
  • A way to pay on the computer
Allow users to arrange for the delivery of flowers
  • Somewhere to enter a delivery address
Be easy to use
  • Minimal number of steps

These answers are all design requirements because they must be a part of your solution in order to meet the need. When you take away "a way to pay on the computer," then it is impossible to meet the need for users to be able to buy flowers.

An answer to this same question that is not a design requirement is "a picture of a shopping cart filled with flowers." Even though a picture like this might be nice to have, it is not absolutely necessary to allow users to buy flowers on the site.

  1. What other software products or websites exist that serve a similar function in solving your problem?

    Example: If you are designing a website for buying and delivering flowers online, you might consider looking at:
    • Other flower-buying websites
    • Food delivery websites
    • Other various online shopping websites
  2. Visit these websites. Look at every screen. Identify every feature present, right down to the copyright statement on the "about" screen. In your design notebook, draw a vertical line down the middle of the page. On the left, write down all of the features that you see. On the right, write down the purpose of each feature. Why is it present?
  3. Look at the right side of your table from Step 4. Which functions listed here will your website or software product need to fulfill? Circle these functions, and look at the feature on the left for each. Is the feature absolutely essential in meeting the need on the right? If it is, then this is a design requirement, and you should circle it. If it is not, it is a possibility that could contribute to your design, but not a requirement.
  4. Is the website or software product that you are designing going to have to compete with the other products you listed in Step 3? If the answer is "yes," look more closely at the features on the left side of your table. If you feel that your design needs to include the feature in order to keep up with current products, then that feature becomes another design requirement.
  5. Will you include any features that are not present in the competing product? What are they? If they are features that you consider to be "must haves" in order to make your design successful, then they can be considered your final, additional design requirements.