栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

湖南某科技大学 软件设计与体系结构期中考试笔记

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

湖南某科技大学 软件设计与体系结构期中考试笔记

湖南某科技大学 软件设计与体系结构期中考试 简答题(5*10) 设计文档包含什么?
  1. 系统概述
    1. 文档概述
    2. 术语定义
    3. 软件系统概述
    4. 软件设计目标
    5. 设计和实现约束
    6. 参考文献
  2. 设计指南
    1. 体系结构设计指南
    2. 界面设计指南
    3. 模块/子系统设计指南
    4. 过程/算法设计指南
    5. 数据模型设计指南
  3. 体系结构设计
  4. 界面设计
  5. 模块/子系统设计
  6. 过程/算法设计
  7. 数据模型设计
  8. 需求-设计的可追踪性
  9. 实施指南
软件体系结构风格
  • 管道/过滤器风格

    管道/过滤器风格的一个显著特征是系统中构件之间通过数据流松散耦合。也就是说,构件之间的依赖仅仅是数据流,而不是通常的接口函数调用和消息传递。

  • 层次风格

    从向外提供服务的构件出发,沿着连接关系依次搜索各构件和连接子,如果形成的拓扑结构是一个有向无圈图,那么这个系统的体系结构风格就是层次式的。

    优点:

    1. 便于将复杂的系统进行分解
    2. 同时也便于替换,只要保持接口一致,就可以将某一层的构件替换,而不会影响到系统的其他部分
  • 客户/服务器风格

    从向外提供服务的构件出发,沿着连接关系依次搜索各构件和连接子,如果形成的拓扑结构是一颗倒置的树,那么这个系统的体系结构就是客户/服务器风格的。

    优点:

    1. 使得服务功能的实现更集中,便于系统实现。
分布式构件
  • 分布式构件框架

    它封装了网络通信的细节,具有两部分功能:其一,向客户提供服务器上分布构件的接口;其二:向服务器上的分布构件提供一个运行的环境。在此方案下,客户和分布构件都不需要关心网络通信问题,只需要使用分布构件框架提供的接口即可。

  • EJB

    EJB是用于开发和部署多层结构的、分布式的、面向对象的Java应用系统的跨平台的构件体系结构。

设计模式
  • 工厂方法、抽象工厂和单例都是创建型设计模式。

  • 工厂方法和抽象工厂

    设计模式-工厂模式(简单工厂、工厂方法、抽象工厂)

    工厂方法:定义一个抽象工厂类,不负责所有实例的创建,而是把具体的创建工作交给了子类去完成,实例化延迟到子类加载,由子类来决定要实例化的类。

    抽象工厂:提供一个接口,可以创建一系列相关或相互依赖的对象,而无需指定他们具体的类

  • 单例

    核心思想:将一个类的构造函数设为非public,有效的阻止从外部直接创建该类的实例;同时设置一个静态成员函数,以负责创建唯一的实例并向外提供访问接口

    适用场合:当确保一个类最多只需要一个实例时。

设计评审(评什么?)
  • 软件设计特征是否与需求一致,能否满足需求规格说明的要求
  • 设计是否具有良好的结构特征,如信息隐藏、高内聚、低耦合
  • 软件体系结构的形态是否合理
  • 软件的人机界面是否合理
  • 子系统和模块的设计是否具有较高的独立性
  • 子系统和模块是否实现了其接口要求的行为
  • 软件的层次是否清晰
软件生存周期

可行性研究、需求分析、概要设计、详细设计、软件构造、单元测试、集成测试、确认测试、使用与维护、退役

云服务对体系结构设计有什么改变?

云服务重塑了企业级应用的架构,公共云成为了集成企业应用、平台软件和服务的一个设计中心。API驱动的资源按需分配,与传统的企业数据中心基础设施有着很大的不同。

设计题(1*30)
  • 分析流程

  • 数据库设计

  • 数据流图

    外部实体、长方形、名词

    转换、圆形、动词

    数据源、平行线、表格/文件

  • 状态图

论述题(1*20)
  • 学习规划

  • 架构师职责

    1、负责公司软件系统的技术路线、架构设计、研发工作。

    2、承担从产品需求向技术实现转换的桥梁作用,根据产品规划来更新技术架构的研发方向

    3、参与项目计划评审。

    4、参与需求分析、建模、软件设计评审。

    5、负责组织技术研究和攻坚工作。

    7、负责组织及带领公司内部员工研究与项目相关的新技术。

    8、管理技术架构团队并给项目、产品开发实施团队提供技术支持。

    9、理解产品/项目的业务需求,给出软件系统整体解决方案(包括技术框架和业务框架)

    10、对技术基础架构的相关技术和业务进行培训,指导开发人员开发。并解决系统开发、运行中出现的各种问题。

    11、探索前沿新技术、打造团队技术栈。

  • 怎么做软件体系结构设计

    1. 开发软件顶层架构
    2. 搜素并选取可用设计资产
    3. 设计技术支撑方案
    4. 确定设计元素
    5. 开发软件部署模型
    6. 设计并发机制
    7. 构件软件体系结构设计模型
    8. 评审软件体系结构模型
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/584051.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号