List of articles published by Praxis High Integrity Systems between July 2001 and July 2002:End:
 

Praxis High Integrity Systems logo

Praxis High Integrity Systems Limited
arrowHome arrowPublications and Articles arrowPage 2
Photo




 
Jul
2002

Effective Independent Safety Assessment

Authors: Keith Harrison and Joanna Dawson
arrowAbstract
The purpose of an Independent Safety Auditor (ISA) is to audit, assess and review processes used in a project to show compliance to best and appropriate practice and to assess the adequacy of the evidence. The main objective of using an ISA in any project is to provide assurance that a contractor considers and addresses safety issues. An ISA needs to be convinced that the process captures, understands and mitigates the hazards and identifies safety requirements associated with a system. This is carried out by a review of the safety analysis and support documents that leads to the development of the system Safety Case. In addition, it may be beneficial if the ISA conducts some independent analysis to add to the safety evidence or assist in the understanding of the system and its properties. This paper describes the role of the ISA as used on a major UK MoD Procurement. It describes the use of independent analysis using creative thinking to develop a hazard model that provides understanding of the system level hazards and their association with the subsystems.
arrowView PDF [361kb]
 

Jun
2002

Closing the loop – The Influence of Code Analysis on Design

Author: Peter Amey
[Published in Lecture Notes in Computer Science 2361:
Reliable Software Technologies – Ada-Europe 2002
7th Ada-Europe International Conference, Vienna, Austria]
arrowAbstract
Static code analysis originally concerned the extraction from source code of various properties of a program. Although this kind of reverse engineering approach can uncover errors that are hard to detect in other ways, it is not a very efficient use of resources because of its retrospective nature and the late error detection that results. The SPARK language and its associated Examiner tool took a different approach which emphasises error prevention ("correctness by construction") rather than error detection. Recent work with SPARK has shown that very early application of static analysis can have a beneficial influence on software architectures and designs. The paper describes the use of SPARK to produce designs with demonstrably low coupling and high cohesion.
arrowView PDF [213kb]
 
Mar
2002

Correctness By Construction: Better Can Also Be Cheaper

Author: Peter Amey
[Published in CrossTalk Magazine, The Journal of Defence Software Engineering]
arrowAbstract
For safety and mission critical systems,verification and validation activities frequently dominate development costs, accounting for as much as 80 percent in some cases. There is now compelling evidence that development methods that focus on bug prevention rather than bug detection can both raise quality and save time and money. A recent,large avionics project reported a four-fold productivity and 10-fold quality improvement by adopting such methods. A key ingredient of correctness by construction is the use of unambiguous programming languages that allow rigorous analysis very early in the development process.
arrowView PDF [311kb]
 
Jan
2002

Correctness by Construction: Developing a Commercial Secure System

Authors: Anthony Hall and Roderick Chapman
[Published in IEEE Software, pp18-25.]
arrowAbstract
When you buy a car, you expect it to work properly. You expect the manufacturer to build the car so that it's safe to use, travels at the advertised speed, and can be controlled by anyone with normal driving experience. When you buy a piece of software, you would like to have the same expectation that it will behave as advertised. Unfortunately, conventional software construction methods do not provide this sort of confidence: software often behaves in completely unexpected ways. If the software in question is security- or safety-critical, this uncertainty is unacceptable. We must build software that is correct by construction, not software whose behavior is uncertain until after delivery. This article describes how we applied this philosophy to the development of a commercial secure system.
arrowView PDF [357kb]
 
Sep
2001

SPARK and Abstract Interpretation – A White Paper

Authors: Rod Chapman
arrowAbstract
Recently, there has been significant interest in the use of Abstract Interpretation (AI) technology in the static analysis of critical software. A number of AI-based tools exist, but some of their marketing suffers from a level of hyperbole that is at best optimistic, and at worst somewhat irresponsible. There have also been some attempts to compare AI-based static analysis tools with the analysis implemented by the SPARK language and SPARK Examiner toolset. The aim of this white paper is to dispel some of the common myths and to avoid potential confusion with customers.
arrowView PDF [203kb]
 
Sep
2001

A Language for Systems not just Software

Author: Peter Amey

arrowAbstract
The specification and implementation of software-intensive systems have generally been viewed as separate processes with differing notations. There are good reasons for trying to use notations capable of bridging the gap between the two. The SPARK language was originally concerned solely with providing an unambiguous subset of Ada that was suitable for rigorous static analysis and formal verification. Evolution of SPARK'S system of formal comments or annotations has resulted in a language which now provides parallel descriptions of required system behaviour and software implementation. Analyses performed by the SPARK Examiner bind these parallel descriptions together. The result, not foreseen by the original designers of SPARK, is a language that can be used to describe systems rather than just implement software.
arrowView PDF [270kb]
 
Aug
2001

Will it Work?

Authors: Jonathan Hammond, Rosamund Rawlings, Anthony Hall
[Published in RE'01, the proceedings of the 5th IEEE International Symposium on Requirements Engineering]
arrowAbstract
This paper describes experiences using Requirements Engineering (RE) to reduce the risk of large heterogeneous distributed systems not working in their intended environments. Industry is creating ever-larger systems by integrating increasingly complex smaller systems. As a result, systems integration is becoming a major, or even dominant, risk in the production of systems such as an aircraft, railway or telecommunications infrastructure. In this paper, we describe some practical techniques we use for the RE of such integrated systems. They aim to provide assurance, before development, that the final integrated system will achieve its overall requirements. We illustrate the techniques with case studies drawn from their industrial application.
arrowView PDF [510kb]
 
Jul
2001

SPARK – a state-of-the-practice approach to the Common Criteria implementation requirements

Authors: Rod Chapman
[Presented at the 2nd International Common Criteria Conference, Brighton, UK]
arrowAbstract
The Common Criteria (CC) require the use of programming languages whose statements have an "unambiguous meaning." This presentation considers SPARK: a widely-used language that is perhaps unique in actually meeting this requirement. While SPARK has its roots in security research, it is currently most widely used in the aerospace and rail industries, and has a well-established track record in meeting the most demanding standards in these domains, such as UK Def. Stan. 00-55 (for military systems) and DO-178B (for civil aviation). SPARK has recently proven, though, to be ideally suited to the development of secure systems. The design principles of SPARK will be described, highlighting the language's suitability for meeting the requirements of secure systems development. SPARK's static analysis tool (the Examiner) will also be considered, concentrating on the types of analysis, such as information flow analysis and proof of exception freedom, that can be achieved. The strengths of the language will be illustrated with reference to the MULTOS Global Key Centre (MGKC) – the system at the heart of the MULTOS CA – which was developed by Praxis High Integrity Systems using SPARK to meet the requirements of ITSEC E6.
arrowView PDF [222kb]
 
  arrowPublications page 1 | 2 | 3 |  
 

© Website Content Praxis High Integrity Systems 2008

arrowNormal text arrowLarge text

 

corner Site index
cornerSitesearch
corner
Products and Services
line
Key Markets
line
Newsline
Exceptional Peopleline
Publications and Articlesline
About Us
line
Photo
Contact Us +44 01225 466991
bulletOffice contact details, maps
bulletRecruitment and vacancies