V模型 (软件开发)

✍ dations ◷ 2024-12-22 23:06:37 #软件工程,软件开发

软件开发中的V模型是一种延伸自瀑布模型的软件开发过程,是通用V模型的一个例子。V模型的软件开发不是以直线的方式进行,其过程在源代码阶段之前逐步往下,而在源代码阶段之后逐步往上,形成了V字形。V模型指出了软件开发中的各阶段以及其对应软件测试阶段之间的关系。横轴表示时间或是专案的完成度,而纵轴表示抽象的程度(范围越大,越抽象的在越上方)。

需求分析阶段是专案定义阶段中的第一个阶段,有些文献也称为是验证(verification)阶段的第一个阶段。此阶段要分析用户的需要,整理出系统的需求(英语:software requirements)(功能需求)。此阶段着重的是建构出要实现的理想系统,但不用决定软件的设计方式。一般而言,此阶段会和用户面谈,建立用户需求文件(user requirements document)。

用户需求文件会说明系统的功能、界面、性能、资料、安全性等,会列出客户预期的需求。企业分析师会用这个,配合其系统性的了解,来和用户沟通。用户会仔细的确认这些文件,因为文件是系统设计师的指南,也会在这个阶段规划用户验收测试。

在收集用户需求时,有许多不同的方式,常见的有访问、问卷、文件分析、观察、利用可丢弃的原型、用例等。

系统设计(英语:Systems design)是系统设计师根据用户需求文件,分析并理解要开发系统的业务流程的阶段。此阶段会列出要实现用户需求需要的技术以及可能性。若有些用户需求不可行,会反应给用户,针对此需求的最后处理方式也会列在用户需求文件中。

此阶段也会产生软件规格文件(software specification document),是开发阶段的蓝图,其中会包括大致的系统架构、指令选单结构、数据结构等,其中也会包括业务场景、样本视窗以及报表以帮助理解。此阶段也会产生实体图(entity diagrams)、数据字典等技术文件,并且整理系统测试的文件。

这个阶段会设计计算机系统结构及软件架构,也称为高阶设计。选择架构的基准是应该可以实现所有模组的列表、模组的简单机能、界面关系、相依性、数据库、数据库表、架构图、技术细节等。在这个阶段也会设计整合测试的内容。

模组设计阶段也称为低阶设计。会将设计的系统拆解为较小的单元或是模组,也会说明每一部分的内容,让程式设计者可以直接写程式。低阶设计文件或是程式规格书会包括模组的逻辑细节,可能会以伪代码的方式表示,也会有以下的内容:

单元测试会在此阶段进行规划。

在V模型中,验证(或专案定义)阶段中的每一阶段,在确认阶段都会有对应旳阶段。以下是V模型的验证阶段,不过也会使用其他的名称。

在V模型中,在模组设计阶段就会规划单元测试计划(Unit Test Plans)。单元测试计划的目的是要消除程式码层级及单元层级的错误。单元是程式中可以独立存在的最小程式体,例如程式模组。单元测试是验证最小的程式体在和其他程式隔离的情形下,是否可以正常运作。

整合测试的计划会在架构设计阶段订定。整合测试会验证这些独立创建、独立测试过的模组是否可以共存,互相交换讯息。整合测试的测试结果常会分享给用户的团队。

系统测试计划会在系统设计的阶段订定。系统测试不同于单元测试及整合测试。系统测试计划会由用户的团队来进行。系统测试会确保所开发的软件符合预期的需求,会测试整个软件的机能、相互依存以及通讯。系统测试也会验证系统符合机能需求以及非机能需求。像负载测试、性能测试、压力测试及回归测试等,都是系统测试的一部分。

用户验收测试(User Acceptance Test)计划会在需求分析阶段就订定。测试计划是由企业用户来进行。用户验收测试会在用户的环境下进行,设法模拟实际产品的环境,也会使用实际的数据。用户验收测试的目的是要确认所提供的系统符合客户需求,而且系统已可以在实际环境下使用。

敏捷软件开发倡议者对V模型有所批评,因为以下的原因,V模型不适合作为软件开发的模型:

V模型的支持者指出V模型也会逐渐进步,在开发过程中也可以有可变性,符合敏捷开发的原则。支持者认为V模型强调纪律、也提倡精细的设计、开发以及文件,这些都是要建构稳定软件产品时,必要的元素。近年来,V模型已用在医疗软件的开发上。

相关

  • 约翰·E·苏尔斯顿约翰·爱德华·苏尔斯顿爵士,CH,FRS(英语:Sir John Edward Sulston,1942年3月27日-2018年3月6日),英国科学家,因发现器官发育和细胞程序性细胞死亡(细胞程序化凋亡)的遗传调控机理,与悉
  • 檀君纪元檀君纪元,简称檀纪,是一个以朝鲜半岛历史为基准的纪年单位,像西方惯用的“公元”。计算方法是在公元年份加上2333,便是该年份的檀纪。《三国遗事》以下,各种史料建国年度没固定。
  • 老约翰·施特劳斯约翰·巴普蒂斯特·施特劳斯(德语:Johann Baptist Strauss,1804年3月14日-1849年9月25日),通常被称作约翰·施特劳斯一世或老约翰·施特劳斯,奥地利作曲家,和约瑟夫·兰纳一起普及了
  • 抗美援朝纪念馆抗美援朝纪念馆,位于中国辽宁省丹东市,建于1958年,其前身是1953年建立的辽东省地质博物馆筹备处。该馆除陈列抗美援朝志愿军的一些列历史文物外,还有一些其他时期的历史文物。纪
  • 香料贸易香料贸易在人类历史上有着举足轻重的作用,尤其是中世纪的欧洲,对香料的渴望直接催生了地理大发现。从遥远的东方运送香料到欧洲的贸易线路被称为香料之路。香料作为当时最贵重
  • 手牵手 (歌曲)《手牵手》(英语:Hand in Hand)是一首抗击SARS的公益单曲,于2003年5月21日发行。该歌曲由音乐人王力宏、陶喆、陈镇川共同创作,并由86位艺人合唱。2002年11月16日,SARS在中国广东
  • 心理卫生学院心理卫生学院(IMH,Institute of Mental Health)新加坡专门治疗精神病患的医学单位。其设立于1993年,位于万国的万国青医学园,占地450,000平方米。 心理卫生学院原以板桥医院(Wood
  • 锺城站锺城站(韩语:종성역)是朝鲜民主主义人民共和国咸镜北道稳城郡锺城劳动者区的一个铁路车站,属于咸北线和东浦线。咸北线东浦线
  • 刘纲纪刘纲纪(1933年1月17日-2019年12月1日),男,贵州普定人,中国马克思主义哲学家、美学家。1933年1月17日出生于贵州省普定县号营村。1952年考入北京大学哲学系,1956年毕业,获哲学学士学
  • 乌利希·慈运理乌利希·慈运理(慈运理又译作茨温利、兹文里,德语:Huldrych Zwingli,英语:Ulrich Zwingli,1484年1月1日-1531年10月11日),基督教新教神学家,瑞士宗教改革运动的领导者。慈运理生于瑞士