一、什么是软件系统的架构?

1、一个系统从整体到部分的最高层次的划分!

这里是从功能性需求的角度,确定系统大致需要完成什么功能。比如,一个查询系统,可以初步确定需要包含

号码归属地查询,天气查询,快递查询,火车查询四大功能!

2、从全局的角度和非功能性需求的角度设计其结构!

什么事非功能性的需求?参看下面二,软件系统的架构目标:

 

二、软件系统的架构目标:

1、可靠性(Reliable):一个软件供用户使用,关系到客户的管理和商业运作,因此可靠性非常重要

2、安全性(Security):软件系统可能设计商业的交易行为和不同系统的交互行为,涉及用户的隐私,所以,安全性非常重要

3、可扩展性(Extensiable):新技术的加入,需要不影响原有功能的使用。

4、可维护性(Maintenance)

5、可定制性(Customizable):可以让用户自己定制软件的功能

6、客户体验(Customer Experience):用户体验佳。

 

三、软件架构中需要可虑的问题

1、系统逻辑架构

2、系统主要元件

3、各元件之间的关系

4、个元件之间的通信机制

5、系统层次结构