为什么要使用软件开发模型
一、有助于按照现实或者实际情况进行直观的描述。
二、能够规定软件或者模型的结构,行为,属性。
三、能够指导软件构造的模板。
四、对决策进行文档化当然建模并不只适用于大的系统,甚至像非常小的一个应用,我们都可以建模,在建模中受益,然而越大的软件,功能越杂,业务越不清晰,从而阻挠软件开发者的思路和效率。
在这种情况下,我们使用建模的重要性就越大,一个很简单的原因是:因为不能理解一个很复杂而庞大的软件工程,所以要对他建模 。
而且人们对复杂的事物或者问题的理解是有局限的,人们总是习惯去理解 简单易懂的东西。
所以通过建模可以 缩小研究范围,只着重研究其很小的一部分功能,这就要求了一个复杂的软件系统“分而治之”,从而通过建模简单化。
从而你会发现其实很复杂的系统软件或者工程总是变得很简单,解决了这小部分的简单问题,就形成了复杂而庞大的软件或者工程。
建模能帮助开发组更好地进行系统规划,并帮助他们进行架构软件,使用开发效率提高。
如果不建模,项目越复杂,就越会失败或者出现错误的东西。
为什么要使用软件开发模型
展开全部一、有助于按照现实或者实际情况进行直观的描述。
二、能够规定软件或者模型的结构,行为,属性。
三、能够指导软件构造的模板。
四、对决策进行文档化当然建模并不只适用于大的系统,甚至像非常小的一个应用,我们都可以建模,在建模中受益,然而越大的软件,功能越杂,业务越不清晰,从而阻挠软件开发者的思路和效率。
在这种情况下,我们使用建模的重要性就越大,一个很简单的原因是:因为不能理解一个很复杂而庞大的软件工程,所以要对他建模 。
而且人们对复杂的事物或者问题的理解是有局限的,人们总是习惯去理解 简单易懂的东西。
所以通过建模可以 缩小研究范围,只着重研究其很小的一部分功能,这就要求了一个复杂的软件系统“分而治之”,从而通过建模简单化。
从而你会发现其实很复杂的系统软件或者工程总是变得很简单,解决了这小部分的简单问题,就形成了复杂而庞大的软件或者工程。
建模能帮助开发组更好地进行系统规划,并帮助他们进行架构软件,使用开发效率提高。
如果不建模,项目越复杂,就越会失败或者出现错误的东西。
...
软件体系结构的研究范畴有哪些?请举例加以说明!
软件体系结构的形式化方法研究软件体系结构研究如果仅仅停留在非形式化的框图阶段,已经难以适应进一步发展的需要。
为支持基于体系结构的开发,需要有形式化建模符号、体系结构说明的分析与开发工具。
从软件体系结构研究的现状来看,在这一领域近来已经有不少进展,其中比较有代表性的是美国卡耐基梅隆大学(Carnegie Mellon University)的Robert J.A11en于l997年提出的Wright系统。
Wright是-种结构描述语言,该语言基于一种形式化的、抽象的系统模型,为描述和分析软件体系结构和结构化方法提供了一种实用的工具。
Wright主要侧重于描述系统的软件构件和连接的结构、配置和方法。
它使用显式的、独立的连接模型来作为交互的方式,这使得该系统可以用逻辑谓词符号系统,而不依赖特定的系统实例来描述系统的抽象行为。
该系统还可以通过一组静态检查来判断系统结构规格说明的一致性和完整性。
从这些特性的分析来说,Wright系统的确适用于对大型系统的描述和分析。
软件体系结构的建模研究研究软件体系结构的首要问题是如何表示软件体系结构,即如何对软件体系结构建模。
根据建模的侧重点的不同,可以将软件体系结构的模型分为5种:结构模型、框架模型、动态模型、过程模型和功能模型。
在这5个模型中,最常用的是结构模型和动态模型。
(1)结构模型这是一个最直观、最普遍的建模方法。
这种方法以体系结构的构件、连接件和其他概念来刻画结构,并力图通过结构来反映系统的重要语义内容,包括系统的配置、约束、隐含的假设条件、风格、性质。
研究结构模型的核心是体系结构描述语言。
管道/过滤器风格的体系结构(2)框架模型框架模型与结构模型类似,但它不太侧重描述结构的细节而更侧重于整体的结构。
框架模型主要以一些特殊的问题为目标建立只针对和适应该问题的结构。
(3)动态模型动态模型是对结构或框架模型的补充,研究系统的"大颗粒"的行为性质。
例如,描述系统的重新配置或演化。
动态可能指系统总体结构的配置、建立或拆除通信通道或计算的过程。
这类系统常是激励型的。
(4)过程模型过程模型研究构造系统的步骤和过程。
因而结构是遵循某些过程脚本的结果。
(5)功能模型该模型认为体系结构是由一组功能构件按层次组成,下层向上层提供服务。
它可以看作是一种特殊的框架模型。
这5种模型各有所长,也许将5种模型有机地统一在一起,形成一个完整的模型来刻画软件体系结构更合适。
例如,Kruchten在1995年提出了一个"4+1"的视角模型。
"4+1"模型从5个不同的视角包括逻辑视角、过程视角、物理视角、开发视角和场景视角来描述软件体系结构。
每一个视角只关心系统的一个侧面,5个视角结合在一起才能够反映系统的软件体系结构的全部内容。
"4+1"模型如图1所示。
图1 "4+1"模型发展基于体系结构的软件开发模型软件开发模型是跨越整个软件生存周期的系统开发、运行、维护所实施的全部工作和任务的结构框架,给出了软件开发活动各阶段之间的关系。
目前,常见的软件开发模型大致可分为三种类型:(1)以软件需求完全确定为前提的瀑布模型。
(2)在软件开发初始阶段只能提供基本需求时采用的渐进式开发模型,如螺旋模型等。
(3)以形式化开发方法为基础的变换模型。
所有开发方法都是要解决需求与实现之间的差距。
但是,这三种类型的软件开发模型都存在这样或那样的缺陷,不能很好地支持基于软件体系结构的开发过程。
因此,研究人员在发展基于体系结构的软件开发模型方面做了一定的工作。
例如,为了形象地表示体系结构的生命周期,北京邮电大学的周莹新博士建立了一个软件体系结构的生命周期模型,该模型如图2所示。
数据抽象和面向对象风格的体系结构图2 软件体系结构的生命周期模型软件产品线体系结构的研究软件体系结构的开发是大型软件系统开发的关键环节。
体系结构在软件生产线的开发中具有至关重要的作用,在这种开发生产中,基于同一个软件体系结构,可以创建具有不同功能的多个系统。
在软件产品族之间共享体系结构和一组可重用的构件,可以增加软件工程和降低开发和维护成本。
一个产品线代表着一组具有公共的系统需求集的软件系统,它们都是根据基本的用户需求对标准的产品线构架进行定制,将可重用构件与系统独有的部分集成而得到的。
采用软件生产线式模式进行软件生产,将产生巨型编程企业。
但目前生产的软件产品族大部分是处于同一领域的。
什么是面向对象的编程方法
面向对象 要理解其实也不难 跟面向过程比较一下、 我打个比方, 你要开车去新疆。
用面向过程来说, 你首先要 打开车门 发动汽车 经过哪哪哪 路途中停了几次等等等最后到了新疆, 这是就是面向过程。
面向对象 你只需要对车说,GO 我们去新疆, 车是怎么到的,那是车的事、 我们不用去管。
总之最后他到新疆了。
这就是面向对象 我这样解释你能明白吗?
转载请注明出处51数据库 » 软件工程 面向对象建模的三大模型之间的关
a神话业务客服