Software Engineering for Embedded Systems: Methods, Practical Techniques, and Applications

  • 18h 46m
  • Mark Kraeling, Robert Oshana
  • Elsevier Science and Technology Books, Inc.
  • 2013

Software Engineering for Embedded Systems, clearly explains the software engineering tools and techniques needed to optimally design and implement embedded systems in contexts such as networking, storage, and automotive applications. Written by experts with a solutions focus, this encyclopedic reference is a useful aid to tackling typical problems and issues, including:

  • Architecture and design patterns
  • Hardware interfaces
  • Embedded operating systems, including Linux and Android
  • Memory, performance, and power optimization
  • User interface considerations
  • Software development tools
  • Testing and quality control
  • Advanced guidelines for multicore software development

Includes contributions from:

Frank Schirrmeister, Shelly Gretlein, Bruce Douglass, Erich Styger, Gary Stringham, Jean Labrosse, Jim Trudeau, Mike Brogioli, Mark Pitchford, Catalin Dan Udma, Markus Levy, Pete Wilson, Whit Waldo, Inga Harris, Xinxin Yang, Srinivasa Addepalli, Andrew McKay, Mark Kraeling and Robert Oshana.

  • Clearly lays out key problems and issues, and how to solve them
  • Examples demonstrate proven implementation details
  • Practical case studies cover examples of multicore programming, sensor programming, user interface design, and performance engineering

About the Authors

Robert Oshana has over 30 years of experience in the embedded software industry, primarily focused on embedded and real-time systems for the defense industry and semiconductor industries. He has BSEE, MSEE, MSCS, and MBA degrees and is a Senior Member of IEEE. Rob is an international speaker and has over 100 presentations and publications in various technology fields and has written several books on embedded software technology. Rob is an adjunct professor at Southern Methodist University and is a Distinguished Member of Technical Staff and Director of Global Software R&D for Networking and Multimedia at Freescale Semiconductor.

Mark Kraeling has over 20 years of experience in the embedded software industry, primarily focused on embedded real-time systems for the automotive and transportation industries. He has a BSEE, MSEE, and MBA degrees. Mark is a regular speaker at embedded conferences worldwide, and has various papers and articles focused on embedded development that have been published over the course of his career. Mark started his career at Cummins, Inc. developing real-time engine controls, and currently develops control, communication, and safety-critical systems for GE Transportation.

In this Book

  • Software Engineering for Embedded Systems—A Roadmap
  • Foreword to Software Engineering for Embedded Systems
  • Software Engineering of Embedded and Real-Time Systems
  • Embedded Systems Hardware/Software Co-Development
  • Software Modeling for Embedded Systems
  • Software Design Architecture and Patterns for Embedded Systems
  • Real-Time Building Blocks—Events and Triggers
  • Hardware's Interface to Embedded Software
  • Embedded Software Programming and Implementation Guidelines
  • Embedded Operating Systems
  • Software Reuse by Design in Embedded Systems
  • Software Performance Engineering for Embedded Systems
  • Optimizing Embedded Software for Performance
  • Optimizing Embedded Software for Memory
  • Optimizing Embedded Software for Power
  • Human Factors and User Interface Design for Embedded Systems
  • Embedded Software Quality, Integration and Testing Techniques
  • Software Development Tools for Embedded Systems
  • Multicore Software Development for Embedded Systems—This Chapter Draws on Material from the Multicore Programming Practices Guide (MPP) from the Multicore Association
  • Safety-Critical Software Development
  • Intellectual Property
  • Managing Embedded Software Development
  • Agile Development for Embedded Systems
  • Embedded Software for Automotive Applications
  • Programming for I/O and Storage
  • Embedded Software for Networking Applications
  • Linux for Embedded Systems
  • Software Performance Engineering
  • A User Interface—Police Command and Control System
  • Transitioning to Multicore
  • Software Engineering for Embedded Systems Quality and Metrics Program
SHOW MORE
FREE ACCESS