「IT投資」という考え方そのものが間違っている

JTBの元取締役CIO(最高情報責任者)の方が、ITシステム開発が設備への投資であるかのような前提で書いていますが、この前提は間違っていると思います。


ソフトウェアシステムの開発とは、経営行為そのものそのものであり、逆に言えば、江戸時代どころか、ローマの時代から、経営行為とは、ソフトウェアシステムの開発以外のなにものでもありませんでした。


たとえば、新しいビジネスを実現するための、新しい店舗オペレーションや配送システムの開発は、ソフトウェアシステムの開発そのものです。


あたらしいビジネスを立ち上げるために、設計すべきものは、たとえば:

●迅速で高品質な状況対応を可能とする意思決定メカニズムの設計。
●現場で柔軟な対応が出来、かつ、従業員の士気があがるような、責任・権限メカニズムと、それと連動した人事評価・報酬システムの設計。
●現実的に調達可能な人材と、十分な投資効果の見込める従業員教育システムと、それを前提とした効率的で現実的な店舗オペレーションの設計。
●もちろん、その新しい店舗オペレーションを実装するための、現実的な店舗レイアウト設計方針や、流通ネットワークの設計。

これらは、みな、ソフトウェアシステムの開発そのものです。
教育や人材育成とは、人間の脳神経システムのプログラミングです。
従業員のモチベーション設計、従業員規則の作成、顧客がリピートするための動機付け設計、責任・権限・意思決定メカニズムの設計は、社会システムのプログラミングです。


そして、企業のITシステムの開発とは、本質的にこれらと同質の行為なのです。

ITシステムを開発していないのに、できあがった世界最大級のITシステム

たとえば、「ウォルマートのITシステムは、世界で2番目の規模だ。」というジョークがあります。一番目は、ペンタゴンだというオチです。
ウォルマートは、それほどの規模のITシステムを保有しているにもかかわらず、彼らの意識では、開発しているのは、あくまでより効率的で付加価値の高い店舗オペレーションであり究極的には彼らのビジネスそのものです。彼らは、ITシステムを開発しているわけではありません。


つまり、現代の経営においては、店舗オペレーションを設計するとき、客の導線や人材配置や組織メカニズムが一体となった一つのソフトウェアアーキテクチャとして設計するのが当たり前で、店舗オペレーション設計が終わった後に、それに必要なIT設備を開発するという発想そのものが、時代遅れなのです。

コンピュータソフトウェアと脳神経ソフトウェアは等価?

そもそも、ソフトウェアシステムの設計や改良の過程では、どの部分をどの言語で実装し、どのOSのバイナリでどのマシーンで運用するかという部分は、よく入れ替わります。サーバのLinuxで、PHPで実装するはずだった機能を、途中から、やはりWindowsクライアントのJavaScriptにやらせることに変更しよう、という具合にです。
これと同じように、店舗オペレーションというソフトウェアシステムを設計するとき、どの部分を人材教育(脳神経プログラミング)や組織メカニズム(社会システムプログラミング)で実装し、どの部分をJavaで実装するかは、よく入れ替わるのです。脳神経ソフトウェアとコンピュータソフトウェアは、この意味で等価なのです。

実装イメージのない事業設計はただのファンタジーだ

そして、経営者が、あたらしいビジネス戦略を練り上げるとき、そもそも、どんな店舗オペレーションが可能で、どんな店舗オペレーションが実装不可能なのか、実現イメージを頭にもちながら、ビジネス設計をします。
たとえば、あたらしいコンセプトの有機野菜レストランチェーンを立ち上げるとき、はたして、そういう客層に対する、そういうサービスを提供するのに、これだけの人材と、これだけのアルバイトさんだけで、ほんとうに回せるのか?そこまで高品質なコンセプトでやろうとすると、店舗マニュアルが複雑になりすぎないか?そもそも、それを回せる人材は、これだけの期間で調達可能なのか?それだけの鮮度を保ったまま、契約農家から原料を配送可能なのか?有機農業は、天候による影響をどのように受けるリスクがあるのか?


つまり、「新規事業立ち上げ」という「新規ソフトウェア設計行為」をするとき、プログラミングでいうところの、コーディングイメージをもちながら、設計するのが当たり前なわけです。
なぜなら、あんなこともやりたい、こんなこともやりたい、というビジネスアイデアは、それが実装可能な場合のみ、いいアイデアであり、実装不可能なビジネスアイデアなど、ただのファンタジーであることを、経営者は、骨の髄まで分かっているからです。
言い換えれば、実装可能なソフトウェアと、そうでないソフトウェアの区別のつかない経営者は、無能な経営者です。

実装イメージのないコンピュータソフトウェア企画もただのファンタジー

にもかかわらず、新規事業立ち上げというソフトウェア開発行為において、脳神経ソフトウェアや組織ソフトウェアとして実装されるコードは、実装可能性を精密に吟味しながら設計するのに、コンピュータソフトウェアとして実装される部分だけ、実装可能性を十分に吟味せずに、ビジネス設計するから、プロジェクトが頓挫したり、思ったような効果を上げないのです。


新しいコンセプトのレストランの店舗オペレーションを設計するとき、どのような作業なら、パートのおばさんだけで回せるのか判断のつかない経営者では、ろくな事業企画ができるはずもないのと同じように、どのようなソフトウェア機能なら、システム的ボトルネックが生じずに、かつ、ソフトウェアシステムの保守性が悪くならずに開発可能かどうかの検討がつかない経営者では、ろくな事業企画ができるわけがないのです。

ITシステム開発プロジェクトが頓挫する本当の理由

そして、なぜ、ITシステムの開発が不確定要素が多く、計画通りに行かないかというと、それが、新規事業立ち上げにおける、新しい組織ソフトウェアやオペレーションの開発と本質的に同じだからです。


いままでやったことのない、新しいコンセプトのレストランで、新しい食材調達システムと、あたらしいサービス提供を実現するような、新しい店舗オペレーションを設計するときなんて、不確定要素だらけです。計画通りどころか、始めから、計画通りにいかないことを前提に、プロトタイプを作ってフィージビリティースタディーする工程を入れるなどを計画に盛り込むなんて、よくある話なのです。
にもかかわらず、コンピュータソフトウェアだけ別物だと考え、安易に計画通りに行くことを前提としてしまうから、話がおかしくなるのです。

企業はどのようにITシステムと向き合うべきなのか?

新規事業を立ち上げるときに、そのための流通システムや店舗オペレーションやノウハウ蓄積の仕組みや人事評価・報酬システムの設計を、外注する会社は、あまりありません。たとえ、それが、どんなにたくさんの専門知識を必要としようと、自分たちで、全部理解し、自分たちで設計するしかありません。
なぜなら、それは、自社の経営行為そのものであり、それを外注にやってもらうのは、経営行為そのものを外注にやってもらうというような、意味不明の行為だからです。


これと同じように、自社の経営行為そのものである組織ソフトウェアと一体化したITシステムは、本質的に、外注できるようなものではなく、自社のビジネスを深く理解した自社のトップエンジニアと経営者が二人三脚で開発するようなものです。


アマゾンやGoogleやウォルマートが、高給を支払って、最上級レベルのエンジニアを自社で直接雇っているように、それぞれの企業が最上級レベルのエンジニアを直接雇うのが当たり前になる時代が、そのうちやってくるのではないでしょうか。


ITとは、経営行為そのものなのですから。

'; break; case 'horizontal': if(a.imgUrl){ imgCode = ''; } code = '
'+ '
'; code += imgCode; if(a.label) code += ''+a.label+''; code += '
'; break; default: error('こんなview知らねえ。'+a.view); } return code; } function toImgUrl(super_kind){ var HFotoTbl = { tw: '20180803102713', fb: '20180803102707', hb: '20180803102710', line: '20180803102711', pocket: '20180803102712', feedly: '20180803102708', hate_blo: '20180803102709', note: '20180821103319' }; var hf_id = HFotoTbl[super_kind]; if(!hf_id){ log('このsuper kind:'+super_kind+'のはてなフォトIDが登録されてないぞ。'); return null; } return hfid2url(hf_id); } var HFDayRE = /^\d{8}/; function hfid2url(hf_id){ var sa = HFDayRE.exec(hf_id); return 'https://cdn-ak.f.st-hatena.com/images/fotolife/f/fromdusktildawn/'+ sa[0] + '/' + hf_id + '.png'; } function setButton(a){ var pos = isString( a.pos ) ? $(a.pos) : a.pos; a.imgUrl = toImgUrl(a.superKind); var html = makeButtonHtml(a); var meth = a.insertMethod; if(!meth) meth = 'after'; pos[meth](html); $('#'+a.id).on('click',function(){ window.location.href = a.url; }); } function asurePrefix(a){ if(!a.prefix){ var random = Math.floor( Math.random() * 110000000000000 ); a.prefix = 'random-'+random+'-'; } } function setSocialBts(a, defs){ var title = getPageTitle(a.title); var url = getPageUrl(); if(!a.insertMethod) a.insertMethod = 'after'; var b = $.extend(true, {}, a); asurePrefix(b); var i=0; b.title = encodeURIComponent(title); b.url = encodeURIComponent(url); var pos = b.pos; var id; defs.forEach(function(def){ var c = $.extend(true, {}, b); var kind = def[0]; c.label = def[1]; id = c.id = c.prefix + kind; c.pos = pos; c.kind = kind; var superKind = SuperKindTbl[kind]; c.superKind = superKind ? superKind : kind; var site = SITE_NAME; if(site == 'fromd.hateblo.jp') site = 'www.furomuda.com'; switch(kind){ case 'tw': c.url = 'http://twitter.com/share?url=' + c.url + '&text='+c.title+encodeURIComponent(' @fromdusktildawn ')+ '&related=fromdusktildawn'; break; case 'fb': c.url = 'https://www.facebook.com/sharer/sharer.php?u='+c.url; break; case 'hb': c.url = 'http://b.hatena.ne.jp/add?mode=confirm&url=' + c.url + '&title='+c.title; break; case 'line': c.url = 'https://social-plugins.line.me/lineit/share?url='+c.url; break; case 'pocket': c.url = 'http://getpocket.com/edit?url='+c.url+ '&title='+c.title; break; case 'twFollow': c.url = "https://twitter.com/intent/follow?screen_name=fromdusktildawn"; break; case 'hbFollow': c.url = "http://b.hatena.ne.jp/fromdusktildawn/"; break; case 'fbPage': c.url = 'https://www.facebook.com/furomuda/'; break; case 'fbGroup': c.url = "https://www.facebook.com/groups/426678561170457/"; break; case 'hate_blo': c.url = "https://blog.hatena.ne.jp/fromdusktildawn/"+ site + "/subscribe"; break; case 'note': c.url = 'https://note.mu/fromdusktildawn'; break; case 'feedly': c.url = 'https://feedly.com/i/subscription/feed/'+ encodeURIComponent('https://'+site+'/feed'); break; default: console.log('こんなkindしらねえ。:'+kind); } setButton(c); if(c.insertMethod == 'after'){ pos = '#'+id; } }); return id; } function make2ColButtons(a, ldef, rdef){ var col_ids = make2ColFrame(a); var lpos = '#'+col_ids.l; var rpos = '#'+col_ids.r; a.pos = lpos; setSocialBts(a, ldef); a.pos = rpos; setSocialBts(a, rdef); return col_ids.frame_id; } function make2ColFrame(a){ asurePrefix(a); var LEFT_SUFFIX='-left-cell'; var RIGHT_SUFFIX='-right-cell'; var prefix = a.prefix; var frame_id = prefix+'-frame'; var left_id = prefix+LEFT_SUFFIX; var right_id = prefix+RIGHT_SUFFIX; var frame = '
'+ '
'+ '
'+ '
'; $(a.pos).after(frame); return {l: left_id, r: right_id, frame: frame_id}; } // PC依存のコード========================================== var archiveEntries = $(".archive-entry"); if(archiveEntries.length){ archiveEntries.each(function(){ var archiveEntry = $(this) var entryTitleLink = archiveEntry.find(".entry-title-link"); var entryHref = entryTitleLink.attr("href") var entryDescription = archiveEntry.find(".entry-description"); var bookmarkHtml = " " entryTitleLink.append(bookmarkHtml); var readMoreHtml = "もっと読む"; entryDescription.append(readMoreHtml); var bookmarkCounter = archiveEntry.find(".bookmark-widget-counter"); bookmarkCounter.hide(); var starContainer = archiveEntry.find(".star-container"); var bigBookmarkCounter = archiveEntry.find(".big-bookmark-counter"); starContainer.insertAfter(bigBookmarkCounter); function makeStarCountBig(){ var starCount = archiveEntry.find(".hatena-star-inner-count"); if(starCount.length){ starCount.css('font-size','140%'); } else { setTimeout(makeStarCountBig,300); } } makeStarCountBig(); }); // フォローしてもらうボタンをサイドバーに設置 var btPos = '.profile-description'; var startPos = 'my-buttons-pos'; $(btPos).after( '
' ); twPos = '#'+startPos; var last_id = setSocialBts({pos: twPos}, [ ['twFollow', 'フォローする'], ['note', 'フォローする'], ['hate_blo', '読者になる'], ['feedly', '購読する'], ['hbFollow', 'フォローする'], ['fbPage', 'facebookページ'], ['fbGroup', 'facebookグループ'] ]); var paddingBottomId = 'my-padding-bottom-id'; $('#'+ last_id).after( '
' ); var pos = $('#main-inner'); var img_url = hfid2url('20201008224538'); //var img_url = hfid2url('20201003093324'); //var img_url = "https://storage.googleapis.com/hateblog/img/prj/book/learning/learning_blog_top.png"; pos.before( '
'+ ''+ ''+ ''+ '
' ); /* var free_a_begin = ''; var book_a_begin = ''; pos.before( ''+ ''+ ''+ ''+ ''+ ''+ ''+ '
'+ free_a_begin+ ''+ ''+ 'ふろむだ本のガッツリ5章分が無料のWeb記事として読めます!

'+ free_a_begin+ '無料版を読むにはここをクリック'+ '
'+ book_a_begin+ '本で読みたい方はここをクリック'+ '
' ); */ } else { var title = $(".entry-header .entry-title a"); if(title) { var titleHref = title.attr("href") var bookmarkHtml = "" var entryTitle =title.parent(); entryTitle.append(bookmarkHtml); entryTitle.css('font-size','150%'); function addHeadStar(){ var starCountCheck = $(".entry-footer .hatena-star-star-container .hatena-star-inner-count"); if(starCountCheck.length){ var starContainer = $(".entry-footer .hatena-star-star-container"); if(starContainer){ var starCount = starContainer.find(".hatena-star-inner-count"); starCount.css('font-size','24px'); var starClone = starContainer.clone(true,true); var bigBookmarkCounter = title.parent().find(".big-bookmark-counter"); starClone.insertAfter(bigBookmarkCounter); starCount = starClone.find(".hatena-star-inner-count"); starCount.on('click',function(){ alert('☆を付けた人の一覧を見るには、この記事の下部の☆数をクリックしてください。'); $("html,body").animate({scrollTop:$('.entry-footer .hatena-star-star-container').offset().top-100}); }); var bt = starClone.find(".hatena-star-add-button"); bt.on('click',function(){ alert('☆を付けるには、この記事の下部の「☆+」ボタンをクリックしてください。'); $("html,body").animate({scrollTop:$('.entry-footer .hatena-star-star-container').offset().top-100}); }); } else{ setTimeout(addHeadStar,300); } } else { setTimeout(addHeadStar,300); } } addHeadStar(); procSpecialMarkers(); var param = { pos: 'footer.entry-footer p.entry-footer-section', title: title.text() } make2ColButtons(param, [ ['tw', 'この記事をツイートする'], ['hb', 'この記事をブックマークする'], ['pocket', 'この記事を後で読む'] ], [ ['fb', 'この記事をシェアする'], ['line', 'この記事をLINEで送る'] ] ); // フォローしてもらうボタンを下部に設置 param = { pos: 'footer.entry-footer div.social-buttons' }; var frame_id = make2ColButtons(param, [ ['twFollow', 'フォローする'], ['hate_blo', '読者になる'], ['hbFollow', 'フォローする'], ['fbGroup', 'facebookグループ'] ], [ ['note', 'フォローする'], ['feedly', '購読する'], ['fbPage', 'facebookページ'] ] ); } } // 記事一覧ページと、単体表示ページの両方に共通するコード ==================== var d = $('div.date a time'); d.css({ 'color': '#aaa', 'font-weight': 'normal' }); if(IS_ANNEX){ var link = $('h1#title a'); // ブログタイトルのリンク link.attr("href", 'https://www.furomuda.com/'); } })