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

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

系统设计与流程优化

系统设计

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

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

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

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

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

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

    详细设计

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

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

    处理流程设计

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

    业务流程建模

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

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

    人机界面设计

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

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

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

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

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

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

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

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

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

    你可能感兴趣的文章
    Mysql 分页语句 Limit原理
    查看>>
    MySQL 创建新用户及授予权限的完整流程
    查看>>
    mysql 创建表,不能包含关键字values 以及 表id自增问题
    查看>>
    mysql 删除日志文件详解
    查看>>
    mysql 判断表字段是否存在,然后修改
    查看>>
    mysql 协议的退出命令包及解析
    查看>>
    mysql 取表中分组之后最新一条数据 分组最新数据 分组取最新数据 分组数据 获取每个分类的最新数据
    查看>>
    mysql 多个表关联查询查询时间长的问题
    查看>>
    mySQL 多个表求多个count
    查看>>
    mysql 多字段删除重复数据,保留最小id数据
    查看>>
    MySQL 多表联合查询:UNION 和 JOIN 分析
    查看>>
    MySQL 大数据量快速插入方法和语句优化
    查看>>
    mysql 如何给SQL添加索引
    查看>>
    mysql 字段区分大小写
    查看>>
    mysql 字段合并问题(group_concat)
    查看>>
    mysql 字段类型类型
    查看>>
    MySQL 字符串截取函数,字段截取,字符串截取
    查看>>
    MySQL 存储引擎
    查看>>
    mysql 存储过程 注入_mysql 视图 事务 存储过程 SQL注入
    查看>>
    MySQL 存储过程参数:in、out、inout
    查看>>