Hardware and software development have different requirements for efficient development processes. Properly used, the agile methods can be used successfully here. The speaker shows the differences and shows how agile methods and processes can be used as efficiently as possible for the hardware and hardware-related software development.
3. Content
•
•
•
•
•
•
•
•
Time is changing
Manifesto for Agile Software Development
Some Principles
Some Discussion of software and hardware development
differences
An example of Board design
How to handle user stories documentation and time
How to start
Discussion
Urs Böhm, Okt 2013
6. 32Bit
Simple Kernel
Operating System
16 Bit
8 Bit
Processor Complexity
Raised Complexity needed new solutions
Native
programming
Simple Kernel
Software Complexity
Urs Böhm, Okt 2013
7. Manifesto for Agile Software Development
We are uncovering better ways of developing software by doing it
and helping others do it.
Through this work we have come to value:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on the right,
we value the items on the left more.
Urs Böhm, Okt 2013
11. Select your Microcontroller and Environment wisely
www.infineon .com
Datasheet C167CS
ARM is doing it concerning
CORE and SW
Urs Böhm, Okt 2013
www.microchip.com
13. Cost of Change is different
How long does it take to change one line of code?
How long does it take to change one signal on the plane?
And your outdated expensive prototype is
less usefull!
Urs Böhm, Okt 2013
15. Cost of Testing is different
Simulation
Programm
Continuous Integration
Server
Urs Böhm, Okt 2013
Standard is
manual
testing at
specific
timepoints
16. Cost and risk of error handling is different
Urs Böhm, Okt 2013
19. There is a good and a indifferent message
Yes, you can go agile
in HW-Development
No, your resulting
product will look
different.
You don’t get the same
just cheaper and faster.
But that’s the same with Software. Agile developed SW looks
different. You just don’t see SW.
Urs Böhm, Okt 2013
21. User Stories, Tasks, Requirements
As a product owner I want the device to operate
from -40°c to +85°C so I can get approvement
from TÜV
Acceptance Criteria: Test Certificate from QA
As a user I want the device to be protected from
overvoltage so I can use it reliable
Acceptance Criteria: ISO XXXXX fullfilled
Test certificate
Urs Böhm, Okt 2013
22. How to handle documentation
Working software over comprehensive documentation
Artefacts
Documentation as
schematics, layouts, mechanical
drawings, engineering calculations,
Test for regulations, prototypes.
Urs Böhm, Okt 2013
Definition of Done
….
Update documentation
of Task.
…
24. Use Metrics to communicate
Burndown Chart
Urs Böhm, Okt 2013
Cost to Complete Chart
25. Wikispeed
• Existing manufacturing changes slowly because the cost to make
change is so high. (Joe Justice)
Product plattform
What Do you optimise?
Cycle
Average cost per unit
Cost of change
Urs Böhm, Okt 2013
Product maintenance
Cycle
26. How to start?
Daily Standup
(communicate frequently)
Transparent Backlog
and Work in Progress
Product Owner
(someone who cares and
fight for the product)
Work in teams or at least
rewiew in team
Retrospectives
(continuos process
improvement)
Make project and
change visible
Urs Böhm, Okt 2013