en50128-design

Apply EN 50128 design patterns to MISRA C:2012 compliant C software.

5|4|Updated Feb 6, 2026
One-click install
npx skills add https://github.com/norechang/opencode-en50128 --skill en50128-design
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: en50128-design
Source: https://github.com/norechang/opencode-en50128/tree/main/.opencode/skills/en50128-design
Command: npx skills add https://github.com/norechang/opencode-en50128 --skill en50128-design

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Provide clear guidance and patterns to design EN 50128-compliant C software using MISRA C:2012, helping teams build safer, auditable railway software.

Core Features & Use Cases

  • MISRA C:2012-aligned design patterns for EN 50128 Section 7.3.
  • Defensive programming and modular design to meet SIL requirements.
  • Use case: When starting a new SAS/SDS for a C module, apply patterns to ensure low coupling, high cohesion, and clear interfaces.

Quick Start

Review the EN 50128 design guidance and apply the patterns to your C module design to ensure MISRA C:2012 compliance and robust modular interfaces.

Frequently Asked Questions about en50128-design

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I design MISRA C:2012 compliant software for EN 50128 railway applications?▼

EN 50128 design patterns for MISRA C:2012 software enforce modularity, static memory allocation, and traceability per Table A.3. Apply these patterns during module design to ensure low coupling, high cohesion, and robust interfaces for SIL-compliant railway software.

What defensive programming patterns are required for EN 50128 SIL compliance in C?▼

Defensive programming patterns for EN 50128 SIL compliance focus on modular design, static memory allocation, and clear interface definitions. These patterns target Section 7.3 requirements to build auditable, robust C software for railway-grade safety systems.

How do I structure a C software architecture review for railway safety-critical systems?▼

Structure C software architecture reviews for railway safety-critical systems by applying EN 50128 design patterns to verify low coupling, high cohesion, and MISRA C:2012 compliance. Review module designs against Table A.3 requirements for traceability and defensive programming.

Can I use dynamic memory allocation in EN 50128 compliant C modules?▼

EN 50128 compliant C modules enforce static memory allocation rather than dynamic allocation. The design patterns restrict memory management to meet SIL requirements and ensure predictable, auditable behavior in railway safety-critical software.

What is the best way to define module interfaces for EN 50128 safety-critical software?▼

Define module interfaces for EN 50128 safety-critical software using MISRA C:2012-aligned design patterns that ensure low coupling and high cohesion. Apply defensive programming and modular design principles to create clear, auditable interface definitions.

Does EN 50128 require traceability for C software module design in railway projects?▼

EN 50128 requires traceability for C software module design per Table A.3. Apply design patterns that enforce traceability alongside modularity and defensive programming to meet SIL requirements and produce auditable railway software documentation.