Syllabus  |   Lectures  |   Downloads  |   FAQ  |   Ask a question  |  
Course Co-ordinated by IIT Madras


Download Syllabus in PDF format

Untitled Document
  • This course covers basic fundamentals of Embedded software testing and life cycle
  • Covers about dynamic, model based and coverage testing.
  • To study about test management and testing from use cases.

Learning outcomes:

  • Learn about concept of embedded software testing, TEmb method and creating test harness
  • Learn about Embedded software test life cycle, V-model
  • Learn about different types of testing methods
  • Learn static analysis and metrics
  • Learn about top-down, bottom-up integration and testing from use cases
  • Learn about test management and configuration management

Unit No



Fundamentals of embedded software testing

Introduction, Concepts of Testing, TEmb method, Test cases and test procedures, Principles of embedded software testing, creating a test harness, Commercial test tools.
Software testing life cycle: multiple V-model, nested multiple V-model, master test planning, activities, testing by developers, testing by independent test team.


Testing Methods

Dynamic Testing: Structured basis testing, Equivalence Partitions, Boundary Value Analysis, Problems with polymorphic code
Model-Based Testing: Synthesis- versus Analysis- models, Generating tests from state diagrams
Coverage Testing: White-box, grey and black box tests, Coverage measures – Statement, Branch, Condition, Path and others, Coverage testing tools


Static analysis and code reviews

Code Reviews: Benefits of reviews, Review process, Checklists
Static Analysis: Static analysis concepts, the use of the compiler for static analysis, Static analysis tools, coding standards
Metrics: need for metrics, Using metrics to manage and control testing, Metrics for test


Software Integration

Software Integration: Importance of planning your integration, Top-down vs Bottom-up Integration, Practical integration models
Testing from Use Cases: Introduction to use cases, calculating test cases, Structured Basis testing for use cases, Generating test cases from use cases
Regression Testing: Purpose of regression tests, the build process


Test management

Configuration Management: Configuration items, Version control, Change Management, CM tools
Test Management: The test process, how the test process relates to the software V-model, “Design by contract”, Test-driven development, agile development processes

  1. Instructor reference material.
  2. Testing Embedded Software by Bart Broekman, Edwin Notenboom

Important: Please enable javascript in your browser and download Adobe Flash player to view this site
Site Maintained by Web Studio, IIT Madras. Contact Webmaster: