学了软件体系结构,发现挺有意思,挺有用的

时间:2022-08-05 14:46:31

    1、软件体系结构 

      软件体系结构通常被称为架构,指可以预制和可重构的软件框架结构。架构尚处在发展期,对于其定义,学术界尚未形成一个统一的意见,而不同角度 的视点也会造成软件体系结构的不同理解。比如, ANSI/IEEE 610.12-1990软件工程标准词汇对于体系结构定义是“体系架构是以构件、构件之间的关系、构件与环境之间的关系为内容的某一系统的基本组织结构以 及知道上述内容设计与演化的原理 (principle)”;而 Garlan & Shaw模型的基本思想是:软件体系结构 ={构件 (component),连接件 (connector),约束 (constrain)} 

对于软 件项目的开发来说,一个清晰的软件体系结构是首要的。传统的软件开发过程可以划分为从概念到实现的若干个阶段,包括问题定义、需求分析、软件设计、软件实 现及软件测试等。软件体系结构的建立就位于需求分析之后,软件设计之前。在建立软件体系结构时系统设计师主要从结构的角度对整个系统进行分析,选择恰当的 构件(Component)、构件间的相互作用以及它们的约束,最后形成一个系统框架( Framework)以满足用户的需求,为软件设计奠定基础。

2、软件体系结构风格

      软件体系结构设计的一个核心问题是能否使用重复的体系结构模式,即能否达到结构级的软件重用。也就是说,能否在不同的软件体系中,使用同一体系结构。基于这个目的,学者们开始研究和实践软件体系结构的风格问题。 
      软件体系结构风格是描述某一特定应用领域系统组织方式的惯用模式。它反映了领域中众多系统所有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一 个完整的系统。对软件体系结构风格的研究和实践促进了对设计的复用,一些经过实践证明的解决方案也可以可靠地用于解决新的问题。体系结构风格的不变部分使不同的系统可以共享一个实现代码。只要系统是使用常用的、规范的方法来组织,就可使别的设计者很容易地理解系统结构。 

3、软件体系结构的分类

 1)数据流风格:批处理序列、管道 /过滤器等; 
 2)调用 /返回风格:主程序 /子程序、面向对象风格、层次结构等。 
 3)层次软件体系结构:tcp/ip层次结构 
 4)MVC软件体系结构

 还有基于网络的软件体系结构。