软件的设计书、空间图和时间图的思考

软件的设计书、空间图和时间图
产品的软件开发,首先应有需求书,需求书里有各种技术要求,功能要求。然后有需求应答书,根据需求进行功能设计(概设),介绍实现需求的方法原理、设计方案,然后有详设,介绍具体的控制方法、算法, 各个功能模块的具体内容(如保护的内容、响应时间,采样的通道与芯片引脚的对应关系,采样范围)、仿真结果等。
软件的设计书应该对整个project内所有变量、函数、c文件、h文件进行详细说明,对DSP平台,还包括各外设的配置、CMD文件、库文件的说明。
对整个工程的变量,应介绍清楚该变量的含义(与硬件原理图的对应关系)、声明、定义、类型、有效范围、初值、可能的赋值及意义、调用该变量的函数(变量出现在哪些文件中)。
对整个工程内的函数,应介绍清楚该函数的功能、声明、定义、调用(频率、条件)、有效范围、形参、实参、返回值及中间变量的类型、含义,函数的流程图。
对一个.c文件,应该说明其对应的功能,包含的h文件,该.c文件内出现的变量、函数。可以用超链接定位。
对一个.h文件,应该说明其被包含的c文件,该.h文件内声明的变量、函数。
以元件为.c文件的工程,应该对工程内的每个元件进行说明,元件(或是产生的实例)的功能,元件的输入、输出变量和参数的列表,元件的调用频率。
空间图包括了全部模块(元件或函数)和变量,直观地表明变量的传递过程,模块之间的相互关系,从芯片的输入引脚到输出引脚。这张图不会给出模块自身的流程图,不会给出任何算法、控制原理的内容。在空间图上可以圈出属于各个.c文件的函数,从而也包含了所有的.c文件。
时间图表示全部模块的执行频次与执行顺序(对串行架构),分别给出主中断、主循环内函数的先后执行顺序、定时执行的周期、(条件执行的条件)等。
这样写出的软件设计书,严格意义上应该叫做程序设计书,优点是与源程序对应关系非常直接、准确,缺点是难以快速找到某一个功能是用哪个函数实现的,从空间图上也不容易看出,可能需要对《软件功能详设书》增加一个函数名的注释。
软件功能详设书是在纸面上说明了产品的软件包括哪些功能,如采样、数据处理、保护、控制、脉冲等。
看到现有的软件设计报告是按功能模块进行章节编排的,有利于快速弄清产品的功能特点,但对模块的介绍中没有分清元件和实例,可能不容易跟源程序对的上,也没有对模块的功能进行文字说明,不清楚功能需求和控制算法的话难以理解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值