软件开发生命周期决定了开发应用程序或软件效率所要执行的一系列步骤.在本章中,我们将讨论SDLC中定义的阶段.每个阶段都有自己的流程和可交付成果进入下一阶段.
可行性研究
SDLC的第一阶段是需求收集的.收集完需求后,团队会提出一个粗略的软件流程计划.在此步骤中,团队分析是否可以制作软件以满足用户的所有要求.如果该项目在财务上,实际上和技术上都是可行的,那么该组织就会被发现.有许多算法可用,它们可以帮助开发人员确定软件项目的可行性.
系统分析
在这一步,开发人员决定他们的计划路线图,并尝试提出适合该项目的最佳软件模型.系统分析包括了解软件产品限制,学习系统相关问题或在现有系统中进行的更改,识别和解决项目对组织和人员等的影响.项目团队分析项目和计划的范围相应的时间表和资源.
软件设计
下一步是将需求和分析的全部知识带到桌面并设计软件产品.来自用户的输入和在需求收集阶段收集的信息是该步骤的输入.该步骤的输出以两种设计的形式出现; 逻辑设计和物理设计.工程师生成元数据和数据字典,逻辑图,数据流图和某些情况下的伪代码.
编码
此步骤也是已知的作为编程阶段.软件设计的实现始于以合适的编程语言编写程序代码并有效地开发无错误的可执行程序.
测试
估计说应该测试整个软件开发过程的50%.错误可能会破坏软件从关键级别到自己的删除.软件测试在开发人员编写代码时完成,并且由各种代码级别的测试专家进行全面测试,例如模块测试,程序测试,产品测试,内部测试以及在用户端测试产品.早期发现错误及其补救措施是开发可靠软件的关键.
集成
软件可能需要与库,数据库集成和其他程序. SDLC的这一阶段涉及软件与外部世界实体的集成.
实施
实施或部署意味着在用户机器上安装软件.有时,软件需要在用户端进行安装后配置.测试软件的可移植性和适应性,并在实施过程中解决集成相关问题.
软件测试生命周期
软件测试生命周期(STLC)包括以特定方式执行的所有步骤,以确保满足质量目标,每个步骤都有特定的目标和可交付成果.
STLC用于提高软件产品的质量和使其能够满足业务需求以实现某些目标.
软件测试生命周期的不同阶段如下:
需求阶段
测试计划
测试分析
测试设计阶段
测试实施
测试执行阶段
测试关闭阶段
需求阶段
这是第一个软件测试生命周期阶段.在此阶段,测试人员的工作是分析需求.需求分析有多种方法,例如与业务人员,团队成员进行头脑风暴会议,并尝试确定需求是否可测试.
此阶段确定测试的范围.如果测试团队发现任何无法测试的功能,那么应将其传达给客户.
测试计划
此阶段,测试人员确定有助于实现测试目标的活动和资源.
定义了各种指标,并且有可用于确定和跟踪这些指标的方法.测试计划还包括确定测试评估的关键性能指标.
测试分析
此阶段确定必须测试的准则.它包括使用需求文档确定测试条件,涉及的任何风险以及其他测试标准.
使用各种因素来找出测试条件 :
产品复杂性
测试深度
风险涉及
需要技能
测试团队成员的知识
测试管理
可用性利益相关者
测试条件应以详细的方式编写.
让我们来一个示例的.对于在线销售产品的网站,测试条件是客户应该能够进行在线支付.您可以添加详细条件,例如,使用信用卡,NEFT转账,借记卡或网上银行付款应该是可行的.
编写详细测试条件的优点是它增加了范围测试因为测试用例通常是根据测试条件编写的.它允许编写更详细的测试用例.它还有助于确定何时停止测试软件产品的条件.
测试设计阶段
此阶段确定测试的方式执行.
将测试条件分解为多个子条件以增加其覆盖范围.
获取测试数据.
设置测试环境.
获取需求可跟踪性指标.
创建测试覆盖率指标.
测试实施阶段
此阶段包括根据定义的测试条件和指标创建详细的测试用例.
确定测试用例的优先顺序.
用于回归的测试用例.
确保测试用例的正确性.
在实际执行开始之前签署测试用例.
测试执行阶段
T.他的软件测试生命周期阶段涉及测试用例的实际执行.
执行测试用例.
记录缺陷.
检查可追踪性指标以跟踪进度.
测试关闭
此阶段包括检查测试是否完成.
检查是否所有测试用例执行并打开缺陷.
记下经验教训.
关闭测试阶段.