在SRS的Wikipedia link中,在“产品视角”部分中,提到了“系统接口”一词。我不清楚究竟是什么意思。我已经查看了其他一些在线提供的SRS样本,但我无法从示例中拼凑出明确的定义。有人可以详细说明“系统接口”所指的是什么吗?
答案 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的“系统界面”版本的理解是:
软件可以是为一般用途而制作的独立产品(例如商业软件,视频游戏等),或者它可以是包含软件和硬件的更大系统的一部分。例如,汽车是一个系统,嵌入式计算机软件只是系统的一部分。另一个例子是医院CT扫描仪中的软件也是系统(机器)的一部分。
假设系统要求是在软件要求之前定义的(即自上而下的方法),请考虑
例如,如果自动驾驶汽车系统要求“汽车应在0.1秒内检测到汽车前方车辆突然减速”,那么您可能需要为软件编写非功能性要求系统如“软件收到来自前传感器的'突然减速'信号后,应处理信号并作出决定。如果是确认的真实场景(不是误报警),则软件应向休息系统发送“命中”信号。决策和信号发送过程不应超过0.05秒。
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代理和数据库。