プログラミングできないけどシステム開発の企画担当になってしまってあたふたしている人へ
こんにちは、メルマガスタンドフェイマーのなかのひと。です。
何か私の経験がお役に立てることは無いかな。と思って考えたところ、
プログラミングできないけどシステム開発の企画担当になってしまってあたふたしている人
ってもしかして、いらっしゃるのでは?と思いまして、私の経験をお伝えさせていただこうと思いました。
何かの参考になると嬉しいです。
私は、今回こちらの開発に携わらせていただきましたが、システム開発に関わったのははじめてではありません。
会社員時代に関わっております。
その時はまったくのはじめてで、何をどうしたらいいのかもわからず、アドバイスをしてくれる上司もおらず、社内に経験者もプログラマーもおらず、四面楚歌みたいな状態で開発しましたので、
かなり修羅の道でした・・・。
そういった経験から得た「これは大事!」というポイントをまとめてみました。
もちろんこれは私が個人的に感じたことであり、プロジェクトによって異なりますので、1つの情報として捉えていただけると幸いです。
ここ大事!というポイント。
1.絶対に外したくない要望が何なのかを明確にしておく。
2.細かく仕様を決めすぎないこと。
3.わからないものはわからないと言う。
4.テストに多くの人の協力を得るけれど全員の言うことを真に受けないこと。
===================
では、1つ1つ解説していきます。
1.絶対に外したくない要望が何なのかを明確にしておく。
開発していくうちに、当初の目的を忘れがちです。それに、色んな人(上司とか)が色んなことを(そりゃ無理だぜっていうことも含めて)言ってきます。笑
「私魔法使いじゃないんだけど!!」
と何度思ったことか。
そんな時にはまず”そもそも”に立ち返ることが大事です。
”そもそも”なんでこれを作ることになったのか?という目的があったはずです。その目的を達成するために「絶対に外したくない要望」「優先順位が一番高い要望」っていうのが何なのか?
思い出して下さい。
※最初に「絶対に外したくない要望」を決めて全員で共有しておくこと、大事。
「絶対に外したくない要望」ってコレだよね。ということをプロジェクトに関わる全員が把握していれば、
「その要望Bを叶えると、そもそも決めてた”絶対に外したくない要望”が叶いませんが大丈夫ですか?」
「その要望Cは、”絶対外したくない要望”よりも優先順位は高いでしょうか?」
と、話し合いが可能です。
話し合いの最中に、
「じゃぁ今後は要望Cを最優先にしよう!」となればそれはそれでいいと思うのです。
何が優先順位が高いのかということをお互いに確認をしないまま、いろんな要望を全部受け入れたり、個人的な判断で決定をしてしまうと、できあがってから
「あれ?最初言ってたのとちがくない?」(by上司)
ということになりかねません。
そうなったらもう悲惨です。
ささいなことも、コンセンサスをはかるようにすること、大事です。
2.細かく仕様を決めすぎないこと。
あまりに細かく仕様を決めすぎると、応用がきかなくなります。
「今」は必要な仕様かもしれないけれど、来月には不要な仕様かもしれません。
ですので、あまりにも業務フローに合わせすぎて、ゆとりのない仕様にしてしまうと使い勝手が悪いです。
ある程度使う側の環境、使う側の仕事環境が変わることを前提としてゆとりある仕様にすることも大事。
その為には、1人で考えるのではなく、様々な方の意見を聞くことが大切です。(その時に大事なのが、「1」に書いてあることだったりする)
3.わからないものはわからないと言う。
開発の担当者と話をしているとわからない専門用語が出てきたり、提案がワカラナイ。ということが多々あります。
そんな時は、わからないといいましょう。
「こういう解釈であってますか?」
「すみません、全然わかりません・・・」
「ここまではわかったんですが、この先の説明がわかりません」
と、確認しましょう。
少しでも認識が違うと、できあがったものが想像と違うものになってしまいます。
必ず確認をして、不明点がないようにしましょう。
ただ、気をつけたほうが良いところは、専門的すぎることにまで首をつっこまないことです。
あくまで、あなたがすることは、「要望を満たすものを完成させること」であってプログラミングするわけではありません。
要望を満たすものが完成できるのだろうか? という点において不明点があれば、100%クリアにしておきましょう。
4.テストに多くの人の協力を得るけれど全員の言うことを真に受けないこと。
テスト環境でのバグチェック、ベータ版などは、できるだけ多くの人に使ってもらいましょう。
自分1人では、あまりに深く企画に関わりすぎてしまって客観的に判断ができなくなっています。
バグチェックは多くの目があればあるほど、精度があがります。
ただ!要望については、全員の言うことを真に受けてはいけません。全員の要望を満たすということは難しいからです。
たとえば「Twitterも文字数無制限で投稿したい」という要望が出たとしても、その要望を受け入れてしまったらTwitterの良さはなくなりますよね。
それぞれのソフトにはそれぞれのソフトの良さがあり、良さを把握して使うものですので、全てを真に受けて対応しないこと。ここで大事になるのはまた「1」の ”そもそもの絶対に外したくない要望” はなんなのかを念頭に置いて対応していくと、判断がしやすくなります。
以上、私が大事だなーと思っているところのまとめでした。
これからシステム開発に携わる方、もしよければ参考にしてみてください!