Sean Prestridge-シニアアプリケーションエンジニア(FAE)、IARシステムのFAE US部門のチームリーダー-彼の記事の中で速く動き、物事を壊しますか?組み込みではそれほど速くありません」では、コードの品質とテストの問題に焦点を当てて、組み込みシステムのソフトウェア開発の詳細について説明します。
「より速く動き、障壁を打ち破る」は、彼がFacebookの開発文化に導入しているMarkZuckerbergによって表明されたアプローチです。新しい機能をすばやく作成して起動することについて話すと(完璧でなくても)素晴らしいように聞こえますが、組み込みシステムのソフトウェア開発に適用しようとすると、その美しさは失われます。
その理由は、主題分野が完全に異なるためです。 Facebookの中核となるのは、重要な新機能が正しく機能しなくても、おそらくそれほど大きな打撃を受けないであろう複数の機能ポイントを備えたWebおよびデータベースの開発です。組み込みシステムは、その性質上、リソースが限られているシステムであり、主に1つの機能のみ、または複数の機能を実行するように設計されています。したがって、組み込みシステムに適用される「より速く移動し、障壁を打破する」という哲学は、システム全体を役に立たなくする可能性があります。組み込みシステムが実装する機能によっては、結果はせいぜい不快で、最悪の場合は悲惨なものになる可能性があります。
(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/