Software testing in the computer science curriculum -- a holistic approach
ACSE '00 Proceedings of the Australasian conference on Computing education
Integrating testing into the curriculum — arsenic in small doses
Proceedings of the thirty-second SIGCSE technical symposium on Computer Science Education
Computers as components: principles of embedded computing system design
Computers as components: principles of embedded computing system design
A perspective on teaching software testing
Proceedings of the seventh annual consortium for computing in small colleges central plains conference on The journal of computing in small colleges
Guidelines for teaching object orientation with Java
Proceedings of the 6th annual conference on Innovation and technology in computer science education
Languages for Digital Embedded Systems
Languages for Digital Embedded Systems
A gimmick to integrate software testing throughout the curriculum
SIGCSE '02 Proceedings of the 33rd SIGCSE technical symposium on Computer science education
Production programming in the classroom
SIGCSE '03 Proceedings of the 34th SIGCSE technical symposium on Computer science education
Rethinking computer science education from a test-first perspective
OOPSLA '03 Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
FPGA-Based System Design
Improving student performance by evaluating how well students test their own programs
Journal on Educational Resources in Computing (JERIC)
Software synthesis from the dataflow interchange format
SCOPES '05 Proceedings of the 2005 workshop on Software and compilers for embedded systems
Pragmatic Unit Testing in Java with JUnit
Pragmatic Unit Testing in Java with JUnit
Test-Driven Development of a PID Controller
IEEE Software
Advanced perl programming, 2nd edition
Advanced perl programming, 2nd edition
Unit test frameworks
Using formal specifications to support testing
ACM Computing Surveys (CSUR)
Embedded Multiprocessors: Scheduling and Synchronization
Embedded Multiprocessors: Scheduling and Synchronization
GPU Computing Gems Emerald Edition
GPU Computing Gems Emerald Edition
Embedded System Design: Embedded Systems Foundations of Cyber-Physical Systems
Embedded System Design: Embedded Systems Foundations of Cyber-Physical Systems
Hi-index | 0.00 |
DICE (the DSPCAD Integrative Command Line Environment) is a package of utilities that facilitates efficient management of software projects. Key areas of emphasis in DICE are cross-platform operation, support for projects that integrate heterogeneous programming languages, and support for applying and integrating different kinds of design and testing methodologies. The package is being developed at the University of Maryland to facilitate the research and teaching of methods for implementation, testing, evolution, and revision of engineering software. The platform- and language-independent focus of DICE makes it an effective vehicle for teaching high-productivity, high-reliability methods for design and implementation of embedded systems for a variety of courses. In this paper, we provide an overview of features of DICE --- particularly as they relate to testing driven design practices --- that are useful in embedded systems education, and discuss examples and experiences of applying the tool in courses at the University of Maryland aimed at diverse groups of students --- undergraduate programming concepts for engineers, graduate VLSI architectures (aimed at research-oriented students), and graduate FPGA system design (aimed at professional Master's students).