効率化の誤解

目標設定の要諦

SESと呼ばれる派遣や準委任契約では、プロジェクトを完遂することが難しいとしている。これはゴールが未設定であったり、曖昧になってしまう場合が多くあるからである。ゴールの設定や未来像は非常に重要で、プロジェクトマネージャーなどリーダーが必ず持っておくべき指針である。

真のリーダー像

システム開発に参画するメンバーは一般的に経歴書やスキルシートによって決まる。プロジェクト経験数が多かったり、扱える言語が多かったりするだけでは、本当のスキルは推しはかれない。やはり、確認すべきは不測の事態が起きたときの対処方法を豊富に持つリーダーが必要となる。

アジャイルの本質

犬小屋を建てるときに設計書はいらないが、マンションを建てるには設計書がいる。アジャイル開発といっても、例えばマンションを設計図なしに建てるといったことを考えるとある程度は見通しや知見などを持つメンバーが方向性を決めていく必要がある。システム開発はその時その時の条件によっていい悪いの判断軸が変わる。さらに時間の経過でも判断軸が変化していくのである。

部分最適の罠

日本には「カイゼン」という高度経済成長期を支えた力強い言葉がある。しかし、時と状況によって判断軸が変わるソフトウェアという無形財産の前では、「善」に「改」めることができているのか、変化してしまう背景がある。職人気質である国民性も相まって、どうしても部分改善、部分最適を繰り返してしまうというプロジェクト現場が少なくない。

まとめ

システム運用や保守における部分最適は必ずしも全体最適になるわけではない。むしろ、この部分最適が全体を考えたときの労働生産性を下げていることすらある。小回りが利く人であればあるほど属人化してしまったりするため、誰が全体最適を見るのがベストなのか、改めて考える必要がある。

関連記事

ノーコード・ローコード比較

新たな開発手法

近年、ビジネスのデジタル化が加速する中で、ノーコード・ローコードツールが注目を集めている。従来のシステム開発では専門的なプログラミング知識が必須だったが、これらのツールを使えば、非エンジニアでも直感的な操作でアプリケーションやWebサイトを構築できる。開発期間の短縮やコスト削減が可能になることから、スタートアップから大企業まで幅広く導入が進んでいる。

主要ツール

ノーコードツールの代表例としては、Webサイト構築に強いBubbleやWebflow、業務アプリ開発に適したKintoneやAppSheet、自動化に特化したZapierなどがある。Bubbleは柔軟性が高く複雑な機能も実装可能だが、学習コストはやや高めである。Webflowはデザイン性に優れ、マーケティングサイトに最適だ。Kintoneはデータベース管理に優れ、日本企業での導入実績が豊富で、承認フローなど日本の業務習慣に対応している。一方、ローコードツールではMicrosoft Power AppsがOffice 365との連携に強く、OutSystemsは大規模エンタープライズ向けで基幹システム開発にも対応可能である。料金体系も月額制からユーザー課金制まで多様で、自社の規模に合わせた選択ができる。

両者の違い

ノーコードとローコードの最大の違いは、カスタマイズ性と技術的な介入度である。ノーコードは完全にコード記述なしで開発できる反面、複雑な要件には対応しきれない場合がある。ローコードは基本的な部分は視覚的に構築しつつ、必要に応じてコードを追加できるため、より高度な機能実装が可能だ。選択時のポイントは、開発したいシステムの複雑さ、既存システムとの連携要件、将来的な拡張性、そして社内の技術リソースである。シンプルな業務アプリならノーコード、基幹システム連携が必要ならローコードが適している。

導入のポイント

ノーコード・ローコードツールの導入を成功させるには、いくつかの注意点がある。まず、無料プランで試用し、実際の業務フローに合うか検証することが重要だ。また、ベンダーロックインのリスクを考慮し、データのエクスポート機能やAPI連携の可否を確認すべきである。セキュリティ要件も見逃せない。特に顧客情報を扱う場合は、各ツールのセキュリティ認証やデータ保存場所を確認する必要がある。さらに、導入後の運用体制も計画的に整備し、社内でのツール活用スキルを育成することが、長期的な成功につながる。

まとめ

ノーコード・ローコードツールは、企業のDX推進を加速させる強力な手段である。適切なツールを選定し、自社の課題に合わせて活用することで、開発コストを抑えながらスピーディーにシステムを構築できる。まずは小規模なプロジェクトから始め、成功体験を積み重ねながら展開していくことを勧める。デジタル化の第一歩として、ぜひ検討すべきだろう。

続きを見る >

技術的負債の返済方法

負債の本質

技術的負債には、設計負債やコード負債がある。金銭的な負債であれば借入金やマイナスの表記で数字化できるのだが、技術的負債においては数字化できないことがとても難しい点である。経営に関するほとんどのことは定量化や定性化が可能だが、たとえば企業創業者の発想する「野生の勘」を直接的に数字化できないように技術的負債も一筋縄では見える化しない。

設計時の対策

技術的負債の中でもコード負債については、システム開発の現場からよく発想されるリファクタリングや再構築などを行うことで比較的わかりやすい返済方法となる。知らない人が作ったプログラムや古くなったプログラムのバージョンなど、リスクを表現し対応することができる。何よりも最初の企画設計段階で負債が積みあがりにくい仕組みを考えることが大切である。

高負担な設計

技術的負債の中でも利息の高い負債が設計負債である。単体機能における設計であれば、モジュールごとの再設計によって返済が可能である。しかし、プログラムは複数のモジュールが絡まり合っていることがほとんどなので、複雑なオペになってしまう。また、稼働中のシステムにわざわざ再設計したプログラムを導入するリスクに対して、得れるメリットも少ないので見過ごされがちである。設計能力は例えば、紙というオブジェクトのメソッド(振る舞い)とプロパティ(保持する情報)を聞いて正しい答えが帰ってくれば多少安心であろう。紙の振る舞いは燃えるであり保持する情報は面積などがある。

根本的解決

しかし、技術的負債はこのように目に見えやすい設計負債やコード負債が致命的になることは少なく、やはりその上層でどのような指針に基づいてシステム運用がなされてきたか、また長期視点で一貫したメンテナンスを行うことが必要である。システムの維持には保守費用や運用費用を払っていることが多いと思うが、これだけでは将来の負債を減らしていくことはできない。やはり、鳥の目を持つITコンサルタントやITアナリストなどの役割を持つメンバーが必要である。

まとめ

ITコンサルタントやアナリストは、すぐに利益も生まない、経費を削減するわけでもないといったコストセンターとしてのポジションなので、あまり起用していない中小企業も多いようである。投資に対する効果が見えにくいのは、料理でいう香辛料と同じなのかもしれない。その少しの投資が未来を大きく変えることになる。IT技術は日進月歩で発展するからである。

続きを見る >

業務データ資産の発見と活用

AI活用の第一歩

AI活用による生産性向上のためのシステムツール構築では、過去データの利用が必要不可欠である。しかし、過去データが整備されていない場合の対処法を考えてみたい。多くの企業がAI導入を検討する際、まず直面するのがこのデータ品質の問題である。完璧なデータセットを求めがちだが、実際には現実的なアプローチで進めることが成功への鍵となる。

目的の明確化

まず「何に使いたいデータなのか」を明確にする必要がある。目的に応じて、必要なデータの「粒度・項目・量」が変わるため、いつも扱っている部門ではない人が客観的に整理するのがよいかもしれない。例えば、生産管理の異常検知であればセンサーデータの時系列とアラート履歴が必要になり、顧客離反の予測であれば購買履歴と問い合わせ履歴が必要になる。このように具体的な用途を定めることで、収集すべきデータの方向性が見えてくる。

データの現状把握

やりたいことを整理すれば、次に足りないデータなどが見えてくるはずである。このとき、データが重複していたり、欠損していたり、バラバラであったりというのも、すべてデータはあるものと考える。形式としては、Excel、CSV、紙、システム内に点在などを把握して、データの棚卸を行う。完璧でないデータでも、適切な処理を施すことで価値ある情報源に変わる。重要なのは、現在持っているデータ資産の全体像を正確に把握することである。

データ整備の実践

データの棚卸が終われば、データクレンジング(整備)の作業方針を立てる。手動で整えるのか、何らかのツールを使うのか検討が必要である。また、このツールはExtract(抽出)、Transform(変換)、Load(読み込み)の頭文字をとってETLツールと呼ばれている。Power Queryなどがその代表例である。作業量と精度のバランスを考慮し、コストパフォーマンスの高い整備方法を選択することが重要になる。自動化できる部分は積極的にツールを活用すべきである。

まとめ

データを整えていく途中で足りないデータが発見されることもあるだろう。しかし、ここからがAIの使い様である。ファインチューニング(学習させていく)ことや、生成AIやRAG(Retrieval-Augmented Generation)を利用して補完するなどが考えられる。

続きを見る >