关于服务
翻译我是一名 Ada 和 SPARK 开发者,专注于绝对不能失败的软件。在过去十多年中,我编写了控制逻辑、铁路联锁和嵌入式航空电子系统,其中一个隐藏的错误是不可接受的,因此对我来说,正确性不是最终检查,而是任何设计选择的起点。我按照受监管行业的期望工作:首先是需求,然后是架构,接着是明确可追溯到这些需求的代码,审查和测试文档与软件同时创建,而不是在最后加上的。
我的主要工具是 SPARK,我应用形式证明来保证运行时错误的缺失,并展示关键功能合同始终成立。与其希望测试能捕捉到每一个边缘案例,我证明属性,如无溢出、无缓冲区溢出、无零除法和无读取未初始化数据。对此,我还增加了对实时和裸机的自信实践经验:确定性调度、严格的内存和时间预算、与认证运行时的集成。我遵循 DO-178C、EN 50128 等标准,并帮助团队将旧的 C 或早期 Ada 代码迁移到可证明和可维护的基础上。
如果您有一个控制器、协议栈或子系统,必须第一次就做对,我将设计、证明并交付它,并提供您的审计员想要查看的文档。我还审查和加固现有的 Ada 项目,建立证明管道和 CI,并指导团队完成他们的第一次 SPARK 体验。
— 从需求到可认证构建的 Ada 2012/2022 和 SPARK 开发
— 形式验证:运行时错误的缺失、合同、不变性证明
— 实时、裸机和 RTOS,具有严格的时间和内存预算
— 安全标准支持:DO-178C、EN 50128、IEC 61508 的可追溯性和证据
— 从 C 和早期 Ada 的迁移、静态分析、代码审查、CI 管道和证明
我的主要工具是 SPARK,我应用形式证明来保证运行时错误的缺失,并展示关键功能合同始终成立。与其希望测试能捕捉到每一个边缘案例,我证明属性,如无溢出、无缓冲区溢出、无零除法和无读取未初始化数据。对此,我还增加了对实时和裸机的自信实践经验:确定性调度、严格的内存和时间预算、与认证运行时的集成。我遵循 DO-178C、EN 50128 等标准,并帮助团队将旧的 C 或早期 Ada 代码迁移到可证明和可维护的基础上。
如果您有一个控制器、协议栈或子系统,必须第一次就做对,我将设计、证明并交付它,并提供您的审计员想要查看的文档。我还审查和加固现有的 Ada 项目,建立证明管道和 CI,并指导团队完成他们的第一次 SPARK 体验。
— 从需求到可认证构建的 Ada 2012/2022 和 SPARK 开发
— 形式验证:运行时错误的缺失、合同、不变性证明
— 实时、裸机和 RTOS,具有严格的时间和内存预算
— 安全标准支持:DO-178C、EN 50128、IEC 61508 的可追溯性和证据
— 从 C 和早期 Ada 的迁移、静态分析、代码审查、CI 管道和证明