You are previewing Developing and Managing Embedded Systems and Products.
O'Reilly logo
Developing and Managing Embedded Systems and Products

Book Description

This Expert Guide gives you the knowledge, methods and techniques to develop and manage embedded systems successfully.  It shows that teamwork, development procedures, and program management require unique and wide ranging skills to develop a system, skills that most people can attain with persistence and effort.

With this book you will:

  • Understand the various business aspects of a project from budgets and schedules through contracts and market studies
  • Understand the place and timing for simulations, bench tests, and prototypes, and understand the differences between various formal methods such as FMECA, FTA, ETA, reliability, hazard analysis, and risk analysis
  • Learn general design concerns such as the user interface, interfaces and partitioning, DFM, DFA, DFT, tradeoffs such as hardware versus software, buy versus build, processor choices, and algorithm choices, acquisition concerns, and interactions and comparisons between electronics, functions, software, mechanics, materials, security, maintenance, and support


  • Covers the life cycle for developing an embedded system: program management, procedures for design and development, manufacturing, maintenance, logistics, and legal issues
  • Includes proven and practical techniques and advice on tackling critical issues reflecting the authors’ expertise developed from years of experience

Table of Contents

  1. Cover image
  2. Title page
  3. Copyright
  4. List of Contributors
  5. About the Editor
  6. Co-Author Biography
  7. Author’s Biographies
    1. Chapter Authors
    2. Case Study Authors
  8. Developing and Managing Embedded Systems and Products: The Roadmap
    1. Chapter 1: Introduction to Good Development
    2. Chapter 2: Drivers of Success in Engineering Teams
    3. Chapter 3: Project Introduction
    4. Chapter 4: Dealing with Risk
    5. Chapter 5: Documentation
    6. Chapter 6: System Requirements
    7. Chapter 7: Analyses and Tradeoffs
    8. Chapter 8: The Discipline of System Design
    9. Chapter 9: Mechanical Design
    10. Chapter 10: Electronic Design
    11. Chapter 11: Software Design and Development
    12. Chapter 12: Security
    13. Chapter 13: Review
    14. Chapter 14: Test and Integration
    15. Chapter 15: Manufacturing
    16. Chapter 16: Logistics, Distribution, and Support
    17. Chapter 17: Agreements, Contracts, and Negotiations
    18. Chapter 18: Dealing with the Government
    19. Chapter 19: Agency and Getting Paid
    20. Chapter 20: Intellectual Property etc.
    21. Chapter 21: Open Source Software
    22. Chapter 22: Laws That Can Nail Embedded Engineers
    23. Chapter 23: Corporate Operations, Export, and Compliance
    24. Chapter 24: Case Studies
  9. List of Acronyms
  10. Chapter 1. Introduction to Good Development
    1. About this book
    2. Focus
    3. Team attributes
    4. Systems engineering
    5. Various approaches to development processes
    6. Life cycle phases
    7. Case Study: Disastrous engineering processes fixed
    8. Conclusion
    9. Acknowledgments
    10. References
    11. Suggested reading
  11. Chapter 2. Drivers of Success in Engineering Teams
    1. Overview of organizational and psychological drivers
    2. The role of the team member
    3. The role of the team leader
    4. Self-awareness and assessment
    5. Establishing essential relationships
    6. Team development
    7. Engagement and the motivational environment
    8. The power of dialogue
    9. Enhancing success with emotional intelligence
    10. Handling conflict
    11. Further development
    12. References
  12. Chapter 3. Project Introduction
    1. Overview
    2. Establishing the vision, mission, goals, and objectives
    3. Establish the team
    4. Communications
    5. Business case
    6. Business administration and concerns
    7. Effort to introduce a project
    8. Acknowledgement
    9. Recommended reading
    10. References
  13. Chapter 4. Dealing with Risk
    1. Overview
    2. Definitions
    3. Risk analysis and management
    4. Hazard analysis
    5. Types of problems
    6. Failure
    7. Disasters and catastrophes
    8. Intrusion, sabotage, theft, and destruction
    9. Contingency planning
    10. Effort to manage risk
    11. Acknowledgement
    12. References
  14. Chapter 5. Documentation
    1. Overview and rationale
    2. Function
    3. Types and content
    4. When, who, and what
    5. Document formats
    6. Document contents
    7. Summary and parting thoughts
    8. Appendix A: Examples from a test plan
    9. Integration test procedures
    10. Some test plans have a manufacturing section—here is an example
    11. Acceptance test procedures
    12. Installation test procedures
    13. Appendix B: Examples of test procedures
    14. Mechanical, packaging, and cabling test scripts
    15. Software processes test scripts
    16. Hardware test scripts
    17. Recommended reading
    18. References
  15. Chapter 6. System Requirements
    1. Definitions
    2. Developing and managing requirements
    3. Customer interpretation of requirements
    4. Requirement categories
    5. Common risks in setting requirements
    6. Process and QA
    7. Domains and properties
    8. Setting boundaries
    9. Framing the system for requirements definition
    10. Use cases
    11. Prioritizing requirements
    12. Recommendations to reduce requirements’ risks
    13. Mike Gard: thoughts on developing requirements
    14. Oshana’s Maxim—estimating requirements’ efforts
    15. Acknowledgments
    16. References
    17. Recommended reading
  16. Chapter 7. Analyses and Tradeoffs
    1. Introduction
    2. The business case
    3. Tradeoffs
    4. Use cases
    5. Design analyses
    6. Physical forms of analysis
    7. Formal analysis techniques
    8. Root cause analysis (RCA)
    9. Final case study
    10. Acknowledgment
    11. References
    12. Recommended reading
  17. Chapter 8. The Discipline of System Design
    1. What to expect in this chapter
    2. Basic definitions
    3. Human elements in system design
    4. Business concerns
    5. The art of system design
    6. System design choices
    7. Approaching a design
    8. Finding parts
    9. System analysis and test
    10. References
  18. Chapter 9. Mechanical Design
    1. What to expect from this chapter
    2. Materials
    3. Fasteners
    4. Fabrication
    5. Finishes
    6. Packaging
    7. Thermal design
    8. Mechanisms
    9. Analysis and test
    10. References
    11. Suggested reading
  19. Chapter 10. Electronic Design
    1. Overview of electronic design
    2. Circuit design
    3. Components
    4. Semiconductors
    5. Visual displays
    6. Integrated circuits
    7. Circuit boards
    8. Connectors, cables, and conductors
    9. Operating life (MTBF)
    10. Power and power consumption
    11. Cooling
    12. Environmental extremes
    13. RFI, EMI, and EMC compliance
    14. Analysis methods
    15. Testing, qualifications, and conflicts
    16. Built-in self-test
    17. Acknowledgment
    18. References
  20. Chapter 11. Software Design and Development
    1. Distinguishing characteristics
    2. The framework for developing embedded software
    3. Tools and techniques
    4. Conclusion
    5. References
  21. Chapter 12. Security
    1. Overview
    2. Correctness, safety, and security
    3. Security engineering
    4. Building a secure system
    5. Chapter references
    6. Suggested reading
  22. Chapter 13. Review
    1. Introduction to review
    2. General processes and procedures
    3. Components of a review
    4. Peer review and inspection
    5. Internal review
    6. Formal design review
    7. Change control board
    8. Failure review board
    9. Audits and customer reviews
    10. Static versus dynamic analysis
    11. Debrief
    12. Acknowledgments
    13. References
  23. Chapter 14. Test and Integration
    1. Introduction
    2. General processes and procedures
    3. Test plan
    4. Verification
    5. Validation
    6. Field trial and testing
    7. Integration
    8. Calibration and alignment checks
    9. Environmental tests
    10. Highly accelerated life test
    11. Compliance testing
    12. Other issues to consider
    13. Acknowledgment
    14. References
    15. Suggested reading
  24. Chapter 15. Manufacturing
    1. Overview of manufacturing
    2. Some philosophical issues with manufacturing
    3. General processes and procedures
    4. Specifics of fabrication and assembly
    5. Production test
    6. Considerations in manufacturing
    7. Acknowledgments
    8. References
  25. Chapter 16. Logistics, Distribution, and Support
    1. Overview of logistics, distribution, and support
    2. Market release
    3. Distribution and delivery
    4. Packaging
    5. Inventory
    6. Sales support
    7. Technical support
    8. Training
    9. Maintenance and replenishment
    10. Diagnosis and repair
    11. Recalls, patches, and updates
    12. Reverse and green logistics and disposal
    13. Acknowledgment
    14. References
    15. Suggested reading
  26. Chapter 17. Agreements, Contracts, and Negotiations
    1. Interpretation of contracts generally
    2. The signing of agreements
    3. The ubiquitous NDA
    4. MOU means IOU
    5. A word on negotiations of contracts
    6. Humble negotiations with the Big Guy (reprinted with permission from the September 2001 IEEE Instrumentation and Measurement Magazine, by Craig Silver)
  27. Chapter 18. Dealing with the Government
    1. Considerations in US federal government contracts
    2. The government’s right to change
    3. The government’s right to terminate
    4. Ethical issues in government contracts
    5. Some criminal statutes relevant to government contracting
    6. The government contractor defense
  28. Chapter 19. Agency and Getting Paid
    1. Agency
    2. Why are agency relations so important?
    3. Getting paid
    4. Bankruptcy—what does his problem have to do with me?
  29. Chapter 20. Intellectual Property, Licensing, and Patents
    1. Software licensing, source code, and somebody going broke
    2. Protection of intellectual property
    3. Copyrights and the embedded engineer
    4. Protection of trade secrets
    5. Trademarks
    6. Patents
  30. Chapter 21. Open-Source Software
    1. Best read in a Volkswagen minibus
    2. Top 20 most commonly used licenses in open-source projects
    3. Most recent projects to convert to GPLv3, LGPLv3, or AGPLv3
    4. Public domain and shareware
    5. Litigation and an open-source license
  31. Chapter 22. Laws That Can Nail Embedded Engineers
    1. The Digital Millennium Copyright Act
    2. Stored Communications Act
    3. The Computer Fraud and Abuse Act 18 USC § 1030
    4. Torts and the engineer
  32. Chapter 23. Corporate Operations
    1. The charter
    2. Shares and stocks
    3. Hiring or contracting with foreigners
    4. So you want to export
    5. Antiboycott considerations (ignoring, “I told you not to play with her!”)
    6. Arbitration clauses under international contracts
    7. Insurance
    8. Compliance—or why won’t you comply?
  33. Chapter 24. Case Studies
    1. Introduction
    2. Two case studies from the Oak Ridge National Laboratory: development of real-time instrumentation systems
    3. Case study 3: design of a parallel computer-based, streaming digital video instrument
    4. Case study 4: troubleshooting a boiler points out the need for good, comprehensive design and development
    5. Case study 5: debugging of electromagnetic compatibility issues
    6. References
  34. Appendix A. Dependability Calculations
    1. Brief overview
    2. Observed failure rates
    3. First approximation: simplified failure rates
    4. Experimental analysis
    5. Recommended Reading
    6. References
  35. Index