zoukankan      html  css  js  c++  java
  • [开发笔记usbTOcan]软件需求分析和软件架构设计

    前面文章进行了系统分析和系统架构设计,手工焊接了一个板子,集合EK-TMC123GXL开发板(请忽略焊接技术)

    SWE.1 | 软件需求分析

    软件需求分析过程的目的是将系统需求的软件相关部分转化为一组软件需求。

    软件需求分析包括,

    • 指定软件需求。使用系统需求和系统架构,以及对系统需求和架构的更改,以确定软件所需的功能和性能。在软件需求中指定功能性和非功能性软件需求。
    • 组织软件需求。在软件需求描述中构造软件需求,比如

    • 对项目相关集群进行分组,
    • 按照项目的逻辑顺序排序,
    • 根据项目的相关标准进行分类,
    • 根据利益相关者的需求划分优先级。
    • 分析软件需求。分析特定的软件需求,包括它们之间的相互依赖性,以确保正确性、技术可行性和可验证性,并支持风险识别。分析对成本、进度和技术的影响。根据利益相关者的需求划分优先级。
    • 分析对操作环境的影响。分析软件需求对系统元素接口和操作环境的影响。
    • 制定验证标准。为每个软件需求制定验证标准,为需求的验证提供定性和定量的措施。
    • 建立双向可追溯性。在系统需求和软件需求之间建立双向的可追溯性。在系统架构和软件需求之间建立双向的可追溯性。
    • 确保一致性。确保系统需求和软件需求之间的一致性。确保系统架构和软件需求之间的一致性。
    • 沟通商定的软件需求。向所有相关方传达商定的软件需求和软件需求的更新。

    Enterprise Architect中定义软件需求

     

    SWE.2 | 软件架构设计

     软件架构设计过程的目的是建立一个体系结构设计,并确定哪些软件需求分配给软件的哪些元素,并根据定义的标准来评估软件体系结构设计。

    它包括以下内容:

    • 开发软件架构设计。根据功能和非功能软件需求,开发和记录软件体系结构设计,确定软件的要素。
    • 分配软件需求。将软件需求分配给软件架构设计的元素。
    • 定义软件元素的接口。识别、开发和记录每个软件元素的接口。
    • 描述动态行为。评估和记录软件元素的时间和动态交互,以满足系统所需的动态行为。
    • 定义资源消耗目标。确定并记录软件架构设计中所有相关元素在适当层次上的资源消耗目标。
    • 评估可选的软件架构。定义体系结构的评估标准。根据改进的标准评估可选的软件架构。记录所选软件体系结构的基本原理。
    • 建立双向可追溯性。建立软件需求和软件体系结构设计元素之间的双向可追溯性。
    • 确保一致性。确保软件需求和软件架构设计之间的一致性。
    • 沟通商定的软件架构设计。将商定的软件架构设计和相应的更新信息传达给所有相关方。

     

    软件架构图

     

    用户使用案例

  • 相关阅读:
    Codeforces 678E 状压DP
    Codeforces 667C DP
    POJ 3017 DP + 单调队列 + 堆
    Codeforces 1154F (DP)
    Codeforces 1154G 枚举
    Codeforces 1153D 树形DP
    Codeforces 1109E 线段树
    Codeforces 1109C 线段树
    Codeforces 1109D (树的计数问题)
    async/await
  • 原文地址:https://www.cnblogs.com/mr-bike/p/11755790.html
Copyright © 2011-2022 走看看