对软件构架的理解

软件架构的概念是 2000 年发布的 IEEE 1471 标准中提出的,是来源于建筑学中的概念。它是软件历史发展到一个阶段的产物。随着时代的发展和用户需求复杂度的提高,软件系统也变得越来越复杂,而且用户需求的改变也越来越频繁。软件开发思想也从原来的 OP (面向过程)进步成为 OO (面向对象)思想, OO 思想是帮助我们解决了不少的难题。但那种简单的对用户需求的计算机指令的翻译,已经变得有点力不从心,我们必须给软件设计一个好的结构,使程序的健壮性、可扩展性等得到增强。
系统的概念:系统是为了某人,某事和某目的而创建的。系统的内涵是从不同的视点和用不同的模型来描述的架构。说明架构是系统的核心。
架构机制的概念:架构机制是为通用问题提出通用的解决方案,可能是具体的类,或者是抽象的设计模式;它位于分层架构的中下层,保证架构的牢固性
这方面我学习了上海普元科技提出的 面向构件 开发技术思想,并得到很多的启发,他们把软件架构做以下分类:
1 辐射性架构,如 WIN32 API
2 梁柱性架构,如交易管理系统中以几个重要的基础支持模块,来支撑更细的业务模块
3 共同语言式架构,如关系型数据库管理系统中 SQl 语句,大型计费系统中对计费原始记录、计费规则等的统一描述等
在各种架构系统中有不同的重点,做架构师要熟悉各重点的抽象本质;架构师要兼顾各个重点。有以下几种重点:
1 、用户视点,用户不会用的系统,等于不存在。要提高系统的可用性,我们应以用户的经历为考察视点来组织用户的功能;
2 、数据视点,以企业的数据为中心,打造稳定的企业级系统
3 、过程视点,对业务过程的分析,建立一个稳固的模型,可满足随需而变的业务变化;
我们在平时的软件设计与开发过程中要不断学习去搭建适合自己行业需要的架构,在我们公司这一块是很缺失的,没有什么架构可言,其实不是不需要,而是没有一个好的领航人去做这方面的工作罢了。
软件开发过程中,分离关注点很重要,关注点的分离其实是软件工程的核心。关注点其实就是各构件的接口
面向构件方法论的核心在于:通过恰当的分离关注点,保留并改变自制性;通过将业务空间构件化,能得到清晰的、完整的、面向构件的解空间。 大型软件系统的架构从以 问题领域空间 的结构为中心,变成了以 解决方案空间 的结构为中心
为了设计好这种面向构件技术的软件架构,需要软件需求人员前期具有面向构件思想的软件需求分析和需求管理的思想, 软件需求的分类应分为:
面向功能:从最终用户的需求本质来讲(垂直分割)
面向技术:从最终产品和开发团队的本质来讲(水平分割)
面向构件的软件开发方法为了设计横切竖割、兼收并蓄的大型软件开发架构 根据构件复用粒度的大小和关注点的区别,我们把构件分为业务构件和服务构件。
总之,我们使用软件工程思想来指导开发的目标,就是为了解决从 面向功能 面向技术 这两个正交维的转换过程。
希望有共同志愿在软件行业有所进步的朋友们共勉!!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值