将用户和系统需求记录到文档中。
需求规范
它是将用户和系统需求写入文档的过程。需求应该是清晰的、容易理解的、完整的和一致的。
在实践中,这是很难实现的,因为涉众以不同的方式解释需求,并且在需求中经常存在固有的冲突和不一致。
正如我们之前提到的,需求工程中的过程是交叉的,并且是迭代地完成的。在第一次迭代中指定用户需求,然后指定更详细的系统需求。
用户需求
系统的用户需求应该描述功能性和非功能性需求,以便不具备技术知识的用户能够理解它们。
您应该用简单的表格、表单和直观的图表所提供的自然语言来编写用户需求。
需求文档不应该包括系统设计的细节,并且您不应该使用任何软件术语或正式符号。
系统需求
另一方面,系统需求是用户需求的扩展版本,被软件工程师用作系统设计的起点。
它们添加了细节并解释了系统应该如何提供用户需求。他们不应该关心系统应该如何实现或设计。
系统需求也可以用自然语言编写,但是通常使用基于结构化形式或图形符号的其他方式。
编写需求说明的方法
正如我们所提到的,有不同的方法来指定需求。最常见的两种方式是自然语言和结构化语言。
编写需求说明的方法
自然语言规范
这是一种用普通纯文本编写需求的方式,默认情况下没有定义的格式。
用自然语言编写的需求是含糊不清的。因此,你需要遵循以下指南,以尽量减少后果和误解:
创建您自己的格式来编写需求。例如,您可以按照以下格式来编写需求:
“(行动者)应该(通过(怎样)做某事);解释用户如何触发该功能),以便/因此(为什么;解释此需求的好处或对象)。
“A/The (Actor) shall (do something), By (how; explain how the user can trigger this feature), In order to/so that (why; explain the benefits or the objects of this requirement).
例如:“系统应允许用户通过输入用户名和密码进行注册,以便进入系统”。
当我们说“一个系统”时,这个词是非常模糊的,我们需要确切地定义系统的哪个部分将处理这个需求。
我们可以突出重要的关键字。
不要使用缩写和首字母缩写,如果你想的话,你必须加上所谓的“附录”。它定义了规范中的所有缩写和首字母缩写及其相关含义。
结构化的语言规范
它是一种以更正式、更结构化的形式编写需求的方式。
它使用标准模板来指定需求。规范可以围绕系统执行的功能或事件构建。
结构化语言规范的模板。
软件需求文档
软件需求文档(也称为软件需求规范或SRS)是关于应该实现什么的官方文档。它也被用作系统购买者和软件开发者之间的合同。
两者都应该包括;用户和系统需求。通常,用户需求是在系统需求介绍中定义的。
在其他情况下,特别是有大量需求时,详细的系统需求可能会在单独的文档中呈现。
需求文档有不同的用户集合,从客户到系统工程师。
可能用户的多样性意味着需求文档必须是客户沟通需求之间的妥协,为开发人员和测试人员定义详细的需求,和预测信息的变化可以帮助系统设计者为了避免严格的设计决策,并帮助系统维护工程师系统适应新的需求。
在敏捷方法中,由于需求变化如此之快,一次交付完整的文档是浪费时间,相反,增量地收集需求,并将它们作为用户场景(User Story)写在卡片上。
每个用户描述都有估计的完成时间和优先级。相关的用户场景被分组在一起。
接下来是需求工程的最后一个支柱;需求验证( requirements validation)。
本文 :https://architect.pub/requirements-engineering-requirements-specification-part-3 | ||
讨论:知识星球【首席架构师圈】或者加微信小号【ca_cto】或者加QQ群【792862318】 | ||
公众号 | 【jiagoushipro】 【超级架构师】 精彩图文详解架构方法论,架构实践,技术原理,技术趋势。 我们在等你,赶快扫描关注吧。 | |
微信小号 | 【ca_cea】 50000人社区,讨论:企业架构,云计算,大数据,数据科学,物联网,人工智能,安全,全栈开发,DevOps,数字化. | |
QQ群 | 【285069459】深度交流企业架构,业务架构,应用架构,数据架构,技术架构,集成架构,安全架构。以及大数据,云计算,物联网,人工智能等各种新兴技术。 加QQ群,有珍贵的报告和干货资料分享。 | |
视频号 | 【超级架构师】 1分钟快速了解架构相关的基本概念,模型,方法,经验。 每天1分钟,架构心中熟。 | |
知识星球 | 【首席架构师圈】向大咖提问,近距离接触,或者获得私密资料分享。 | |
喜马拉雅 | 【超级架构师】路上或者车上了解最新黑科技资讯,架构心得。 | 【智能时刻,架构君和你聊黑科技】 |
知识星球 | 认识更多朋友,职场和技术闲聊。 | 知识星球【职场和技术】 |
领英 | Harry | https://www.linkedin.com/in/architect-harry/ |
领英群组 | 领英架构群组 | https://www.linkedin.com/groups/14209750/ |
微博 | 【超级架构师】 | 智能时刻 |
哔哩哔哩 | 【超级架构师】 | |
抖音 | 【cea_cio】超级架构师 | |
快手 | 【cea_cio_cto】超级架构师 | |
小红书 | 【cea_csa_cto】超级架构师 | |
网站 | CIO(首席信息官) | https://cio.ceo |
网站 | CIO,CTO和CDO | https://cioctocdo.com |
网站 | 架构师实战分享 | https://architect.pub |
网站 | 程序员云开发分享 | https://pgmr.cloud |
网站 | 首席架构师社区 | https://jiagoushi.pro |
网站 | 应用开发和开发平台 | https://apaas.dev |
网站 | 开发信息网 | https://xinxi.dev |
网站 | 超级架构师 | https://jiagou.dev |
网站 | 企业技术培训 | https://peixun.dev |
网站 | 程序员宝典 | https://pgmr.pub |
网站 | 开发者闲谈 | https://blog.developer.chat |
网站 | CPO宝典 | https://cpo.work |
网站 | 首席安全官 | https://cso.pub |
网站 | CIO酷 | https://cio.cool |
网站 | CDO信息 | https://cdo.fyi |
网站 | CXO信息 | https://cxo.pub |
谢谢大家关注,转发,点赞和点在看。