Discover millions of ebooks, audiobooks, and so much more with a free trial

From $11.99/month after trial. Cancel anytime.

Real-Time Critical Systems
Real-Time Critical Systems
Real-Time Critical Systems
Ebook276 pages1 hour

Real-Time Critical Systems

Rating: 3 out of 5 stars

3/5

()

Read preview

About this ebook

Real-Time Critical Systems are pervasive in human nature. Thus, this thesis outlines the main facts encompassing critical system design and perserverance towards decisiveness. In essence, every decision made through the project has had a shadowed theory or method, or fact outlining the directed concept. Addressing a case study that illustrates factual concepts and real-life experience regarding Ada and SPARK projects.  
 
Moreover, it outlines background, as well as research that aids on decision making, elaborating the project's purpose. Additionally, the project follows a drastic approach towards building up the foundations that allows a HRM prototype to be programmed in Ada and an incremental development towards the success of the system.  
 
Foremost importance of the thesis was to prove that Ada and Spark is essential to critical systems across the globe and allow people with similar interests to follow well-structured tutorials to implement the project.  
 
As a result, you will have designed a fully functional HRM and have learnt fundamental concepts essential in Computer Science, Software Engineering and Circuit Design, as well as how to apply them to a project in a real world scenario.  
 
Highlights: You get to design a Heart Rate Monitor... Amazing!

LanguageEnglish
Release dateJan 23, 2018
ISBN9781386984535
Real-Time Critical Systems
Author

Jordan Lee Mauro-Buhagiar

The author of this book is a spiritual being with large goals and dreams. Author of Real-Time Critical Systems – HRM prototype & Ada Integration, BEng in Computer Systems & electronics, MSc in Computer Science & business founder and director of E-Fit Gibraltar Studio & Showroom, The Health Paradox and Environmental Missions. A standardised ability to make vision a reality is of paramount importance. Personal message to all readers: “Do not allow judgement blur your vision, it is your vision, you have been gifted with capabilities to determine the potential of a vision and thus, only you have the strength and ability to make it your reality, always persevere”.

Related to Real-Time Critical Systems

Related ebooks

Teaching Methods & Materials For You

View More

Reviews for Real-Time Critical Systems

Rating: 3 out of 5 stars
3/5

1 rating1 review

What did you think?

Tap to rate

Review must be at least 10 words

  • Rating: 3 out of 5 stars
    3/5
    Good Book, Bad scribd-Experience:
    Pictures & Images representing Text (i.e. source code) should never be rendered as Jpeg or any other _lossy_ image compression method, ever.
    Source code was rendered unitelligible/unreadable/garbeled and therefore _unsafe_.

Book preview

Real-Time Critical Systems - Jordan Lee Mauro-Buhagiar

ABSTRACT

Real-Time Critical Systems are pervasive in human nature. Thus, this thesis outlines the main facts encompassing critical system design and perseverance towards decisiveness. In essence, every decision made throughout the project has had a shadowed theory or method, or fact outlining the directed concept. This thesis addresses a case study that illustrates factual concepts and real-life experiences regarding Ada and SPARK projects. Moreover, it outlines background, as well as research literature that aids on decision making, and elaborates the project’s purpose. Additionally, the project follows a drastic approach towards building up the foundations that allows a HRM prototype to be programmed in Ada and an incremental development towards the success of the system.

Foremost importance of the thesis shall be to prove that Ada and SPARK are essential to critical systems across the globe and allowing users with similar interests to follow well-structured tutorials and implement a challenging project.

ACKNOWLEDGEMENTS

First of all, I would like to thank Mr. Anton G Setzer for being an exceptional Supervisor and Inspiration. This project could have not been accomplished the way it was without his guidance.

I would like to thank Mr. Gary Tam for introducing me to RDP Algorithm and his effective teaching during his Algorithms Complexity and Efficiency lecture; making complexity not so complex, the miracle of pseudo code understandable and the lectures fun, believe it or not.

I would like to thank Rolf Ebert for his AVR-Ada Documentations, AVR-Ada Mailing List and consistency.

I would like to thank my darling girlfriend for being my biggest support and parents for making my education happen.

I would like to thank my cousin Charles Buhagiar for his generosity in taking his time on proof reading this document.

And finally, I would like to thank Swansea University for giving me the experience of a life time, allowing me to meet exceptional people and be part of an amazing environment.

MOTIVATION

My curiosity towards pervasiveness in this world led me to this assignment. My questions required answers and my attitude shadowed ambition. I always enjoyed technology and loved to learn. Those qualities drove me towards my Graduate Degree in Computer Systems & Electronics. Upon completion, I was not ready to stop learning. After learning how systems were designed, programming was a must. Hence, Computer Science Master’s Degree became my next destination. I was thrilled to learn all types of programming languages and I always adored a challenge. Ada was the biggest challenge faced and hardest programming language to grasp in my experience; only because it was different. However, the world’s evolution and my vision towards it made me extremely interested.

Ada is a reflection of not just a programming language, but the programming language. It uses the concept of protecting, saving and preventing. We programmers program to develop systems that potentially, to an extent replace humans. Humans usually make more mistakes than a program does when it is designed to take one or multiple responsibilities and yet, programs are tested by humans. Ada uses SPARK to verify and validate critical programs that eventually saves lives; using Theorem Provers. In my opinion, that was extremely realistic and smart; the way it should be done. When working with SPARK-Ada and reading about the miracles it has performed in this world simply inspired me.

Thus, I took the challenge on taking this subject for my thesis. I was honestly struggling to make the decision as I knew it was no easy task and completely out of my comfort zone. Somehow, I went forward with it and all my worries were then taken care of during an informal meeting with Anton G Setzer who assisted me on choosing a project topic that was not completely out of my knowledge or grasp. He elaborated how no system has yet been presented to him running an Ada program in real-time, how research was limited and how effective it would be to verify and validate it using SPARK-Ada. Therefore, my mind was set and my mission begun. I promised myself that I was going to expand Ada documentations regarding 8-Bit Microcontrollers, hoping Ada would expand on this field and get widely used via assistance from this thesis. In addition, I promised that my experience and struggles during this mission would condemn its roots and distinguish new ways to make this experience easier for others whom may be interested.

CONTENT

ABSTRACT

DECLARATIONS & STATEMENTS

ACKNOWLEDGEMENTS

MOTIVATION

CONTENT

LIST OF FIGURES

LIST OF REQUIREMENTS

CHAPTER 1: INTRODUCTION

Project Goal & Objectives

CHAPTER 2: RESEARCH MANAGEMENT

2.1 – Research Methodology

2.1.1 – The Research Onion

Epistemology

Philosophies – Layer 1 - Positivism – Realism

Approaches – Layer 2 – Inductive

Strategies – Layer 3 – Case Study – Action Research

Choices – Layer 4 – Mixed-Methods

Time Horizons – Layer 5 – Cross-Sectional

Techniques & Procedures – Layer 6 – Data Collection & Analysis

CHAPTER 3: FOUNDATIONS

Research philosophy

3.1 - Literature Review

3.1.1 - Real-world Projects with Ada & SPARK Integration

3.1.1. A – Ada’s Lines of Contribution

ILTIS- Railway Traffic Control

Ada Used to Develop Medical Analytical Systems

A Biomedical Engineer's View of Ada

3.1.1. B – SPARK Ada’s Lines of Contribution

Ironsides – An Authoritative/Recursive DNS Server pair

Figure 3.1.1.B1 – DNS Server Performance

The Tokeneer Project

Figure 3.1.1.B2 – Tokeneer: Beyond Formal Program Verification

The Lockheed C130J

Defence Strength Transportation Exploration Safety Trust & more

3.1.2 – Programming Languages Used in Embedded Systems

Assembly Language

The C Programming Language

The C++ Programming Language

MISRA-C – C Programming Language Subset

Python Scripting Language

Ada Programming Language

SPARK Programming Language – A subset of Ada

Figure 3.1.2.A3 – Four Alternatives Beyond Software CMM 5

Figure 3.1.1.1.3 – Subset Comparison Chart

3.2 - Background Research

3.2.1 - Embedded Systems

3.2.1. A - Introduction to Heart Rate Monitors

3.2.1. B – ECG

3.2.1.C – PPG

3.2.1.D – HRM Functionalities

1.      Displaying Heart Rate (HR)

2.      Resting HR Zones – Indication

3.2.1.E. - Ada Support for Embedded Systems

3.2.3 - Embedded Hardware

3.2.3.A – Introduction to Microprocessors & Microcontrollers

3.2.3.B – MCU Functional Requirements

3.2.3.C – MCUs

3.2.3.D – Sensors

3.2.3.E - Liquid Crystal Displays

3.2.3.F - Programmer Module

CHAPTER 4: PROJECT MANAGEMENT

4.1 - Research on Development Models

4.1.2 – Software Development Models

4.1.2 – Evaluation & Conclusion

4.2 – Iterative Development Model

4.3 – Project Risk Analysis

4.4 – Time Management

CHAPTER 5: SYSTEM DESIGN & DIAGNOSTICS

5.1 – System Design

Cycle 1 – HRM System Prototype

Cycle 1 – Evaluation

CHAPTER 6: ADA INTEGRATION & TUTORIALS

6.1 – AVR-ADA Framework Design & Implementation

Cycle 2 – AVR-ADA cross compiler setup

Phase 3:

Cycle 2 – Evaluation

CHAPTER 7: SYSTEM INTELLIGENCE

7.1 – Software Characteristics

7.2 – Iterative Design Principle Continued

Cycle 3 – One Second Delay

Cycle 3 – Testing: One Second Delay

Cycle 3 – Evaluation

Cycle 4 – ADC Setup

Cycle 4 – Evaluation

Cycle 5 – LCD Setup

Cycle 5 – Evaluation

Cycle 6 – Pulse Detection Algorithm

Cycle 6 – Evaluation

Cycle 7 – Timer Setup

Cycle 7 – Evaluation

Cycle 8 – Safety & LED

Cycle 9 – SPARK Tools Integration

Cycle 9 – Evaluation

CHAPTER 8: EVALUATION

CHAPTER 9: CONCLUSION

CHAPTER 10: REFLECTION

REFERENCES

APPENDICES

Appendix 1A – Ada Continues to revolutionise the world

Appendix 1B – Ada continues revolutionising the world

Appendix 2 – Software Capability Maturity Model

Average Defect Density of Delivered Software

Appendix 3 – SPARK 3 Level Analysis (Course Notes)

Appendix 4 – SPARK’s Design Methodology Diagram

Appendix 5A – SPARK2C Solution Email (A)

Appendix 5B – SPARK2C Solution Email (B)

Appendix 6 – Soldering

Appendix 7A – LCD (Implementation) Package

Appendix 7B – LCD (Specification) Package

Appendix 7C – LCD (Wiring) Package

Appendix 8A – Wrapper Class (Implementation) Package

Appendix 8B – Wrapper Class (Specification) Package

LIST OF FIGURES

Figure 2.1.1.1 – Saunders Diagram                                    5

Enjoying the preview?
Page 1 of 1