The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
Can someone recommend a strategy for managing and development of projects that are Hardware & Software. Its just that AGILE doesn't seem to be applicable for hardware. The big thing is with agile is that it can change right up to delivery which is fine for software but not for hardware which is physical a change will require a re-spin of the board (unless you want to ship a board with tombstone resistors and bodge wires (or preserve us as I have done once a (small)BGA upside down with wires on the balls to pads)).
A guess would be kanban.
Kanban is what came out of the Japanese just in time production line system - given your example, if something changes regarding hardware then the processes that depend on that new hardware are going to have to wait until that hardware is ready.
Although my preferred development strategy for all projects is MUYBM (Make up your bloody mind! )
“That which can be asserted without evidence, can be dismissed without evidence.”
Well I think the problem is Software want the hardware to change to meet there demands. At times we have had ARM9 used in place of a PIC for controlling some LED's... I mean come on that is plain overkill!
This is plain wrong. It is *possible* for software, but it does not make it *fine*.
Agility does not mean you can handle changes until last minute (There is no time machine sold with the Agile manifesto package). Agility means that your organization is capable of optimally cope with changes - refusing a change that comes too late for a deadline is also a perfectly *good* way to handle a change.
Oh boy. Trying to fit a square peg into a round hole. Either the square peg need to be shaped to round or the round hole need to cut into square. I understand your dilemma. The hardware is a square and you want to be catchy round process. Don't fight it mate. Keep them separate.
If you find one, please let me know. I work for a hardware company, managed by hardware engineers.
"By God, those flaky software monkeys will learn how to manage their projects just like hardware! There will be processes, appropriate documentation (and we decide what's appropriate), and they will write Engineering Change Orders (ECO's) for every single update. No more of this seat-of-the-pants willy-nilly updating!"
The key question in all these techniques is "What is the key constraint, or freedom, that stops / allows work to proceed?". It's all about the [theory of] constraints, e.g. Eli Goldratt, 'The Goal'
In agile it is the realisation that the manufacture cost (running the compiler) is almost zero, so one can concentrate on the other problem - do we know what we want, i.e. continuously ask the customer if the product is what was expected.
For the Circuit board design, the layout of the board is a time constraint, along with knowing if the customer has their external circuitry stabilised (there it's about the interface(s)). So concentrate on getting the time killer (and or cost / quality killer) right.
All in all, the best development strategy is to engage the brain, learn from others, and avoid blindly copying the many misunderstood fanboy techniques. There are no silver bullets (see “The Balle-Argentee Method.”).
Last Visit: 4-Jun-20 14:52 Last Update: 4-Jun-20 14:52