软件架构要达成的目的究竟是什么?

1、软件架构要达成的目的究竟是什么?它与软件工程中的概要设计、详细设计有什么联系?
       答:软件架构要达成的目的,说得通俗些就是对系统进行部署,给系统搭架子。所以软件架构师可以不一定精通编程,他更多的是关心平台之上的东西。
        在软件工程中,有三大重要的设计文档《需求规格说明书》、《概要设计说明书》、《详细设计说明书》。如果按照国标GB8567——88来严格要求这三大文档,我们会发现一个问题:《需求规格说明书》是服务于用户的,它的语种是“用户语言”,它的主要阅读对象是用户和后期做概要设计的。但是一到了《概要设计说明书》时,我们一下子从客户业务领域突然跳跃到了计算机领域,这之间存在鸿沟,没有自然衔接,大家可以感觉一下,是不是突然就变成了设计模型?
        而架构设计则比较好的填补了这样的鸿沟,架构设计一方面和《需求规格说明书》搭界,对系统进行了业务的部署(即平台上的设计);一方面和《详细设计说明书》搭界,为详细设计提供了计算机人员易懂的设计模型(即平台下的设计)。——这就是架构设计和概要设计、详细设计的联系。

        国标GB8567——88是很早的标准,有些不太适合现在的软件开发。如果想了解软件架构,可以看看微软的软件架构模式。

2、软件架构结束后要交付的产品是什么?有没有什么模板?
   答:软件架构结束后要交付的产品是《软件架构设计说明书》。没有具体统一的国标模板。

3、通常都是用什么工具来做?
   答:架构对象建模一是面向对象的建模方法,一是UML建模。根据这个在来选择工具,你可以选择最原始的笔和纸,也可以选择VISIO,ROSE等。

有怎样的经验就有怎样的架构。一切都是围绕需求展开。
假设:公司根据市场需要想开发产品A,并且经过调研掌握了具体需求。
当需求递交到技术部时假设老板指定给三位设计师都对需求进行分析然后写设计。
结果可能:设计师A提出JAVA+ORACLE架够的设计;B提出C#+MSSQL架够的设计;C提出DELPHI+ACCESS的设计。而且,三份设计都可以很好的实现需求。我是老板的话综合他们说的开发周期和成本、产品价位和维护成本、以后需求的变更和产品的升级、包括以后产品是否需要跨平台支持等各种因素决定:先叫C开发一个DEMO给客户使用,如果有市场的话再让B着手负责二代产品的开发;如果势头很好的话再让A参与三代产品。。。当然拉,几代产品是否能共存那是不知道的。。。

 

出处:http://blog.csdn.net/gup21cn/archive/2006/06/26/837336.aspx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值