测试人员在软件开发过程中的任务-开发网络试题库管理应用软件中添加试题功能的开发步骤
实施软件工程项目管理:
▲项目经理(负责人):项目经理(负责人)对整个项目全面负责,是指导、控制、管理和规范某项软件和软硬件系统建设的人。 项目经理(负责人)是最终对客户负责的人。
▲软件项目经理(负责人):软件项目经理(负责人)全面负责一个项目的所有软件活动,控制一个项目的所有软件资源,与项目经理(负责人)按照到软件协议。
▲软件工程组:软件工程组是负责一个项目的软件开发和维护活动(例如:需求分析、设计、编程和测试)的人员(包括管理人员和技术人员)。
▲系统工程组:系统工程组是负责以下工作的一群人(包括管理人员和技术人员):规定系统需求; 将系统要求分配给硬件、软件和其他组件; 指定硬件、软件和其他组件接口之间的关系; 监控这些组件的设计和开发,以确保它们符合规格。
▲系统测试组:系统测试组是负责策划并完成独立的软件系统测试的个人(包括管理人员和技术人员)的集合。 测试的目的是确定软件产品是否满足其需求。
▲软件质量保证组:软件质量保证组是计划和实施项目质量保证活动的一组个人(包括管理人员和技术人员)。 他们工作的目的是确保遵循软件过程的步骤和标准。
▲软件配置管理组:软件配置管理组是负责规划、协调和实施软件项目的正式配置管理活动的个人(包括管理人员和技术人员)的组。
整体流程:
策划阶段-》需求分析阶段-》软件开发阶段-》测试阶段-》完成
1、项目策划阶段
项目计划草案和风险管理计划是第一步。 当有商业机会时,根据公司高级管理层制定的初步商业计划完成项目计划草案,并对项目风险进行确定、分析和优先级排序。 风险解决方案。 此阶段的目的是为产品开发建立经济原理。
开发确定后,制定软件开发计划、人员组织结构的定义和分配、过程控制计划。
(一)项目计划草案
项目计划草案应包括产品介绍、产品目标和功能说明、开发所需资源、开发时间和里程碑。
(2) 风险管理计划
也就是把可能出问题或者还不确定的事情列出来,制定相应的解决方案。 越早识别风险,对项目越有利。
(3) 软件开发计划
软件开发计划的目的是收集控制项目所需的所有信息,项目经理根据项目计划安排资源需求测试人员在软件开发过程中的任务,并根据时间表跟踪项目进度。 项目团队成员使用项目计划来了解他们的工作任务、工作时间以及他们所依赖的其他活动。
规划可分为总体规划和详细规划。 在总体规划中,每一项任务都是一个里程碑。 在详细计划中,任务必须落实到个人。
软件开发计划还应包括产品应收标准和应收任务(包括确定需要开发的测试用例)。
(4) 人员组织架构定义及配置
常见的人事组织结构包括纵向方案、横向方案和混合方案。 每个成员在垂直方案中扮演多个角色。 每个成员在横向方案中扮演一个或两个角色。 混合方法涉及经验丰富的人员和新手的混合。 具体选择根据人员的实际技能而定。
(5)过程控制计划
过程控制计划的目的是收集项目计划正常执行所需的所有信息,指导项目进度的监控、计划的调整,确保项目按时完成。
二、需求分析阶段
需求分析阶段的目的是与用户就系统如何工作达成一致。
(1) 软件需求说明书
详细描述系统将实现的所有功能。
(2) 用户界面原型
可以有三种表示形式:绘图(纸上)、位图(绘图工具)和可执行文件(交互式)。
3、软件开发阶段
此阶段以物理方式实现目标系统。 采用面向对象的方法。
(1) 软件架构
说明软件的组织结构、部署结构和运行环境。
(2) 班级设计
定义类之间的关联以及类的属性和方法。
(3) 数据库设计
定义数据库表和每个表的字段之间的关联。
(4) 编码与单元测试
根据设计文档编写代码,每个完成的模块都应该进行单元测试。
(5) 综合系统
根据软件组织结构的要求组合各个子系统。
4.测试阶段
测试的目的是在程序发布之前找出程序中的错误。 包括:验证各模块是否正常运行(参考设计文档),验证需求是否正确实现(参考需求文档)。
(1) 测试计划
收集整理考试资料,为考试工作提供指导。
(2) 测试数据
尽可能使用真实数据。
(3) 检测报告
记录测试结果,详细描述问题,提出解决方案。
(4) 帮助文件和用户手册
5.管理软件开发过程
通过以下方式工作:
(一)组织会议
座谈会、总结会等
(二)审查程序
回顾每个阶段的工作成果。
(3) 协调员
(4) 配置管理
使用一些配置管理工具进行开发文档管理,例如:visualsourcesafe、teamsouce等。
六、各参与角色的具体职责和要求
(1) 项目经理
职责:
1.制定产品目标。
2、为每项工作制定详细的任务清单,跟踪这些任务的执行情况,并加以控制。
3. 组织会议审查方案。
4、根据具体情况,对各种方案进行取舍和决策。
5、协调项目参与方之间的关系。
人员要求:
对具有领导能力的产品充满热情。
能正确快速地判断问题所在。
能充分利用各种渠道和方法解决问题。
可以跟踪任务并有良好的进度感。
可以在压力下工作。
(2) 系统分析师
职责:
1、了解用户需求,编写《软件需求说明书》。
2. 创建用户界面的原型。
人员要求:担任系统分析员的人员要善于协调,有良好的沟通能力。 此角色必须包括具有业务和技术领域知识的人员。
(3) 设计师
职责:
1、定义类的方法和属性以及各类之间的关联,画出类图。
2. 进行数据库设计。
人员要求:掌握面向对象分析设计技术,统一建模语言(uml)。
(4) 程序员
职责:根据项目要求进行编码和单元测试。
人员要求:良好的编程能力和测试技术。
(5) 测试人员
职责:执行测试测试人员在软件开发过程中的任务,描述测试结果,并提出问题的解决方案。
人员要求:了解被测系统、诊断和解决问题的技能、编程技能
总结:
可行性研究:一般只适用于大型项目。
一、需求分析
1. 收集整理需求,编写需求说明书(描述软件开发的意图、应用目标、作用范围,以及其他软件开发的背景材料,需要向读者说明。说明需求之间的关系开发的软件与其他相关软件的关系。详细说明系统将实现的所有功能。)
需求设计文档(主要把握以用户需求说明书为基线的原则,主要内容与用户需求说明书类似,主要区别在于前者是外部的,后者是内部的,后者来源于前者。)
2.架构设计
1. 外形设计
1、系统结构设计:定义和设计软件的模块化,以及软件系统各模块之间的关系。
2.数据设计:定义数据库功能模块表结构。 数据库设计应考虑到未来的可扩展性。
2、详细设计:逐一给出各层次各方案的设计注意事项。
3.编码
代码规范
4.软件测试
开发者内部测试(internal testing),客户公开测试(public testing)