软件需求规范(SRS):什么是系统接口'?

时间:2014-09-08 16:26:45

标签: srs

在SRS的Wikipedia link中,在“产品视角”部分中,提到了“系统接口”一词。我不清楚究竟是什么意思。我已经查看了其他一些在线提供的SRS样本,但我无法从示例中拼凑出明确的定义。有人可以详细说明“系统接口”所指的是什么吗?

3 个答案:

答案 0 :(得分:8)

IEEE 830-1998标准将“硬件接口”定义为

  

'软件之间每个接口的逻辑特性   产品和系统的硬件组件'

同样,它将“用户界面”定义为

  

'软件之间每个接口的逻辑特性   产品和其用户'。

所以,一点推理告诉我们'系统接口'应该被定义为

  

'软件之间每个接口的逻辑特性   产品和更大的系统'。

这意味着,'系统接口'不是更大的系统与外部世界的接口,而是软件与更大系统内的所有其他内部接口,包括用户接口,硬件接口和软件接口。

具有讽刺意味的是,830-1998是以一种不一致的方式编写的,推荐的部分层次结构是:

2. Overall Description
   2.1. Product perspective
     2.1.1 System Interfaces 
     2.1.2. User Interfaces
     2.1.3. Hardware Interfaces
     2.1.4. Software Interfaces 
...

其中2.1.1应该是2.1.2 - 2.1.4的父节。

因此,他们对“系统接口”部分给出了一些模糊的定义:

  

这应该列出每个系统接口并识别功能   用于完成系统要求和界面的软件   与系统匹配的描述。

无论是谁写的,请尝试从12年级的英语作文课程中获得一个B!

无论如何,作为非母语人士,我对IEEE的“系统界面”版本的理解是:

  1. 软件可以是为一般用途而制作的独立产品(例如商业软件,视频游戏等),或者它可以是包含软件和硬件的更大系统的一部分。例如,汽车是一个系统,嵌入式计算机软件只是系统的一部分。另一个例子是医院CT扫描仪中的软件也是系统(机器)的一部分。

  2. 假设系统要求是在软件要求之前定义的(即自上而下的方法),请考虑

  3. a)您的软件必须具备哪些功能才能满足系统要求? (不能忘记更大的图片)

    例如,如果自动驾驶汽车系统要求“汽车应在0.1秒内检测到汽车前方车辆突然减速”,那么您可能需要为软件编写非功能性要求系统如“软件收到来自前传感器的'突然减速'信号后,应处理信号并作出决定。如果是确认的真实场景(不是误报警),则软件应向休息系统发送“命中”信号。决策和信号发送过程不应超过0.05秒。

    b)您的软件与更大系统中的其他所有内容之间的接口是什么?

    E.g。您的车载计算机软件应与前传感器具有以下接口:

    public int processFrontSensorSignal(Signal signal){
       if (signal.getType() == 1){
          SuddenSlowDownSignalProcessor.process(signal);
       } else if (signal.getType() == 2){
          ...
       }
       else
        ....
    }
    

    这些界面应明确界定。

    如果您的软件不是更大系统的一部分,或者它被设计为在一般系统(例如MS Windows应用程序)中运行的通用软件,则几乎不需要指定“系统接口”部分。

答案 1 :(得分:1)

系统界面包括以下内容:  1.用户界面,例如屏幕格式,键  2.硬件接口,例如配置特性,支持的设备  3.软件接口,例如操作系统  4.通信接口 - LAN

此外,您可能希望包含与所有这些接口相关的系统的高级视图。

如果您需要更多详细信息,请与我们联系。

答案 2 :(得分:0)

上下文中的系统接口将指系统执行其目的所需的所有接口。

如果您的服务器使用Web服务响应/队列消息或数据库轮询,则可以将它们计为系统的3个接口。这些接口的实现将是SOAP impl,ACTIVEMQ代理和数据库。

相关问题