软件项目开发流程
1、项目启动
1)、项目组成立(公司成员、客户成员)2)、制定项目预期目标3)、制定项目计划周期4)、建立好项目组成员沟通机制
2、需求调研
1)、创建调研计划、协调调研时间2)、收集客户资料,获取客户需求 所有的资料都需要保留一份,资料中存疑的需要及时询问3)、编写需求文档 重点描述出客户的业务流程和性能要求。 采用Word、Excel、Rose等形式。4)、需求变更记录5)、确定开发环境和运行环境6)、扩展性要求7)、与旧系统的接驳要求。8)、估算出项目工作量
本阶段需要一套需求管理系统来进行需求的管理。
本阶段的需求文档也是用户测试的依据。
3、系统设计/详细设计
一个系统可以分为基础平台和应用模块两部分。1)、选择基础平台,无论是采用第三方平台还是自行开发平台,都需要深入了解,查看是否符合要求。2)、应用模块设计(针对业务流程)3)、中间件的采用或自行开发,需要深入了解。4)、用户界面的设计 如果用户界面设计完毕并确认,即可初步写出用户使用手册、管理员使用手册。5)、变更记录
本阶段的系统设计是集成测试的依据。
4、程序开发
创建开发任务计划表、开发计划日程表1)、优先编写测试用例2)、按照编码规范编写代码3)、按照文档注释规范注释以上形成开发文档。
本阶段需要一套版本管理系统。
本阶段的测试用例也是单元测试的依据。 如果能做到,最好每日构建。
5、测试
本阶段需要一套Bug管理系统,形成需求、设计、开发、测试互动。
1)、编写测试计划和测试方案2)、功能测试 单元测试、集成测试3)、性能测试 集成测试、压力测试
如果能做到,最好能进行自动化测试。 如果能做到,做分析统计工作。
最后形成测试报告。
6、试用、培训、文护
本阶段需要解决:1)、解决异地修改和公司修改的同步问题。2)、用户测试中的Bug修改问题,按照级别分为 a)、程序Bug b)、设计变更 c)、需求变更尽量按照a b c的顺序来进行修改,尽量避免b、c级的修改。
最后形成安装手册、文护记录。
项目成员组成
根据以上过程,一个项目组中,需要:
1>需求工程师,其要求善于与客户沟通,能快速了解客户的需求,对客户所在的行业比较熟悉。善于学习新知识。熟悉Word、Excel、Rose等工具的使用。熟悉开发语言和开发框架熟悉已积累的产品的功能、性能等。
2>系统分析师/设计师,其要求精通开发语言和开发框架,部分需要精通数据库精通已积累的产品的功能、性能等深入了解客户行业特点能根据客户的要求分析出其实质能做出优秀的设计熟悉Word、Excel、Rose等工具的使用
3>开发工程师,其要求熟悉开发语言,熟悉开发要求和注释规范,部分需要熟悉数据库。熟悉单元测试。能根据设计做出良好的编码,保证功能和性能。部分需要有一定的设计要求,因为涉及到将来的文护。
4>测试工程师,其要求熟悉测试工作,能按照测试计划进行测试。熟悉开发语言,能协助开发工程师找错。能独立完成黑、白盒测试。如果是高级测试人员,还要能够对系统能深入进行分析并能制定出优秀的测试方案。
5>管理人员一般由以上人员兼任,主要有项目经理:负责整个项目开发经理:负责系统设计、开发工作测试经理:负责测试工作
6>其他人员一些项目涉及到其他人员,如页面设计人员、页面制作人员。部分大的项目,还有专门的文护人员。
由于目前国内很多公司并没有严格这么区分,如果项目小的话,可以一人兼任多项职位