【1分で読めるドキュメント!?】システム開発の仕事をするうえで大事な心構え
こんにちは!CODE CLUB965のKです!
今回は、ドキュメントの紹介をしようと思います。
ドキュメントと言っても、1分程度で読める非常に短いものです。
このドキュメントに、システム開発の仕事をするうえで大事な心構えが書いてあります。
『アジャイルソフトウェア開発宣言』
みなさんは、『アジャイルソフトウェア開発宣言』というものを聞いたことがあるでしょうか?
こちらのドキュメントです。
https://agilemanifesto.org/iso/ja/manifesto.html
すごいエンジニア達が集まって、「良いシステムを開発するためにはどうしたら良いか」を話して、その結論が整理されたものが『アジャイルソフトウェア開発宣言』です。
多くのエンジニアが集まったので、色んな意見が出たらしいですが、これだけは間違いないよね、というところで整理されたそうです。
この内容が、システム開発の仕事をするうえでとても参考になります。
重要な部分を書き出します。
「プロセスやツールよりも個人と対話を、 包括的なドキュメントよりも動くソフトウェアを、 契約交渉よりも顧客との協調を、 計画に従うことよりも変化への対応を、 価値とする。すなわち、左記のことがらに価値があることを 認めながらも、私たちは右記のことがらにより価値をおく。」
いかがでしょうか?
どういうことかイメージ湧くでしょうか?
1つ1つ見ていきましょう。
「プロセスやツールよりも個人と対話を」
お客様やチームメンバーとしっかり対話をしましょう、ということですね
例えば、要件が決まって開発フェーズに入ったからもうお客さんと会話はせずにどんどん開発を進める、というやり方では良いプロダクトは作れません。
積極的にお客様、チームメンバーと会話をしながらプロダクト開発を進めましょう。
「包括的なドキュメントよりも動くソフトウェアを」
端的に言えば、仕様書などでお客様と会話するのではなく、動くソフトウェアでもってお客様と会話しましょう、ということです。
仕様書はそこそこに、どんどん動くソフトウェアの開発を進めていきましょうという考えです。
開発を進めたうえで手戻りがあると、その分手戻りの工数もかかるので、ドキュメントで仕様を固めて、そのうえで開発を進めたい気持ちもわかります。
しかし、やはり実物を見たうえで会話・検討ができた方が良いプロダクトが作れるのは間違いありません。
「契約交渉よりも顧客との協調を」
「契約に無いからやりません」ではなく、顧客と協調して歩み寄りましょう、ということですね。
良いものを作るためには当たり前なことに思いますが、熟練の開発者たちがわざわざこれを挙げているのを見ると、改めて意識していくべきものなんだなと考えさせられます。
「計画に従うことよりも変化への対応を」
1度立てた計画に固執することがいけないのはもちろん、計画通りに進んでいることについて盲目的に喜ぶこともいけないということだと理解しています。
計画を立てて、その通りに進んでいるとついつい嬉しくなります。
ただし、周りの状況が変化して、計画通りに進むことが正しく無くなることもあります。
例えば、プロダクトAの開発を進めているとして、開発を進めている途中で全く同じプロダクトが世の中にリリースされたとしたら、計画通りにプロダクトAの開発を進めることは正しいとは言えません。
計画を変更して、何かしらの策を考える必要があります。
1度計画を立てても、その計画に単に従うことは正しくなく、常に周りの状況の変化に対応していかなくてはならないのです。
最後に
『アジャイルソフトウェア開発宣言』いかがでしょうか?
私は、どの項目も大切にしたうえで普段の開発に取り組んでいます。
なお、勘違いされがちなのですが、『アジャイルソフトウェア開発宣言』は左に書かれたものに価値が無いと言っているわけではありません。
「プロセスやツール」「包括的なドキュメント」「契約交渉」「計画に従うこと」どれも価値はあります。
ただし、それよりは「個人との対話」「動くソフトウェア」「顧客との協調」「変化への対応」の方が大事だよね、と言っているのです。
「ドキュメントは書かなくて良いんだよ」と極端に理解する人がいますが、そういうわけではありません。
システム開発を仕事にするのであれば、ぜひ『アジャイルソフトウェア開発宣言』のことを思い出して、仕事に取り組んで頂けたらと思います。
それでは、また!
“【1分で読めるドキュメント!?】システム開発の仕事をするうえで大事な心構え” に対して1件のコメントがあります。
コメントは受け付けていません。