全部学习汇总: https://github.com/GreyZhang/hack_autosar
继续看《AUTOSAR_TR_Methodology》,这次看一下SWC应该如何开发。这个也算是给他们应用软件的开发趟趟路了。
原子软件组件的目的
本活动提供了创建 Atomic 软件组件的粗略概述。
开发原子软件组件活动
这是适用于多种原子软件组件的通用活动。 第一步是创建设计,包括runnables、事件、interrunnable变量等。一旦完成,就可以创建合同头文件并可以实现软件组件。
或者,可以定义软件组件和所有包含的元素的安全相关信息(参见第 2.14 章)。 如果软件组件是作为 SEooC(上下文之外的安全元素)开发的,并且在开发时没有完全了解安全要求,则可以设置 ASIL 属性来指示组件开发的完整性级别,即在开发过程中 已应用 ISO 26262 针对指定 ASIL 的所有开发过程相关要求。
看起来,各种调度等需求是在应用软件开发的时候进行创建定制的。
需要注意,实施方法、质量、测试等超出了本活动的范围。这个也容易理解,软件架构肯定不会涉及到控制策略的算法等设计。
在组件被实现并成功编译后,其资源被测量并存储为软件组件描述的一部分,以供下游进程进一步使用。
该模式还包括创建时序模型、绑定预构建变体和评估变体的可选任务,所有这些都在原子软件组件的范围内。 需要注意,活动中这些可选任务的顺序只是一个可能的例子。
工作流
图 2.7 显示了针对此用例假设的工作分解。 接下来的两个图 2.9 和 2.10 显示了该用例中涉及的方法库的所有任务和工作产品。
开发一个原子软件组件
这个流程这么全面,从需求、行为定义、接口文件、编译、测试等多个方面进行了输入的界定。流程简单,但是覆盖面的确是很全面。
定义软件组件的安全信息
仔细看一下,其实这个表格中的大片文字跟前面的内容是一致的。看起来,这个表的作用就是一个指点查看的作用,类似于作业书之类的指点信息。
开发原子软件组件 - 工作产品的详细视图
定义了一系列发软件开发的输入输出,需要注意的是右下角的输出。RTE的一部分配置信息其实是来自于这个阶段的输出。
主要的一个输出还是RTE的prebuild信息,不过从信息看,这个图更多的是在介绍一系列文件之间的依赖关系。
以上就是SWC(在我的工作中更多其实是称之为应用软件)的开发描述。收获不是特别大,但是从这里至少知道了RTE的配置其实是依赖于SWC本身的设计的。这是一个很关键的信息,那么,如果存在两个团队的合作会是什么状态呢?肯定是上下都有对RTE的输出,这样,这个RTE的配置应该会是一个什么状态呢?这个算是提出了一个疑问,后面得继续寻找答案。只有这个问题的答案得到了解决后面的工作之中涉及到的各种开发模式究竟应该选择什么样的模式才会有一个较为明确的方式。