博客
关于我
软考高级 系统分析师/架构师 笔记:系统分析 系统设计
阅读量:610 次
发布时间:2019-03-13

本文共 1515 字,大约阅读时间需要 5 分钟。

系统设计与流程优化

系统设计

系统设计的核心任务是通过分解和抽象,将复杂的系统需求逐步转化为具体的实现方案。设计过程遵循以下原则:

  • 抽象化:从具体的需求出发,逐步提炼出系统的高层次结构,形成抽象的设计模型。
  • 自顶而下、逐步求精:从系统的整体架构开始设计,逐步细化到各个模块的实现细节。
  • 信息隐蔽:在设计的早期阶段,尽量减少对实现细节的关注,保持设计的灵活性。
  • 模块独立(高内聚、低耦合):确保系统的模块之间通过明确的接口进行通信,避免过度耦合。
  • 概要设计

    概要设计是系统开发过程中至关重要的一步,主要目标是确定系统的总体架构。其核心任务包括:

    • 将系统功能需求分配给各个模块,形成模块结构图。
    • 确定模块之间的调用关系,形成系统结构图。

    在概要设计中,需要注意以下几点:

    • 模块的大小适中:既不能过大导致维护困难,也不能过小影响效率。
    • 减少调用的深度:优化模块之间的通信,避免过深的调用链。
    • 单入口、单出口:提高系统的稳定性和安全性。
    • 模块的作用域明确:确保模块内部的功能不会对其他模块产生不必要的影响。

    详细设计

    详细设计是系统开发的关键环节,主要任务是为每个模块选择适当的技术手段和处理方法。设计过程需要遵循以下原则:

    • 保持模块的独立性:避免模块之间的过度耦合。
    • 处理功能的可预测性:确保模块的行为具有可预测性。
    • 减少对短期记忆的要求:通过合理的设计减少用户的记忆负担。

    处理流程设计

    在处理流程设计中,主要涉及业务流程建模、流程优化以及人机界面设计等内容。

    业务流程建模

    业务流程建模是企业优化管理的重要工具,常用的方法包括:

  • 标杆瞄准:通过对标杆企业的流程分析,确定改进的方向和标准。
  • IDEF模型:提供全面的业务流程建模方法,涵盖从功能建模到数据建模的各个方面。
  • DEMO和Petri网:帮助设计者理解业务流程的动态特性。
  • BPR和BPM:通过业务流程再造和规范化管理,提升企业的业务效率。
  • IDEF0模型的特点是其层次化的设计方式,能够清晰地展示业务流程的架构特性。然而,当业务流程复杂化时,IDEF0模型可能会导致过于复杂的图形化模型,这种情况下需要结合其他方法(如BPM)进行优化。

    人机界面设计

    人机界面设计的目标是创造一个直观、易于使用的用户界面。设计原则包括:

  • 用户控制:让用户能够灵活地进行操作,允许中断和撤销。
  • 减少记忆负担:通过提供直觉性的交互设计和可视化的帮助功能,降低用户的学习成本。
  • 界面一致性:确保用户在使用过程中能够保持对操作的预期。
  • 信息隐蔽:通过合理的信息布局和缺省值设计,避免信息过载。
  • 结构化设计

    结构化设计是系统设计的重要环节,其核心内容包括:

  • 模块划分:通过合理的模块划分,实现系统的高内聚和低耦合。
  • 设计原则:遵循单一职责原则、开放-封闭原则等基本设计原则。
  • 内聚与耦合:通过模块的内聚设计,减少模块之间的耦合,提高系统的可维护性和扩展性。
  • 面向对象设计

    面向对象设计强调对象的封装和抽象,设计原则包括:

  • 单一职责原则:确保每个类只承担一个单一的职责。
  • 开放-封闭原则:对扩展开放,对修改封闭。
  • 李氏替换原则:确保子类能够替换父类。
  • 依赖倒置原则:避免对具体实现类产生依赖。
  • 接口隔离原则:通过多个专门的接口来减少耦合。
  • 组合重用原则:优先通过组合实现功能的重用。
  • 迪米特原则:减少对象之间的耦合。
  • 设计模式

    设计模式是软件设计中的常用方法,主要包括:

  • 创建型模式:如工厂方法、原型模式等,用于对象的创建和管理。
  • 行为型模式:如职责链、命令模式等,用于流程的定义和管理。
  • 结构型模式:如适配器、桥接模式等,用于系统的结构优化。
  • 通过合理的模式选择,可以显著提升系统的可维护性和扩展性。

    转载地址:http://hwbaz.baihongyu.com/

    你可能感兴趣的文章
    Nginx配置参数中文说明
    查看>>
    Nginx配置后台网关映射路径
    查看>>
    nginx配置域名和ip同时访问、开放多端口
    查看>>
    Nginx配置好ssl,但$_SERVER[‘HTTPS‘]取不到值
    查看>>
    Nginx配置如何一键生成
    查看>>
    Nginx配置实例-负载均衡实例:平均访问多台服务器
    查看>>
    Nginx配置文件nginx.conf中文详解(总结)
    查看>>
    Nginx配置负载均衡到后台网关集群
    查看>>
    ngrok | 内网穿透,支持 HTTPS、国内访问、静态域名
    查看>>
    NHibernate学习[1]
    查看>>
    NHibernate异常:No persister for的解决办法
    查看>>
    NIFI1.21.0_Mysql到Mysql增量CDC同步中_日期类型_以及null数据同步处理补充---大数据之Nifi工作笔记0057
    查看>>
    NIFI1.21.0_NIFI和hadoop蹦了_200G集群磁盘又满了_Jps看不到进程了_Unable to write in /tmp. Aborting----大数据之Nifi工作笔记0052
    查看>>
    NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_增删改数据分发及删除数据实时同步_通过分页解决变更记录过大问题_02----大数据之Nifi工作笔记0054
    查看>>
    NIFI1.23.2_最新版_性能优化通用_技巧积累_使用NIFI表达式过滤表_随时更新---大数据之Nifi工作笔记0063
    查看>>
    NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_根据binlog实现数据实时delete同步_实际操作04---大数据之Nifi工作笔记0043
    查看>>
    NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_配置binlog_使用处理器抓取binlog数据_实际操作01---大数据之Nifi工作笔记0040
    查看>>
    NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_配置数据路由_实现数据插入数据到目标数据库_实际操作03---大数据之Nifi工作笔记0042
    查看>>
    NIFI从MySql中离线读取数据再导入到MySql中_03_来吧用NIFI实现_数据分页获取功能---大数据之Nifi工作笔记0038
    查看>>
    NIFI从MySql中离线读取数据再导入到MySql中_无分页功能_02_转换数据_分割数据_提取JSON数据_替换拼接SQL_添加分页---大数据之Nifi工作笔记0037
    查看>>