二章将属于较轻松的内容,整个过程也会主要以文字描述为主。
  最常见的功能定义为按使用操作来定义,如下面的例子是最普通的:
  1)用户将雨刮开关打至高速档,雨刮以高速速率刮刷
  2)在电源档位为OFF时,用户将转向灯开关打到左边,左侧的位置灯亮起
  3)用户踩下刹车踏板,制动灯亮起
  从上述的例子来看,只描述了用户操作方式,却未提到系统信号交互和性能要求,如当用户将雨刮打到高速档时,是一个什么样的开关信号输入到哪里,哪个件控制电机的哪个电源脚,这些也需以技术语言的方式进行描述。不过对于一些体系相关的要求,如TS的要求、CMMI的要求,它们均是要求需求中有类似的用户case的描述的,否则就是一个不合符标准的需求。当然,更完整的需求应该不仅只是上面的一句话,它需包含前提、操作、反应三方面。将1)细化如下。
  a)前提:电源档位为ACC或ON,当前雨刮处于低速刮刷状态
  b)操作:用户将雨刮开关打至高速档
  c)响应:雨刮转至高速档刮刷
  表面上看上述定义貌似清楚了,实则仍不行。因为在前提中“当前雨刮处于低速刮刷状态”是否“手动开关低速、自动雨刮低速、间歇功能低速、洗涤连带刮低速”均包含呢?还是只一种或两种?这些均未说清,同时,如果当前有某些故障呢?或者该功能是否和电压有关,如电压大于16V了还要动作吗?小于9V了还要动作吗?这些情况均是实际中会出现的,如果真正需用于开发,肯定需要说明清晰;而如果只是应对一些体系审核,则审核的人不会细究其中很多的技术细节,他们仅仅只会看有没有类似的描述。
  第二种定义方式为按功能类别,如:本车型的近光灯包含了2种光形模式,即C型近光模式和V级近光模式...这种定义为按类别的定义。
  第三种定义方式为按输入信号的区间分别定义,其更接近技术语言,如以下示例。
  1)当传感器输入信号在0~0.7V之间时,代表传感器尚未被初始化、踏板位置尚未安装好。
  2)当传感器电压在0.7~4.5V时,表明踏板已经安装好并在正常工作区间;此时若已经完成初始化则按第#节要求操作。
  3)当传感器电压在4.5~5V之间,说明踏板安装过高,此时应记录##DTC。

  而对于研发来说,光有以上这些定义是并非足够,本章节的后续部分将分别做出大体介绍。

A.02.01—功能定义—一般定义的更多相关文章

  1. 功能要求:定义一个两行三列的二维数组 names 并赋值,使用二重循环输出二维数组中的元素。

    功能要求:定义一个两行三列的二维数组 names 并赋值,使用二重循环输出二维数组中的元素 names={{"tom","jack","mike&qu ...

  2. http://www.cnblogs.com/draem0507/archive/2013/02/01/2889317.html

    http://www.cnblogs.com/draem0507/archive/2013/02/01/2889317.html

  3. oracle问题 《经由直接路径由 EXPORT:V10.02.01 创建的导出文件 IMP-00013: 只有 DBA 才能导入由其他 DBA 导出的文件》

    问题:  经由直接路径由 EXPORT:V10.02.01 创建的导出文件 : 只有 DBA 才能导入由其他 DBA 导出的文件 解决方法:用sys 登录,给当前用户授权,授权语句:grant dba ...

  4. 2016.02.01日,UdoOS系统项目正式开通了

    2016.02.01日,UdoOS系统项目正式开通了,源代码即将开放 Copyright (c) 2016

  5. 02.02.01 第1章 简介及基础操作(Power BI商业智能分析)

    02.02.01.01 powerbi简介 00:10:59 02.02.01.02 query数据导入 00:03:26 具体操作实例如下: 02.02.01.03导入access数据 00:05: ...

  6. c 语言中宏定义和定义全局变量的区别

    宏定义和定义全局变量的区别: 1 作用时间不同. 宏定义在编译期间即会使用并替换,而全局变量要到运行时才可以. 2 本质类型不同. 宏定义的只是一段字符,在编译的时候被替换到引用的位置.在运行中是没有 ...

  7. http://www.cnblogs.com/langtianya/archive/2013/02/01/2889682.html

    http://www.cnblogs.com/langtianya/archive/2013/02/01/2889682.html

  8. A.02.00—功能定义与唤醒—起始

    第一章节主要讲的是模块普通的输入输出,精力及能力有限,仅介绍了一些较为普通的信号,另一些信号留待想了解的人自我探索. 第二章节打算介绍的是功能定义和休眠唤醒相关的内容.也是一些基础内容,对于比较少见或 ...

  9. C++面试常见问题——01预处理与宏定义

    C++面试常见问题--------01预编译和宏的使用 C++预处理器 预处理器是一些指令,它将指示编译器在实际编译之前需要完成的预处理.预处理必须要在对程序进行词法与语义分析.代码生成与优化等通常的 ...

随机推荐

  1. 南京邮电大学java程序设计作业在线编程第八次作业

    程序设计类课程作业平台 王利国 主页 教学资源 我的作业列表 程序设计课 账户 王利国的"Java语言程序设计第8次作业(2018)"详细 主页 我的作业列表 作业结果详细 总分: ...

  2. 在java中写出完美的单例模式

    1. 前言 单例(Singleton)应该是开发者们最熟悉的设计模式了,并且好像也是最容易实现的——基本上每个开发者都能够随手写出——但是,真的是这样吗? 作为一个Java开发者,也许你觉得自己对单例 ...

  3. ASP.NET Core 入门教程 6、ASP.NET Core MVC 视图布局入门

    一.前言 1.本教程主要内容 ASP.NET Core MVC (Razor)视图母版页教程 ASP.NET Core MVC (Razor)带有Section的视图母版页教程 ASP.NET Cor ...

  4. mssql sqlserver 表增加列后,视图不会自动更新相关列的两种解决方法分享

    摘要: 今天对物理数据表,进行增加列操作后,程序一直显示无法找到相应列,通过仔细比对发现,视图中无相应列更新,下文将具体的解决方法分享如下: 例: create view vw_test as sel ...

  5. c/c++ 网络编程 UDP 设定MTU

    网络编程 UDP 设定MTU MTU(Maximun Transmisson Unit):一次送信的最大size. 在程序里动态改变MTU.注意:程序运行需要root权限. 程序运行的方法: sudo ...

  6. redis快照持久化和aof日志持久化

    持久化就是即使断电/重启需要存储的数据不会丢失,即将数据存储在设备中,一般存在硬盘内 redis的持久化有2种方式 :1-rdb快照  2-aof日志,可以通过配置redis.conf文件进行配置 r ...

  7. Windows Service 学习系列(二):C# windows服务:安装、卸载、启动和停止Windows Service几种方式

    一.通过InstallUtil.exe安装.卸载.启动.停止Windows Service 方法一 1.以管理员身份运行cmd 2.安装windows服务 切换cd C:\Windows\Micros ...

  8. iowait 过高问题的查找及解决linux

    Linux 有许多可用来查找问题的简单工具,也有许多是更高级的 I/O Wait 就是一个需要使用高级的工具来debug的问题,当然也有许多基本工具的高级用法.I/O wait的问题难以定位的原因是因 ...

  9. nginx [alert] 12339#0: 1024 worker_connections are not enough

    进一步分析报错原因,具体步骤如下: l  查看这两台系统最大的允许文件打开数 [root@nginx01 logs]# cat /proc/sys/fs/file-max 343927 l  通过ul ...

  10. echarts之legend-改变图例的图标为自定义图片

    legend:{ show:true, orient:'horizontal', borderColor:'#df3434', borderWidth:2, data:[ { name:'蒸发量', ...