目录
1.需求
在多数的软件公司,会有两部分需求,一部分是用户需求,一部分是软件需求。
1.1用户需求
用户需求:可以简单理解为甲方提出的需求,如果没有甲方,那么就是终端用户使用产品时必须要完成的任务。该需求一般比较简略,通常是一句话。
用户需求,没有经过合理的评估。
1.2软件需求
后者叫功能需求,该需求会详细的描述开发人员必须实现的软件功能。软件需求是测试人员进行测试工作的基本依据。
1.3软件需求文档
在工作当中,我们实际见到的软件需求文档类似于下面的描述:
软件规格说明书
一、用户需求:平台支持邮箱注册。
二、软件需求:
1.注册账号
- 功能概述 用户可以通过填写邮箱信息在平台注册个人用户。
- 用户角色 匿名用户。
- 前置条件。
- 输入。
- 处理。
- 基本时间流:
(1)用户选择注册;
(2)系统展现用户协议界面,并请用户确认是否同意用户协议:若用户不同意协议,系统禁止用户注册;若用户同意协议,用户进行这次信息填写。
(3)用户填写注册信息:注册个人,填写;姓名,电话,电子邮箱,密码,确认密码,验证码。
(4)用户提交注册信息;
(5)系统提示用户并向用户注册的电子邮件地址发送一封含有激活信息的电子邮件。系统并提示用户,若未收到激活邮件,可以使用注册的邮箱和密码登录系统后再次发送激活邮件。
(6)用户可执行激活操作,直接跳转至注册邮箱用户页面。
(7)用户通过接受到的电子邮件中的激活信息激活账号,用户注册完成,流程结束。
- 扩展事件流 用户注册并激活成功后,第一次登录平台时,提示用户完善信息;
- 异常时间流 若用户未收到激活邮件,可在登录界面录入电子邮件及密码后,再次发送邮件。每次发送的激活邮件,仅在发送邮件后起24小时之内有效,超过24小时后需重新发送激活邮件。
- 输出 用户注册成功。
- 后置条件 该模块为用户登录的前置模块。
注意:用户的需求不能直接作为开发和测试的依据。针对用户的需求,产品经理需要进行需求分析(技术可行性、市场可行性、成本收入和收益占比等)后才可转变为软件需求。
2.开发模型
2.1什么是模型
随着软件学科的发展,人们对计算机软件的认识逐渐深入。软件工作的范围不仅仅局限于在程序编写,而是扩展到了整个软件生命周期,如软件基本概念的形成、需求分析、设计、实现、测试、安装部署、运行维护,直到软件被更新和替换新的版本。软件工程还包括很多技术性的管理工作,例如过程管理、产品管理、资源管理和质量管理,在这些方面也逐渐的建立了标准和规范。
2.2软件的声明周期
实际上就是软件的开发模型
需求的分析——计划——设计——编码——测试——运行维护
阶段 | 具体内容 | 产出 |
---|---|---|
需求分析 | 分析用户需求是否合理,分别从市场需求、技术等方面进行分析。 | 该阶段会输出需求文档。 |
计划 | 对成立的需求执行计划,多长时间内完成该需求,每段时间具体完成那些功能。 | 该阶段会输出计划等文档。 |
设计 | 讲需求细化成一个个任务,团队成员各司其职领取任务并进行技术设计(如何进行架构设计,设计那些接口、采用什么技术)。 | 该阶段会输出技术等文档。 |
编码 | 开发人员参考需求文档、设计文档、交互图等文件进行代码的编写。 | 代码文件等文档。 |
测试 | 测试人员需要介入到软件的测试中来,参考测试用例对软件进行测试。 | 测试用例、测试设计与计划、测试报告等文档。 |
运行维护 | 项目测试结束后,项目需要进行上线,并对产品进行线上的维护。线上的维护主要分为三个方面。分别为修复性维护、完善性维护和预防性维护。 |
修复性维护:对项目中未发现的问题进行修复。
完善性维护:对功能进行维护。
预防性维护:居安思危,为了避免产品在线上出现一些其他不可预料的问题,进行了一些防护的手段。