zoukankan      html  css  js  c++  java
  • 架构设计

    架构设计是软件设计过程的早期阶段,它把需求分析和设计流程连接在一起。

    架构设计将一系列的抽象模式用于指导代行软件系统各方面的设计。

    架构师【结构设计者】的主要任务是从事高层次的开发构架工作——【对开发技术非常了解,并且需要良好的组织管理能力】。

    架构师作用[1-3]:

    1.将需求进行合理分析布局到应用模型中去,偏应用功能布局;

    2.技术统筹,综合考虑软件的高效性、复用性、安全性、可维护性、灵活性和跨平台性等;

    3.形成统一的规范——应用规范和技术规范。

    企业架构师需求和目前架构师所需知识,自我培养过程如下:

    1.胚胎(程序员):语言基础、设计基础和通信基础等(java、C、C++、UML、RUP、XML、Socket通信);

    2.萌芽(高级程序员):分布式系统、组建等内容(分布式系统原理、WJB、corba、com/com+、webservice及网络计算机和高性能并发处理等);

    3.幼苗(设计师):领会设计模式包括设计模式(javaC++版)、ejb设计模式、j2EE架构、UDDI、软件设计模式等,了解软件工程在实际项目中的应用以及小组开发、团队管理等;

    4.胜任分析、架构于一体的精英人才。(人扮演架构师的角色,机器扮演程序施工者的角色)。

    测试人员对于项目经理相对于软件架构师对市场营销人员;

    需求分析、设计架构和软件测试相对应的需求分析师、软件架构师和软件测试人员;

    软件架构设计:

    业务分析——》信息化解决方案——》功能设计(经验决策层、管理层和业务操作层)——》层次架构设计(层次化关系表达及功能、技术核心元素)——》技术体系设计(接口、数据存储、技术路线、部署及实现抽闲等设计)

    常用的系统架构模式:

    ASSF(access-service-standard-fundation)访问-服务-标准-基础模式特点:对系统架构各层次均有表达,但不熟应用模式需要单独说明;适合做主架构;

    Location模式特点:对应用逻辑表达较为清晰,适合集团应用;

    3management-level模式:表达了从决策层-管理层-操作层个层次使用的功能。对系统功能表达较清晰,对客户达成一致性有较好的效果;

    系统架构中的数据分布设计:

    1.独立Schema(APP不同,Schema不同):可管理性高、通信开销小;

    2.集中(集中存储,分布访问):可管理性和数据一致性高;

    3.分区(相同应用程序,不同应用程序实例部署,相同的数据模型不同的数据值):地域分布广泛采用水平分区、垂直分区为字段分割较少(。可伸缩性好;

    4.复制(数据保存多个副本、保持一致性):有效提升数据可靠性;

    5.子集(部分复制):较少传输开销;

    6.重组(交不同Schema中的数据进行整合)

    数据集成设计

    数据物理集中:统一的数据库服务器管理,实现数据统一访问,效率高,适合大数据量查询的决策分析。缺点:实时性较差、风险大、时间长;

    逻辑集中:业务系统分布在多个地方,有统一整合平台实现各物理分布数据之间的数据共享,实时访问分布化的数据,实施速度快但受网络传输影响;

    初期采用逻辑集中实现统一访问与数据共享,对访问量大、是实现要求不高的数据逐步实现物理集中,从而提高访问效率;

    数据联邦模式:将分布在不同地方的数据进行逻辑整合实现虚拟数据库的数据访问;

    数据复制模式:多个备份,实现数据一致性;

    基于接口的数据集成模式:实时性较高且数据量较小。系统间通过接口共享数据;

    应用集成

    http://www.uml.org.cn/zjjs/201107193.asp

  • 相关阅读:
    ThreadPoolExecutor使用介绍
    apache和tomcat区别(转)
    ThreadFactory的理解
    Tomcat报45秒无法启动错误修改方法
    快速排序
    冒泡排序
    矩阵快速幂
    CF#524-C
    CF#524-B
    hdu3308—LCIS
  • 原文地址:https://www.cnblogs.com/xleer/p/6709866.html
Copyright © 2011-2022 走看看