Agile Design for Hardware, Part I
David Patterson and Borivoje Nikolic, UC Berkeley
7/27/2015 07:00 AM EDT
In the first of a three-part series, two Berkeley professors suggest its time to apply Agile design techniques to hardware.
Software used to be developed as a sequence of distinct phases, each of which can take six or more months:
- Requirements analysis and specification
- Architectural design
- Implementation and integration
- Verification and test
- Operation and maintenance
This process is the called the Waterfall development model, since it flows from the top down to completion. Waterfall relies on extensive documentation, planning, and using PERT and Gantt charts to try to make the schedule match the budget.
So many software projects were late, over budget, or abandoned that it led to a revolution in software development, demarcated by the Agile Manifesto in 2001. Agile development embraces change as a fact of life; small teams continuously refine a working but incomplete prototype until the customer is happy with the result. What to do in the next iteration depends on the evaluation of the current one, as opposed to some master plan established at the beginning of the project. Thus, the elaborate planning and documentation of the Waterfall process is moot.
![]() |
E-mail This Article | ![]() |
![]() |
Printer-Friendly Page |
Related Articles
- Agile Design for Hardware, Part II
- Next Gen Scan Compression Technique to overcome Test challenges at Lower Technology Nodes (Part - I)
- Is Agile coming to Hardware Development?
- Dealing with automotive software complexity with virtual prototyping - Part 2: An AUTOSAR use case
- Optimizing embedded software for power efficiency: Part 2 - Minimizing hardware power
New Articles
- Optimizing 16-Bit Unsigned Multipliers with Reversible Logic Gates for an Enhanced Performance
- How NoC architecture solves MCU design challenges
- Automating Hardware-Software Consistency in Complex SoCs
- Beyond Limits: Unleashing the 10.7 Gbps LPDDR5X Subsystem
- How to Design Secure SoCs: Essential Security Features for Digital Designers