官术网_书友最值得收藏!

How to gather requirements

 

Innovation is not about saying yes to everything. It's about saying NO to all but the most crucial features.

 
  --Steve Jobs

I saved several doomed projects by spending a few days with the client to carefully listen to their needs and set the right expectations. Armed with nothing but a pencil and paper (or their digital equivalents), the process is incredibly simple but effective. Here are some of the key points to remember while gathering requirements:

  1. Talk directly to the application owners even if they are not technical savvy.
  2. Make sure you listen to their needs fully and note them.
  3. Don't use technical jargon such as "models". Keep it simple and use end-user friendly terms such as a "user profile".
  4. Set the right expectations. If something is not technically feasible or difficult, make sure you tell them right away.
  5. Sketch as much as possible. Humans are visual in nature. Websites more so. Use rough lines and stick figures. No need to be perfect.
  6. Break down process flows such as user signup. Any multistep functionality needs to be drawn as boxes connected by arrows.
  7. Finally, work through the features list in the form of user stories or in any easy way to understand the form.
  8. Play an active role in prioritizing the features into high, medium, or low buckets.
  9. Be very, very conservative in accepting new features.
  10. Post-meeting, share your notes with everyone to avoid misinterpretations.

The first meeting will be long (perhaps a day-long workshop or couple of hour-long meetings). Later, when these meetings become frequent, you can trim them down to 30 minutes or one hour.

The output of all this would be a one page write-up and a couple of poorly drawn sketches.

In this book, we have taken upon ourselves the noble project of building a social network called SuperBook for superheroes. A simple sketch based off our discussions with a bunch of randomly selected superheroes is shown as follows:

How to gather requirements

A sketch of the SuperBook website in responsive design. Desktop (left) and smartphone (right) layouts are shown.

主站蜘蛛池模板: 永春县| 沈丘县| 琼结县| 漯河市| 汝城县| 尉氏县| 大田县| 临汾市| 伊宁县| 平凉市| 广元市| 平顶山市| 阳曲县| 阜康市| 岳阳县| 杨浦区| 西乌珠穆沁旗| 浮梁县| 保定市| 新津县| 滦平县| 石狮市| 淅川县| 巩留县| 西藏| 周宁县| 渝中区| 濮阳县| 铜山县| 海原县| 通化市| 将乐县| 建宁县| 濮阳市| 乳山市| 宜昌市| 大足县| 东乡县| 安多县| 高雄市| 庆元县|