软件开发中文档的编写是一个不可缺少的环节,常见的如《需求分析》、《概要分析》、《数据库设计》等。在“软件人”的阵营里向来存在两种观点,注重文档还是关心代码。
我这里写一个《用户信息模块的概要设计文档》,只列举主要内容了
1.功能描述:用于完成系统用户信息的新增、删除、修改、查询;
2.功能用例:一个主用例用户信息,附加新增、删除、修改、查询4个子用例,操作人员为管理员,图形就不画了,很简单的;
3.业务流程:查询有效范围用户信息——》新增用户信息——》判断当前帐号是否存在——》存在给出提示,反之保存成功提示。
4.约束限制:超级管理员可操作所有(包含删除,我这里考虑仅是逻辑删除、非物理删除)的用户信息;系统管理员可操作除系统管理员、超级管理员外的全部用户信息;单位管理员可操作本单位用户信息;用户帐号信息系统内全局唯一;
5.系统性能:要求同时支持500个并发操作;页面操作响应时间小于1s;页面大小小于1kb;
当前用户所属员工信息不存在时,可直接进行员工信息的添加,并完成用户信息的同步保存,确保事务的完整性;
6.运行环境:依赖系统整体运行环境为准(存在特殊需要注明);
7.操作实体:用户信息、员工信息、系统日志等。
8.异常处理:如果系统框架中已经提供相关说明,这里仅需要注明符合系统架构异常处理方式即可。
9.外部接口:输入—用户ID,输出—用户信息;
10.其他说明:用户帐号必须定义为字母开头,数字与字母组合,并保证全局唯一;用户密码采用md5算法加密,系统架构已提供相关接口。
11.注意事项:用户帐号不能为空,不能存在空格,不能超过6位;超级用户信息仅在系统初始化中完成其信息写入操作,其他用户无权对其进行修改。
项目组中也不是所有人都必须参与文档的编写,通常业务需求人员、设计人员、架构师、项目经理、小组长占大多数,而且这些人中很多也不是专注于写代码的角色。
首先,产品经理可以根据项目的阶段运营目标提出合理需求,通过PRD文档阐述产品整体设计需求背景,设计思路,功能范围,交互逻辑,页面细节及其他信息。其次,团队的相关人员可以快速获取自己需要的信息,节省反复沟通的时间成本,更好地开展工作。
最后,产品需求文档也是一个产品项目投入开发前的重要附件之一。团队领导可以根据产品需求文档清晰了解为什么需要开发这样一款产品。项目的其他相关方也可以随时参阅需求文档,了解项目的基本信息。
产品文档的好坏会直接影响到整个团队的工作进程,因此产品需求文档对产品经理来说是一项非常重要的工作。
在工作过程中可以使用摹客等专业文档撰写管理工具,结合设计稿和原型图进行说明,也支持在线审阅,可以让产品经理的工作效率大大提升。
在软件的生产过程中,总是伴随着大量的信息要记录、要使用。因此,软件文档在产品的开发生产过程中起着重要的作用。1)提高软件开发过程的能见度。把开发过程中发生的事件以某种可阅读的形式记录在文档中。管理人员可把这些记载下来的材料作为检查软件开发进度和开发质量的依据,实现对软件开发的工程管理。
2)提高开发效率。软件文档的编制,使得开发人员对各个阶段的工作都进行周密思考、全盘权衡、从而减少返工。并且可在开发早期发现错误和不一致性,便于及时加以纠正。
3)作为开发人员在一定阶段的工作成果和结束标志。
4)记录开发过程中的有关信息,便于协调以后的软件、开发、使用和维护。
5)提供对软件的运行、维护和培训的有关信息,便于管理人员、开发人员、操作人员、用户之间的协作、交流和了解。使软件开发活动更科学、更有成效。
6)便于潜在用户了解软件的功能、性能等各项指标,为他们选购符合自己需要的软件提供依据。
文档在各类人员、计算机之间的多种桥梁作用中看出:
既然软件已经从手工艺人的开发方式发展到工业化的生产方式,文档在开发过程中就起到关键作用。从某种意义上来说,文档是软件开发
规范的体现和指南。按规范要求生成一整套文档的过程,就是按照软件开发规范完成一个软件开发的过程。所以,在使用工程化的原理和方法来指导软件的开发和维护时,应当充分注意软件文档的编制和管理。
PS:软件开发文档包括:
操作手册
维护修改建议
软件需求(规格)说明书
开发文档 软件需求(规格)说明书
数据要求说明书
概要设计说明书
详细设计说明书
可行性研究报告
项目开发计划
管理文档 项目开发计划
测试计划
测试报告
开发进度月报
开发总结报告