事前に計画を立て、その計画に沿って実施するというやり方を、一般に「ウォーターフォール」型と呼んでいます。システム開発する際、ウォーターフォール型で進めていくケースが多いようですが、DXでこの方法を採用するのは僕はあまりおすすめしません。今回は、その理由を説明していきます。
最近は日進月歩で技術革新が進み、最適解が日々進化しています。そのため、システム開発を始めた時点でベストな計画を立てていても、時間が経つにつれてそれがベストではなくなっていく可能性は大いにあります。
そんな状況の変化を無視して当初の方針のままで開発を進めていくのは、あまりスマートなやり方とはいえないのではないでしょうか。
つまり重要なのは「状況は常に変化している」という事実を受け入れ、あらかじめ決めたゴールに猛進するのではなく、「今はどうなっているのか」を常に確認し、時には「失敗」を認めながら改善し続けるということ。一般的に、このやり方を「アジャイル」型と呼んでいます。
アジャイル型でシステム開発を進める場合のおすすめは、巨大なシステムを作るのではなく、マイクロサービス(小さいサービス)をつなぎ合わせて自分にとって本当に必要なシステムを作っていくという方法。
マイクロサービスは状況に応じて柔軟に変化できますし、スピーディーなサービス提供が可能です。状況が変われば、その変化に応じて微調整しながら進めていくということもできます。
ここまでは大きめのシステム開発を想定してお話してきましたが、ここからはもう少し小さめの自社システム開発についてお話していきます。ちょっとした課題を解決するシステムが必要になった場合、既存のマイクロサービスでつなぎ合わせるだけでインスタントに作り上げることができるんです。
たとえばマイカでは、テレワークに移行する上でプロジェクト管理やタスク管理を社内で共有するシステムが必要になったので「Notion」というサービスを使って自作することにしました。
以前は「Todoist」や「Trello」、「Dropbox」などを組み合わせて運用していましたが、テレワークになり、メンバーが離れた場所でバラバラに稼働している状況になった今、これだと十分にお互いの状況を把握することが難しいと判断したからです。
実際に移行する前に、Zoomでの話し合いを重ね、私たちに必要なものは何なのかということを再確認しました。
まず課題として挙げられたのが、誰がどんな仕事をしていて、今なにをやっているのかということが見えにくくなっているという点。
ファイル管理についてもいくつか課題がありました。マイカではDropboxでファイルを管理していますが、タスク管理とファイル管理が別のサービスになっているため、双方を見て確認しなければならないため、作業が煩雑になってしまいます。さらに、ファイルの履歴がわかりにくいという点も大きな課題でした。
こういった課題を、Notionを使ってひとつずつ解決していきました。
メンバーの仕事を把握したいという課題については、すべてのプロジェクトを1つのデータベースにまとめ、それぞれ担当者のタグをつけて共有しておけば、タグを選ぶだけで誰がなにをしているのかが一覧できます。
それぞれのプロジェクトには細分化されたタスクと期限が登録されるため、メンバーが現在、なにをやっているのかということを確認することができます。もちろん、自分が今日やるべきこともすぐに把握できます。
経理から月末の請求処理も効率化したいというリクエストがありました。これについては、プロジェクトごとに経費や請求項目などのデータをつけておくことで解決することができました。
交通費については、出発駅と到着駅を入力するだけでかかった交通費が算出できる仕組みを用意し、簡単に入力できるようにしました。これらのデータベースは、メンバーが必要に応じて要素を追加したり、他のデータベースと連動させることもできます。
こうして、プロジェクト管理を核にしたマイカ専用の業務システムを用意し、日々少しずつ修正を繰り返しながら、みんなで育てていっています。
これはNotionを使った例ですが、ほかにも使いやすいサービスはいろいろ出てきているので、いろいろと試しながら自社(自分)にあった形を模索していくといいのではないかと思います。
なお、Notionについては、別の記事でも紹介していこうと思っています。ご期待ください。
コメント