Real-Time Critical Systems
3/5
()
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!
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
Building Software for Simulation: Theory and Algorithms, with Applications in C++ Rating: 0 out of 5 stars0 ratingsBetter Embedded System Software Rating: 0 out of 5 stars0 ratingsQuantum Computer Vs Traditional Computer Rating: 0 out of 5 stars0 ratingsLearning BeagleBone Rating: 0 out of 5 stars0 ratingsMastering Embedded C: The Ultimate Guide to Building Efficient Systems Rating: 0 out of 5 stars0 ratingsStatic Analysis of Software: The Abstract Interpretation Rating: 0 out of 5 stars0 ratingsSystem Design for Telecommunication Gateways Rating: 0 out of 5 stars0 ratingsInternet of Things & Wireless Sensor Network Rating: 0 out of 5 stars0 ratingsEmbedded Systems Programming with C++: Real-World Techniques Rating: 0 out of 5 stars0 ratingsIoT Security Complete Self-Assessment Guide Rating: 0 out of 5 stars0 ratingsReal-time operating system Second Edition Rating: 0 out of 5 stars0 ratingsVehicular Communication Systems: The Future Outlook on Intelligent Transportation Rating: 0 out of 5 stars0 ratingsSafety of Computer Architectures Rating: 0 out of 5 stars0 ratingsThe Lindahl Letter: 3 Years of AI/ML Research Notes Rating: 0 out of 5 stars0 ratingsNear Field Communication with Android Cookbook Rating: 0 out of 5 stars0 ratingsBug tracking system Complete Self-Assessment Guide Rating: 0 out of 5 stars0 ratingsInternet Technologies Handbook: Optimizing the IP Network Rating: 0 out of 5 stars0 ratingsWireless and Mobile Data Networks Rating: 0 out of 5 stars0 ratingsMining for Knowledge: Exploring GPU Architectures In Cryptocurrency and AI: The Crypto Mining Mastery Series Rating: 0 out of 5 stars0 ratingsThe Future of IoT: Leveraging the Shift to a Data Centric World Rating: 1 out of 5 stars1/5Natural Language Processing with Java and LingPipe Cookbook Rating: 0 out of 5 stars0 ratingsHow to Design Optimization Algorithms by Applying Natural Behavioral Patterns Rating: 0 out of 5 stars0 ratingsMicrostrip and Printed Antennas: New Trends, Techniques and Applications Rating: 4 out of 5 stars4/5Mastering BeagleBone Robotics Rating: 5 out of 5 stars5/5Reinforcement Learning Explained - A Step-by-Step Guide to Reward-Driven AI Rating: 0 out of 5 stars0 ratingsIoT Business Solutions Complete Self-Assessment Guide Rating: 0 out of 5 stars0 ratingsRapid BeagleBoard Prototyping with MATLAB and Simulink Rating: 0 out of 5 stars0 ratingsKavach: Cab Signalling & Automatic Train Protection System for Digital Railways Rating: 0 out of 5 stars0 ratingsComputerised Systems Architecture: An embedded systems approach Rating: 0 out of 5 stars0 ratings
Teaching Methods & Materials For You
Fluent in 3 Months: How Anyone at Any Age Can Learn to Speak Any Language from Anywhere in the World Rating: 3 out of 5 stars3/5Lies My Teacher Told Me: Everything Your American History Textbook Got Wrong Rating: 4 out of 5 stars4/5On Writing Well, 30th Anniversary Edition: An Informal Guide to Writing Nonfiction Rating: 4 out of 5 stars4/5Grit: The Power of Passion and Perseverance Rating: 4 out of 5 stars4/5Never Split the Difference: Negotiating As If Your Life Depended On It Rating: 4 out of 5 stars4/5Financial Feminist: Overcome the Patriarchy's Bullsh*t to Master Your Money and Build a Life You Love Rating: 4 out of 5 stars4/5Verbal Judo, Second Edition: The Gentle Art of Persuasion Rating: 4 out of 5 stars4/5Dumbing Us Down - 25th Anniversary Edition: The Hidden Curriculum of Compulsory Schooling Rating: 4 out of 5 stars4/5Why Does He Do That?: Inside the Minds of Angry and Controlling Men Rating: 4 out of 5 stars4/5The 5 Love Languages of Children: The Secret to Loving Children Effectively Rating: 4 out of 5 stars4/5Principles: Life and Work Rating: 4 out of 5 stars4/5The Dance of Anger: A Woman's Guide to Changing the Patterns of Intimate Relationships Rating: 4 out of 5 stars4/5Jack Reacher Reading Order: The Complete Lee Child’s Reading List Of Jack Reacher Series Rating: 4 out of 5 stars4/5Writing to Learn: How to Write - and Think - Clearly About Any Subject at All Rating: 4 out of 5 stars4/5Weapons of Mass Instruction: A Schoolteacher's Journey Through the Dark World of Compulsory Schooling Rating: 4 out of 5 stars4/5Speed Reading: Learn to Read a 200+ Page Book in 1 Hour: Mind Hack, #1 Rating: 5 out of 5 stars5/5Personal Finance for Beginners - A Simple Guide to Take Control of Your Financial Situation Rating: 5 out of 5 stars5/5How to Take Smart Notes. One Simple Technique to Boost Writing, Learning and Thinking Rating: 4 out of 5 stars4/5The Success Principles(TM) - 10th Anniversary Edition: How to Get from Where You Are to Where You Want to Be Rating: 4 out of 5 stars4/5A Study Guide for Octavia Butler's "Parable of the Sower" Rating: 0 out of 5 stars0 ratings400 Things Cops Know: Street-Smart Lessons from a Veteran Patrolman Rating: 4 out of 5 stars4/5How to Think Like a Lawyer--and Why: A Common-Sense Guide to Everyday Dilemmas Rating: 4 out of 5 stars4/5Police State: Ten Secrets The Police Don't Want You To Know! (How To Survive Police Encounters!) Rating: 5 out of 5 stars5/5The Chicago Guide to Grammar, Usage, and Punctuation Rating: 5 out of 5 stars5/5Closing of the American Mind Rating: 4 out of 5 stars4/5Alchemy: The Dark Art and Curious Science of Creating Magic in Brands, Business, and Life Rating: 4 out of 5 stars4/5The Three Bears Rating: 5 out of 5 stars5/5
Reviews for Real-Time Critical Systems
1 rating1 review
- Rating: 3 out of 5 stars3/5Good 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