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:
- 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
- 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)
|Allow users to arrange for the delivery of flowers||
|Be easy to use||
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.
- 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
- 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?
- 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.
- 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.
- 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.