Sean Prestridge - Senior Applications Engineer (FAE), Team Leader da FAE US Division of IAR Systems - em seu artigo Move fast and break things? Não tão rápido em embarcados ”, fala sobre as especificidades do desenvolvimento de software para sistemas embarcados, com foco nas questões de qualidade e teste de código.
“ Mova-se mais rápido e quebre barreiras ” é a abordagem expressa por Mark Zuckerberg, que ele está introduzindo na cultura de desenvolvimento do Facebook. Embora pareça ótimo quando falamos sobre criar e lançar rapidamente novos recursos (mesmo que eles não sejam perfeitos), ele ainda perde sua beleza quando você tenta aplicá-lo ao desenvolvimento de software para sistemas embarcados.
A razão é que as áreas temáticas são completamente diferentes. No núcleo do Facebook está o desenvolvimento da web e de banco de dados com vários pontos funcionais que provavelmente não serão afetados com muita força se um novo recurso importante não funcionar corretamente. Os sistemas embarcados são, por sua própria natureza, sistemas com recursos limitados, principalmente projetados para executar apenas uma função, ou talvez várias funções. Portanto, a filosofia "Mova-se mais rápido e quebre as barreiras" aplicada a um sistema embarcado pode tornar todo o sistema inútil. Dependendo de qual função o sistema embarcado implementa, os resultados podem ser desagradáveis na melhor das hipóteses e desastrosos na pior.
(RAD – Rapid Application Development) ? , , , .
« , »
, . WISCY ( «»): ? . , , , .
( ) , , , . , . : « , . . , » [1]. .
, , , « ». , , . .
RAD , « » , , , « ». , . , - . , , , ( ) .
, , « ». , « ». , [2]. : « » [1].
. .:
— , , , , , , .
–
, , - , ? MISRA, CWE, CERT, . . , , , «» ++.
, , , . , , . , 50 , [3]. , , , « » . , , , . , , . , , .
« », :
— , . . , , , , , , . , — . , , .» [4]
, , , . , , , : ( «»), ( ), ( ) . - : , , [5].
( , ) . , . , , , . , , , . – . ( )? , , , ? , , , .
, « , » , , . , . IBM, 100$ , -- 1500$, – 10000$ [6]. , . « » (Test-Driven Development – TDD), . , , . , : , , ; . . , , .
,
, . , , , , . , , , , . , , – . , .
- https://www.infoq.com/articles/slow-down-go-faster/
- https://www.targetprocess.com/articles/speed-in-software-development/
- https://cacm.acm.org/magazines/2018/4/226371-lessons-from-building-static-analysis-tools-at-google/fulltext
- Steve McConnell, Code Complete, Second Edition (Microsoft Press, 2009), 501.
- https://www.afit.edu/stat/statcoe_files/0214simp%202%20AST%20IG%20for%20Managers%20and%20Practitioners.pdf
- https://crossbrowsertesting.com/blog/development/software-bug-cost/