Sie sind bereits eingeloggt. Klicken Sie auf 2. tolino select Abo, um fortzufahren.
Bitte loggen Sie sich zunächst in Ihr Kundenkonto ein oder registrieren Sie sich bei bücher.de, um das eBook-Abo tolino select nutzen zu können.
Learn how to create and release an embedded system in a fast and reliable manner. This book will help you build and release a commercially viable product that meets industry standards for quality. The book is not just about code: it covers non-code artifacts such as software processes, requirements, software documentation, continuous integration, design reviews, and code reviews. While specifically targeting microcontroller applications, the processes in this book can be applied to most software projects, big or small. Additionally, the book provides an open-source C++ framework that can be…mehr
Learn how to create and release an embedded system in a fast and reliable manner. This book will help you build and release a commercially viable product that meets industry standards for quality. The book is not just about code: it covers non-code artifacts such as software processes, requirements, software documentation, continuous integration, design reviews, and code reviews.
While specifically targeting microcontroller applications, the processes in this book can be applied to most software projects, big or small. Additionally, the book provides an open-source C++ framework that can be used to quick start any embedded project. This framework has an OSAL (OS Abstraction Layer) and essential middleware that is needed for many embedded systems. Using a hands-on approach of building-and-testing the software application first allows you to develop a significant amount of production quality code even before the hardware is available, dramatically reducing the start-to-release duration for a project.
As you follow the recipes in this book, you will learn essential software development processes, perform just in time design, create testable modules, and incorporate continuous integration (CI) into your day-to-day developer workflow. The end-result is quality code that is maintainable and extensible, and can be reused for other projects, even when presented with changing or new requirements.
The Embedded Project Cookbook is focused on the how of developing embedded software. For a discussion of the why, readers are invited to refer to the optional companion book Patterns in the Machine: A Software Engineering Guide to Embedded Development.
What You Will Learn
Separate software architecture from software design
Write software documents that are intrinsically resistant to going out-of-date.
Identify the processes, workflows, and best practices for the team to follow.
Initiate code reviews before code is checked intoa stable branch.
Design testable modules and implement automated unit testing that doesn’t require hardware.
Incorporate continuous integration into the day-to-day developer workflow, including automated integration testing.
Create a code base that can be reused on other projects.
Who This Book Is For
Mid-level developers and software leads who are looking to get up and running without all the underlying theories. This book is also for professionals looking to learn how to productize a concept or technology and sell the results to a customer.
John Taylor has been an embedded developer for over 30 years. He has worked as a firmware engineer, technical lead, system engineer, software architect, and software development manager for companies such as Ingersoll Rand, Carrier, Allen-Bradley, Hitachi Telecom, Emerson, and several start-up companies. He has developed firmware for products that include HVAC control systems, telecom SONET nodes, IoT devices, micro code for communication chips, and medical devices. He is the co-author of five US patents and holds a bachelor’s degree in mathematics and computer science.
Wayne Taylor has been a technical writer for 27 years. He has worked with companies such as IBM, Novell, Compaq, HP, EMC, SanDisk, and Western Digital. He has documented compilers, LAN driver development, storage system deployment and maintenance, and dozens of low-level and system-management APIs. He also has ten years of experience asa software development manager. He is the co-author of two US patents and holds master’s degrees in English and human factors. He is a co-author of OS/2 and NetWare Programming (Van Nostrand Reinhold, 1995).
Inhaltsangabe
Chapter 1: Introduction.- Chapter 2: Requirements.- Chapter 3: Analysis.- Chapter 4: Software Development Plan.- Chapter 5: Preparation.- Chapter 6: Foundation.- Chapter 7: Building Applications with the Main Pattern.- Chapter 8: Continuous Integration Builds.- Chapter 9: Requirements Revisited.- Chapter 10: Tasks.- Chapter 11: Just in Time Detailed Design.- Chapter 12: Coding, Unit Tests, and Pull Requests.- Chapter 13: Integration Testing.- Chapter 14: Broad Support Package.- Chapter 15: Drivers.- Chapter 16: Release.- Appendix A: Getting started with the Source Code.- Appendix B: Running the Example Code.- Appendix C: Introduction to the Data Model Architecture.- Appendix D: LHeader and LConfig Patterns.- Appendix E: CPL C++ framework.- Appendix F: LHeader and LConfig Patterns.- Appendix G: Ratt.- Appendix H: GM6000 Requirements.- Appendix I: GM6000 System Architecture.- Appendix J: GM6000 Software Architecture.- Appendix K: GM6000 Software Development Plan.- Appendix L: GM6000 Software Detailed Design.- Appendix M: GM6000 Software Detailed Design.- Appendix N: GM6000 Fuzzy Logic Temperature Control.- Appendix O: Software C/C++ Embedded Coding Standard.- Appendix P: GM6000 Software Requirements Trace Matrix.- Appendix Q: GM6000 Software Bill of Materials.- Appendix R: GM6000 Software Release Notes.
Chapter 1: Introduction.- Chapter 2: Requirements.- Chapter 3: Analysis.- Chapter 4: Software Development Plan.- Chapter 5: Preparation.- Chapter 6: Foundation.- Chapter 7: Building Applications with the Main Pattern.- Chapter 8: Continuous Integration Builds.- Chapter 9: Requirements Revisited.- Chapter 10: Tasks.- Chapter 11: Just in Time Detailed Design.- Chapter 12: Coding, Unit Tests, and Pull Requests.- Chapter 13: Integration Testing.- Chapter 14: Broad Support Package.- Chapter 15: Drivers.- Chapter 16: Release.- Appendix A: Getting started with the Source Code.- Appendix B: Running the Example Code.- Appendix C: Introduction to the Data Model Architecture.- Appendix D: LHeader and LConfig Patterns.- Appendix E: CPL C++ framework.- Appendix F: LHeader and LConfig Patterns.- Appendix G: Ratt.- Appendix H: GM6000 Requirements.- Appendix I: GM6000 System Architecture.- Appendix J: GM6000 Software Architecture.- Appendix K: GM6000 Software Development Plan.- Appendix L: GM6000 Software Detailed Design.- Appendix M: GM6000 Software Detailed Design.- Appendix N: GM6000 Fuzzy Logic Temperature Control.- Appendix O: Software C/C++ Embedded Coding Standard.- Appendix P: GM6000 Software Requirements Trace Matrix.- Appendix Q: GM6000 Software Bill of Materials.- Appendix R: GM6000 Software Release Notes.