Software development of safety critical systems must combine the application of software developments techniques and safety analysis. The safety analyzers and software architects must have a common understanding of what makes a system safe, and what mitigation means improve the software component reliability and quality. Model driven development is an approach to reduce the gap between safety analysis technologies (e.g. FMECA and FTA) and software development languages (e.g. UML). Model driven technologies (e.g. metamodels and model transformation) give support for the integration of safety analysis concepts (e.g. risks, hazards and mitigation means) and software development concepts (e.g. components), and for the direct application of safety analysis on to software architectures.