• 沒有找到結果。

西门子

N/A
N/A
Protected

Academic year: 2022

Share "西门子"

Copied!
29
0
0

加載中.... (立即查看全文)

全文

(1)

西门子Polarion和ESD支持软件工程敏捷开发

陈方瑜, 亚太ALM资深顾问

Realize innovation.

Restricted © Siemens AG 2018

(2)

© Siemens AG 2018

议题

1. 嵌入式软件开发现状

2. 软件开发的敏捷交付

3. 西门子软件开发平台Polarion

(3)

© Siemens AG 2018

YYYY-MM-DD

Page 3 Siemens PLM Software

面临的问题

“如何协同团队的工作,遇到问题如何去追溯和定位?”

“面对不断变更的需求,如何能够确定变更影响的广度和深度,并对软件开发路线做出正确及时的修正?”

“如何缩减研发成本? ”

“如何有效地复用已有的设计?”

“如何提高开发效率?”

“如何保证代码的功能可靠性与安全性?”

“如何确定后续技术的改进方向?”

(4)

© Siemens AG 2018

架构师产品

目前典型的场景

在独立的系统中管理需求

Problems with isolated requirements and domain silos

• 难以理解完整的产品定义

• 过时的信息

• 缺乏协作、协调和计划

• 没有跨域可追溯性或依赖关系

• 工件的版本不一致

• 无法跨区域配置数据和变体

• 缺乏跨域变更影响评估

?

?

工程师系统 机械

工程师 电气

工程师 测试/质量

工程师

Word Excel

工程师软件

DOORS

孤立的需求和独立领域的问题

?

? ? ? ? ? ? ? ? ?

(5)

© Siemens AG 2018

YYYY-MM-DD

Page 5 Siemens PLM Software

理想的功能需求与软件实现的过程(趋势)

Sensor Processing

Control

Actuator Processing

User Interface

需求分析 软件架构 代码开发(IDE)

需求与架构关联

需求与代码关联 架构与代码关联

同一集成开发环境

(6)

© Siemens AG 2018

议题

1. 嵌入式软件开发现状

2. 软件开发的敏捷交付

3. 西门子软件开发平台Polarion

(7)

© Siemens AG 2018

YYYY-MM-DD

Page 7 Siemens PLM Software

西门子战略驱动软件交付业务转型

现状 未来 (2020 horizon)

• 考虑单一产品的系统工程问题,单一产品的功能 网络

• 描述性系统分解和结构模型

• 基于人为决策,基于文档的产品安全,可靠性 分析

• 嵌入式软件架构的有限扩展性

• 维护阶段的诊断和软件升级,软件兼容性和依赖 性的可视化程度低

• 预定义的系统行为

• 设计、开发、制造的烟囱式管理

• 交互产品的系统工程。用户、产品、基础设施设备和环 境事件的功能网络

• 仿真系统模型行为,预测大量复杂场景的的处理

• 自动化程度增加,产品必须满足制造、维护、风险评估、

测试和维修的高标准

• 多个传感器,多个功能的复杂架构,同时提供冗余

• 从测试、运营现场到上游研发的闭环反馈,远程监控、

诊断、维修和升级

• 自适应和预测性系统行为

• DEVOPS和敏捷的产业化实践

(8)

© Siemens AG 2018 需求

系统仿真

特征

多领域系统建模&设计 Multi-Domain System

Modeling & Design

功能

西门子解决方案的与众不同

数字化转变:跨领域系统驱动设计

010100 010001 001011

多领域仿真 Multi-Domain Simulation

Convergent modeling

多物理 虚拟仿真

客户述求 Customer

Needs

验证 确认 Verification Validation

数字化制造 Digital Manufacturing

性能智慧化优化 Performance

intelligence

持续集成,验证和确认

端到端的追溯 —更改和配置编排

(9)

© Siemens AG 2018

YYYY-MM-DD

Page 9 Siemens PLM Software

愿景-西门子工业软件提供软件工程价值链

集成软件价值链

Integrated SOFTWARE Value Chain

敏捷系统工程

Agile Systems Engineering

追溯自动化 AUTOMATE Traceability

集成服务数据 Integrate

“in-service” Data

集成制造 Integrate Manufacturing

DEV OPS

for Embedded Systems

可视化和仿真 Virtualization and

Simulation

生命周期管理 持续交付

Lifecycle Management Continuous Delivery

持续验证&确认 Continuous verification & validation

持续集成反馈 Continuous integrated feedback

In the Loop 精益敏捷

L E AN A G I L E

集成供应商 Integrate Suppliers

芯片到产品 Chip to product

闭环

(10)

© Siemens AG 2018

硬件&软件Hardware & Software 共仿真 co-simulation

独一无二的集成软件工程价值链

为分布式软件优化EE系统

Optimized EE Systems for distributed Software

产品层次设计权衡 多系统集成

Product level trade-offs &

multi-systems integration

安全、可靠软件开发

Secure, Reliable & Safe Software Development

软件建模Software modeling &

行为性能工程behavior engineering

控制&算法开发 Controls &

Algorithm Development EE建模&架构

E/E Modeling &

Architecture

重用 Reuse

UTILIZE UTILIZE REALIZE

REALIZE 追溯

Traceability

T EA MCEN T ER

CONCEPTUALIZE CONCEPTUALIZE

协同

Collaboration

Polari on A LM

编排端到端的软件开发 Orchestrate end-to-end Software development

闭环验证&确认 Closed-loop Verification

& Validation 从芯片到产品

From Chip to Product

(11)

© Siemens AG 2018

YYYY-MM-DD

Page 11 Siemens PLM Software

嵌入式系统研发流程

LMS™ ESD

系统需求

系统设计

PCB布线投板焊接

软件模块代码编写 零部件加工制造

系统集成 产品发布

AADL 导入

数据字典 物理单位

定义模块 定义接口

定义功能

状态机

与需求关联 定义代码分析项

定义模块单元测 模块接口约束

架构模型细化

C代码编写

C代码导入

执行模块单元测

编码规范验证 测试结果自动

与需求验证 从需求触发单元

测试

Simulink 模型导入

软件实现 与单元测试

软件架构工程师

软件工程师、算法工程师

测试工程师

软件集成 与集成测试

软件功能分支管

从需求触发

集成测试

集成测试结果 与需求验证 与被控对象模型

闭环验证

系统架构创建 创建系统架构

ESD

Simulink 架构导入

需求导入 Polarion

需求创建 ESD

AUTOSAR接口

SysML导入

系统工程师 项目经理

基于需求和约束 完成

软件开发全过程

Tc System Modeler

Polarion

(12)

© Siemens AG 2018

模型驱动的嵌入式软件研发流程

模型驱动的嵌入式软件研发流程主要体现在:

设计阶段:

开发阶段:

测试与验证阶段:

l 软件编写之前必须首先进行系统架构 设计和确认

l 所有的功能架构都必须有与之相对应 的测试计划

l 架构设计中的功能模块必须与需求点 一一对应

l 图形化的编程方式 l 复用已有的代码设计

l 支持算法模型的导入与集成 l 算法开发的同时,实现模块测试

用例的开发

l 编码规范的校验

l 针对不同功能模块的测试用例管 理

l 单元测试/集成测试 l 测试用例自动执行

l 测试结果与需求点一一对应进行

验证

(13)

© Siemens AG 2018

YYYY-MM-DD

Page 13 Siemens PLM Software

相对传统IDE的新增功能

多种代码编写 方式:C代码、

真值表、状态 机、图形编程、

代数公式…

C代码 导入功能

Simulink 模型导入

测试用例开发 与执行 编码规范验证

与仿真模型的 闭环验证

与ALM工具集成 实现需求、代 码、测试多向

关联 传统IDE

l 代码编辑 l 编译链接 l 断点调试

(14)

© Siemens AG 2018

1.系统架构设计阶段

ü

通过与ALM工具的集成实现需 求项与测试用例的双向追溯。

通过在POLARION中制定需求 条目,可直接关联到ESD中开 发的测试用例

ü

同时在ESD中的仿真测试结果 可直接导入POARION中进行 与需求性能指标的验证。

通过关联检查确认软件所有需求点都能被功能模块覆盖

ESD

Polarion

(15)

© Siemens AG 2018

YYYY-MM-DD

Page 15 Siemens PLM Software

代码编写

2.软件实现阶段

导入选项:

l 无需任何改动导入已有C文件 l 导入已有的模块配置管理H文件

l C文件导入过程中自动进行编码规范检查 将复用代码导入工程的优势在于:

l 消除功能定义配置选项中相冲突的代码 错误

l 使代码开发中的功能加载项更加直观,

便于后期维护和修改。

导入功能:

导入Simulink与Stateflow模型

导入模型初始化数据 优势:

将Simulink与Stateflow开发的控制策略与 C代码无缝集成

缩短控制策略与软件集成的时间,提供开 发效率

提高软件质量 C代

决策表 数学表达式 有限状态机

提供标准的库模块

IDE强制进行代码检查 软件

检查 规则

语法检查

Warning OK

l 实时检查输入的语法错误 l 实时检查编码规则冲突

(MISRA)

l 实时检查变量物理单位在赋 值过程中的一致性

代码复用 代码与模型集成

在架构模型定义的功能模块中 填充实际软件算法

通过软件工具将需要 复用的C代码导入工程

导入Simulink/Stateflow模型 与算法代码进行集成

(16)

© Siemens AG 2018

3.测试与验证阶段

ü

在ESD中的仿真测试结果可直 接导入POARION中进行与需 求性能指标的验证。

ü

ESD中的测试结果自动上传到 Polarion中进行统一管理。

ü

Polarion为测试未通过项自动 创建问题回归任务

通过关联检查确认软件所有BUG都经过迭代完成回归

Polarion

ESD

(17)

© Siemens AG 2018

YYYY-MM-DD

Page 17 Siemens PLM Software

研发流程总结

项目经理 1

建立需求和对应测试用例

软件架构师 2

定义软件架构,定义接口约束,

功能配置,测试计划等

3

项目经理

修改完善软件架构

4 4

软件工程师

控制工程师

代码开发 复用

向ESD中导入 Simulink控制策略

5 模型工程师

5 6

7

算法和测试用例集 成编译连接 监控项目所有

任务的执行进 度

问题回归

测试未通过项 自动创建回归

任务

8

9

软件工程师

测试工程师

核对功能需求,对变更 进行调整

测试用例自动执行 测试结果验证

软件架构模块细化 填充

软件架构合理性分析,软 件与需求一致性分析

软件架构师

-

9

1

(18)

© Siemens AG 2018

议题

1. 嵌入式软件开发现状 2. 软件开发的敏捷交付

3. 西门子软件开发平台Polarion

(19)

© Siemens AG 2018

YYYY-MM-DD

Page 19 Siemens PLM Software

西门子Polarion ALM

ü 公司成立于2004, 总部在德国斯图加特,2015年被西门子 收购

ü 2005年发布了第一款100%基于 网页的 统一的 全生命周期 管理平台Application Lifecycle Management (ALM) ü 10年来一直致力于灵活的协同合作,完整的可跟踪性,实时协

作和直观的用户界面

ü 10年来公司稳步增长,客户满意度不断提高

财富 1000

250+ 2.5+M 用 户

200+ 扩展

注册的 社区会 员

15K

软件

需求管理 构建&发布 管理

协同合作&

可跟踪性 工作流程

敏捷/混合 项目管理 变更&配置

管理

重用&分支 管理

测试&质量 管理

问题&风险 管理

计划&资源 管理 审计&度量

管理

(20)

© Siemens AG 2018

Polarion ALM客户集

广泛的、忠 诚的客户基础

(21)

© Siemens AG 2018

YYYY-MM-DD

Page 21 Siemens PLM Software

有标准模板的认证工具

唯一一个同时得到IEC 61508/ISO 26262认证的工具 模板: CMMI, FAA, FDA, IEC, ISO, SPICE 等等

“ 我们对Polarion的ISO 26262的工具资格感到兴奋,它帮助我们节省了大量 在自己的认证过程中消耗的时间和金钱。”

– Maria Eugenia Zuniga

Quantum Technologies

(22)

© Siemens AG 2018

Polarion ALM – 三大支柱

协同合作

可追溯性

重用

(23)

© Siemens AG 2018

YYYY-MM-DD

Page 23 Siemens PLM Software

ALM 三大支柱

安全的协同合作

.

通过细粒度的权限控制和健壮的可配 置自动化工作流来轻松和安全地协同

合作并共享资产

安全的协同合作

(24)

© Siemens AG 2018

ALM 三大支柱

确保可追溯性

.

使用Polarion,您可以确保在开发过程中每一步的信 息的完整性

每一步都只是点击一下 — 从修改的代码行开始到高 级的变更请求

确保可追溯性

(25)

© Siemens AG 2018

YYYY-MM-DD

Page 25 Siemens PLM Software

ALM 三大支柱

有效地重用

.

60%-80%的需求、代码和测试都是在项目之 间共享的。

重用、分支和合并您的数据,以支持项目或 产品线进行有效的串行开发或并行开发

有效地重用

(26)

© Siemens AG 2018

ALM

测试与质量保证

问题与缺陷管理 更改与配置

审计指标报告 资源管理

构建和版本管理 软件变体管理

软件需求管理

选择采用 ALM 来获得以下优势…

生命周期可跟踪性

更改影响分析

配置与版本控制

可查证并安全可靠

可实现重用

(27)

© Siemens AG 2018

YYYY-MM-DD

Page 27 Siemens PLM Software

测试与质量保证

问题与缺陷管理

更改与配置

审计指标报告 资源管理

构建和版本管理 软件变体管理

软件需求管理

ALM

eQube

LMS

Simulink LMS

Magic Draw

PLM Tc MATLAB

Perforce Git

Eclipse

Klocwork Vector

LDRA

SPARQL

ISO、

SPICE w3C

全面的 ALM 和 PLM 解决方案的优势

软件 产品可跟踪性

集成式需求管理

集成式更改管理

闭环嵌入式工程

系统驱动型产品开发

利用业界一流的工具

(28)

Fangyu Chen

Sr. ALM Consultant AP PreSales Team

[email protected]

(29)

Thank you.

參考文獻

相關文件

For categorical features like IDs, we have ID: field ID index: feature Each field has many 0/1 features. But how about

 End-to-end reinforcement learning dialogue system (Li et al., 2017; Zhao and Eskenazi, 2016)?.  No specific goal, focus on

许多大经济体如中、美、日等国均采用生产者价格作计算,因此,由参考期 2014

许多大经济体如中、美、日等国均采用生产者价格作计算,因此,由参考期 2014

GCG method is developed to minimize the residual of the linear equation under some special functional.. Therefore, the minimality property does not hold... , k) in order to construct

where L is lower triangular and U is upper triangular, then the operation counts can be reduced to O(2n 2 )!.. The results are shown in the following table... 113) in

Monopolies in synchronous distributed systems (Peleg 1998; Peleg

Since the subsequent steps of Gaussian elimination mimic the first, except for being applied to submatrices of smaller size, it suffices to conclude that Gaussian elimination