关于软件体系架构的认识

听到构架,我最先想到的是一个软件系统的轮廓,就像建房子时要先给房子画一个设计图,这个房子的外形是什么,同样我认为软件系统的构架就是要实现什么样的功能,它的界面布局是什么,都有哪些功能模块。在接触了“软件体系结构”这门课以后,我知道了构架是软件系统的一个或多个结构。这些结构是由软件元素、元素的外部可见属性以及这些元素之间的关系组成。

在阅读了“架构漫谈”这系列专栏以后,我知道了软件构架不仅仅只是软件系统的构架,它受很多方面的影响,同时也影响了很多方面。“架构漫谈”提出架构就是对要解决的问题进行目标系统的界定,对目标系统按某个原则进行切分,并对切分出来的部分设立沟通机制,使得这些部分之间能够进行有机的联系成为一个整体,完成目标系统的所有工作。对于架构的解释,有好几种回答。每个人都以为自己已经理解了架构的概念,但其实都不是很确切的,只知道是那个意思,至于为什么是就没有解释了。

对于抽象,我本身没有很多的认识,感觉自己想像不出来的就是抽象,跟主观看到的不一样的就是抽象。“架构漫谈”将抽象的含义解释为把不同的概念的相似的部分合并在一起,形成一个新的概念。这使我对抽象有了一个新的理解。

架构解决的是人的问题,知道了是解决人的问题,就很容易知道有什么问题要解决。这就需要架构师了,一直觉得架构师是一个技术水平很高的职位,他所做的就是设计系统的功能,设计系统的整体样式。“架构漫谈”提出一个只致力于完成自己的工作,已做好自己的工作为主要目标的人是无法成为一个架构师的。要成为架构师,就要超越一个恐惧,这个恐惧就是在按时解决别人的问题成为自己的问题的时候,就会有时间压力,就会产生一种对时间的恐惧。因为有恐惧存在,我们会采取各种手段,来及时的完成工作,换取报酬。其还提出架构师必须是一个组织的领导人,这是我没有想到的,我一直以为架构师就是将系统的架构报告给领导有领导来组织人员实施,架构师只要有技术就可以了,其他的不用管。看来架构师不仅有技术的要求,对业务领域也是有要求的。

代码也是需要架构的,“架构漫谈”将代码分成的部署单元所承担的责任分为两个:表达业务逻辑的代码和对用户提供访问并保存业务逻辑运行结果的代码。对于第二个责任我不是很明白,感觉是不是用户界面之类的代码。

一直以为软件架构只是技术的问题,跟业务没有多大的关系,架构只是解决的软件设计的问题,现在看来自己的理解有很大的问题,有很多不足的之处。

时间: 2024-10-11 13:17:37

关于软件体系架构的认识的相关文章

软件体系架构课下作业06

题目:对上学期学习的软件设计模式进行复习,对所有设计模式进行分析,用自己的话来阐述对他们的理解.(不少于2000字) 正如本学期所学习的软件体系架构,还有很多其他的软件工程技术一样,设计模式同样起源于建筑领域他是对前人经验的总结,为后人设计与开发基于面向对象的软件提供指导方针和成熟的解决方案. 从模式的目的而言,设计模式可以分为创建型.结构型和行为型三种.创建型模式主要用于创建对象,它包含5种模式,分别是:工厂方法模式.抽象工厂模式.建造者模式.原型模式和单例模式:结构型模式主要用于处理类和对象

解读IEEE 7417的软件体系架构描述的概念模型

本文将解读标准IEEE Std 1471-2000(密集型软件的体系结构描述推荐实施规程)的概念模型图部分,从中一窥作为软件架构师的进行架构设计的思考角度与策略.如果我们把世界当做一场游戏,现在要玩的就是策略游戏而已. 说明: IEEE 1471是适用于软件密集的系统,其目标在于:便于体系结构的表达与交流,并通过体系结构要素及其实践标准化,奠定质量与成本的基础. 细读这个标准,可以加强策略游戏的装备,全新上战场. 基本概念 IT框架的设计者必须是杰出的问题驱动者,设计往往是一个模糊的,非理性的过

软件体系架构课下作业01

通过看<梦想改造家>这一节目,让我更深刻的认识了,建筑师和软件架构师在一些方面有着惊人的相似.建筑师是设计实体的建筑,软件架构师则是设计虚拟的软件.建筑的设计需要遵循一定的原则和方法,软件同样如此. 首先,软件架构是用来沟通的,软件架构必须满足软件项目所有步众代表都有自己立场与视角的模型.文档说明,且这些模型文档说明仅清晰包含自己立场与视角关注与有关的事物,不能有任何遗漏,也最好不要有多余. 其次,软件架构的每一步都是决策过程,而且关键需求决定架构,软件架构必须充分清楚地表达出这些决策与决策理

软件体系架构课下作业07

1.MVC介绍 MVC(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本的部分:模型(model).视图(view)和控制器(controller). MVC模式最早是由Trygve Reenskaug在1978年提出,是施乐帕罗奥多研究中心在20世纪80年代为程序语言Smalltalk发明的一种软件架构.MVC模式的目的是实现一种动态的程序设计,使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能.除此之外,此模式通过对复杂度的简

初识软件体系架构

经过软件工程概论.软件需求工程.软件测试.软件过程管理这一系列的软件核心课程的学习,对软件这个词刚刚有了初步的了解. 因为每个人的能力和时间都是有限的,并且因为人的结构的限制,人同时只能专心做好一件事情,这样不得已就导致了分工的产生.既然分工发生了,原来由一个人干生存所必需的所有的事情,就变成了很多不同分工的角色合作完成这些事情,这些人必须要通过某些机制合在一起,让每个人完成生存所必需的事情,这实际上也导致了交易的发生(交易这部分就不在这里展开了,有机会再讨论).

软件体系架构——质量属性

以<淘宝网>为例,描绘质量属性的六个常见属性场景,将上述整理为一篇博客发表. 1.可用性分析 可用性分析所关注的方面包括:如何检测系统故障,系统故障发生的频度,出现故障时会发生什么情况,允许系统有多长时间非正常运行,什么时候可以安全地出现故障,如何防止故障的发生以及发生故障时要求进行哪种通知. 场景:双十一或者春晚抽奖导致淘宝用户猛增 刺激源:淘宝用户 刺激:登录人数过多,导致淘宝无法响应,淘宝瘫痪,网页无法向下进行 制品:淘宝的处理器.通信通道.存储器.进程 环境:用户的正常浏览操作 响应:

软件体系架构课后作业05

23种设计模式 设计模式:是一套被反复使用.多数人知晓.经过分类编目的.代码设计经验的总结,使用设计模式是为了可充用代码.让代码更容易被他人理解.保证代码的可靠性. 设计模式按目的分为三大类:创建型模式.结构型模式.行为型模式. 创建型模式有:抽象工厂模式.建造者模式.工厂方法模式.原型模式.单例模式. 结构型模式有:适配器模式.桥接模式.组合模式.装饰模式.外观模式.享元模式.代理模式. 行为型模式有:解释器模式.模板方法模式.职责链模式.命令模式.迭代器模式.中介者模式.备忘录模式.观察者模

软件体系架构课后作业06

MVC 理解 MVC(Model-View-Controller) : 是一种设计系统的框架,它将系统粗要的分为三个层次:视图层,模型层,控制层. MVC 模式最早是由 Trygve Reenskaug 在1978年提出,是施乐帕罗奥多研究中心(Xerox PARC)在20 世纪 80 年代为程序语言 Smalltalk 发明的一种软件架构. 视图层:系统对外界展示的界面,所有对外的交互都在这层中完成,而且本层中只含有界面展示,不含对数据的操作与业务逻辑的处理. 模型层:系统中处理业务,所有系统

软件的体系架构摘要

摘录原文链接:天极网 常见的软件体系架构 l 三层体系架构 在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构.分层式结构一般分为三层,从下至上分别为:数据访问层.业务逻辑层(又或成为领域层).表示层,如图所示: 图2 三层体系架构 数据访问层:有时候也称为是持久层,其功能主要是负责数据库的访问.简单的说法就是实现对数据表的Select,Insert,Update,Delete的操作.如果要加入ORM的元素,那么就会包括对象和数据表之间的mapping,以及对象实体的持久化. 业务逻