软件工程原型开发.ppt
《软件工程原型开发.ppt》由会员分享,可在线阅读,更多相关《软件工程原型开发.ppt(28页珍藏版)》请在冰豆网上搜索。
由安博测试空间技术中心http:
/五五章章原型开发原型开发原型是一个可实地运行的模原型是一个可实地运行的模型型,有正式产品的主要特征,有正式产品的主要特征,但不是全部特征。
但不是全部特征。
软件原型是软件系统的最初软件原型是软件系统的最初版本,以最少的费用,最短版本,以最少的费用,最短的时间开发出的、以反映最的时间开发出的、以反映最后软件的主要特征的系统。
后软件的主要特征的系统。
5.1原型的定义原型的定义原型的定义原型的定义原型开发指的是建立一个系统原型开发指的是建立一个系统的早期版本的演习的早期版本的演习(practice),它不必反映最终产品的所有性它不必反映最终产品的所有性能,而只要反映感兴趣的一些能,而只要反映感兴趣的一些方面。
方面。
原型的作用原型的作用问题:
开发初期很难确定用户问题:
开发初期很难确定用户需求规格需求规格解决:
用户与开发者之间的鸿沟解决:
用户与开发者之间的鸿沟以原型以原型(软件产品的样品软件产品的样品)为为共同语言,实现用户与开发者双共同语言,实现用户与开发者双向沟通。
向沟通。
原型模型(快速成型模型)(快速成型模型)建造建造/修改修改原型原型用户测试用户测试运行原运行原听取用听取用户意见户意见原型范型原型范型采用原型模型的软件生存周期采用原型模型的软件生存周期分析定义分析定义系统需求系统需求生成生成原型原型系统系统设计设计程序程序设计设计编码编码测试测试运运行行和维护和维护原型化原型化含原型化的含原型化的软件生存期软件生存期原型的特性原型的特性F是一个可实际工作的系统;是一个可实际工作的系统;F没有固定的生存期没有固定的生存期,结局可能是用后结局可能是用后立即被抛弃立即被抛弃,或可能成为最终系统或可能成为最终系统;F可服务于不同的目的可服务于不同的目的,从需求分析从需求分析到最终产品都可做原型到最终产品都可做原型;F建立必须快建立必须快,便宜便宜;F是包含修改、评价在内的完整重复是包含修改、评价在内的完整重复过程过程原型指“快速软件原型”5.2原型化开发的应用领域原型化开发的应用领域F需求分析和定义规格说明需求分析和定义规格说明F作为软件设计的一种工具作为软件设计的一种工具F作为一种解决不确定性的工具作为一种解决不确定性的工具F作为一种实验工具作为一种实验工具F系统开发同时系统开发同时,作为同步培训工具作为同步培训工具F作为开发方法,利用原型演化为作为开发方法,利用原型演化为最终系统最终系统F作为软件维护的辅助工具作为软件维护的辅助工具不适合原型开发的领域不适合原型开发的领域F嵌入式软件嵌入式软件F实时控制软件实时控制软件F科学数值计算软件科学数值计算软件5.3原型开发的分类原型开发的分类原型化实现技术随建立原型的原型化实现技术随建立原型的目的的不同分为:
目的的不同分为:
(1)抛弃式原型开发抛弃式原型开发
(2)演化式原型开发演化式原型开发(3)递增式原型开发递增式原型开发金融业应用实例金融业应用实例:
卢森堡国际银行卢森堡国际银行Sybase:
快速建立企业级数据仓库快速建立企业级数据仓库最最初初决决定定设设计计一一种种数数据据仓仓库库项项目目原原型型,将将开开发发范范围围限限制制在在易易于于管管理理的的状状态态,并并想想及及早早地地示示范范出出它它为为银银行行管管理理所所带带来来的的优优势势。
零零售售银银行行部部门门被被选选中中进进行行数数据据仓仓库库项项目目的的试试验验。
这这个个试试点点项项目目的的基基本本目目标标是是向向商商业业管管理理人人员员提提供供一一个个信信息息访访问问方方式式,使使他他们们可可以以对对零零售售银银行行的的产产品品销销路路、客客户户档档案案资资料料以以及及变变化化情情况况进进行行全全面面分分析析。
这这个个试试点点项项目目同同时时也也想想示示范范一一下下数数据据仓仓库库的的生生存存能能力力和和商商业业优优势势,为为以以后后更更大规模的实现打下坚实的大规模的实现打下坚实的基础。
基础。
5.4原型开发的步骤原型开发的步骤
(1)确定原型开发目标确定原型开发目标
(2)功能选择功能选择(3)原型构造原型构造(4)评价评价原型化的开发环境原型化的开发环境
(1)试验性原型试验性原型原型用来确认对需求的理解是否正确,原型用来确认对需求的理解是否正确,应在与实际产品环境相近的环境上开发应在与实际产品环境相近的环境上开发原型。
原型。
(2)试用性原型试用性原型原型用来帮助用户在试用中使自己的模原型用来帮助用户在试用中使自己的模糊的需求明确起来确,可在与实际产品糊的需求明确起来确,可在与实际产品环境完全无关的环境上开发运行。
环境完全无关的环境上开发运行。
原型化策略原型化策略原型化策略原型化策略原型化策略原型化策略F仅对屏幕的原型化仅对屏幕的原型化F使用购买的软件系统作为使用购买的软件系统作为初始模型初始模型F可行性分析中的原型可行性分析中的原型F子系统原型化子系统原型化5.5原型类型原型类型从原型所表现的产品特性出发,从原型所表现的产品特性出发,原型可分为:
原型可分为:
F界面原型界面原型F功能原型功能原型系统功能形式上的实现系统功能形式上的实现.5.65.6原型开发技术原型开发技术原型开发技术原型开发技术功能原型开发功能原型开发用户界面原型开发用户界面原型开发支持原型开发的软件工具支持原型开发的软件工具
(1)原型化工具原型化工具
(2)CASE原型化工具原型化工具支持软件工程各种方法和支持软件工程各种方法和实现的语言实现的语言(差别与发展差别与发展)原型开发语言原型开发语言:
规格说明语言规格说明语言设设计计语语言言编编程程语语言言:
支持原型开发工具,支持原型开发工具,以便原型演示以便原型演示支持支持CASE工具工具,以便以便需求分析及设计和实需求分析及设计和实现的正确性证明现的正确性证明支持优化编译器,产支持优化编译器,产生更有效的实现生更有效的实现
(1)原型化工具原型化工具面向应用的第四代语言面向应用的第四代语言(4GL)DelphiVBPowerBuilder等可执行规格说明语言可执行规格说明语言PAISLey语言Gist语言等
(2)CASE
(2)CASE
(2)CASE原型化工具原型化工具原型化工具原型化工具原型化工具原型化工具将原型化工具和支持其它将原型化工具和支持其它软软工工程程方方法法的的CASE工工具具集集成成在在一一起起,使使用用GUI技技术术和和仿仿真真模模拟拟技技术术来来快快速速生生成成原型原型.支持快速原型方法的支持快速原型方法的支持快速原型方法的支持快速原型方法的支持快速原型方法的支持快速原型方法的CASECASECASE工具工具工具工具工具工具用户界面自动生成工具用户界面自动生成工具面向数据库应用的开发工具面向数据库应用的开发工具4GL环境提供的环境提供的CASE工具工具可重用工具可重用工具浪潮集团浪潮集团“新华书店信息系统新华书店信息系统”中的中的快速原形实现快速原形实现软软件件公公司司积积累累的的大大量量面面向向对对象象软软件件组组件件,在在面面向向对对象象编编程程过过程程中中可可以以得得到到充充分分的的利利用用,运运用用PB6PB6和和JavaJava语语言言,随随心心所所欲欲调调用用原原有有的的组组件件,在在PowerdesignerPowerdesigner的的物物理理数数据据模模型型支支持持下下,实现快速原型。
实现快速原型。
原型化工具和原型化工具和CASE原型化原型化工具的特点:
工具的特点:
F以自动生成原型为目的以自动生成原型为目的F不用编程或基本不用编程不用编程或基本不用编程5.7原型法效果原型法效果F保证产品有较好的可维护性保证产品有较好的可维护性F改善用户与开发人员的信息交流和改善用户与开发人员的信息交流和思想沟通,给用户修改的机会思想沟通,给用户修改的机会F减少或消灭下游返工的可能,改进减少或消灭下游返工的可能,改进了瀑布模型的弊病了瀑布模型的弊病F原型系统可作为培训环境原型系统可作为培训环境,有利于有利于用户培训和开发同步。
用户培训和开发同步。
F开发成本降低,周期缩短。
开发成本降低,周期缩短。
5.8原型法局限性原型法局限性F需工具支持,否则开发工作量大需工具支持,否则开发工作量大F只只能能缩缩短短用用户户与与软软件件需需求求定定义义间间的的距距离离,并并不不能消灭这个距离;能消灭这个距离;F考考虑虑你你的的项项目目是是否否适适合合用用原原型型法法来来开开发发时时,有有几几个个因因素素是是要要权权衡衡的的。
Boehm,Gray,和和Seewaldt(1984)研研究究了了项项目目是是否否适适合合用用原原型型来来开开发发的的问问题题。
他他们们发发现现用用原原型型法法开开发发项项目目,可可以以少少花花费费45%的的努努力力,还还可可以以减减少少40%的的代代码码。
而而且且,开开发发出出的的产产品品的的速速度度和和效效率率与与用用传传统统方方法法开开发发出出的差不多。
的差不多。
软件工程课程设计题目参考软件工程课程设计题目参考题目题目每组拟定人数每组拟定人数商场管理系统商场管理系统46酒店管理系统酒店管理系统46旅游管理系统旅游管理系统46小区物业管理系统小区物业管理系统46工厂网络管理系统工厂网络管理系统6688家庭安全报警系统家庭安全报警系统2244政府机构管理系统政府机构管理系统6688教学管理系统教学管理系统44661.1.可行性研究报告可行性研究报告2.2.项目开发计划项目开发计划3.3.需求规格说明书需求规格说明书4.4.概要设计说明书概要设计说明书5.5.详细设计说明书详细设计说明书6.6.数据库设计说明书数据库设计说明书提交文档提交文档:
软件工程课程设计题目参考软件工程课程设计题目参考软件工程课程设计题目为帮助学员按软件工程课程设计题目为帮助学员按前面学习的知识作练习用,学员可前面学习的知识作练习用,学员可以自行拟自己熟悉的课题练习,方以自行拟自己熟悉的课题练习,方便找资料或调查。
要求用规范文档便找资料或调查。
要求用规范文档写出,可行性行报告,需求报告。
写出,可行性行报告,需求报告。