Behaviour Driven Development for Hardware Design

  title={Behaviour Driven Development for Hardware Design},
  author={Melanie Diepenbeck and Ulrich K{\"u}hne and Mathias Soeken and Daniel Gro{\ss}e and Rolf Drechsler},
  journal={IPSJ Trans. Syst. LSI Des. Methodol.},
Hardware verification requires a lot of effort. A recent study showed that on average, there are more verification engineers working on a project than design engineers. Hence, one of the biggest challenges in design and verification today is to find new ways to increase the productivity. For software development the agile methodology as an incremental approach has been proposed and is heavily used. Behavior Driven Development (BDD) as an agile technique additionally enables a direct link to… 


Behavior Driven Development for circuit design and verification
This paper proposes a new design flow based on Behavior Driven Development (BDD), an agile technique for the development of software in which acceptance tests written in natural language play a central role and are the starting point in the design flow.
Behaviour Driven Development for Tests and Verification
A new design flow based on behaviour driven development (BDD), an extension of TDD, where acceptance tests written in natural language drive the implementation, and includes an automatic generalisation of test cases to properties that are used for formal verification.
Property-driven development
Property-driven development ties together automatic tests, formal specification, and executable UML models by developing these three views together instead of one after the other as is common practice.
Combining Formal Specifications with Test Driven Development
The goal of this paper is to show that it is possible, with appropriate tool support, to combine formal specifications with testdriven development without loosing the agility of test driven development.
Finding good counter-examples to aid design verification
  • G. Fey, R. Drechsler
  • Computer Science
    First ACM and IEEE International Conference on Formal Methods and Models for Co-Design, 2003. MEMOCODE '03. Proceedings.
  • 2003
This paper investigates, how debugging can benefit from using more than one counter-example generated by the verification tool.
Extreme formal modeling (XFM) for hardware models
XFM is proposed as a methodology to incrementally build a correct prescriptive formal model (PFM) from a natural language specification of a complex system.
XFM: An incremental methodology for developing formal models
An agile formal methodology based on Extreme Programming concepts to construct abstract models from natural language specifications of complex systems, focusing on Prescriptive Formal Models (PFMs) that capture the specification of the system under design in a mathematically precise manner is presented.
Supporting agile development by facilitating natural user interaction with executable formal specifications
The authors present a formal and flexible method to facilitate natural user interaction with executable specifications through end-user interfaces which can be considered as an agile and formal way which provides continuous testable software components through frequently communicated stakeholders' views.
Patterns in property specifications for finite-state verification
A survey of available specifications found that most are instances of the proposed pattern-based approach to the presentation, codification and reuse of property specifications for finite-state verification.
ESL Design and Verification: A Prescription for Electronic System Level Methodology
ESL DESIGN & VERIFICATION offers a true prescriptive guide to ESL that reviews its past and outlines the best practices of today.