【原创】软件架构技术发展历程总结及思考 2of2(续)

本文探讨了软件架构技术的发展历程,强调了复杂性管理的重要性。随着企业级应用复杂性的增加,从简单系统演变为复杂系统的过程中,层次结构、抽象和派生成为关键。软件架构技术如SOA、云计算等体现了综合集成方法论,通过不断集成和发展,应对不断增长的复杂需求。文章还提到,不同的架构技术各有优势,适用于不同场景,综合应用可能是解决复杂企业级需求的最佳途径。
摘要由CSDN通过智能技术生成

4   蕴含的道理

4.1  软件架构技术的发展的推动力是满足日益增长的复杂性
    简单性一向是现代自然科学、特别是物理学的一条指导原则。许多科学家相信自然界的基本规律是简单的。爱因斯坦曾是这种观点的突出代表者。虽然复杂现象比比皆是,人们还是努力要把它们还原成更简单的组分或过程。事实上不少复杂的事物或现象,其背后确实存在简单的规律或过程。应当学会比较和刻画来自简单机理的复杂性,否则很难期望会正确分析那些机理不明的复杂事物或现象。

    某些软件系统并不复杂,它们通常是由一个人提出、构建、维护和使用的,这个人通常是编程新手或独立工作的专业开发人员。然而企业级的应用的复杂性却越来越高。这些系统表现出非常丰富的行为,由真实世界的事件驱动或发出驱动事件。这些应用维护着数百万条信息记录的完整性,同时允许并发的更新和查询。这些系统包含了众多离散且相互作用的对象,发出命令并控制真实世界的实体。这样的软件系统通常具有很长的生命周期,随着时间的推移,许多用户渐渐依赖于这些软件系统的正常工作。

    企业级软件的特征是,单个开发者要理解其设计的所有方面非常困难,几乎是不可能的。武断地说,这些系统的复杂性超出了人类智能的范围。不幸的是,我们所说的这种复杂性似乎是所有大型软件系统的基本特征。从根本上来说,我们可以掌握这种复杂性,但不能消除这种复杂性。我们认为这种固有的复杂性有4个原因:问题域的复杂性、管理开发过程的困难性、通过软件可能实现的灵活性以及刻画离散系统行为的问题。

    复杂性常常以层次结构的形式存在。复杂的系统由一些相关的子系统组成,这些子系统又有自己的系统,如此下去,直到达到某种最低层次的基本组件。许多复杂系统都有几乎可分解的层次结构,正是这一事实让

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值