软件工程概论,过程和生命周期的建模简答题:试说明“软件生存期”...
展开全部 软件与任何一个事物一样,有它的孕育、诞生、成长、成熟、衰亡的生存过程。
这就是软件的生存期。
它分为6个阶段:(1) 软件项目计划 :在这一步要确定软件工作范围,进行软件风险分析,预计软件开发所需要的资源,建立成本与进度的估算。
根据有关成本与进度的限制分析项目的可行性。
(2) 软件需求分析和定义 :在这一步详细定义分配给软件的系统元素。
可以用以下两种方式中的一种对需求进行分析和定义。
一种是正式的信息域分析,可用于建立信息流和信息结构的模型,然后逐渐扩充这些模型成为软件的规格说明。
另一种是软件原型化方法,即建立软件原型,并由用户进行评价,从而确定软件需求。
(3) 软件设计 :软件的设计过程分两步走。
第一步进行概要设计,以结构设计和数据设计开始,建立程序的模块结构,定义接口并建立数据结构。
第二步做详细设计,考虑设计每一个模块部件的过程描述。
经过评审后,把每一个加细的过程性描述加到设计规格说明中去。
(4) 程序编码 :在设计完成之后,用一种适当的程序设计语言或CASE工具生成源程序。
应当就风格及清晰性对代码进行评审,而且反过来应能直接追溯到详细设计描述。
(5) 软件测试 :单元测试检查每一单独的模块部件的功能和性能。
组装测试提供了构造软件模块结构的手段,同时测试其功能和接口。
确认测试检查所有的需求是否都得到满足。
在每一个测试步骤之后,要进行调试,以诊断和纠正软件的故障。
(6) 软件维护 :为改正错误,适应环境变化及功能增强而进行的一系列修改活动。
与软件维护相关联的那些任务依赖于所要实施的维护的类型。
...
为什么要使用软件开发模型
一、有助于按照现实或者实际情况进行直观的描述。
二、能够规定软件或者模型的结构,行为,属性。
三、能够指导软件构造的模板。
四、对决策进行文档化当然建模并不只适用于大的系统,甚至像非常小的一个应用,我们都可以建模,在建模中受益,然而越大的软件,功能越杂,业务越不清晰,从而阻挠软件开发者的思路和效率。
在这种情况下,我们使用建模的重要性就越大,一个很简单的原因是:因为不能理解一个很复杂而庞大的软件工程,所以要对他建模 。
而且人们对复杂的事物或者问题的理解是有局限的,人们总是习惯去理解 简单易懂的东西。
所以通过建模可以 缩小研究范围,只着重研究其很小的一部分功能,这就要求了一个复杂的软件系统“分而治之”,从而通过建模简单化。
从而你会发现其实很复杂的系统软件或者工程总是变得很简单,解决了这小部分的简单问题,就形成了复杂而庞大的软件或者工程。
建模能帮助开发组更好地进行系统规划,并帮助他们进行架构软件,使用开发效率提高。
如果不建模,项目越复杂,就越会失败或者出现错误的东西。
uml与软件工程之间有什么样的关系?
展开全部 软件工程学习心得在本学期的软件工程课程的学习中,我们学习了十一章的内容。
第一章软件与软件工程的概念,这一章主要讲解的是一些概念性和基础性的内容,例如软件的概念、特性,软件危机的主要表现,软件工程的概念以及软件生存期、典型生存期模型等等。
第二章软件工程方法与工具,这一章主要对软件工程方法进行介绍,包括三种方法:传统方法、面向对象方法、形式化方法。
还引出了工具UML。
第三章软件需求获取与结构化分析方法,本章详细介绍了需求获取与需求分析阶段的任务以及结构化分析方法,画分层的数据流图、E-R图以及状态图式本节的重点。
第四章结构化分析方法,这一章重点讲解了使用变换型映射方法和事务型映射方法生成初始的模块结构以及模块结构的改进。
第五章编码,这一章重点讲解了编码的风格及规范,还告诉我们编码规范说带来的好处,并告诫我们将来一点要形成好的编码风格。
第六章软件测试方法,本章讲解了软件测试相关的概念及重要性,软件测试与开发各个阶段的关系;还介绍了白盒测试技术以及黑河测试技术。
第七章统一建模语言UML概述,本章详细介绍了UML的基本模式、事物、关系及建模时用到的各种图进行了介绍。
第八章面向对象分析,这一章主要讲解了面向对象分析的3种模型,包括功能模型、静态模型和动态模型。
第九章软件体系结构与设计模式,本章对软件体系结构的基本概念、典型风格等进行了讲解。
第十章面向对象设计,本章的重点是对面向对象分析时建立的对象模型进行调整和细化。
第十一章软件维护,本章主要介绍软件维护的任务、软件维护活动以及软件维护方法进行了介绍。
要学习软件工程,学会如何系统的思考,以及养成良好的编码习惯,想学好软件工程,就必须知道软件工程的目标、过程和原则: 软件工程目标:生产具有正确性、可用性以及开销合宜的产品。
正确性指软件产品达到预期功能的程度。
可用性指软件基本结构、实现及文档为用户可用的程度。
开销合宜是指软件开发、运行的整个开销满足用户要求的程度。
这些目标的实现不论在理论上还是在实践中均存在很多待解决的问题,它们形成了对过程、过程模型及工程方法选取的约束。
软件工程过程:生产一个最终能满足需求且达到工程目标的软件产品所需要的步骤。
软件工程过程主要包括开发过程、运作过程、维护过程。
它们覆盖了需求、设计、实现、确认以及维护等活动。
需求活动包括问题分析和需求分析。
问题分析获取需求定义,又称软件需求规约。
需求分析生成功能规约。
设计活动一般包括概要设计和详细设计。
概要设计建立整个软件系统结构,包括子系统、模块以及相关层次的说明、每一模块的接口定义。
详细设计产生程序员可用的模块说明,包括每一模块中数据结构说明及加工描述。
实现活动把设计结果转换为可执行的程序代码。
确认活动贯穿于整个开发过程,实现完成后的确认,保证最终产品满足用户的要求。
维护活动包括使用过程中的扩充、修改与完善。
伴随以上过程,还有管理过程、支持过程、培训过程等。
软件工程的原则是指围绕工程设计、工程支持以及工程管理在软件开发过程中必须遵循的原则。
我们学习了详细设计的方法,其原则是过程描述是否易于理解、复审和维护,进而过程描述能够自然地转换成代码,并保证详细设计与代码完全一致。
包括程序流程图、N-S图、PAD图、HIPO图程序流程图:程序流程图又称之为程序框图,它是软件开发者最熟悉的一种算法表达工具。
它独立于任何一种程序设计语言,比较直观和清晰地描述过程的控制流程,易于学习掌握。
在流程图中只能使用下述的五种基本控制结构:顺序型;选择型;while型循环;until型循环;多情况型选择。
N-S图:一种符合结构化程序设计原则的图形描述工具,称为盒图,又称为N-S图。
在N-S图中,为了表示五种基本控制结构,规定了五种图形构件。
顺序型;选择型;WHILE重复型;UNTIL重复型;多分支选择型。
PAD图:它是用结构化程序设计思想表现程序逻辑结构的图形工具。
PAD也设置了五种基本控制结构的图示,并允许递归使用。
HIPO图:HIPO图是由一组IPO图加一张HC图组成。
它是美国IBM公司在软件设计中使用的主要表达工具。
HC图既是层次图,用于表示软件的分层结构。
HC图中的每一个模块,均可用一张IPO图来描述。
IPO 图由输入、处理和输出三个框组成,需要时还可以增加一个数据文件框,这种图形的优点,是能够直观地显示输入—处理—输出三者之间的联系。
还有测试方法:按照测试过程是否在实际应用环境中来分,有静态分析与动态测试。
测试方法有分析方法(包括静态分析法与白盒法)与非分析方法(称黑盒法)。
静态分析技术:不执行被测软件,可对需求分析说明书、软件设计说明书、源程序做结构检查、流程分析、符号执行来找出软件错误。
动态测试技术:当把程序作为一个函数,输入的全体称为函数的定义域,输出的全体称为函数的值域,函数则描述了输入的定义域与输出值域的关系。
还学习了其他很多工具、语言、方法等,虽然不是都学得很透彻,但我相信在今后的学习中一...
UML在软件开发中各个阶段的作用和意义
展开全部 统一建模语言UML 软件工程领域在1995年至1997年取得了前所未有的进展,其成果超过软件工程领域过去15年来的成就总和。
其中最重要的、具有划时代重大意义的成果之一就是统一建模语言(UML:Unified Modeling Language)的出现。
在世界范围内,至少在近10年内,UML将是面向对象技术领域内占主导地位的标准建模语言。
采用UML作为我国统一的建模语言是完全必要的:首先,过去数十种面向对象的建模语言都是相互独立的,而UML可以消除一些潜在的不必要的差异,以免用户混淆;其次,通过统一语义和符号表示,能够稳定我国的面向对象技术市场,使项目根植于一个成熟的标准建模语言,从而可以大大拓宽所研制与开发的软件系统的适用范围,并大大提高其灵活程度。
统一建模语言(UML)是用来对软件密集系统进行描述、构造、视化和文档编制的一种语言。
首先,也是最重要的一点,统一建模语言融合了Booch、OMT和OOSE方法中的概念,它是可以被上述及其他方法的使用者广泛采用的一门简单、一致、通用的建模语言。
其次,统一建模语言扩展了现有方法的应用范围。
特别值得一提的是,UML的开发者们把并行分布式系统的建模作为UML的设计目标,也就是说,UML具有处理这类问题的能力。
第三,统一建模语言是标准的建模语言,而不是一个标准的开发流程。
虽然UML的应用必然以系统的开发流程为背景,但根据我们的经验,不同的组织,不同的应用领域需要不同的开发过程。
举个例子来说,开发错综复杂的软件是非常有趣的工作,但开发这种软件与构造严格实时的航空电子系统是大不一样的,后者是性命攸关的大事。
因此我们首先把精力集中在设计通用的元模型上(统一不同方法的语义),其次是建立通用的表示法(提供对这些语义的形象化的表达)。
虽然UML的开发者们将继续倡导从用例驱动到体系结构为中心最后反复改进、不断添加的软件开发过程,但实际上设计标准的开发流程并不是非常必要的。
UML是一种定义良好、易于表达、功能强大且普遍适用的建模语言。
它溶入了软件工程领域的新思想、新方法和新技术。
它的作用域不限于支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。
面向对象技术和UML的发展过程可用上图来表示,标准建模语言的出现是其重要成果。
在美国,截止1996年10月,UML获得了工业界、科技界和应用界的广泛支持,已有700多个公司表示支持采用UML作为建模语言。
1996年底,UML已稳占面向对象技术市场的85%,成为可视化建模语言事实上的工业标准。
1997年11月17日,OMG采纳UML 1.1作为基于面向对象技术的标准建模语言。
UML代表了面向对象方法的软件开发技术的发展方向,具有巨大的市场前景,也具有重大的经济价值和国防价值。
标准建模语言UML的内容 首先,UML融合了Booch、OMT和OOSE方法中的基本概念,而且这些基本概念与其他面向对象技术中的基本概念大多相同,因而,UML必然成为这些方法以及其他方法的使用者乐于采用的一种简单一致的建模语言;其次,UML不仅仅是上述方法的简单汇合,而是在这些方法的基础上广泛征求意见,集众家之长,几经修改而完成的,UML扩展了现有方法的应用范围;第三,UML是标准的建模语言,而不是标准的开发过程。
尽管UML的应用必然以系统的开发过程为背景,但由于不同的组织和不同的应用领域,需要采取不同的开发过程。
作为一种建模语言,UML的定义包括UML语义和UML表示法两个部分。
(1) UML语义 描述基于UML的精确元模型定义。
元模型为UML的所有元素在语法和语义上提供了简单、一致、通用的定义性说明,使开发者能在语义上取得一致,消除了因人而异的最佳表达方法所造成的影响。
此外UML还支持对元模型的扩展定义。
(2) UML表示法 定义UML符号的表示法,为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。
这些图形符号和文字所表达的是应用级的模型,在语义上它是UML元模型的实例。
标准建模语言UML的重要内容可以由下列五类图(共9种图形)来定义: ·第一类是用例图,从用户角度描述系统功能,并指出各功能的操作者。
·第二类是静态图(Static diagram),包括类图、对象图和包图。
其中类图描述系统中类的静态结构。
不仅定义系统中的类,表示类之间的联系如关联、依赖、聚合等,也包括类的内部结构(类的属性和操作)。
类图描述的是一种静态关系,在系统的整个生命周期都是有效的。
对象图是类图的实例,几乎使用与类图完全相同的标识。
他们的不同点在于对象图显示类的多个对象实例,而不是实际的类。
一个对象图是类图的一个实例。
由于对象存在生命周期,因此对象图只能在系统某一时间段存在。
包由包或类组成,表示包与包之间的关系。
包图用于描述系统的分层结构。
·第三类是行为图(Behavior diagram),描述系统的动态模型和组成对象间的交互关系。
其中状态图描述类的对象所有可能的状态以及事件发生时状态的转移条件。
通常,状态图是对类图的补充。
在实用上并不需要为所有的类画状态图,仅...
std是什么意思
展开全部 1、英文缩写,根据不同的全称解释有不同的意思: (1)State Transition Diagram 状态迁移图,主要应用于软件工程建模。
(2)subscriber trunk dialing 用户中继拨号,用户长途拨号。
(3)在C++语言中,std其实就是standard标准的意思. 2、常见的英文缩写: (1)CEO(Chief Executive Officer),即首席执行官,源自美国20世纪60年代进行公司治理结构改革创新时。
(2)IT是指信息技术,即英文Information Technology 的缩写。
(3)DIY是每个电脑爱好者熟悉的新名词,是英文Do It Yourself的首字母缩写,自己动手制作的意思,硬件爱好者也被俗称DIYer。
(4)XP,是英文Experience(体验)的缩写, 自从微软发布Office XP后,成为软件流行命名概念。
(5)ID是英文IDentity的缩写,ID是身份标识号码的意思。
(6)为了使Internet上的众多电脑主机在通信时能够相互识别,Internet上的每一台主机都分配有一个唯一的32位地址,该地址称为IP地址,也称作网际地址。
IP地址由4个数组成,每个数可取值0~255,各数之间用一个点号“.” 。
(7)VIP是英文Very Important Person的缩写,就是贵宾的意思。
...
续写不尽的未来44151296