slide1 l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
FIT for Embedded System Test Development PRESENTER : Jingwen Chen PowerPoint Presentation
Download Presentation
FIT for Embedded System Test Development PRESENTER : Jingwen Chen

Loading in 2 Seconds...

play fullscreen
1 / 21

FIT for Embedded System Test Development PRESENTER : Jingwen Chen - PowerPoint PPT Presentation


  • 270 Views
  • Uploaded on

FIT for Embedded System Test Development PRESENTER : Jingwen Chen. Main topics. Agile methodology from the desktop world XP Inspired embedded system life-cycle Adapting FIT into embedded system development What is FIT/FitNesse EmbeddedFitNesse testing framework

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'FIT for Embedded System Test Development PRESENTER : Jingwen Chen' - blossom


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
main topics
Main topics
  • Agile methodology from the desktop world
  • XP Inspired embedded system life-cycle
  • Adapting FIT into embedded system development
    • What is FIT/FitNesse
    • EmbeddedFitNessetesting framework
    • MatLab/C++ FitNesse testing framework
  • Issues with FIT in embedded design
  • Conclusion
what we want to avoid
What we want to avoid ?
  • System defects
    • Software errors cost $59 billion / year
    • Baxter Healthcare has to recall all its 256,000 Colleague Volumetric Infusion Pumps because the hardware / software problems that already cause 3 deaths and 6 serious injuries.
  • We want to find an appropriate and efficient defect free development process for embedded devices
agile methodology from the desktop business world
Agile methodology from the desktop business world
  • Minimize risk by developing software in short iterations, ech iteration is like a miniature software project of its own
  • Extreme Programming (XP) http://www.extremeprogramming.org/map/project.html
agile methodology from the desktop business world6
Agile methodology from the desktop business world
  • Explore design space
    • Test Driven Development (TDD)
  • Improved defect reduction
  • Enhanced communication between the customers and developers
    • Extremes of knowledge within a multi-disciplinary team
    • Customer: product end-users and researchers
    • Developer: Engineers
xp inspired xpi product lifecycle for biomedical embedded system
XP inspired (XPI) product lifecycle for biomedical embedded system

Stage 1 : XPI Product envisagement

  • Customers together with developers produce “executable system specification”
  • System acceptance tests

Stage 2 : XPI Proof of concept

  • Algorithms developed in MATLAB and validated by the acceptance tests written in first stage
  • Additional unit test in MATLAB using MUnit
xp inspired xpi product lifecycle for biomedical embedded system8
XP inspired (XPI) product lifecycle for biomedical embedded system

Stage 3 : XPI Prototyping of initial product

  • Forming the initial product using host machine simulation / embedded system
  • System moved into the C/C++ production language and validated via tests written in stage 1 and stage 2
  • Additional embedded unit tests added for new environment.

Stage 4 : XPI Full production ofsystem

  • The production of the full system on real embedded system target board
  • Satisfy the acceptance tests and unit tests developed
build an appropriate agile development environment for embedded system
Build an appropriate Agile development environment for embedded system
  • A mechanism to allow customers without embedded system knowledge to form a part of the development team
  • FitNesse/FIT is one possible solution
what is fit fitnesse
What is FIT/FitNesse ?
  • A software testing tool designed for customers with limited IT knowledge
  • A wiki-based system for creating, organizing, and running FIT test tables
  • Fit test tables are easy to be read and written by customer
starting from a simple temperature measurement embedded system
Starting from a simple temperature measurement embedded system
  • Test software function:

CalculateTemperature ( )running on the target board convert pulse width to actual temperature

Target Platform

Voltage pulse:

Application Layer

CalculateTemperature( )

Time High

System Software Layer

Time Low

VDK real-time

operating system

Input device:

TMP03 thermal sensor

Hardware Layer

Analog Device

ADSP-BF533 processor

stage 1 xpi product envisagement
Stage 1. XPI Product envisagement
  • Customers together with the developers write the Fit test table
stage 2 xp inspired proof of concepts
Stage 2. XP Inspired Proof of concepts
  • MatLabFitNesse testing framework
  • Developing the function in MatLab validated by the fit test in stage 1

FitNesse

Web server

Wiki editor and storage

Runner

Fit

Server

Fixture for

Test table

MATLAB API

MATLAB ENGINE

stage 3 xpi initial production system
Stage 3. XPI initial production system
  • Migrate the MatLab code into embedded system language validated via tests for stage 1 and stage 2 using host machine simulation
  • HOST MACHINE

FitNesse

Web server

Wiki editor and storage

Runner

Fit

Server

Fixture for

Test table

MATLAB API

C++

Simulation Environment

MATLAB ENGINE

EmbeddedFitNesse

stage 4 xpi full production system
Stage 4. XPI full production system
  • Running the function on real embedded target platform and satisfying the original test in stage 1
  • HOST MACHINE

FitNesse

Web server

Wiki editor and storage

Runner

Fit

Server

Fixture for

Test table

MATLAB API

C++

Simulation Environment

DSP Interface class

VDSP API

VDSP Environment

MATLAB ENGINE

EmbeddedFitNesse

S.M.I.L.E

TARGET PLATFORM

some tests we have done for embedded hardware
Some tests we have done for embedded hardware:
  • An error on the ADSP-BF533 processor was found by undergraduate students taking our embedded systems course.
  • They were using TDD to develop the register setting function SetCoreTimer ( ) running on the embedded target board.
issues with the full embeddedfitnesse testing framework
Issues with the full EmbeddedFitNesse testing framework

Long communication path !

  • HOST MACHINE

FitNesse

Web server

Wiki editor and storage

Runner

Fit

Server

Fixture for

Test table

MATLAB API

C++

Simulation Environment

DSP Interface class

VDSP API

VDSP Environment

MATLAB ENGINE

EmbeddedFitNesse

S.M.I.L.E

TARGET PLATFORM

fitnesse in embedded design
FitNesse in embedded design

Is FitNesse a good solution for embedded system Agile development ?

  • How to use FIT tables to specify an embedded system properly ?
    • Embedded system acceptance tests includes:
      • system operations
      • external and internal stimulus responses
      • interrupt latency
      • system reliability
    • Extend the fit test table to handle diverse test cases.
      • timing diagrams
      • signal comparison figures
  • Efficiency and reliability concerns
    • Make the EmbeddedFitNesse testing frame work more efficiently
conclusion
Conclusion
  • XPI Lifecycle embedded system development
  • EmbeddedFitNessetesting framework
  • MatLab/C++ FitNesse testing framework
  • Issues with FIT in embedded design