セキュアなコード開発はアジャイルの犠牲になるのか
アジャイルチームは,信頼性と品質の高いコードを短期間に作り出すことで知られている。その一方で,迅速なデリバリに対するプレッシャーがレビューの省略,テストの短縮,コードの安全性に対する配慮の欠如に結び付く可能性もある。アジャイルにセキュアな開発を求めるのは無理な話なのだろうか?
アジャイルチームは,信頼性と品質の高いコードを短期間に作り出すことで知られている。その一方で,迅速なデリバリに対するプレッシャーがレビューの省略,テストの短縮,コードの安全性に対する配慮の欠如に結び付く可能性もある。アジャイルにセキュアな開発を求めるのは無理な話なのだろうか?
ペアプログラミングはアジャイルソフトウェア開発テクニックのひとつで,2人のプログラマが1つのワークステーションで共同作業する,というものだ。そのメリットはよく知られていて,広く採用されているテクニックでもある。ところで,ペアを行うのにもっともよい座席位置とはどのようなものだろう?
ハーバードビジネスレビューに掲載されたFlyvbjerg氏とBudzier氏の研究は誰もが注目する内容だ。この研究によればITプロジェクトは考えられているよりも遥かに危険だ。
リファクタリングは,プログラムの外部的なふるまいを変えずに内部構造を変更するテクニックだ。一見すると相当な思考を伴う作業にも思われるが,過度に考え込むことはかえってマイナスにもなり得る。
顧客からよく尋ねられる質問のひとつに、納品までに要する時間のラフな見積りがある。これはアジャイルチームにとって心地よいものではない。実作業に着手しないうちに製品機能全体を見積もると、間違いが頻発することになる。しかし、たいていの場合、チームはこの問題を避けて通ることはできない
過去、バグ修正をベロシティに加えるべきか多くの議論や論争があった。「1つの」正しい答えは、なさそうである。しかしアジャイラには、どのような状況でバグ修正を追加すべきか、どのように追加すべきか、どこで追加しなくてよいかを提案している人達がいる。
アジャイルチームが仕事をするのは開放的な間取りの部屋が普通だと考えられている。パーティションの中で仕事をするのは退屈で古いやり方だ。仕切りがない部屋で働くことでコミニュケーションを促進し、協力的な力強いチームを作ることができるのはよく知られたことだ。しかし、これは言われているほど効果があるのだろうか。
スクラムは開発プロセス改善のための柔軟で適用しやすいソフトウエア開発手法と思われている。何年もの間、スクラムは多くの成功を納めてきた。しかし、スクラムを導入しても未だに硬直的なチームがある。スクラムに欠点があるのだろうか、それとも、スクラム導入に失敗したのだろうか。
定義によると、マニフェストとは、グループの動機、理由、要求を記述した原則や意思の公的宣言のことだ。よく知られているマニフェストのひとつにアジャイルマニフェスト(Agile Manifesto)があるが、その登場以来、マニフェストはかなりまん延している。
失敗は怒りと失望、批判合戦を生み出すものだ。しかし、失敗から何も学ばなかったらその失敗は完全に無駄になる。アジャイルチームはどうやって失敗を価値あるものにしているのか。