001450854 000__ 04708cam\a2200505\i\4500 001450854 001__ 1450854 001450854 003__ OCoLC 001450854 005__ 20230310004547.0 001450854 006__ m\\\\\o\\d\\\\\\\\ 001450854 007__ cr\un\nnnunnun 001450854 008__ 221103s2022\\\\nyua\\\\ob\\\\001\0\eng\d 001450854 019__ $$a1350689116 001450854 020__ $$a1484282795$$qelectronic book 001450854 020__ $$a9781484282793$$q(electronic bk.) 001450854 020__ $$z1484282787 001450854 020__ $$z9781484282786 001450854 0247_ $$a10.1007/978-1-4842-8279-3$$2doi 001450854 035__ $$aSP(OCoLC)1349563201 001450854 040__ $$aYDX$$beng$$erda$$cYDX$$dORMDA$$dGW5XE$$dEBLCP$$dOCLCF$$dYDX$$dN$T$$dUKAHL$$dOCLCQ 001450854 049__ $$aISEA 001450854 050_4 $$aQA76.76.D47$$bB45 2022 001450854 08204 $$a005.1$$223 001450854 1001_ $$aBeningo, Jacob,$$eauthor. 001450854 24510 $$aEmbedded software design :$$ba practical approach to architecture, processes, and coding techniques /$$cJacob Beningo. 001450854 264_1 $$a[New York, NY] :$$bApress,$$c[2022] 001450854 300__ $$a1 online resource 001450854 336__ $$atext$$btxt$$2rdacontent 001450854 337__ $$acomputer$$bc$$2rdamedia 001450854 338__ $$aonline resource$$bcr$$2rdacarrier 001450854 504__ $$aIncludes bibliographical references and index. 001450854 5050_ $$aChapter 0: Successful Delivery -- Part I: Software Architecture and Design -- Chapter 1: Embedded Software Design Philosophy -- Chapter 2: Embedded Software Architecture Design -- Chapter 3: Secure Application Design -- Chapter 4: RTOS Application Design -- Chapter 5: Design Patterns -- Part II: Agile, DevOps, and Processes -- Chapter 6: Software Quality, Metrics, and Processes -- Chapter 7: Embedded DevOps -- Chapter 8: Testing, Verification, and Test-Driven Development -- Chapter 9: Application Modeling, Simulation, and Deployment -- Chapter 10: Jump Starting Software Development to Minimize Defects -- Part III: Development and Coding Skills -- Chapter 11: Selecting Microcontrollers -- Chapter 12: Interfaces, Contracts, and Assertions -- Chapter 13: Configurable Firmware Techniques -- Chapter 14: Comms, Command Processing, and Telemetry Techniques -- Chapter 15: The Right Tools for the Job -- Part 4: Next Steps -- Chapter 16: Next Steps -- Appendix A: Security Terminology Definitions -- Appendix B: 12 Agile Software Principles -- Appendix C: Hands-On - CI/CD Using GitLab -- Appendix D: Hands-On TDD. 001450854 506__ $$aAccess limited to authorized users. 001450854 520__ $$aDesign higher-quality embedded software from concept through production. This book assumes basic C and microcontroller programming knowledge and is organized into three critical areas: Software Architecture and Design; Agile, DevOps, and Processes; and Development and Coding Skills. You'll start with a basic introduction to embedded software architecture and the considerations for a successful design. The book then breaks down how to architect an RTOS-based application and explore common design patterns and building blocks. Next, you'll review embedded software design processes such as TDD, CI/CD, modeling, and simulation that can be used to accelerate development. Finally, the book will examine how to select a microcontroller, write configurable code, coding strategies, techniques, and tools developers can't live without. Embedded systems are typically designed using microcontrollers to build electronic systems with a dedicated function and real-time responses. Modern systems need to carefully balance a complex set of features, manage security, and even run machine learning inferences while maintaining reasonable costs, scalability, and robustness. By the end of this book, you will have a defined development process, understand modern software architecture, and be equipped to start building embedded systems. What You'll Learn Understand what sound embedded system design is and how to employ it Explore modern development processes for quality systems Know where the bits hit the silicon: how to select a microcontroller Master techniques to write configurable, automated code Who This Book Is For Embedded software and hardware engineers, enthusiasts, or any stakeholders who would like to learn modern techniques for designing and building embedded systems. 001450854 588__ $$aDescription based on online resource; title from digital title page (viewed on December 12, 2022). 001450854 650_0 $$aComputer software$$xDevelopment. 001450854 650_0 $$aEmbedded computer systems$$xProgramming. 001450854 650_0 $$aComputer architecture$$xDesign. 001450854 655_0 $$aElectronic books. 001450854 77608 $$iPrint version:$$z1484282787$$z9781484282786$$w(OCoLC)1312149583 001450854 852__ $$bebk 001450854 85640 $$3Springer Nature$$uhttps://univsouthin.idm.oclc.org/login?url=https://link.springer.com/10.1007/978-1-4842-8279-3$$zOnline Access$$91397441.1 001450854 909CO $$ooai:library.usi.edu:1450854$$pGLOBAL_SET 001450854 980__ $$aBIB 001450854 980__ $$aEBOOK 001450854 982__ $$aEbook 001450854 983__ $$aOnline 001450854 994__ $$a92$$bISE