Programming Self-Study Notebook

勉強したことを忘れないように! 思い出せるように!!

Programming Self-Study Notebook:目次

目次

言語系


- 「Python関連のノート」のまとめ(作成中)

ミドルウェア

開発支援ツール

OS系

クラウドインフラ系

開発手法について

その他

実家のPCを『Google Chrome リモートデスクトップ』でリモート制御できるようにしたときの話

父(Around80)のために実家のPCをリプレイスしているのですが、まだ慣れていないらしくつまずくことが多いようです。その都度電話で対応していたのですが、何が分からないのか探りながら解決するのが大変なので、『PCをリモート制御できたらいいのにな~って今時できるんじゃない?』と思い軽く調べてみました。

結論:Google Chrome リモートデスクトップで目的が達成できました。

f:id:overworker:20220104090755p:plain:h400

前提

用語の整理

  • ホストPC:遠隔地にある操作されるパソコン
  • ゲストPC:手元にあるパソコン

概要

  • ゲストPCを用いて、インターネット経由でホストPCを操作したい。そのためのツールや仕組みに対する調査です。

イメージ

  • 招待した人(ホスト)が招待客(ゲスト)を自分の家(ホストPC)に招待し、自分の家の設備(ホストPCの機能や性能)を利用してもらう。
  • 招待客は自分の家(ゲストPC)から招待者の家(ホストPC)にインターネットを経由して入ることができる。

リモートアクセスの方法

Microsoft リモート デスクトップ(←実家PCではムリ)

  • 特徴
    • ホストPCのOSがWindows 10 Pro』である必要がある。
      • 実家のPCは『Windows 10 Home』なので選択肢から除外

Google Chrome リモート デスクトップ

ということで、『Google Chrome リモートデスクトップ』で設定を試みることにしました。

作業内容(Google Chrome リモート デスクトップ)

ホスト(遠隔地PC)の設定

Google Chrome リモート デスクトップのインストール

  • Google Chrome リモート デスクトップは無料で利用することができます。
    • Chrome Remote Desktop

      1
      f:id:overworker:20220108111101p:plain:w400
      [Chromeに追加]をクリックする
      2
      f:id:overworker:20220108111231p:plain:w400
      ご自身の判断で
      [拡張機能を追加]をクリックする
      3
      f:id:overworker:20220108111457p:plain:w400
      ←のポップアップが表示されます
      4 Google Chromeリモートデスクトップサイトへアクセスします  
      -
      f:id:overworker:20220108114128p:plain:w400
      起動ショートカットをChromeに固定表示することができます
      5
      f:id:overworker:20220108115207p:plain:w400
      ダウンロードを開始します
      6
      f:id:overworker:20220108115505p:plain:w400
      ご自身の判断で
      [同意してインストール]をクリックする
      7
      f:id:overworker:20220108115602p:plain:w400
      ご自身の判断で
      [はい]をクリックする
      8
      f:id:overworker:20220108115859p:plain:w400
      9 『このアプリが変更を加えることを許可しますか』 ご自身の判断で進んでください

Google Chrome リモート デスクトップの設定

  • 起動

      インストールが完了し、そのまま設定画面が開きます。  
    10 f:id:overworker:20220108120135p:plain:w400 ゲストからアクセスする際に、
    ここで登録した名称を使用します
    11 f:id:overworker:20220108120408p:plain:w400 ゲストからアクセスする際に、
    ここで登録したPINを使用します
    12 f:id:overworker:20220108120756p:plain:w400 オンラインになればホスト側の準備が完了です

PCのスリープ/スタンバイ設定の変更

実家はホストPCがノート型なので、未使用時は画面を閉じています(ACアダプタは接続しっぱなしです)。PCが閉じた状態でスリープ状態やスタンバイ状態になってしまうと、操作中に親がPC周りからはなれっられなくなるので、PCを閉じた状態でもスリープ・スタンバイにならないように設定を変更しました。

  • 電源設定の変更

      電源設定の変更方法  
    13 f:id:overworker:20220108221912p:plain:w300 1.[スタートボタン]の上で右クリック
    2.[電源オプション]をクリック
    14 f:id:overworker:20220108222138p:plain:w400 『スリープ』の『千木の時間が経過後、PCをスリープ状態にする(電源に接続時)』を[なし]にする

ゲスト(手元)の操作

ログイン

  • ゲスト操作の流れ

    15   ホストPCと紐づけたGoogleアカウントでChromeを起動する
    16 <操作対象のPCがすべてオフラインの場合>
    f:id:overworker:20220109093924p:plain:w200
    GoogleChromeリモートデスクトップ画面を開く
    17 <操作対象のPCがオンラインの場合>
    f:id:overworker:20220110172817p:plain:w200
    操作したいPCを選択する
    18 (省略) PINコードを入力する
    (ゲストとしてのログインが2回目以降の端末はPINコードの入力が省略されるようです)

全画面表示

最初はChromeブラウザ内にホストPCの画面が表示されますが、以下のチェックボックスを設定することで全画面表示に切り替えることができます。

f:id:overworker:20220110171957p:plain:w300

おわり

とりあえず最初の目的は達成できました。ほかに便利な機能を見つけたらノートとしてまとめていきます。

Google Playデベロッパーアカウントの作成!【2022年版】

自作アプリをGooglePlayに公開するにはGoogle Playデベロッパーアカウントを作成する必要がるので作成しました。その時の流れを記録しておきます。

f:id:overworker:20220113000651p:plain:h300

Google Playデベロッパーアカウントの特徴

  • 作成には25ドル必要(支払方法はクレジットカード払いのみ)

Google Playデベロッパーアカウント作成の流れ概要

1.Googleアカウントの2段階認証プロセスを有効化する
2.Google PlayコンソールにGoogleアカウントでのログイン
3.アカウントの詳細入力&利用規約に同意する
4.登録料の支払い

作成手順詳細

1.Googleアカウントの2段階認証プロセスを有効化する

  • Chromeブラウザで開発に使用しているGoogleアカウントにログインした状態でGoogle Playコンソールへアクセスします。(次の画面が表示されました。)
f:id:overworker:20220113001228p:plain:w300
  • どうやら2段階認証プロセスを利用する必要がありそうです。上記画面の2段階認証プロセスを有効にしてくださいをクリックします。
f:id:overworker:20220113001738p:plain:w300
  • 使ってみるをクリックすると使用中のGoogleアカウントに対するパスワード入直画面が求められます。
f:id:overworker:20220113002048p:plain:w300
  • 通知先として想定するデバイスが表示されていることを確認したうえで、続行をクリックします。
f:id:overworker:20220113002248p:plain:w300
  • 各種内容を確認したうえで送信をクリックします。
f:id:overworker:20220113002619p:plain:w300
  • 上記で指定したデバイスに認証コードが送付されるので、受信した認証コードを以下の画面に入力します。
f:id:overworker:20220113002910p:plain:w300
  • 有効にするをクリックすることで2段階認証プロセスが有効になります。
f:id:overworker:20220113003313p:plain:w300

設定が完了すると以下の画面に遷移します。2段階認証に関してはアカウント管理画面からオフすることができるようです。

f:id:overworker:20220113003644p:plain:w300

2.Google PlayコンソールにGoogleアカウントでのログイン

  • 再度、Chromeブラウザで開発に使用しているGoogleアカウントにログインした状態でGoogle Playコンソールへアクセスします。表示内容が先ほどと変わります。
  • 用途に応じたスタート→をクリックしてください。
f:id:overworker:20220113004542p:plain:w300

3.アカウントの詳細入力&利用規約に同意する

  • 必要事項を記入ししてください。
  • 規約内容を確認の上、ご自身の判断で同意を判断してください。
  • 先に進む場合はアカウントを作成したうえで支払うをクリックします。
f:id:overworker:20220113005912p:plain:w300
  • 2段階認証が必要になります
  • 電話番号は国コードを含めた番号を入力する必要があります。
    • 日本の携帯電話番号(090-****-5678)の場合は+8190****5678になります。

4.登録料の支払い

  • 購入をクリックします
f:id:overworker:20220113011525p:plain:w300
f:id:overworker:20220113011747p:plain:w300

5.コンソールのTop画面

f:id:overworker:20220113011919p:plain:w300

その他

「アプリケーション ID」と「パッケージ名」は違うものらしい...。

自作アプリの公開を見据えアプリの「パッケージ名」を決めるために調査を始めたのですが、「パッケージ名」とはべつに「アプリケーション ID」も非常に重要であることが分かりましたのでノートとしてまとめておきます。(「アプリケーション ID」の方がはるかに重要でした。)

f:id:overworker:20220111002042p:plain:h300

アプリケーションIDとは

オフィシャルサイトアプリケーション ID を設定するを参考にしました。

  • アプリをデバイスGoogle Play ストアで一意に識別するためのID
  • アプリの新しいバージョンをアップロードする場合、アプリケーション ID(および署名に使用する証明書)は元のアーティファクトと同じでなければならない
  • アプリケーション ID は、モジュールのbuild.gradleファイル内のapplicationIdプロパティで定義される

  • アプリケーションIDの命名規則

    • 2 つ以上のセグメント(1 つ以上のドット)が必要
    • 各セグメントは文字で始まる必要がある
    • 使用できる文字は英数字とアンダースコアのみ(a~z、A~Z、0~9、_)
  • 無料版、プロフェッショナル版などの様々なバージョンをGooglePlayストアで別々の掲載情報として表示したい場合は、アプリケーションIDが異なるビルドバリアントを作成する必要がある

パッケージ名とは

  • プロジェクトのパッケージ名は、デフォルトでアプリケーション ID と一致していますが、変更することも可能
  • パッケージ名を変更する場合は、AndroidManifest.xml ファイル内の package 属性と常に一致する必要があることにご注意ください。

  • Android ビルドツールは、次の 2 つの目的で package 属性を使用します。

    • アプリの生成された R.java クラスの名前空間としてこの名前を適用する。
    • マニフェスト ファイルで宣言されたすべての相対クラス名を解決する。

package 属性内の名前は、プロジェクト内でアクティビティや他のアプリコードを保持する基本パッケージ名と常に一致する必要があります。プロジェクトにサブパッケージを含めることはもちろん可能ですが、そうすると、それらのファイルが package 属性の名前空間を使用して R.java クラスをインポートする必要が生じます。また、マニフェスト内で宣言されたすべてのアプリ コンポーネントが、欠落しているサブパッケージ名を追加する(または完全修飾パッケージ名を使用する)必要が生じます。

パッケージ名を完全にリファクタリングする場合は、必ず package 属性も更新してください。Android Studio のツールを使用してパッケージの名前を変更してリファクタリングすれば、パッケージは自動的に同期が維持されます(同期が失われると、アプリコードは R クラスを解決できません。これは、アプリコードが同じパッケージに含まれなくなり、マニフェストによってアクティビティまたは他のコンポーネントが識別されなくなるためです)。

アプリケーションIDパッケージ名の関係

以下は、オフィシャルサイトアプリケーション ID を設定するからの引用になります。

Android Studio で新しいプロジェクトを作成した場合、applicationId は、セットアップ時に選択した Java スタイルのパッケージ名と完全に同じになります。ただし、この点を除けばアプリケーション ID とパッケージ名は互いに独立しています。コードのパッケージ名(コード名前空間)を変更してもアプリケーション ID は変わらず、その逆も同様です(ただし、前述の理由からアプリの公開後はアプリケーション ID を変更しないでください)。

私は、「パッケージ名=アプリケーションID」と誤解をしていましたが、その理由は「パッケージ名=アプリケーションID」として説明しているTechブログばかり目についたからです。しかし、オフィシャルサイトの説明を読むとプロジェクト作成時に同じ値でセットされるだけであり、その後の振る舞いは独立であることが記述されていました。

BIOS起動のための入力キー一覧

私は年に一度程度しかお世話にならないので、その都度調べていましたが一覧にしてみました。

f:id:overworker:20220103231648p:plain:h400

メーカー名 BIOS起動キー 参考リンク
Dell 「F2」キーまたは「F12」キー www.dell.com
LenovoIBM 「F1」キー support.lenovo.com
HP(Compaq 「Esc→F10」キー jp.ext.hp.com
NEC 「F2」キー faq.nec-lavie.jp
マウスコンピューター 「F2」キー www2.mouse-jp.co.jp
富士通 「F2」キー(または「F12」キー) www.fmworld.net
Dynabook 「F2」キー(機種依存) このリンクで型番を元に調査可能
dynabook.com
https://dynabook.com/b/manual/gm9043432210_biosk.pdf
ASUS 「F2」キー www.asus.com
Panasonic 「F2」キー www.disksh.com
iiyama ??? ???
Acer 「F2」キー www.sourcenext.com
FRONTIER 「Delete」キー ww2.frontier-direct.jp
MSI 「Delete」キー jp.msi.com
SONY 「F2」キー 古い情報しかヒットしませんでした
www.sony.jp

お役に立てれば幸いです。

ログインパスワードを忘れたPCとの奮闘!

ログインパスワードが分からなくなったパソコンを、ログインできるようにした際の記録です。

f:id:overworker:20220102222757p:plain:h400

はじめに

2021年末に実家の父から「ノートPCを開くとバッテリー劣化の警告が出るようになった。PCの動きも遅くなった気がする。」と相談を受けたので、父親が希望するスペックのPCを実家着で購入しました(AmazonBlackFridayで購入しました)。その際に、「開けて使っていいよ。」「ネットの設定とかデータ移行とか面倒なことは正月に実家に帰ったときにオレがやるから!」と言っておきました。

2022年1月1日に実家について一息ついたころ、『そろそろPCの設定でもやるか~』と思い「パソコン出して!セットアップやるよ!」と言ったところ、「充電してあるぞ~!」と言われ出てきたのは購入直後のきれいなPC。『最近のPCは軽いな~』などと思いながら起動すると、父親の名前でログイン画面が表示されたので、、、
私:「アカウント作ったんだ~。パスワード教えて!」
父:「『〇〇〇〇』のはずなんだけど、、、」
私:「『~のはず』ってどういうこと?」
父:「『〇〇〇〇』と入れようとしたんだが、意図せず画面がすすんでしまって、、、、」
私:「『分からない』ってことだね!」
父:「パスワードは『〇〇〇〇』の途中で切れてるかもしれない、、、」
私:「でもそれは試したんでしょう!?」
父:「、、、」
適当にパスワードを試してみましたが、先に進めなかったので『最近のPCはリカバディーディスクが付いてないんだ~!』『メーカーに問い合わせか?』『メーカーで何とかなるのか?』などと思いながら、『実家にいる一泊二日の間に何とかできないか?』と思い奮闘した際の記録です。(結果、ログインは可能になりました。)

実施したコト

復旧までの手順をまとめます。

事前準備(調査)

  • 購入端末の調査

    • スマホAmazonアプリの購入履歴画面より購入商品のスペックを再確認
      • ドライブ:512GB SSD
      • OS:Windows10 Home
  • ネットで復旧方法の調査

    • ローカルアカウント限定の復旧方法
      • 起動ディスク(8GB以上)を作成しBoot優先順位を調整することで、別のドライブから起動することは可能
      • (アカウントが分かっている場合は)その状態でコマンドプロンプト経由でパスワードの設定を変更することが可能

調査結果

  • 必要になるもの
    • USBメモリ(8GB以上)
    • 別PC(Windows10)(帰省時に持ち帰っていた自分用のノートPCを使用しました)
  • 実施する作業
    • 次項以降に記述

ネットで調べたところ『何とかなるかもしれない!』と思い、1月1日から営業している近所の家電量販店で『16GBのUSBメモリ(約800円)』を購入!

実作業①:別のPCで起動ディスクを作成する

まずは別のPCを使用して『起動ディスク(正式名称はインストールディスク)』を作成します。

1-1:Windows10のメディア作成ツールをダウンロード

以下のリンクからWindows10のインストールツールをダウンロードします。ちなみに、今回の利用範囲では料金請求は発生しません。Microsoftの画面が少しわかりずらいですが間違えないように進んでください。

リンク先の『ツールを今すぐダウンロード』をクリックし、ダウンロードを開始してください。(ダウンロードが自動開始しない場合は手動でダウンロードを開始してください。)

f:id:overworker:20220103090236p:plain:w400

私の場合はMediaCreationTool21H2.exeという名前のファイルがダウンロードされました。

1-2:ダウンロードしたファイルを実行

ダウンロードが完了したら次のステップに進めます。

  • 1-2-1:パソコンにUSBメモリをセット
  • 1-2-2:ダウンロードしたファイルMediaCreationTool21H2.exeを実行
    • 実行場所はどこでもOKです
    • 以下、ツール起動時の画面遷移の概略です
      • 個々の画面遷移に多少時間がかかる印象です
      No 画面 コメント
      1 (省略) 『このアプリがデバイスに変更を加えることを許可しましか?』と確認されます。→ご自身の判断で選択してください
      2 f:id:overworker:20220103091757p:plain:w300 ご自身の判断で選択してください
      3 f:id:overworker:20220103093102p:plain:w300 USBフラッシュ(USBメモリをインストールメディアとして機能するように変更を加えます。
      別のPCのインストールメディアを作成する(~省略~)』を選択してください。
      4 f:id:overworker:20220103093511p:plain:w300 ここで選択するのは、復旧対象のPCスペックです。設定が正しいことを確認してください。
      『このPCにおすすめのオプションを使う』のチェックを外すと自分で選択が可能になります。
      5 f:id:overworker:20220103093929p:plain:w300 USBフラッシュのドライブを選択します。
      『少なくとも8GB必要です。』と記載されています。私は8GBだと不安だったので16GBのUSBメモリを使用しました。
      6 f:id:overworker:20220103094434p:plain:w300 ご自身の設定に合わせて選択してください。
      間違えると悲惨なことになります。
      USBメモリを差し込んでいるドライブを選択してください
      - f:id:overworker:20220103094954p:plain:w300 途中経過画面①:1分程度
      - f:id:overworker:20220103095113p:plain:w300 途中経過画面②:60分はかかっていない気がします。待っている間もPCは使用可能です。(初回は実家で実施しましたが、多分45分位だったと思います。二回目はブログ作成用に自宅で実施しました。その際は10分程度で終わりました。回線速度の違いかもしれません。)
      7 f:id:overworker:20220103101123p:plain:w300 完了時の画面

実作業②:対象PCでの作業

ここからはパスワードが分からなくなったパソコンでの作業に切り替わります。
以下、作業の流れを簡単に記述します。

  • USB経由で起動するための設定変更
  • USB経由で起動
  • 従来のWindowsのインストール先を確認する
  • パスワードリセットのための設定変更
  • PCの再起動
  • パスワードリセット
  • 起動を確認する

2-1:USB経由で起動するための設定変更

PCを起動する際に「BIOSセットアップユーティリティ」で起動する必要があります。「BIOSセットアップユーティリティ」での起動はメーカーごとに違いますのでメーカーHP等で確認してください。 <補足> 今回のPCメーカーはNECでしたので、再起動時のNECのロゴが表示される前後で[F2]キーを連打しました。

  • 操作手順を記載します

    No 画面 コメント
    1 f:id:overworker:20220103105542p:plain:w300 初期画面です。まずは[→]キーで『Boot』まで移動してください。
    2 f:id:overworker:20220103105706p:plain:w300 『Boot Mode』が『UEFI』となっていますが、手動で『USBメモリでの起動』を指定したいので『Legacy Support』に変更します。
    3 f:id:overworker:20220103112040p:plain:w300 『Boot Priority』という欄が追加されます。手動で『USBメモリでの起動』を指定したいので『Legacy First』に変更します
    - 省略 ここでLegacyという欄に起動方法がいくつか表示されていることを想定しますが、変更直後は表示されない可能性があります。その場合は『BIOS終了([Esc]キー)→BIOS起動(私の場合は[F2]キー連打)を実施して再度『Boot』画面に戻ってきます。
    下のような画面に戻ってこれたらOKです。
    4 f:id:overworker:20220103111904p:plain:w300 USB経由での起動のプライオリティを高めたいので『USB HDD :~』が欄内で最上位に表示されるように[F5/F6]キーで上下移動をします。
    5 省略 『Esc』キーでBIOS画面を終了してください。いつも通りWindowsが立ち上がってしまった場合は右下?の電源マークで『再起動』を選択してください。

※ 復旧作業の途中で、この操作の逆を実施することで、設定をもとに戻します。

2-2:USB経由で起動

  • 以下の画面が表示されればUSB経由での起動完了です。
f:id:overworker:20220103122838p:plain:w300

2-3:従来のWindowsのインストール先を確認する

  • 上記画面で[Shift+F10]キーを同時に押します。

    No 画面 コメント
    1 f:id:overworker:20220103122838p:plain:w300 ←の画面が表示された状態で[Shift+F10]を押します。下の画面が表示されればOKです。
    - f:id:overworker:20220103123000p:plain:w300
    2 f:id:overworker:20220103123358p:plain:w300 『diskpart』と入力して[Enter]キーを押します。(5秒程度で末尾に『DISKPART>』が追記された状態に遷移します。)
    3 f:id:overworker:20220103124018p:plain:w300 『list VOLUME』と入力して[Enter]キーを押します。
    大文字で『VOLUME』を記述すると警告メッセージが表示されることがあるかもしれません。その場合はメッセージの内容を確認し、正しくタイプしなおしてください。
    - 省略 Label欄に『Windows』と記載されたLtrを特定します。(私の場合はCとなっていることが分かります)
    4 省略 調査が完了したので『exit』で終了します。『X:¥Sources>』に戻ればOKです。

2-4:パスワードリセットのための設定変更

現在は、USBメモリ上のプログラムで起動していますが、パスワードリセット処理は本体プログラムでコマンドプロンプト管理者権限で起動する必要があります。
ここではsethc.exeというファイルを使用して、起動時ログイン前にコマンドプロンプトを管理者権限で実行できるように細工をしておきます。

  • 前回終了画面からの継続です

    No 画面/コマンド コメント
    1 f:id:overworker:20220103124018p:plain:w300 引き続き先ほどの画面です。最後の行が『X:¥Sources>』となっていることを確認してください
    2 [入力するコマンド]
    cd /d C:
    コマンドの最後は、先ほど調べた『Ltr』の値をセットしてください。(私の場合はC
    最後の行が『C:¥>』となれば成功です
    3 [入力するコマンド]
    dir
    コマンドの最後は、先ほど調べた『Ltr』の値をセットしてください。(私の場合はC
    最後の行が『C:¥>』となれば成功です
    - f:id:overworker:20220103132238p:plain:w300 Windowsが存在することを確認します
    4 [入力するコマンド]
    cd Windows¥system32
    ディレクトリの移動
    5 [入力するコマンド]
    rename sethc.exe sethc.org
    既存のsethc.exeファイルを名前を変更して保存します。
    6 [入力するコマンド]
    copy cmd.exe sethc.exe
    cmd.exeを新しいsethc.exeとするためにコピーしてリネームします。 
    - f:id:overworker:20220103132515p:plain:w300 ←一連の入力はこんな感じです(これで準備は完了です)
    7 右上の『×』ボタンで操作画面を閉じます。
    8 f:id:overworker:20220103131908p:plain:w300 左の画面も右上の『×』ボタンで操作画面を閉じます。直後からBIOS起動用のキー(私の場合は[F2])を連打します。

2-5:PCの再起動

現在、USBメモリ上のプログラムで起動するように設定されていますので、元のPC内のプログラムで起動するように起動設定を元に戻します。BIOS起動で設定を元に戻します。 『1-3-1:USB経由で起動するための設定変更』を実施し、設定を元に戻してください。

2-6:パスワードリセット

f:id:overworker:20220103134626p:plain:w300

ユーザーのパスワード入力画面が表示された状態で、[Shift]キーを5回押します。 これにより『sethc.exe(もとはcmd.exe)』が起動します。

以下の内容でセットしなおすとします。

ユーザー名:samplename
新しいパスワード:password

次のコマンドを実行することでパスワードを変更することができます。

net user samplename password

ユーザー名に半角スペースが入っているとコマンドが正しく認識されません。その場合は以下のようにユーザー名を『"』で囲んでください。

net user "sample name" password

2-7:起動を確認する

再起動したうえで、先ほど入力したパスワードでログイン出来ることを確認してください。

まとめ

必要な道具

手順概要

おわり

私:「何とかログインできるようになったよ!メールのバックアップから始めようか!メールのパスワード教えて!」
父:「、、、」
私:「、、、」

私は上記手順でパスワードを変更することができました。 (お困りの方のお役に立てれば幸いです。)

娘(5歳)の一言でパパが昇天!

f:id:overworker:20211225143027p:plain:h400

2021年12月24日の娘(5歳)との会話です。

休日は娘と一緒に『ひらがなドリル』や『すうじドリル』をやっています。その時も私から「明日も一緒にドリルやろうね!」と声を掛けた時の会話で昇天しました。

私:「明日も一緒にドリルやろうね!」
娘:「あしたは、『ひらがな』がいい!」
私:「じゃあ、『ひらがな』をやろう!」
娘:「私ね、カタカナもかけるよ!」
私:「ホント!?カタカナはやったことないよね!」
娘:「カタカナもかけるよ。でもね私カタカナは『パ』しか書けないの!
私:「じゃー明日はカタカナやってみる?(昇天中)
娘:「カタカナはまだ『パ』だけでいいから、『ひらがな』にする
私:「じゃー明日は『ひらがな』にしよう(昇天中×2)


でもでもなく)を最初に覚えたコトを私に嬉しそうに伝える娘に昇天連発でした。このままカタカナは覚えなくてもいいんじゃないかとすら思えてしまいます。実は『カタカナドリル』も買ってあるのですが、しばらくはやらせなくて良いですよね!!

「最高の結果を出すKPIマネジメント」のノート

新規事業のバックエンド開発を担当しています。まだスタートしたばかりの事業で利益を生むまで成長していない状況です。そんな状況ですが、事業の状況確認等の場で『KPI』という単語を良く耳にするようになりました。個人的にあまり聞いたことがない単語でしたので、ネット等で意味を調べて理解したつもりの状態で過ごしていました。しかし、社内での言葉の使われ方や施策がどうも自分の府に落ちないので、まずはKPIマネジメントを正しく理解するところから始めようと思い、「最高の結果を出すKPIマネジメント」を読んでみました。(自分用の記録メモになります。)

感想

に対する感想

  • 文体や表現が固くなく非常に読みやすいです。(入門書として適している思います。)
  • 論理を学術的に説明するのではなく、簡単な例(簡素化された実例)をふんだんに織り交ぜた読み物
  • 『理解』したうえで『実践』したくなる内容
  • の開発部門向けのKPI具体例は無いと感じました。

KPIマネジメントに対する感想

  • 仕組みとしてはとてもシンプルで分かりやすい
    • 立場が違う様々な人と同じ方向に進むためのツールとして、シンプルであることが重要だと感じた
  • 自分の普段の業務に当てはめて考えたくなる
    • シンプルであるので自分が影響を与えることが出来る範囲でも、KPIマネジメントを実践したくなる

「最高の結果を出すKPIマネジメント」の目次

  • 第1章 KPIの基礎知識
  • 第2章 KPIマネジメントを実践するコツ
  • 第3章 KPIマネジメントを実践する前に知っておいてほしいこと
  • 第4章 さまざまなケースから学ぶKPI事例集
  • 第5章 KPIを作ってみよう

ノート

第1章 KPIの基礎知識

  • KGI、CSF、KPI

    略語 名称 説明 補足
    KGI KeyGoalIndIndicator 最終的な目標数
    CSF CriticalSuccessFactor 最重要プロセス 事業成功のカギ
    KPI KeyPerformanceIndicator 最重要プロセスの目標数 プロセスの指標
    KGIの先行指標
    CSFを表す数値目標
  • まずはKGI(コール)を明確にする

    • 注意:ゴールそのものがずれる可能性がある。ゴールの数値がずれる可能性がある。
  • CSFを設定する
    • プロセスなので、現場がコントロールできる内容であることが重要
    • 現場の努力で変化するプロセスであることが必須
  • KPIはCSFを数値で表したもの
f:id:overworker:20211112005849p:plain:h300

良いKPI、悪いKPI

良いKPI 悪いKPI
1つに絞れている 数値目標の種類が多い
現場でコントロール可能 現場でコントロールできない指標
先行指標 遅行指標

KPI運用の流れ

  内容 補足
Step1 目標の確認 KGIの確認
Step2 『現状』と『KGI』のギャップの確認
Step3 プロセスの確認 モデル化
Step4 絞り込み CSFの設定
Step5 目標設定 数値目標
Step6 運用性の確認 整合性・安定性・単純性があるか?
Step7 対策の事前検討 KPI悪化時の対策と有効性の事前検証
Step8 コンセンサス 関係者との合意
Step9 運用
Step10 継続的に改善
Step4:CSFの決定
  • Step4-1:定数と変数を分ける
    • 数式の中で定数変数を区別する。(定数はCSF候補から外す。)
    • コントロール出来ない変数定数扱い
  • Step4-2:残ったモノからCSFを選択する
Step7:運用性の確認
  • 整合性:理屈上の正しさを確認する
  • 安定性:KPIの数値取得が安定して出来るか?
  • 単純性:現場のメンバー全員が理解できるか?
Step8:コンセンサス
  • 数値悪化の判断に関するコンセンサス

    • 4つのポイント
      ①時期:いつ判断する? ②程度:KPIがどれくらい悪化したら? ③施策:どうする? ④決裁者:最終判断は誰?
  • 数値が悪化した場合のコンセンサス(③施策)

    • 対応の種類
      ①資金を追加投入する
      ②人を追加投入する
      ③両方投入する
      ④何もしない

自社のKPIに対する評価

  • 良い状態ではない
    • KPIはプレゼンに登場するが、KGICSFに関しては聞こえてこない。