月: 2019年10月

  • 読了:IT負債

    まとめると、IT負債とは、ITシステムの技術的な負債のこと。古い技術を使っていること、DB中心でシステムが密結合しているために、保守や改修にとても工数がかかる。これが日本ではITシステムのコストの8割、アメリカだと6割を占める。DXに対応していくために、密結合の巨大システムから、もっと小さい単位のマイクロサービス化して、1つの改修がシステム全体に影響を及ぼさないようにすることで、開発速度をあげていく。マイクロサービス化することで、システム間を疎結合にしていく。また、マイクロサービスの利用にあたり、API化していく。マイクロサービス化、API化は、アメリカでは潮流であり、不可逆な流れになっている。そのとき、クラウド化(シフト)するのではなく、クラウドに最適化(リフト)していくことが求められている。

    マイクロサービス化は、わからなくもない。ただ、どこまでマイクロサービス化するのかは議論の余地がありそうだ。いまどきの技術者の場合のマイクロサービス化だと、本当に細かい単位で、かつサーバレスでの動作というイメージがある。でも、レガシーシステムを抱える企業の場合は、そこまで小さくしたいわけでなく、ある機能の単位でわけていくくらいがちょうどいいと思う(単機能のシステム)。そして、それを疎結合させるだけでも、足枷がゆるくなるはず。あと、マイクロサービス化するとき、開発をするときの言語選びやフレームワーク選びも重要。流行りに合わせていると、結局、保守しないといけない開発言語や環境の数がふえていく。だからといって、固定にしてしまい、選ぶものを間違えると、人は集まらない。どっちかっていうと、常に新しくしつづけていく必要があり、そこにコスト(人など)をかけるということが大事だと思う。それが一番重要。

    以下は、気になったところを抜粋。

    P.5 本書のタイトルである「IT負債」とは、「ITシステムの技術的負債」のことを指している

    IT負債

    P.5 技術的負債が重いほどIT費用は「ランザビジネス」(現在のシステムを維持していくため)に使われ、その割合は日本では8割、米国では6割という統計値がある。

    IT負債

    P.23 IT技術者の視点で見ると、DXの本質はデジタル化にある。デジタル化とはデータ化であり、データはソフトウェアで処理するため、「ソフトウェア化」と言うこともできる。

    IT負債

    P.44 従来のシステム設計の根本思想は、データベースを中心として、トランザクションを活用しながら他システムと連携するというものだ。これが密結合のシステムを生む根本原因である。そして、密結合であることが様々な問題を引き起こしている。

    P.69 2019年にエストニアを訪問した際、彼らの国のシステムの中核にある「X-Road」について説明を受けた。X-Roadでは、個人の情報を分けてデータベース化し、分けたデータベース単位でサービス化していた。新たなサービスを立ち上げる場合は、そのサービスを提供する企業に対して厳しいセキュリティ要件を確認するとともに、必要なデータをすべて提供するのでは無く、最低限必要な情報に限定し、API接続にて提供している。

    P.135 大きな問題として、DXレポートでも指摘されているが、アジャイル型開発の場合の契約形態がある。常駐型でユーザー企業を支援していく場合、ユーザー企業の社員とITベンダーの社員が、適切な指揮命令系統に従って活動しないと派遣法に抵触する恐れがあるからだ。通常、ITベンダーとユーザー企業は、準委任契約を締結して業務を行うので、法的には受託契約の形態をとっている。

    P.186 特に2018年は「マイクロサービス」をキーワードに有識者へのヒアリングを行った。クラウドベンダーは「リフト」(クラウド移行)よりもコスト削減効果の著しい「シフト」(クラウドネイティブ化=マイクロサービス化)に重点を置き始めている。この点は2017年に訪問したときと相当変わってきている。

    P.193 米国では、モノリスシステムからマイクロサービスへの移行は、SoEやSoRに関係なく、ソフトウェア開発技術の基本技術の変化として捉え、急速な変革が進んでいる。また、新たな技術の適応に関して、不可逆な方向転換が起こっていると思う。

    P.223 米国の企業にマイクロサービスの規模について尋ねると、異口同音に「テストケース数」という答えが返ってきた。確かに、新たなマイクロサービスを開発する場合、追加された論理パターンの数(テストケース)が実際に必要な開発量やテスト量と強い相関を持つことは想像に難くない。

  • NTFS.SYSの場所とバージョンの調べ方

    WindowsのNTFSシステムで使っているファイルのバージョンを調べる必要があったので、その確認方法のメモ。

    NTFS.SYSの場所は、下記。Windows10, Windows Server 2012 R2, Windows Server 2012, Windows Server 2008 R2も同じだった。

    C:\Windows\System32\drivers\ntfs.sys
    

    バージョンの調べ方

    1. バージョンは、ntfs.sysを右クリックして、プロパティを開く。
    2. 詳細タブにあるファイルバージョンを確認する。
    3. 同じ場所でファイルの更新日なども確認できる。
  • SQL Server Management Studio v18.2の制限を解除する

    SQL Serverの管理やDBの設定のために、マイクロソフトのサイトからSQL Server Management Studio(v18.2)をダウンロードしてきたが、マウス操作だけでDBのテーブル内容を表示しようとすると、制限がかかっている。表示なら上位1000行、編集なら上位200行で制限がついている。SQLを実行すれば、表示もできるし、編集もできるが少々めんどくさい。これの制限を解除する方法。

    設定方法

    1. SQL Server Management Studioを開く。
    2. メニューから、「ツール」、「オプション」の順に選択する。
    3. 「SQL Serverオブジェクトエクスプローラー」を選択する。
    4. 「上位<n>行の選択コマンドの値」を0にする。(もしくは、必要な行数に変える)
    5. 「上位<n>行の編集コマンドの値」を0にする。(もしくは、必要な行数に変える)
    6. 「上位<n>個の監査レコードの選択コマンドの値」を0にする。(もしくは、必要な行数に変える)
    7. 「OK」をクリックして、オプションを閉じる。
    8. テーブルを選択して、右クリックし、表示されるメニューが「すべての行の選択」に変わていることを確認する。

  • デバック実行時に「~~~\bin\rosylyn\csc.exe」の一部が見つかりませんと表示される

    人から受けとったASP.NET MVCのプログラムをVisual Studio 2019でデバック実行したところ、下記のエラーが発生した。

    '/' アプリケーションでサーバー エラーが発生しました。
    
    パス 'C:\xxxx\xxxx\xxxx\bin\roslyn\csc.exe' の一部が見つかりませんでした。
    

    調べていったところ、NuGetにある「Microsoft.CodeDom.Providers.DotNetCompilerPlatform」のパッケージのバージョンをアップデートしたところ、この問題が解消され、このエラーは解消された。

    依存関係の問題なので、アップデートではなく、「Microsoft.CodeDom.Providers.DotNetCompilerPlatform」の再インストールでも解決すると思われる。

  • SQL Server 2017 Expressに外部のSQL Server Management Studioから接続できない

    SQL Server 2017 Expressをインストールしたが、外部のSQL Server Management Studioから接続できない。ローカルのSQL Server Management Studioからは接続できる。試したことは、

    • TCP/IPの設定もチェック済み
    • Windows Defender ファイアウォールは切り分けのために、一時的に無効した。
    • それでも、接続できない。

    設定を見直して、Windowsのサービスも見直したところ、SQL Server Browerのサービスが無効になっていた。SQL Server Browerのサービスを開始することで、外部からの接続ができるようになった。ただ、初期設定が無効になっていたため、設定変更をしないと、サービスを開始できなかった。

    1. Windowsのサービスを開く。
    2. SQL Server Browerを選択して、プロパティを開く。
    3. スタートアップの種類を自動に変更して適用をクリックする。
    4. サービスを開始する。

    SQL Server Browerのサービスは、SQL Server接続情報をクライアントコンピューターに指定するサービス。これが起動していないため、接続情報がわからず、SQL Server Management Studioは接続でタイムアウトしていた。

  • 福岡大学の公開NTPサーバがサービス廃止の予定

    日経コンピュータ 福岡大学NTPサービス廃止

    日経コンピュータを読んでいたら、福岡大学の公開NTPサーバがサービス廃止の方向で進んでいるという。あっちこっちのネットワーク機器にNTPサーバとしてデフォルトで設定されていて、トラフィックも多いから、サービス継続困難というのも仕方がない。この記事を読むと、過去4回にわたりNTPサービスが原因のトラブルに見舞われたようだし、大学としてサービスの維持は辛いな。

    ただ、いきなり廃止できるわけでもなく、福岡大学のNTPサーバを参照している機器が多すぎて、簡単には廃止できない(廃止したら混乱を招くため)から、大変だ。たまにテストでアクセスしていたので、本当にありがとうざいました。

  • 邪悪なカビゴンをゲット!

    シャドーカビゴン
    シャドーカビゴン
    シャドーカビゴン
    シャドーカビゴン

    やっと、GOロケット団から、シャドーのカビゴンを奪えた。この赤い目、邪悪なオーラ、最高。ちょっと小さいのが玉に瑕だけど。リトレーンせずに、このまま鍛えて使おうかな。

    次は邪悪なるバンギラス!を目指そう。

  • 彼岸花

    彼岸花
    彼岸花

    某墓場の彼岸花群生地。この一画は一面の彼岸花が咲いている。ただ、結構な数の彼岸花切られて持ち去られている。墓場だから、供えられたのか、それとも持って帰られたのか、どっちだろうか。このお手軽な彼岸花スポットが来年も続いてくれると良い。

  • .NET Framework4.8のインストール

    .NET Framework 4.8のインストールは、今のところ、個別にインストールするしかないようなので、手動でインストールする。インストールするには、ダウンロードサイトにアクセスし、インストールプログラムをダウンロードする。

    .NET frameworkのダウンロードサイト
    https://dotnet.microsoft.com/download/dotnet-framework

    Visual Studioで使用しない場合は、Runtimeを選択する。ダウンロードされたEXEファイルを実行してインストールする。

    なお、既に.NET Framework4.8がインストール済み(もしくはより新しいバージョンがインストール済み)の場合は、その旨が表示されて、インストールが止まる。なので、インストールされているかどうかわからない場合は、EXEファイルを実行しても問題はない。

    Visual Studioを実行して、.NET Framework4.8で開発する場合には、RuntimeではなくDeveploer Packを選択する。ダウンロードされたEXEファイルを実行してインストールする。

  • ヌルンジで食事

    肩ロースのサムギョプサル
    肩ロースのサムギョプサル
    韓国料理の生タコ
    生たこ

    赤坂のコリアンタウンのヌルンジで韓国料理を久々に食べた。ランチではなく、夜の韓国料理は久しぶりだ。

    最初にちょっと辛いイカの炒め物。次に生タコ。生タコは、生きたタコを水槽から出して、タコの足をぶつ切りにしたものだ。生きたまま切られているので、食べると口のなかで吸盤が吸い付いてくる。あと、ぬるぬるしているのと、吸盤が吸い付くので、箸で取るだけでもとても大変だ。生タコは思ったよりもおいしかった。

    メインはバラ肉のサムギョプサルに肩ロースのサムギョプサル。肩ロースは、分厚いステーキというくらいの塊肉。焼くのはお店の人がやってくれるので、待っているだけでよい。あとは、食べてもよいタイミングを教えてもらえないと、なかなか食べられないということが難点。表面をしっかりと焼いた後、ハサミでちょきちょきと切り刻まれていき、サイコロステーキよりも小さくされていった。あとは、葉っぱの上に乗せて、好みでキムチや調味料をつけて、巻いてたべた。肉の余計な脂は、斜めになった台をおちていくので、思ったよりも脂っこくなくて、美味しかった。