软件集成涉及多个层次和方面,具体工作包括:
将软件单元集成到一起
代码集成:将不同的源代码文件(如.c或.h文件)以及一些配置文件通过集成工具(如ALM工作流工具)集成构建成完整的软件包。
版本控制:开发工程师接受ALM工作流工具上的缺陷、变更或任务驱动,进行本地代码的修改,并将代码push到代码仓库。
构建过程:集成工程师通过工作流工具接受集成任务,明确集成的分支策略、交付目的、时间计划、各单元信息等,并完成软件的构建。
测试与验证:进行静态或动态集成测试,包括编译器的警告信息、代码扫描结果、资源消耗数据、堆栈分析内容、代码评审及冒烟测试情况等。
打包发布:将可执行文件、测试报告、配置信息、问题清单、releasenotes等一系列必要材料打包对外发布。
将软件集成到硬件上
刷写软件:将完整的软件包刷写到MCU等芯片里,通过接口完成集成。
工具集成
格式化工具:统一文档、表格、报告等的格式,减少沟通障碍和误解。
项目管理软件:有效管理和跟踪项目的任务、进度、资源,确保项目按时、高质量地完成。
API接口:通过编写代码或使用第三方集成工具,实现项目管理软件和格式化工具之间的数据交互和功能集成。
插件或扩展:在项目管理软件中安装格式化工具的插件,或在格式化工具中安装项目管理软件的扩展,实现集成。
第三方集成平台:连接多种不同的工具,实现它们之间的集成。
其他集成工作
系统级集成:将软件集成到机械壳体上,将ECU集成到子系统中,将子系统集成到整车上。
质量保证:确保集成过程中的质量,包括代码质量、测试覆盖率、性能优化等。
文档与培训:编写和更新集成文档,对团队成员进行相关培训,确保他们了解集成的流程和工具使用。
通过这些工作,软件集成能够确保各个组件和系统能够协同工作,满足项目需求和目标。