用户登录
用户注册

分享至

软件体系结构建模的重要性 建模的重要性

  • 作者: 千里之外51
  • 来源: 51数据库
  • 2020-04-14

软件体系结构建模的重要性

软件体系结构的建模是怎样的?

一、软件体系结构和框架的定义软件体系结构的英文单词是“achitectue”.Achitectue的基本词义是建筑、建筑学、建筑风格。

软件体系结构虽然根植于软件工程,但还处于一个研究发展的阶段,迄今为止还没有一个为大家所公认的定义。

《设计模式》中对框架的定义是框架就是一组相互协作的类,对于特定的一类软件,框架构成了一种可重用的设计。

软件框架是项目软件开发过程中提取特定领域软件的共性部分形成的体系结构,不同领域的软件项目有着不同的框架类型。

框架的作用在于:由于提取了特定领域软件的共性部分,因此在此领域内新项目的开发过程中代码不需要从头编写,只需要在框架的基础上进行一些开发和调整便可满足要求;对于开发过程而言,这样做会提高软件的质量,降低成本,缩短开发时间,使开发越做越轻松,效益越做越好,形成一种良性循环。

框架不是现成可用的应用系统。

是一个半成品,需要后来的开发人员进行二次开发,实现具体功能的应用系统。

框架不是“平台”,平台概念比较模糊可以是一种操作系统,一种应用服务器,一种数据库软件,一种通讯中间件等地那个,因此平台在应用平台主要指提供特定服务的系统软件,而框架更侧重了设计,开发过程,或者可以说,框架通过调用平台提供的服务而起的作用。

框架不是工具包或者类库,调用API并不就是在使用框架开发,紧紧使用API是,开发者完成系统的主题部分,并不时地调用类库实现特定任务。

而框架构成了通用的、具有一般性的系统主体部分,二次开发人员只是像做填空一样,根据具体业务,完成特定应用系统中与众不同的特殊部分。

二、框架与架构之间的关系框架不是构架(即软件体系机构)。

体系结构确定了系统整体结构、层次划分,不同部分之间的协作等设计考虑。

框架比架构更具体。

更偏重于技术涉嫌。

确定框架后,软件体系结构也随之确定,而对于同一软件体系结构(比如We开发中的MVC),可以通过多种框架来实现。

三、框架与设计模式之间的关系设计模式和框架在软件设计中是两个不同的研究领域。

设计模式研究的是一个设计问题的解决方法,一个模式可应用于不同的框架和被不同的语言所实现;而框架则是一个应用的体系结构,是一种或多种设计模式和代码的混合体虽然它们有所不同,但却共同致力于使人们的设计可以被重用,在思想上存在着统一性的特点,因而设计模式的思想可以在框架设计中进行应用。

框架和设计模式存在着显著的区别,主要表现在二者提供的内容和致力应用的领域。

1)从应用领域上分,框架给出的是整个应用的体系结构;而设计模式则给出了单一设计问题的解决方案,并且这个方案可在不同的应用程序或者框架中进行应用。

2)从内容上分,设计模式仅是一个单纯的设计,这个设计可被不同语言以不用方式来实现;而框架则是设计和代码的一个混合体,编程者可以用各种方式对框架进行扩展,进而形成完整的不同的应用。

3)以第二条为基础,可以得出设计模式比框架更容易移植:框架一旦设计成形,虽然还没有构成完整的一个应用,但是以其为基础进行应用的开发显然要受制于框架的实现环境;而设计模式是与语言无关的,所以可以在更广泛的异构环境中进行应用。

总之,框架是软件,而设计模式是软件的知识体,提升框架的设计水平。

Feedack#e:软件体系结构(构架)、架构、设计模式之间的关系回复更多评论2005-11-1813:08y非鱼FRAMEWORK和ARCHITECTURE属于不同的设计层次。

DP和FRAMEWORK、ARCHITECTURE分属不同的领域,DP只能和ARCHITECTURALPATTERN相提并论。

#e:软件体系结构(构架)、架构、设计模式之间的关系回复更多评论2005-11-1817:59ypulisheluoARCHITECTURE是描述系统整体的一种结构(CS架构,BS架构,三层架构等),使用框架开发的we系统也是一种体系结构,而架构是系统中的一部分具体实现。

框架的设计也使用了很多设计模式。

设计模式只是一个问题解决域,而框架可以利用设计模式来解决客观存在的问题。

软件体系结构的设计是什么呢?

整个软件开发过程中关键的一步。

对于当今世界上庞大而复杂的系统来说,没有一个合适的体系结构而要有一个成功的软件设计几乎是不可想象的。

不同类型的系统需要不同的体系结构,甚至一个系统的不同子系统也需要不同的体系结构。

体系结构的选择往往会成为一个系统设计成败的关键。

典型的软件体系结构风格有很多。

例如,设计图形用户界面(GUI)常用的事件驱动风格、设计操作系统常用的层次化设计风格、设计编译程序常用的管道与过滤器风格、设计分布式应用程序常用的客户机/服务器风格等。

一个实用的软件系统通常是几种典型体系结构风格的组合[1]。

近年来,我们致力于软件体系结构理论和实践应用研究,取得了一些初步成绩。

在第2节中,我们将给出

软件体系结构中的应用示例指的是什么

jpg" esrc="http、数据构件和连接构件,顾客从浏览器中输入一个定单://c.jpg" />应用程序服务器运行于浏览器和数据资源之间,一个简单的实例是 软件体系结构 具有一定形式的结构化元素.hiphotos.baidu.com/zhidao/wh%3D600%2C800/sign=dbcb2f7264061d957d133f3e4bc426e9/5366d0160924ab18e5e1b77d3ffae6cd7a890b80。

三层/多层体系结构的组成部分,应用程序服务器位于中间层,web服务器将该请求发送给应用程序服务器,由应用程序服务器执行处理逻辑.hiphotos.baidu.com/zhidao/wh%3D450%2C600/sign=70c2188e00d162d985bb6a1824ef85da/5366d0160924ab18e5e1b77d3ffae6cd7a890b80.baidu,并且获取或更新后端用户数据.com/zhidao/pic/item/5366d0160924ab18e5e1b77d3ffae6cd7a890b80.jpg" target="_blank" title="点击查看大图" class="ikqb_img_alink"> 本回答由提问者推荐 答案纠错 | 评论...

为什么软件体系结构是必需的?软件体系结构在软件生命周期中的地位...

《计算机科学技术百科全书》中的定义:软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。

软件工程借鉴传统工程的原则、方法,以提高质量、降低成本。

其中,计算机科学、数学用于构建模型与算法,工程科学用于制定规范、设计范型(paradigm)、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。

? ?软件工程过程:生产一个最终能满足需求且达到工程目标的软件产品所需要的步骤。

软件工程过程主要包括开发过程、运作过程、维护过程。

它们覆盖了需求、设计、实现、确认以及维护等活动。

需求活动包括问题分析和需求分析。

问题分析获取需求定义,又称软件需求规约。

需求分析生成功能规约。

设计活动一般包括概要设计和详细设计。

概要设计建立整个软件系统结构,包括子系统、模块以及相关层次的说明、每一模块的接口定义。

详细设计产生程序员可用的模块说明,包括每一模块中数据结构说明及加工描述。

实现活动把设计结果转换为可执行的程序代码。

确认活动贯穿于整个开发过程,实现完成后的确认,保证最终产品满足用户的要求。

维护活动包括使用过程中的扩充、修改与完善。

伴随以上过程,还有管理过程、支持过程、培训过程等。

软件体系结构与软件架构有哪些区别?

软件体系结构与软件架构的中文翻译都是英文Softwae Achitectue。

两者都使用一样的定义,如IEEE的“一个系统的基础组织,包含各个构件、构件互相之间与环境的关系,还有指导其设计和演化的原则。

”[IEEE-2000]为了找到两者的区别,得先从应用的环境入手。

我们利用网站搜索引擎对这个领域的常用关键词进行了检索,搜索区域分为开发者网站、所有网站、学术网站,结果如下(检索日期2007-04-08): ① http:www-128.im.comdevelopewokscn ② http:www.miscosoft.comchina ③ google.com 采用精确匹配。

“架构师”改为“软件架构师”,“架构设计师”改为“软件架构设计师”减少领域差异 ④ aidu.com 采用精确匹配。

“架构师”改为“软件架构师”,“架构设计师”改为“软件架构设计师”减少领域差异 ⑤ http:www.cnki.netindex.htm采用精确匹配。

中国期刊全文数据库(2000-2007) 结果表明,在软件开发者和软件应用者来说,倾向于使用“软件架构”,在一定程度上接受“软件体系结构”。

大家对软件架构的设计人员,“架构师”得到广泛的认同。

对于学术界,普遍使用“软件体系结构”,对架构师几乎没有关注。

Softwae Achitectue是一个实践性非常强的领域,统计表明理论和实践的鸿沟还是存在的。

其次,我们从词源探讨“体系”“结构”“架构”的解释[字典-2001]。

体系:若干事物互相联系而构成的一个整体。

例思想~ | 工业~ 结构:①建筑物承受重量和外力的部分及其制造。

按材料分有钢结构、木结构、砖石结构、框架结构、砖混结构等。

按形式分有悬索结构、拱结构等。

②构成整体的各个部分及其结合方式。

例经济~│文章~。

③文艺作品的内部构造。

即作品的各部分(包括内容和形式)之间有机的组织联系。

架构:①建造;构筑。

②框架;支架。

③比喻事物的组织、结构、格局。

例市场~│故事~庞大 通过以上分析,我们不难看出学术界为什么用“软件体系结构”。

首先,体系结构的中文定义完全符合IEEE等的定义。

强调整体与部分,部分与部分的关系;研究系统构成的方法学;提倡多角度研究系统。

其次,从学科地位讲,作为一门独立软件子学科,和硬件学科(计算机组织与体系结构)直接对应。

从工程实践需要看,软件架构更能体现系统构成与相关技术。

RUP过程或软件生产线关注的软件架构并不注重原理及表示,而是由结构和技术相结合的形成框架。

软件架构在中文中很容易与软件框架(Softwae Famewok)混淆,对于一个应用的软件框架通常称为应用程序框架(Application Famewok)。

框架是为了构建完整的应用而必须详细阐述的一种程序结构[Johnson-88]。

框架在RUP和软件产品线开发过程中是一个非常重要的过程。

RUP中框架是细化阶段的一个制品,软件产品生产线中是一组应用共享的程序框架。

目前,没有文献表明软件体系结构与软件架构的差别。

如果你强调方法论,应使用软件体系结构。

强调软件开发实践,应使用软件架构。

转载请注明出处51数据库 » 软件体系结构建模的重要性

软件
前端设计
程序设计
Java相关