在阅读大量有关软件需求的文献时,我发现了这两本有趣的书:
这两位作者确实从人群中脱颖而出,因为在我看来,他们正在做出非常好的尝试,将需求开发变成一个非常系统的过程——更像是工程而不是艺术或黑魔法。特别是迈克尔杰克逊对真正需求的定义——我认为这是我见过的最清晰、最精确的定义。
我不会为这些试图在此处的简短帖子中描述他们的方法的作者提供良好的服务。所以我不会那样做。但我会尝试解释,为什么他们的方法似乎与您的问题极为相关:它允许您将大部分(不是全部,而是大多数!)需求开发工作归结为处理一堆清单*告诉您您必须定义什么要求才能涵盖整个客户问题的所有重要方面。换句话说,这种方法应该将遗漏重要需求(包括那些经常保持隐含的需求)的风险降到最低。
我知道这听起来像是魔术,但事实并非如此。找到那些“神奇”的清单仍然需要大量的脑力劳动:你必须首先阐明客户的问题,然后彻底分析它,最后将其分解成所谓的“问题框架”(这些神奇的仅当它们与作者定义的一些典型问题框架非常匹配时才使用检查表)。就像我说的,这种方法并不能保证让一切变得简单。但它绝对承诺使需求开发过程尽可能系统化。
If requirements development in your current project is already quite far from the very beginning, it may not be feasible to try to apply the Problem Frames Approach at this point (although it greatly depends on how your current requirements are organized). Still, I highly recommend to read those two books - they contain a lot of wisdom that you may still be able to apply to the current project.
My last important notes about these books:
As far as I understand, Mr. Jackson is the original author of the idea of "problem frames". His book is quite academic and theoretical, but it is very, very readable and even entertaining.
Mr. Kovitz' book tries to demonstrate how Mr. Jackson ideas can be applied in real practice. It also contains tons of useful information on writing and organizing the actual requirements and requirements documents.
You can probably start from the Kovitz' book (and refer to Mr. Jackson's book only if you really need to dig deeper on the theoretical side). But I am sure that, at the end of the day, you should read both books, and you won't regret that. :-)
HTH...