【软件工程】详细设计

目录

前言

软件工程生命周期分为八个阶段:

问题定义--->可行性研究--->需求分析

--->概要设计--->详细设计--->编码与单元测试

--->综合测试--->软件维护

这节我们讲的是软件开发流程中的一个阶段,需求分析。


详细设计

详细设计定义接口、算法、数据

算法设计工具------判定表

当算法中包含多重嵌套的条件选择时,判定表能够清晰地表示复杂的条件组合与应做的动作之间的对应关系。

适合:单一条件只有两种结果供选择

  • 一张判定表由4部分组成
    • 左上部列出所有条件;(所有可能条件)
    • 左下部是所有可能做的动作;(所有可能返回值)
    • 右上部是表示各种条件组合的一个矩阵;(条件的组合)
    • 右下部是和每种条件组合相对应的动作。(确定返回值)

判定表的优点:

  • 能清晰地表示复杂的条件组合与应做的动作之间的对应关系。

判定表的缺点:

  • 判定表的含义不是一眼就能看出来的,初次接触这种工具的人理解它需要有一个简短的学习过程。
  • 当数据元素的值多于两个时,判定表的简洁程度也将下降。
相关推荐
Being--6 小时前
BWorkflow:给人 + Claude Code 团队用的项目交付“规则层”
软件工程·agent·ai coding
qq_1715388520 小时前
两条赛道,同一个未来:计算机科学与技术 VS 软件工程
大数据·计算机外设·软件工程
嘿黑嘿呦18 天前
chap 8排序
算法·蓝桥杯·排序算法·软件工程
旧曲重听118 天前
2026前端技术从「夯」到「拉」
前端·程序人生·职场和发展·软件工程
承渊政道18 天前
飞算JavaAI 智能引导背后的多 Agent 协作机制解析:从老旧 Java 后台升级到可运行工程
java·开发语言·spring boot·安全·intellij-idea·软件工程·ai编程
apcipot_rain18 天前
计科八股20260616(1)——堆存中位数、链表判环、黑白测试、敏捷开发与瀑布模型、配置管理、持续集成、池化
数据结构·算法·软件工程
lisw0519 天前
【计算机科学技术】路由器(route):概念、历史、内容与战略!
机器学习·智能路由器·软件工程
培培说证19 天前
大数据、人工智能、计算机、软件工程,到底怎么选?
大数据·人工智能·软件工程
文艺倾年20 天前
【强化学习】MDP、贝尔曼方程与CartPole 编程,20W字总结(二)
人工智能·软件工程·强化学习
郝学胜-神的一滴20 天前
CMake 017:彩色日志输出实战
linux·c语言·开发语言·c++·软件工程·软件构建·cmake