A Quality Requirements Safety Model for Embedded and Real Time Software Product Quality



Similar documents
Model of Resources Requirements for Software Product Quality Using ISO Standards

Software Classification Methodology and Standardisation

Space project management

Clinical Risk Management: Agile Development Implementation Guidance

University of Paderborn Software Engineering Group II-25. Dr. Holger Giese. University of Paderborn Software Engineering Group. External facilities

Software Test Plan (STP) Template

The Role of Information Technology Studies in Software Product Quality Improvement

Aviation Safety Policy. Aviation Safety (AVS) Safety Management System Requirements

Controlling Risks Risk Assessment

Space product assurance

Software Quality Assurance in an Undergraduate Software Engineering Program

A Risk Management Standard

Implementation of ANSI/AAMI/IEC Medical Device Software Lifecycle Processes.

LSST Hazard Analysis Plan

Traceability Patterns: An Approach to Requirement-Component Traceability in Agile Software Development

An Agent-Based Concept for Problem Management Systems to Enhance Reliability

The Lowitja Institute Risk Management Plan

Risk Management Policy and Framework

Title: Rio Tinto management system

Moving from ISO9000 to the Higher Levels of the Capability Maturity Model (CMM)

Risk Analysis of a CBTC Signaling System

IT Service Management

The Asset Management Landscape

Accounting for Non-Functional Requirements in Productivity Measurement, Benchmarking & Estimating

Ontology based Recruitment Process

V. Phani Krishna et al, / (IJCSIT) International Journal of Computer Science and Information Technologies, Vol. 2 (6), 2011,

The use of statistical problem solving methods for Risk Assessment

REGULATORY GUIDE (Draft was issued as DG-1207, dated August 2012)

Characteristics of Computational Intelligence (Quantitative Approach)

1. INTRODUCTION. 23'd Int. Conf. Information Technology Interfaces /TI 2007, June 19-22, 2001, Pula, Croatia

Bedford Group of Drainage Boards

Testing of safety-critical software some principles

INDEPENDENT VERIFICATION AND VALIDATION OF EMBEDDED SOFTWARE

Certification Authorities Software Team (CAST) Position Paper CAST-13

White paper: Comprehensive Review and Implementation of Risk Management Processes in Software Development

Software Engineering. Introduction. Software Costs. Software is Expensive [Boehm] ... Columbus set sail for India. He ended up in the Bahamas...

Announcement of a new IAEA Co-ordinated Research Programme (CRP)

Information Security Management System for Cloud Computing

A System-safety process for by-wire automotive systems

COMBINING PROCESS MODELLING AND CASE MODELLING

David Vago Midwest Asset Management Consultants Tom DeLaura Eramosa International

Risk Management: Coordinated activities to direct and control an organisation with regard to risk.

When Your Life Depends on Software

Using COSMIC-FFP to Quantify Functional Reuse in Software Development

How To Write Software

Comprehensive Review and Implementation of Risk Management Processes in Software Development

Guidance for Industry: Quality Risk Management

OPTIMISING PROCESSES OF IT ORGANISATION THROUGH SOFTWARE PRODUCTS CONFIGURATION MANAGEMENT

How To Develop Software

Kunal Jamsutkar 1, Viki Patil 2, P. M. Chawan 3 (Department of Computer Science, VJTI, MUMBAI, INDIA)

Role of Functional Clones in Software Development

Introducing ECSS Software-Engineering Standards within ESA

Strategic Release Planning Challenges for Global Information Systems A Position Paper

Workflow Automation and Management Services in Web 2.0: An Object-Based Approach to Distributed Workflow Enactment

Criteria for Flight Project Critical Milestone Reviews

QUality Assessment of System ARchitectures (QUASAR)

Test Coverage Criteria for Autonomous Mobile Systems based on Coloured Petri Nets

Analyzing the Security Significance of System Requirements

CONSOLIDATED VERSION IEC Medical device software Software life cycle processes. colour inside. Edition

ISO Gap Analysis - Case Study

River Stour (Kent) Internal Drainage Board Risk Management Strategy and Policy

Basic Testing Concepts and Terminology

Nuclear Safety Council Instruction number IS-19, of October 22 nd 2008, on the requirements of the nuclear facilities management system

An Overview of Challenges of Component Based Software Engineering

The «SQALE» Analysis Model An analysis model compliant with the representation condition for assessing the Quality of Software Source Code

Ein einheitliches Risikoakzeptanzkriterium für Technische Systeme

IT Process Conformance Measurement: A Sarbanes- Oxley Requirement

Security Engineering Approach for the Development of Secure Information Systems

Investigation of Adherence Degree of Agile Requirements Engineering Practices in Non-Agile Software Development Organizations

A CASE STUDY ON SOFTWARE PROJECT MANAGEMENT IN INDUSTRY EXPERIENCES AND CONCLUSIONS

Data Management and Retention for Standards Consortia

Evaluation of the Iceland State Financial and Human Resource System REPORT OF THE INDIVIDUAL EVALUATOR. Annex 2 SYSTEM AND SOFTWARE QUALITY

Functional Safety Management of the development process of safety related programmable electronic systems at Jaquet Technology Group

SPiCE for SPACE: A Process Assessment and Improvement Method for Space Software Development

ISO Functional Safety Draft International Standard for Road Vehicles: Background, Status, and Overview

ESA s Data Management System for the Russian Segment of the International Space Station

Requirements for Software Deployment Languages and Schema

Integrated Risk Management:

Edwin Lindsay Principal Consultant. Compliance Solutions (Life Sciences) Ltd, Tel: + 44 (0) elindsay@blueyonder.co.

quality, health & safety and environment training and consulting

SOUTHERN RURAL WATER POLICY RISK MANAGEMENT POLICY

Software Engineering from an Engineering Perspective: SWEBOK as a Study Object

Conference Proceedings and Journal Publications

Enterprise Risk Management Framework Strengthening our commitment to risk management

Risk Management - Enterprise-Wide Risk Management Policy and Framework NSW Health

Mapping A Knowledge Areas of The SWEBOK Standard With The CBOK in Software Engineering Field Using A Set Theory

Embedded Critical Software Testing for Aerospace Applications based on PUS

Software Safety Basics

Lecture Softwareengineering-Vertiefung

Mission Operation Ground. ESA. Mario Merri GSAW, Los Angeles, USA 2 Mar 2011 ESA UNCLASSIFIED

Safety Certification of Software-Intensive Systems with Reusable Components

Guidance on Risk Assessment and Control

Waveney Lower Yare & Lothingland Internal Drainage Board Risk Management Strategy and Policy

Requirements Analysis that Works!

FUTURE RESEARCH DIRECTIONS OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING *

PABIAC Safety-related Control Systems Workshop

1. Software Engineering Overview

SOFTWARE ASSURANCE STANDARD

UPROM Tool: A Unified Business Process Modeling Tool for Generating Software Life Cycle Artifacts

Policy : Enterprise Risk Management Policy

Transcription:

A Quality Requirements Safety Model for Embedded and Real Time Product Quality KHALID T. AL-SARAYREH Department of Engineering Hashemite University Zarqa 13115, Jordan khalidt@hu.edu.jo Abstract safety requirements quality is typically expressed at the software system levels, which may lead to specific safety-related functions that may be applied in either or both hardware and software. According to the Previous work of academia and industry standards such as ISO 25021 square series safety requirements can be defined and measured internally and externally; the internal safety concepts could include control software hazards, safety levels of software integration and critical software catastrophic, while the external safety could include software safety functions, safety failure mechanism and safety switching of redundant items. This paper collects and organizes these safety-related requirements into a quality requirements safety model for identifying and evaluation of the quality safety requirements of embedded and real time systems.. Keywords: Safety Requirements, Product Quality, ISO 2502n Squares 1. Introduction A quality requirements model for safety is a key to the success of the embedded and real time software systems. The development of such quality model of requirements early in the software life cycle is therefore of prime importance by defining a comprehensive specification and evaluation of software product quality. The qualities of the safety requirements as currently defined can be considered subjective since they can be viewed, interpreted and evaluated differently by different people; when the safety requirements are stated briefly and vaguely the problem is compounded [1]. Safety requirements and their qualities can also be defined relatively, since the interpretation and importance of such kind of safety requirements may vary depending on the particular system being considered. Furthermore, if the safety requirements are not addressed, then it may lead to [2] " which is inconsistent and of poor quality. User, developer and clients who are unsatisfied and time and cost overruns to fix software, which was not developed with such requirements". However, safety requirements may also impact considerably project effort and should also be taken into account when doing project benchmarking. It is however challenging to take these requirements into account in software estimation and software benchmarking. The aim of this paper is to propose a procedure for describing, and next quality, software safety using a strategy based neither on our own views nor on individual researchers view of such type of safety requirements, but on a consensual view documented in international standards of software safety as quality requirements. For the purpose of this research, the set of European standards have been selected: [3-6], ISO 2502n [7] square standards and a previous published work for academia. This paper is organized as follows. Section 2 presents related work. Section 3 presents a standardbased procedure to develop a model of requirement for software safety. A conclusion is presented in Section 4. 2. Related Work The European Standard series [3-6] present software safety requirement for real-time and embedded software: in these standards, the safety requirements are described as system state where an acceptable level of risk is not exceeded with respect to fatality, injury or occupational illness, damage to launcher hardware or launch site facilities, damage to an element of an interfacing manned systems, the term safety is described differently in ISO/IEC Guide 2, as freedom from unacceptable risk or harm. The ISO 8402 [8] was replaced by ISO 9000, but the definition of safety was not maintained. According to safety requirements shall be identified and traced from the system level into the ISBN: 978-1-61804-297-2 200

design and then allocated to the lower levels as well as the identified safety requirements shall be justified in the design and presented in an appropriate document. [3-4] describe the the mandatory aspects for safety requirements of a system safety programme to ensure that all safety risks associated with the design, development, production and operations of space product are adequately identified, assessed, minimized, controlled and finally accepted through the implementation of a safety assurance programme. The [3-6] safety policy is applied by implementing a system safety program, supported by risk assessment, which can be summarized as follows: Hazardous characteristics (system and environmental hazards) and functions with potentially hazardous failure effects are identified and progressively evaluated by iteratively performing systematic safety analyses; The potential hazardous consequences associated with the system characteristics and functional failures are subjected to a hazard reduction sequence whereby: hazards are eliminated from the system design and operations; hazards are minimized and hazard controls are applied and verified. The risks that remain after the application of a hazard elimination and reduction process are progressively assessed and subjected to risk assessment, in order to: show compliance with safety targets; support design trade-offs; identify and rank risk contributors; support apportionment of project resources for risk reduction; assess risk reduction progress; and support the safety and project decision-making process (e.g. waiver approval, residual risk acceptance). The adequacy of the hazard and risk control measures applied are formally verified in order to support safety validation and risk acceptance; Approval obtained from the relevant authorities. ISO series [9] defined Safety specifications as equipment/system design features, performance specifications, and training that reduce the potential for human or machine errors or failures that cause injury or death within the constraints of operational effectiveness, time, and cost throughout the equipment/system life cycle as well as describe the Safety Plan as the approach and methods for conducting safety analysis and assessing the risk to operators, the system, the environment, or the public. ISO standards [7-9] list the Safety measurements to assess the level of risk of harm to people, business, software, property or the environment in a specified context of use. It includes the health and safety of the both the user and those affected by use, as well as unintended physical or economic consequences. The IEEE Standard for Safety described software safety as falls into one or more of the following categories: whose inadvertent response to stimuli, failure to respond when required, response outof-sequence, or response in combination with other responses can result in an accident that is intended to mitigate the result of an accident that is intended to recover from the result of an accident However, neither ECSS nor IEEE series propose a way to measure such these safety requirements, while ISO 25021 presents measures of the outcome of safety management as a quality of the software product quality, not of the safety requirements that have to be built into the software thereby not allowing for measuring the functional size of such software safety requirements: without measurement it is of course challenging to take such an NFR as a quantitative input in an estimation process or in productivity benchmarking. This paper reports on the work carried out to define safety requirements on the basis of international standards and on the safety requirements foundation results in the academia. 3. The Proposed Quality Procedure Model This section illustrates the proposed procedure [10-16] for building a quality model for safety requirement as follows: 3.1 A Definition of Safety Requirements The safety requirements are defined as system state where an acceptable level of risk is not exceeded with respect to fatality [3-6]. The safety defined as human or machine errors or failures that cause injury or death within the constraints of operational effectiveness, time, and cost throughout the equipment/system life cycle [3-6]. The safety is the levels of risk of harm to people, business, software, property or the environment in a specified context of use [7-9]. Safety is a freedom from software hazards or a systematic approach to reducing software risks [7-9]. 3.2 Types of Safety Requirements ISBN: 978-1-61804-297-2 201

This section illustrates the types of safety requirements as follows: Safety mandatory categories Catastrophic hazards o Loss of life, life-threatening or permanently disabling injury or occupational illness, loss of an element of an interfacing manned flight system. o Loss of launch-site facilities or loss of system. o Severe detrimental environmental effects. Critical hazards o Temporarily disabling but not lifethreatening injury, or temporary occupational illness. o Major damage to flight systems or loss or major damage to ground facilities. o Major damage to public or private property. o Major detrimental environmental effects. Safety non-mandatory categories Marginal hazards o Minor injury, minor disability, minor occupational illness, or minor system or environmental damage. Negligible hazards o Less than minor injury, disability, occupational illness, or less than minor system or environmental damage. 3.3 Safety Requirement Entities This section illustrates the safety requirements entities as follows: External entities of Safety Safety Functions Safety Mechanism Safety Switching of Redundant items Internal entities Safety Safety Related Safety Levels of Integration Safety Audit Control Hazards Critical Catastrophic 3.4 Identification of the Entity types of Safety This section illustrates the entity types of safety requirements and as follows: Entity Type 1: Safety Functions Each software safety function shall receive or send with at least one functional process from/to safety related software. Safety Functions Figure 1: Safety Functions Entity Type 2: Safety Mechanism Each failure mechanism could send with at least one functional process to one or more safety levels of software integration. Safety Mechanism Figure 2: Safety Mechanism Entity Type 3: Safety Switching of Redundant items Each failure mechanism could send or/and receive with at least one functional process to one or more items in safety audit software. Each failure mechanism could send or/and receive with at least one functional process to check one or more items in redundancy status information. Safety Switching of Redundant items Figure 3: Safety Switching of Redundant items Entity Type 4: Safety Related Each safety related software shall receive process from/to software failure data group. Each safety related software shall receive process from/to the allocated failure in the safety levels of software integrations. Safety Related Figure 4: Safety Related Safety Related Safety Levels of Integration Safety Audit Redundancy Status Safety Levels of Integration Entity Type 5: Safety Levels of Integration. ISBN: 978-1-61804-297-2 202

Each safety level of software integration shall functional process from/to fault tolerance data group. Each safety level of software integration shall functional process from/to safety related software to allocated the fault. Each safety level of software integration shall functional process from/to safety software audit data to check the integration with data. Safety Levels of Integration Safety Audit data Figure 5: Safety Levels of Integration. Entity Type 6: Safety Audit Each safety audit software shall receive process from/to redundancy status information. Each safety audit software shall receive process from/to safety levels of software integration. Safety Audit Fault Tolerance Safety Related Redundancy Status Safety Levels of Integration Figure 6: Safety software audit data. Entity Type 7: Control Hazards Each safety control software hazards shall functional process from/to failure tolerance data group to control this kind of faults. Each safety control software hazards shall functional process from/to software failure data group to control this kind of error. Each safety control software hazards shall functional process from/to critical software catastrophic to check if the defect is harm or not. Control Hazards Critical Catastrophic Tolerance Figure 7: Control Hazards. Entity Type 8: Critical Catastrophic Each safety critical software catastrophic shall functional process from/to failure tolerance data group to check this kind of faults before exchange processes with critical software catastrophic. Each safety critical software catastrophic shall functional process from/to redundancy status information data group to check if the critical situation are caused by redundant data or not. Each safety critical software catastrophic shall functional process from/to control software hazards to identify the source and the degree of the defects. Critical Catastrophic Tolerance Redundancy Status Control Hazards Figure 8: Critical Catastrophic 3.5 Model of the Requirements for safety requirements In the following design of the safety requirements model: Entity type 1 can be used to measure the external safety for the software safety functions from the received/send data movement from/to safety related software such as software operation, design and configuration risk- seefigure 9. ISBN: 978-1-61804-297-2 203

Entity type 2 can be used to measure the external safety for the safety failure mechanism from the received/send data movement from/to safety levels of software integration such as loss of operation, failure detection and failure isolation - see-figure 9. Entity type 3 can be used to measure the external safety for the safety switching of redundant items from the received/send data movement from/to safety software audit data and redundancy status of information such as duplicate or corrupted data - see-figure 9. Entity type 4 can be used to measure the internal safety for the safety related software from the received/send data movement from/to software failure data group list and safety levels of software integration such as loss of operation, failure detection and failure isolation - see-figure 9. Entity type 5 can be used to measure the internal safety for the safety levels of software integrity from the received/send data movement from/to software failure tolerance data group list and safety related software safety software audit data - see-figure 9. Operation Risk Safety Related (Entity Type 4) Design Risk Configuration Risk Control Hazards (Entity Type 7) Loss Operation Internal Safety Safety Levels of Integration (Entity Type 5) Detection Isolation Safety Audit (Entity Type 6) Tolerance Redundancy Status Critical Catastrophic (Entity Type 8) Safety Functions (Entity Type 1) Safety Mechanism (Entity Type 2) Safety Switching of Redundant items (Entity Type 3) Boundary External Safety Figure 9. A Quality Requirements Safety Model Entity type 6 can be used to measure the internal safety for the safety software audit data from the received/send data movement from/to safety levels of software integrity and redundancy status information data group list - see-figure 9. Entity type 7 can be used to measure the internal safety for the control software hazards from the received/send data movement from/to failure tolerance data group list and critical software catastrophic - see-figure 9. ISBN: 978-1-61804-297-2 204

Entity type 8 can be used to measure the internal safety for the critical software catastrophic from the received/send data movement from/to failure tolerance data group list and control software hazards - see-figure 9. 4. Conclusion This paper introduced a procedure for measuring requirements for internal and external safety required for system safety requirement. This included a proposed generic model for safety requirement using standard based identification of three set of international standards, this model is independent of the software type or languages in which these safety requirements will be implemented. It is important to remark that the design measurement procedure for safety requirements for the embedded software have been developed to apply the measurement methods defined by academia to the safety requirements in order to obtain the quality of the software-safety as a separate piece of a software in early stages of the software development process. The advantages and the limitations of the model are left as a future work to enhance the proposed model and to applicable to use it in the industry. Furthermore, the main contribution of this paper is the proposed generic safety requirements model of the safety requirements. The proposed generic model is considered as kind of a a standardbased model that is being used for the measurement of the software-safety. The proposed generic model of the softwaresafety requirements is a bridge between the system and software functional requirements to provide a basis for both describing in a standard way and in the future for the measurement of the functional size of the software based on the set of definitions and concepts of system safety requirements in European international standards as follows: The interrelations between the internal and external requirements of safety are defined, for example each process between the internal and external safety requirements and in the future to measure the functional size of software safety requirements for the all functional processes (internally and externally) References [1] L. Chung and J. do Prado Leite, "On Non- Functional Requirements in Engineering," in Conceptual Modeling: Foundations and Applications, Lecture Notes in Computer Science, Springer Berlin / Heidelberg, vol. 5600, pp. 363-379, 2009. [2] W. Ma, L. Chung, and K. Cooper, "Assessing Component s Behavioral Interoperability Concerning Goals," in On the Move to Meaningful Internet Systems: OTM 2008 Workshops, Lecture Notes in Computer Science, Springer Berlin / Heidelberg, pp. 452-462, 2008. [3] ECSS-E-40-Part-2B, Space Engineeing:part 2 Document Requirements Definitions, European Cooperation for Space Standardization, The Netherlands, 2005. [4] ECSS-ESA, Tailoring of ECSS, Engineering Standards for Ground Segments, Part C: Document Templates, ESA Board of Standardization and Control (BSSC), 2005. [5] ECSS-E-ST-10C, Space engineering: System engineering general requirements, Requirements & Standards Division Noordwijk, The Netherlands, 2009. [6] ECSS-Q-ST-80C, Space Product Assurance: Product Assurance, Requirements & Standards Division Noordwijk, The Netherlands, 2009. [7] ISO/IEC-2502n, Engineering -- Product Quality -- Part 1: Quality Model 2502, International Organization for Standardization,Geneva (Switzerland), 2012. [8] ISO 24765, "Systems and software engineering vocabulary," British Standards Institution, 2008. [9] ISO 2382-1, " technology -- Vocabulary -- Part 1: Fundamental terms," International Standards for Business, Government and Society, 1993. [10] Abran, A., K. T. Al-Sarayreh, and J. J. Cuadrado- Gallego, " A Standards-based Reference Framework for System Portability Requirements", Computer Standards and Interface, Elsevier, 2013. http://dx.doi.org/10.1016/j.csi.2012.11.003 [11] Al-Sarayreh, K. T., A. Abran and and J. J. Cuadrado- Gallego," A Standards-based model of system maintainability requirements", Journal of : Evolution and Process, John Wiley & Sons, Ltd, 2012. http://dx.doi.org/10.1002/smr.1553 [12] K. T. Al-Sarayreh, A. Abran, and J. J. Cuadrado- Gallego, "Measurement Model of Requirements Derived from System Portability Requirements," 9th International Conference on Engineering Research and Practice (SERP 2010), Las Vegas, USA, pp. 553-559, 2010. [13] K. T. Al-Sarayreh and A. Abran, "A Generic Model for the Specification of Interface Requirements and Measurement of Their Functional Size," 8th ACIS International Conference on Engineering Research, Management and Applications, SERA 2010, Montreal, Canada, pp. 217-222, 2010. ISBN: 978-1-61804-297-2 205

[14] K. T. Al-Sarayreh and A. Abran, "Measurement of Requirements Derived from System Reliability Requirements," 24th European Conference on Object-Oriented Programming (ECOOP 2010), ACM Digital Library, Maribor, Slovenia, 2010. [15] K. T. Al-Sarayreh and A. Abran, "Specification and Measurement of System Configuration Non Functional Requirements," 20th International Workshop on Measurement & International Conference on Measurement, IWSM/Metrikon/Mensura, Stuttgart, Germany, pp. 141-156, 2010. [16] A. Abran, K. T. Al-Sarayreh, and J. J. Cuadrado- Gallego "Standards-based Model for the Specification and Measurement of Maintainability Requirements," 22nd International Conference on Engineering and Knowledge Engineering (SEKE 2010), Redwood City, California, USA, pp. 153-158, 2010. ISBN: 978-1-61804-297-2 206