😎

「応用情報技術者試験」 要点

2023/02/05に公開

参考サイト

https://www.ap-siken.com/
https://masassiah.web.fc2.com/contents/20ap/index.html

午前問題

[基礎理論]

<待ち行列>

混む量 と さばく量からどのぐらい待つかを表す。

待ち時間 = ρ/(1-ρ) [人分]
  • ρ = 混み具合
  • 人分 = 1人にかかる分数(1人何分かかかるか)

http://objectclub.jp/technicaldoc/monkey/s_wait

M/M/1 (待ち行列モデル)

トランザクションの到着間隔はランダムであり、待ち行列内のトランザクション数は一定。(平衡状態)
なので、処理状況によって処理要求の到着間隔を操作・変更しない。

<n進数>

10 → n 進数への変換

  1. nで割ったときの余りを求める。
  2. それを、商が0になるまで繰り返す。
  3. 余りを下から上へ取得。
(例)13を2進数に
2 ) 13
2 )  6 .. 1
2 )  3 .. 0
2 )  1 .. 1
     0 .. 1
なので、1101

<論理演算>

排他的論理和(XOR)

A B X
0 0 0
0 1 1
1 0 1
1 1 0

結合の法則

  • (A・B)・C = A・(B・C)
  • (A+B)+C = A+(B+C)
  • (A⊕B)⊕C = A⊕(B⊕C) (⊕: 排他的論理和)

<誤差>

けたあふれ誤差

コンピュータが扱える最大値・最小値を超えたときに、ビットが溢れ出すことで生じる誤差。
[例: 非常に大きい数値、0に限りなく近い数値]

情報落ち

絶対値が大きい値絶対値が小さい値の加減算をしたとき、絶対値の小さい値が、小さすぎて有効桁数からはみ出すことで生じる誤差。
[例: 10^{100}-10^{-100}]

打切り誤差

計算処理を途中で打ち切ることで生じる誤差。
[例: 0.555*10^{10}-0.553*10^{10}=0.003*10^{10}
これが正規化されて、0.300*10^{8}になったとき、0.3の後ろの02つが元々0だったかどうか保証がない]

丸め誤差

けた落ち

絶対値がほぼ等しい数値同士の差を求めたときに、有効な桁数が大きく減ることで生じる誤差。

<機械学習>

教師あり学習

訓練データとして、ラベル(正解)付きデータを使用する学習方法。
入力に対する正しい出力の例を与えることで、入力と出力の関係を学習させる。
[ パターン認識手法、回帰分析 ]

教師なし学習

訓練データとして、ラベル(正解)なしデータを使用する学習方法。
システム自らがグループを定義し、グルーピングする。データ構造を学習させる。
[ クラスタリング ]

強化学習

正解データの代わりに、与えられた環境における個々の行動に対して得点や報酬を与える学習方法。
一連の行動に対して評価値を与えることで、高い得点を取る、すなわち最良の行動を自律的に学習させる。
[ モンテカルロ法 ]

<その他>

有限オートマトン

入力によって状態がどう変わるかを表した図。
https://medium-company.com/有限オートマトン/

標準偏差

データの分布のばらつきを表す尺度。(σ[シグマ])

  • 平均±σの範囲に全体の約68%が含まれる
  • 平均±の範囲に全体の約95%が含まれる
  • 平均±の範囲に全体の約99%が含まれる

https://gyazo.com/a0a5a4e6b499ef8ee5acf24bddc0fa7e

相関係数

2つの項目の関連度合いを示す値。
-1~+1の間の実数値をとり、-1に近ければ負の相関、+1に近ければ正の相関。
相関係数の絶対値の大きさ(1にどれだけ近いか)がそのまま相関性の強さを示す。
https://sci-pursuit.com/math/statistics/correlation-coefficient.html#1

UTF-8

ASCIIと同じ文字は1バイト、その他の文字については2~6バイトで世界中の文字を表現。
ASCIIの上位互換。

ハフマン符号化方式

可変長の符号化方式。
出現確率が高いデータには短い符号を、低いデータには長い符号を与えることで効率よく圧縮する方法。

リアルタイムシステム

定められた制限時間内に応答する。(例:エアバッグの制御など)

TOF方式

対象物に当たった反射光が光源と同じ位置のセンサに返ってくるまでの時間によって対象物との距離を測定する方式。


[アルゴリズムとプログラミング]

<アルゴリズム>

木構造

用語: https://gyazo.com/6e153da07b9bf9816774f9cc836123a2

  • 節点 : 枝が生えている節。(根と葉も含む。)
    • 根 : 頂点の節点。
    • 葉 : 終端(末端)の節点。

グラフ、隣接行列

https://mathwords.net/gurahu

探索アルゴリズム

種類 説明 オーダ
線形探索法 先頭から順に探索していく。
O(n)
2分探索法 2つのグループに分けて、探している値に近いほうのグループを選択して...を繰り返す。
O(log_2 n)
ハッシュ法 ハッシュ値を使ってデータの格納位置をズバリ特定する。
O(1)

※ オーダは、グラフの傾きのようなもの。nが増えたら計算量はどれぐらい増えるか。

  • 2/nに比例して計算量が増加する場合 :
    O(n)
  • 計算量が6(一定)の場合 :
    O(1)
2分木探索の種類
  • 幅優先探索 : 根から近い順に階層ごとに探索する
  • 深さ優先探索 : 根から開始し、左の部分木の最も深い葉まで到達してから、一つ前の節まで戻り他方の部分木の探索を行う
    • 行きがけ順(先行順) : 訪問したタイミングで調べる
    • 帰りがけ順(後行順) : 移動する子がなくなったタイミングで調べる
    • 通りがけ順(中間順) : 左の子に移動できなくなったタイミングで調べる

<ソート(整列アルゴリズム)>

種類 説明 オーダ
バブルソート
(基本交換法)
隣り合う要素を比較して,大小の順が逆であれば入れ替える
という操作を繰り返す。
O(n^{2})
選択ソート
(基本選択法)
最小値を探してそれを先頭に移動させる
という操作を繰り返す。
O(n^{2})
挿入ソート
(基本挿入法)
整列済のグループの適切な場所に、未整列の要素を挿入する
という操作を繰り返す。
O(n^{2})
シェルソート ある間隔おきに取り出した要素から成る部分列をそれぞれ整列し,更に間隔を詰める
という操作を間隔が1になるまで繰り返す。(シェル=開発者名)
O(n^{1.2})
クイックソート 中間的な基準値を決めて、それ以下・以上のグループに分ける
という操作を繰り返す。
O(nlog_2 n)
ヒープソート 木構造を作って、最大or最小値を取り出す
という操作を繰り返す。(heap=木構造)
O(nlog_2 n)

<引数の渡し方>

値呼出し

引数として、変数の値のコピーを入れて渡す方法。
渡された変数は関数内でのみアクセスすることができる。
関数内で値を保持する変数は新しいメモリ領域に作成されるため、関数内で変数の値を上書きしても元の変数の値には反映されない

参照呼出し

引数として、変数のポインタ(メモリアドレス)を渡す方法。
呼び出された関数内で引数の内容に直接アクセスすることになるため、関数内で
変数の値を上書きすると元の変数の値にも反映される

<プログラム構造の性質>

リエントラント(Reentrant, 再入可能)

各プロセスごとに変数部分を割り当てることで、複数のプロセスで同時に実行できる性質。

リユーザブル(Reusable, 再使用可能)

プログラムのメモリへの展開を初回実行時のみ行い、以後は何度でも正しく使用できる性質。

リカーシブ(Recursive, 再帰可能)

プログラム中において自分自身を呼び出すことが可能な性質。(再入可能である)

リロケータブル(Relocation, 再配置可能)

プログラムをメモリ上のどの位置でも処理が可能な性質。


[コンピュータ構成要素]

<CPU>

パイプライン制御

1命令を複数ステージ(下記)に分け、各ステージをずらしながら並列に実行することで、処理時間を短縮。

  • F: 命令読出し(フェッチ)
  • D: 解読(デコード)
  • A: アドレス計算
  • R: オペランド呼出し
  • E: 実行

コア数

CPUの個数。
https://www.pc-koubou.jp/magazine/23926


  • スーパースカラ
    CPU内部に複数のパイプラインを用意して、パイプラインの各ステージを並列に実行することで処理を高速化する方式。

  • マルチタスク
    一つのプロセッサコアで複数のスレッドを切り替えて並列に実行する。

  • マルチコアプロセッシング
    一つのチップ内に複数のプロセッサコアを実装し,複数のスレッドを並列に実行する。

レジスタの種類

レジスタとは、CPU内部の記憶装置。(めちゃ速い)

  • 命令レジスタ
    命令のデコードを行うために,メモリから読み出した命令を保持する。
  • プログラムレジスタ(プログラムカウンタ)
    命令を読み出すために,次の命令が格納されたアドレスを保持する。
  • ステータスレジスタ
    割込みの許可状態,及び条件分岐の判断に必要な演算結果の状態を保持する。
  • スタックポインタ
    サブルーチン呼出し時に,戻り先アドレス及びレジスタの内容を格納するメモリのアドレスを保持する。
    (簡単に言うと、別の関数を実行しようという時に、どこに戻るかを記憶する)

アドレス指定方式

  • 即値アドレス指定 : アドレス部の値 =(有効アドレスではなく)そのまま演算対象データ
  • 直接アドレス指定 : アドレス部の値 = 有効アドレス
  • 間接アドレス指定 : アドレス部の値 = 主記憶上のアドレス で、そのアドレスに格納されている値が有効アドレス。
  • 指標(インデックス)アドレス指定 : アドレス部の値にインデックスレジスタの値を加えたもの = 有効アドレス。
  • 基底(ベース)アドレス指定 : アドレス部の値にベースレジスタの値を加えたもの = 有効アドレス。
  • 相対アドレス指定 : アドレス部の値にプログラムカウンタの値を加えたもの = 有効アドレス。

<メモリ>

メモリの種類

RAM

揮発性。読み書き可能。

  • DRAM : 主記憶装置(一般的なメモリ)。(コンデンサに蓄えた)電荷のリフレッシュ動作必要
  • SRAM : キャッシュメモリ。(フリップフロップ回路に蓄えた)電荷のリフレッシュ動作不要。高価。
  • 相変化メモリ(PCM or PRAM): 結晶/非結晶状態の電気抵抗の差を利用した不揮発性メモリ。読み書き可能。[DVD-RAMの基本材料]
ROM

不揮発性。読み出しのみ。

  • メモリカード(フラッシュメモリ) : ブロック単位で電気的に内容の消去ができる。

メモリの領域

スタック領域

LIFO方式で構成され、プログラムの実行中サブルーチン(=関数)の情報を記憶しておく(= 確保した順序とは逆に解放して行くという規則性を有するメ)メモリ領域。
サブルーチン終了後の戻りアドレス(メインルーチンの情報)や局所変数などを保持する。
※ LIFO(Last-In First-Out): 後入れ先出し

ヒープ領域

プログラム上から動的(任意)に確保できる(= どの様な順序で確保し解放して行くかをソフトウェアで自由に決められる)メモリ領域。
動的にメモリ取得・解放を繰り返すことによりメモリ上にどこからも参照されない領域(ガベージ)が発生する。

キャッシュメモリと主記憶(メモリ)の同期をとるための方式

ライトバック

CPUから書き込む命令が出たときにキャッシュメモリだけに書き込み主記憶への書き込みはキャッシュメモリからデータが追い出されるときに行う方式。
速度は向上するがデータの整合性を保つための制御が必要になる。

ライトスルー

CPUから書き込む命令が出たときにキャッシュメモリと同時に主記憶にも書き込む方式。
データの整合性は得られるが処理速度は低下する。

メモリインタリーブ

メモリアクセス高速化技術。
物理上は1つである主記憶領域を同時アクセス可能な複数の論理的な領域に分け、これに並列アクセスすることで、見かけ上のアクセス時間の短縮を図る。


[システム構成要素]

<故障に対する考え方>

  • フォールトトレラント
    障害が発生しても必要な機能を提供し続けること(耐故障)を目指す設計手法。
    • フェールセーフ
      故障が発生しても、影響範囲を最小限にとどめ、常に安全を最優先にする。安全を確保するように壊れる。(ヒーター)
    • フェールソフト
      障害が発生した時に、多少の性能の低下を許容し、システム全体の運転継続に必要な機能を維持させる。継続が最優先。(飛行機)
    • フォールトマスキング
      障害発生時にその障害を内部に留め外部向けの機能やサービスに影響を与えない
  • フォールトアボイダンス
    システムを構成する機器に信頼性(稼働率)の高いものを使用することで、故障そのものを排除しようとする設計手法。

<稼働率>

故障に関する時間

  • MTBF (Mean Time Between Failures)
    システムの修理が完了し正常に稼働し始めてから、次回故障するまでの平均故障間隔
  • MTTR (Mean Time To Repair)
    システムの故障を修理するために要した平均修復時間
  • 稼働率
    稼働率 = MTBF/(MTBF+MTTR)

並列に接続された機器の稼働率

1-(1-R_a)(1-R_b) = 1 - ( 両方の装置が同時に停止する確率 )
  • 両方の装置が同時に停止する確率 = ( 一方の装置が停止する確率 ) × ( もう一方の装置が停止する確率 )
    • 装置が停止する確率 = 1 – ( 装置の稼働率 )

<3層クライアントサーバシステム>

  • プレゼンテーション層 [クライアントのブラウザ]
  • ファンクション層/アプリケーション層 [処理]
  • データ層 [DB]

<ハードディスク関連>

シンプロビジョニング (Thin Provisioning)

少ない準備という意味。
ハードディスクなどの外部記憶装置(ストレージ)群を仮想化することで、物理的な記憶容量より多くの容量を利用者に割り当てることを可能にする仕組み。

パーティション分割

一つのハードディスクを,OSをインストールする領域 と データを保存する領域 とに分割する。

キャパシティプランニング

現状の最大負荷だけでなく、将来予測される最大負荷時にもサービスの水準を維持できるような設計を検討すること。

ストアドプロシージャ (stored procedure)

データベースに対する一連の処理を1つの手続きにまとめて、データベース管理システム(DBMS)に保存したもの。

  • 1回の要求で複数のクエリを発行できるので、ネットワーク負荷が軽減できる。
  • 即実行可能な形式なため、処理速度の向上が見込める。

CDN (Contents Delivery Network)

コンテンツ配信の高速化・効率化を目指して最適化されたネットワーク(配信インフラ)。
キャッシュサーバの活用やトラフィック分散、ルーティングの工夫でネットワーク負荷を低減し、より速くコンテンツを届ける。
(DNSの設定で、キャッシュサーバへアクセスを向ける。)
ノードとなるサーバは、様々な地域に設置されている。

<性能評価法>

モニタリング

監視・計測用のプログラムを用いてシステムの稼働状態や資源の状況を測定し、システム構成や応答性能のデータを得る手法。
得られたデータをもとに性能評価やボトルネックの発見などを行い改善に繋げる。

ベンチマークテスト

典型的なプログラムを実行し,入出力や制御プログラムを含めたシステムの総合的な処理性能を測定。

命令ミックス

命令を分離し,それぞれの使用頻度を重みとした加重平均によって全命令の平均実行速度を求める。

<通信規格>

ZigBee(ジグビー)

・同じ無線通信規格のBluetoothよりも低速(20Kbps-250kbps)で伝送距離も短い(30cm程度)
・乾電池程度の電力で数年連続で稼働できる省電力性と低コスト

<クラウドコンピューティングのサービスモデル>

SaaS (Software as a Service)

  • 事業者: アプリケーション以下を提供。
  • ユーザ: アプリケーションの設定が可能。

PaaS (Platform as a Service)

利用者が作った(入手した)アプリケーションを配置し、管理し、及び実行することができる形態。

  • 事業者: ミドルウェア以下を提供。
  • ユーザ: ミドルウェアの設定が可能。アプリケーションを用意する。

IaaS (Infrastructure as a Service)

  • 事業者: OS以下を提供。
  • ユーザ: OSの設定が可能。ミドルウェア以上を用意する。

[ソフトウェア]

<タスク管理>

  • ターンアラウンドタイム
    作業の開始からすべての完了通知を受け取るまでに要する時間

<仮想記憶>

仮想記憶は、実際は実記憶(メモリ)と補助記憶(主にHD)を使っている。
そうすることで、実記憶で処理できるより多くの容量を使うことができる(ように見せかけている)。

ページング方式

仮想記憶の実装方式の1つ。
仮想アドレス空間を「ページ」と呼ばれる固定長の区画で区切る。(セグメント方式は、可変長)

  • ページフォールト
    プログラムの実行に必要なページが主記憶上に存在しない場合に発生させる割込み。
    主記憶と仮想記憶間でページの入替えをする。

    • ページアウト
      ページフォールト時、主記憶から仮想記憶にページを退避すること。
    • ページイン
      ページフォールト時、仮想記憶から主記憶にページをロードすること。
  • スラッシング
    実記憶の容量が少ないとページの置き換えの頻度が高くなり、処理効率が大きく低下すること。

  • フラグメンテーション
    ディスク装置の記憶領域の中に使用されない領域の断片が存在した状態になりアクセス効率が低下する現象。

  • スワップアウト
    主記憶を効率的に利用するために、主記憶上で長い間待ち状態となっているプログラムを実行状態のまま補助記憶上の領域に退避させること。

ページの置き換えアルゴリズム

  • LRU (Least Recently Used)
    "最後に参照された時刻"が、最も昔であるものを置換え対象とする。
  • LFU (Least Frequently Used)
    最も使用頻度(回数)の少ないものを置換え対象とする。

ラウンドロビン方式

CPUを使用する時間を定め、その時間内に処理が終わらない場合は、次のタスクに使用権が与えられる方式。
規定時間内に処理が終わらなかった実行中のタスクは、処理を中断し待ち行列の最後尾に移動する。

  • タイムクウォンタム
    この方式においてタスクを切り替える時間間隔(各タスクに与えられるCPU時間)。
  • タイムシェアリングシステム
    1台のコンピュータをCPU時間で分割し、複数のユーザで利用できるようにしたシステム

プリエンプション

実行状態にあるタスクがOSの制御によりCPUの使用権を奪われ実行可能状態に移されること。(実行状態→実行可能状態
逆は、ディスパッチ

ノンプリエンプティブ

タスクの切替をプログラム自身に任せ、プログラムがCPUを自発的に開放したタイミングで他のタスクへの切り替えを行うマルチタスク制御方式。
OSがCPUを管理しない。

セマフォ (semaphore)

直訳すれば信号機。
並行動作している複数のタスク間で共通して使用する資源へのアクセスを制御(= 排他制御)する。


[ハードウェア]

<パリティチェック (誤り制御)>

  • 偶数パリティビット
    ビット列の1の数が偶数になるように値(0 or 1)をセットする。
    1ビットの誤りを検出できる。

  • 水平パリティ
    1ビットの誤りのみが検出可能。

  • 垂直水平パリティチェック
    1ビットの誤りを訂正できる。

  • ハミング符号
    検査ビットを付加することで2ビットまでの誤りを検出し、1ビットの誤りを自動訂正できる。

<電力技術>

  • 低消費
    • パワーゲーティング
      動作していない演算回路ブロックに対して、クロック信号の供給停止だけではなく電源を遮断。
    • クロックゲーティング
      演算に関与しない不要ブロックへのクロックの供給を止める。
  • エネルギーハーベスティング
    周りの環境からの微弱なエネルギーを収穫(harvest)して電力に変換する技術の総称。
    日本語では「環境発電技術」。

<エンディアン>

バイト単位のデータをメモリに記録するときの方式。

<センサ・アクチュエータ>

センサ →(A/D変換)→ コンピュータ →(D/A変換)→ アクチュエータ

  • センサ
    物理量を検出して,電気信号に変える。
  • アクチュエータ (Actuator)
    入力された電気信号を力学的な運動に変換。

<その他>

分周

周波数を割る数。周波数を1/nにすること。

RFID (Radio Frequency IDentification)

ID情報を埋め込んだRFタグ(ICタグ)と電磁界や電波を用いることで、数cm~数mの範囲で情報のやり取りを行う技術。

耐タンパ性

外部から内部データに対して行われる改ざん・解読・取出しなどの行為に対する耐性度合い。
タンパ(tamper)は"改ざんする"という意味。

ウォッチドッグタイマ

システムに異常が発生したことを検知し、それを通知する目的で設定されるタイマ。(ウォッチドッグ = 番犬)
あらかじめ設定された一定時間内にタイマがクリアされなかった場合,システム異常とみなしてシステムをリセット又は終了する


[ヒューマンインタフェース]

<アクセシビリティ>

JISでは以下のように定義。
「アクセシビリティとは,等しい水準のユーザビリティをすべての個人について達成することではなく,少なくともある程度のユーザビリティをすべての個人について達成することである。」

<コード>

  • ニモニックコード = 表意コード
    値から対象のデータが容易に連想できる英数字・記号の組合せをコードとして割り当てる方式。
    [ 例: 日本→JP,アメリカ→US ]
  • シーケンスコード = 順番コード
    連続した値をデータに1つずつ割り当てていく方式。
    [ 例: 0001→0002→0003→…→9999 ]
  • ブロックコード = 区分コード
    グループごとに定められた範囲内でコードを割り当てる方式。
    [ 例: 営業部は1000~1999、企画部は2000~2999 ]
  • デシマルコード = 10進コード
    全てのデータを0~9の10グループに分割し、さらにグループごとに10個のサブグループに分割することを繰り返していく方式。
    [ 例: 図書コード内の分類コード ]

<ユーザビリティ評価手法>

  • 回顧法
    被験者がタスクを実行。その行動を専門家が観察し、事後の質問への回答とともに分析する手法。
  • 思考発話法
    被験者がタスクを行っている間、考えたことや感じたことを口に出してもらうことで利用者の感じ方や思考を分析する手法。
  • 認知的ウォークスルー法
    複数の専門家が、設計仕様書や紙のプロトタイプを見ながら、対象となるユーザの行動をシミュレーションしていくことで問題点を明らかにする手法。
    人の認知過程を基準にする。
  • ヒューリスティック評価法
    複数の専門家が、設計仕様書や紙のプロトタイプを見ながら、既知の経験則に照らし合わせて問題点を明らかにする手法。
    ヒューリスティックとは「経験則」の意で、専門家の経験則を基準にする。

[マルチメディア]

<マルチメディア>

PDF (Portable Document Format)

テキストや画像だけでなく、レイアウトやフォントの情報などもファイルに納めることができる。
異なる環境でも正確にオリジナルと同じ表示ができるので、電子文書の配布や長期保存に適したファイル形式。

<画像>

JPEG (Joint Photographic Experts Group)

フルカラーの画像を多少の劣化を伴いながら高い圧縮率で符号化できるのが特徴で、写真など自然画像の記録に向いている

GIF (Graphics Interchange Format)

256色までの画像を無劣化で圧縮することができ、図やイラストなどの画像に向いている

PNG(Portable Network Graphics)

圧縮による画質の劣化のない可逆圧縮の画像ファイルフォーマット。
GIFよりも圧縮率が高く,ほぼすべてのブラウザでサポートされているためWebページの画像フォーマットとして使用される。


[データベース]

<スキーマ>

外部スキーマ (外向き/プログラム寄り)

利用者ごとの目的に応じた見方を表現したもの。
[ ビュー(リレーショナルデータモデル), サブスキーマ(ネットワークデータモデル) ]

概念スキーマ

データの論理的関係を表現したもの。
[ 表の正規化, CREATE TABLEによる表定義 ]

内部スキーマ (内部向き/物理寄り)

記憶装置上にどのような形式で格納するかを表現したもの。
[ ファイル編成, インデックスの設定 など]

<SQL>

  • 射影
    表の中から特定の列だけを取り出す操作。→ 重複の排除
  • GRANT文
    ユーザに表に関する特定の権限を付与。
    • 権限名 : SELECT(参照), INSERT, DELETE, UPDATE, ALL PRIVILEGES(全て)
    • オブジェクト名 : テーブル名, ビュー名
GRANT 権限名 ON オブジェクト名 TO ユーザ
  • CREATE ASSERTION文
    複数のテーブルに対して制約をかける「宣言」を定義。

  • CONNECT文
    データベースへの接続を確立。

  • UNION
    2つの結果セットに全く同じレコードがあった場合に重複行が削除された結果を返す。

  • UNION ALL
    重複行を含めた結果を返す。

<ACID>

Atomicity:原子性

トランザクションの処理は「すべて実行される or 全く実行されない」で終わることを保証する性質。
(処理が中途半端に終わらないこと)

Consistency:一貫性

データの矛盾が生じないこと

Isolation:独立性

複数のトランザクションを、同時に実行した場合 と 順番に実行した場合 の結果が等しくなることを保証する性質。

Durability:永続性

正常終了したトランザクションの結果は、障害が発生しても失われないことを保証する性質。
何らかの復旧手段を持っていること
(耐久性と呼ばれる場合もある。)

<トランザクション>

共有ロック

他のユーザは、データを読むことはできるが、書くことができない。

専有ロック

他のユーザは、データを読むことも書くこともできない

ロールバック、ロールフォワード

読み込み(Read)のトランザクションはわざわざ回復しない。

デッドロック

互いが互いのロック解除を待ち続ける状態。

<参照操作>

レコードが削除・更新されたときに、それを参照する他のレコードをどうするか。

  • CASCADE
    対応する参照元レコードを削除
  • RESTRICT
    参照制約性を損なうデータの更新または削除を禁止
  • SET NULL
    参照先データの更新または削除されると,レコードにNULLを設定する
  • SET DEFAULT
    参照先データの更新または削除されると,レコードにデフォルト値を設定する

<ビッグデータ>

  • データマイニング (Data Mining)
    データウェアハウスに蓄積されている大量の生データから、統計学的手法、数学的手法を用いて今まで知られていなかった規則性や因果関係を見つけ出す手法。
  • データマート
    データウェアハウスに格納されたデータの一部を,特定の用途や部門用に切り出して,データベースに格納すること。

<B+ 木インデックス>

木の深さが一定で葉のみが値をもつ平衡木を用いたインデックス。
(RDBMSのインデックス法として現在最も普及している。)
アクセス回数のオーダ = O(logX) (Xの対数)

  • 効率が良い検索 : 一致検索。範囲検索(<>BETWEENなど)。
  • 効率が悪い検索 : データの分布に偏りがある場合。NULL値及び否定を含む条件。

<2相コミット>

分散しているデータベース間で同期をとり、一斉にデータを更新

  1. 主サイトが、すべての従サイトに対してコミットの可否を問い合わせ。
  2. 全サイトから返答が返ってくる。
  3. 全サイトがコミット可なら、コミットを指示。
    一部でも不可なら、ロールバックを指示。

<データディクショナリ>

下記のような データベースのメタデータデータ定義情報 を効率よく管理する情報の保管庫。

  • 概念スキーマ、外部スキーマ、内部スキーマとそれらの変換定義情報
  • 表、ビュー、インデックス、その他オブジェクトの定義情報
  • 参照制約、検査制約の定義情報
  • ユーザ情報
  • アクセス権と機密保護に関する情報

<導出表>

1つ以上の基礎となる実表(DBに実データを持つ表)から関係演算・集合演算といったSQL問合せによって作成される仮想的な表全般を指す。
ビューは導出表の一つ。

<テーブル設計>

第1正規形

カラムの重複が無い状態。(横方向の繰り返しが無い状態。)

第2正規形

主キーに部分関数従属する(主キーの真部分集合に関数従属する)属性が存在しない状態。
(そもそも主キーが複合キー(2つ以上)でない場合は関係ない。)

第3正規形

主キーからの推移的関数従属が存在しない状態。
(主キー以外のカラムによって一意に決まるカラムが無い状態。)


[ネットワーク]

<LAN装置 と OSI参照モデル の関係>

物理層(第1層)に位置する装置

  • NIC : コンピュータをネットワークに接続するための拡張カード。
  • リピータ : 電気信号を増幅する。
  • LANケーブル

データリング層(第2層)に位置する装置

  • ブリッジ : セグメント間の中継役。流れてきたパケットのMACアドレスを確認し、必要なら他のセグメントへ流す。
    (セグメント : ブロードキャストが届く範囲内のグループのこと。(ネットワークより小さな単位))
  • スイッチ
  • ハブ

ネットワーク層(第3層)に位置する装置

  • ルータ : 異なるネットワーク(LAN)同士の中継役。

トランスポート層(第4層)以上に位置する装置

  • ゲートウェイ : プロトコル変換。

<ウェルノウンポート>

  • FTP : 20
  • SMTP : 25
  • DNS : 53
  • POP3 : 110

メール関連のプロトコル

  • SMTP : 送信用。
  • POP3 : メールを受信。PCにダウンロードする。
  • IMAP4 :メールを受信。サーバー上で管理。

<IPアドレス>

この記事に分かりやすくまとめられている。
https://qiita.com/mogulla3/items/efb4c9328d82d24d98e6

ネットワーク部とホスト部の識別方法

IPアドレスはネットワーク部とホスト部とから構成されている。
しかし、32ビットの内どこからどこまでネットワーク部でどこからどこまでがホスト部なのかは固定されておらず、IPアドレスによって異なる。

歴史的に以下の2種類の区別方法が存在している。

  1. クラスによる分類(クラスフルアドレス)
    どこまでがネットワーク部/ホスト部か が固定。
  2. サブネットマスクによる分類(クラスレスアドレス)
    どこまでがネットワーク部/ホスト部か が、サブネットマスクにより柔軟に変更できる。

1.クラスフルアドレス

クラス アドレス範囲 プライベートアドレス
A 0.0.0.0 ~ 127.255.255.255 10.0.0.0 ~ 10.255.255.255 (10.0.0.0/8)
B 128.0.0.0 ~ 191.255.255.255 172.16.0.0 ~ 172.31.255.255 (172.16.0.0/12)
C 192.0.0.0 ~ 223.255.255.255 192.168.0.0 ~ 192.168.255.255 (192.168.0.0/16)

プライベートアドレスの範囲外のIPアドレスは、グローバルアドレス。

2. サブネットマスク

IPアドレス同様、32ビットの正整数値。
IPアドレスのネットワーク部を表すビット部分が1になり、ホスト部を表すビット部分が0になる。
そのため、最初にネットワーク部を示す「1」が連続し、その後にホスト部を示す「0」が連続する形になる。

例えば、クラスCのように先頭24ビットがネットワーク部で残り8ビットをホスト部にしたい場合、サブネットマスクは11111111.11111111.11111111.00000000
これを10進数にすると255.255.255.0になる。

割り当てできないIPアドレス

  • ネットワークアドレス
    ネットワーク自体を表すアドレスのこと。
    ネットワークアドレスは、ホスト部のビットが全て0
  • ブロードキャストアドレス
    そのネットワーク内の全てのホストにデータを送信するために使われるアドレスのこと。
    ブロードキャストアドレスは、ホスト部のビットが全て1
  • ループバックアドレス
    自分自身を示すIPアドレスのこと。
    アドレスの始まりが127のものは、ループバックアドレス用として予約されている
    IPv4では127.0.0.1(ホスト名はlocalhost)。

<メディアアクセス制御>

CSMA/CD方式

伝送路上での衝突を前提とした通信制御方式。
イーサネットが採用している。
衝突発生時の再送動作によって,通信量が増えると衝突の頻度が増え、スループットが下がる

CSMA/CA方式

RTS/CTS方式は、無線LANのアクセス制御方式の一つでRTS(Request To Send,送信要求)フレームとCTS(Clear To Send,受信準備完了)フレームを用いてフレームの衝突を防ぐことができる。

トークンパッシング方式

伝送路上にトークンを巡回させ,トークンを受け取った端末だけがデータを送信できる。
CSMA/CD方式よりも制御が複雑なためオーバーヘッドは大きいが、通信量が増えてもスループットが下がらない

<プロトコル>

VRRP (Virtual Router Redundancy Protocol)

ルータやL3スイッチの冗長構成を実現するプロトコル。
複数台のルータに共通して使える仮想IPアドレス・仮想MACアドレスを用意し、障害発生時には2つのアドレスをフェールオーバで待機系に移すことで継ぎ目なく処理を続行する。

TCP(Transmission Control Protocol)

IPネットワークにおける誤り制御のためのプロトコル。

  • TCPのコネクション確立の手続き
    クライアントからの確立要求 → サーバからの肯定応答+確立要求 → クライアントからの肯定応答

SNMP (Simple Network Management Protocol)

TCP/IPネットワーク上でネットワーク上の機器の情報を収集して、監視や制御を行うためのプロトコル。

RARP (Reverse Address Resolution Protocol)

ARPが IPアドレス → 機器のMACアドレスを得るのとは逆に、
RARPは MACアドレス → IPアドレスを取得するためのプロトコル。
(DNSは、正引きがドメイン名→IPアドレス、逆引きがIPアドレス→ドメイン名 を取得。)

nslookupで、DNSサーバに名前解決を問い合わせ、ドメイン名からIPアドレスを(+その逆も)調べられる。

ICMP (Internet Control Message Protocol)

インターネットプロトコル(IP)の通信制御を補完するプロトコル。
データ配送中のエラー通知や送達エラーを通知する機能を持つ。
pingは、ICMPの「echo request」パケットを対象ノードに送信し、「echo reply」パケットが返ってくるか否かで、対象ノードおよび到達するまでのネットワーク間が正常であるかを診断する。

DHCP (Dynamic Host Configuration Protocol)

ネットワーク内のIPアドレスを一元管理し,クライアントに動的に割り当てるプロトコル。

<プロキシサーバ>

内部ネットワーク内の端末からの要求に応じてインターネットへのアクセスを代理する装置。
キャッシュ機能によるレスポンス向上、認証やフィルタリングによるセキュリティ、内部ネットワークの秘匿化などの効果を期待できる。

フォワードプロキシ

Webブラウザの代理として,Webサーバに対するリクエストを送信する

リバースプロキシ

Webサーバと同一の組織内(例えば企業内)にあって,Webブラウザからのリクエストに対して Webサーバの代理として応答する

<仮想ネットワーク>

SDN (Software-Defined Networking)

ネットワーク制御機能とデータ転送機能を論理的に分離し,コントローラと呼ばれるソフトウェアで,データ転送機能をもつネットワーク機器の集中制御を可能とするアーキテクチャ。
SDNを実現するための技術標準が OpenFlowプロトコルであり,既存のネットワーク機器がもつ制御処理(コントロールプレーン)と転送処理(データプレーン)を分離することで,OpenFlowコントローラが中央集権的に複数のスイッチの転送制御を管理する。
ネットワーク機器の機能のうち制御部だけをソフトウェア化。

NFV (Network Functions Virtualization, ネットワーク機能の仮想化)

仮想化技術を利用して、従来はルータ、スイッチ、ファイアウォール、ロードバランサなどの専用機器で行われていた機能を、汎用サーバ内の仮想マシン上で動くソフトウェアとして実装するアーキテクチャ。
複数のネットワーク機器の機能を1つの物理サーバに集約できるため、コスト削減や信頼性向上などのメリットがある。
機器ごと仮想化する。

VNF(Virtual Network Function)

ネットワーク制御機能とデータ転送機能を実装したソフトウェアを,仮想環境で利用するための技術。

<その他>

SSID (Service Set Identifier)

無線LANでの混信を避けるためにアクセスポイントと端末に設定されるネットワーク識別子。
(有線LANと異なり、無線LAN環境では1つの端末が複数のアクセスポイントと通信できてしまう「混信状態」が発生し得るため。)
最長で32文字。

マルチホーミング

インターネット回線を複数ISPの回線で接続し、1つの回線が切れてもほかの回線で通信し続けられるようにすることで、耐障害性の向上や負荷分散を行う仕組み。

  • ISP (Internet Service Provider)
    プロバイダのこと。

SSL(/TSL)アクセラレータ

通信を暗号化するSSL/TSLを使う際、暗号/復号を専門に行う機器やソフトウェアのこと。
Webサーバが行う処理を肩代わりすることで負荷を軽減する。

帯域

1秒間にどれだけ多くのビットを送信出来るかを表す。(単位: bps)
速度ではない。
https://beginners-network.com/taiiki.html


[セキュリティ]

<脅威>

クラッキング

ソフトウェア、データなどを防護する仕組みを破壊あるいは回避、無効化し、本来許されていない操作などを行うこと。

ソーシャルエンジニアリング

システムにアクセスするために必要な情報(パスワードなど)やその手がかりを、
それを知る本人や周辺者への接触や接近を通じて盗み取る手法の総称。

トロイの木馬

何らかの有用なソフトウェアを装って導入を促し,起動すると
利用者に気付かれないよう秘密裏にデータ漏洩や遠隔操作などの有害な動作を行うソフトウェア。

ランサムウェア

PCを利用できなくし,再び利用できるようにするのと引換えに金銭を要求する。

ルートキット

攻撃者がシステムへ不正侵入した後に痕跡を隠蔽したり、再び侵入するためのバックドアを設置するための機能をまとめたソフトウェア群。

エクスプロイトキット

複数のエクスプロイトコードをまとめ,ソフトウェアやOSに内在する脆弱性を確認したり,攻撃者がその脆弱性を悪用したりするツール群。

  • エクスプロイトコード
    ソフトウェアの脆弱性を悪用した不正な動作を再現するために作成されたスクリプトやプログラム。
    (悪意のある人に使われると、エクスプロイトキットとして攻撃手法になってしまう。)

<攻撃手法>

辞書攻撃

パスワードの割り出しなどの不明な文字列の推測を行う手法の一つで、
辞書や人名録など人間にとって意味のある単語のリストを候補として用いる方式。

総当たり攻撃 (ブルートフォース攻撃)

暗号の解読やパスワードの割り出しなどに用いられる手法の一つで、
割り出したい秘密の情報について、考えられるすべてのパターンを片っ端から検証する方式。
パスワードを片っ端から試す。

リバースブルートフォース攻撃

アカウントの奪取に用いられる攻撃手法の一つで、
あるサービスのアカウント名のリストを元に、多くの人が使う単純なパスワードで順番にログインを試み、たまたまそのパスワードを使っているアカウントを乗っ取る。
アカウント名を片っ端から試す。

レインボー攻撃

ハッシュ値からパスワードを特定するための逆引き表(レインボーテーブル)を用いて,パスワードを高速に解読する手法。

クロスサイトスクリプティング (XSS)

悪意のあるスクリプトを混入させることで,攻撃者が仕込んだ操作を実行させたり,別のサイトを横断してユーザのクッキーや個人情報を盗んだりする。

DNSキャッシュポイズニング攻撃

DNSキャッシュサーバに偽のDNS情報をキャッシュとして登録させることで,利用者を偽のWebサイトに誘導する。

セッションハイジャック

認証が成功してセッションが開始されているときに,Cookieなどのセッション情報を盗む

DoS攻撃

スクリプトを用いて特定のPCへ大量に接続要求を送り出し,通信機能を停止させる。

ドライブバイダウンロード

アクセスしてきた利用者の知らぬうちに、Webサイトに仕込んだマルウェアを自動ダウンロードさせる。

Man-in-the-Browser攻撃 (MITB)

ユーザPC内でプロキシとして動作するトロイの木馬(マルウェア)によってWebブラウザ~Webサーバ間の送受信をブラウザベースで盗聴・改ざんする攻撃。
(攻撃例: インターネットバンキングへのログインを検知して、セッションを乗っ取り、振込先口座番号を差し替えることで預金を不正送金するなど。)
同じく送受信を改ざんするMan-in-the-Middle攻撃と異なり、クライアント内で書換えが行われるためWebサーバ側で不正処理を拒否することが難しい

Man-in-the-Middle攻撃 (中間者攻撃)

インターネットバンキングの正規サイトに見せかけた中継サイトに接続させ,Webブラウザから入力された利用者IDとパスワードを正規サイトに転送し,利用者になりすましてログインする。
情報の搾取に中継サイトを使う。

バッファオーバフロー攻撃

大量のデータをWebアプリケーションに送ることによって,用意されたバッファ領域をあふれさせる

ディレクトリトラバーサル攻撃

パス名を推定することによって,本来は認証された後にしかアクセスが許可されていないページに直接ジャンプする。

<情報セキュリティに関する技術>

ディジタル署名

作成者を証明し、改竄やすり替えが行われていないことを保証するために付加される、短い暗号データ。

  1. 送信者は、メッセージダイジェスト[1] (= 平文をハッシュ関数で圧縮した短い暗号データ)送信者の秘密鍵で暗号化し、平文と一緒に送信する。
  2. 受信者は、受信したメッセージダイジェストを送信者の公開鍵で復号し、メッセージダイジェスト[1を取得。
    また、受信した平文をハッシュ関数で圧縮し、メッセージダイジェスト[2]を生成。
  3. 送信者から送られてきたメッセージダイジェスト[1]と、受信側でハッシュ化したメッセージダイジェスト[2]
    同じなら、通信内容が改ざんされていないことが証明される。
  • 共通鍵暗号 : AES

  • 公開鍵暗号 : RSA、楕円曲線暗号

  • ハッシュ関数 : 元に戻すことができない(一方向性)。同じ内容に対する変換値は同じになる。

CRL (Certificate Revocation List,証明書失効リスト)

有効期限内であるにもかかわらず、秘密鍵の漏えい/紛失などの理由により失効したディジタル証明書のシリアル番号と失効日時が列挙されたリスト。

チャレンジレスポンス方式

利用者が入力したパスワードと,サーバから受け取ったランダムなデータとをクライアントで演算し,その結果をサーバに送信することで認証する方式。
通信経路上に固定パスワードを流さないようにすることで、盗聴によるパスワードの漏えいやリプレイアタックを防止する。

リスクベース認証

通常とは異なる環境(例えば、普段とは異なるIPアドレスやISP及びOSやWebブラウザ等)からの認証要求があった場合に、通常の認証に追加する形で別の認証を実施する方式。
不正ログインの可能性のあるアクセスに対してだけ追加の本人認証を行うため、一定の利便性を保ちつつ、異なる環境からの不正アクセスに対してセキュリティを高めることができる。

RADIUS認証

いかなる環境からの認証の要求においても認証方法を変更せずに,同一の手順によって普段どおりにシステムが利用できる。

<情報セキュリティ対策>

フォールスネガティブ

本来は検知すべき悪意のある活動を,誤って害のないものと判断すること。
いわゆる検知漏れ

フォールスポジティブ

本来は通過させるべき害のない活動を,誤って悪意のあるものとして判断すること。
いわゆる過剰検知

WAF (Web Application Firewall)

通過するパケットのIPアドレスやポート番号だけでなくペイロード部(データ部分)をチェックすることで,Webアプリケーションに対する攻撃を検知し遮断するファイアウォール。
(普通のファイアウォールはIPアドレスやポート番号のみ。)
チェックされる内容は「URLパラメタ」や「クッキーの内容」などのHTTPヘッダ情報や,「POSTデータの内容」などのメッセージボディ部 など。

パケットが暗号化されているため、HTTPS通信が行われている経路上では機能できない

IDS

IPパケットの中身を調べて、不正な挙動を検出する。

IPS

IPパケットの中身を調べて、不正な挙動を検出し遮断する。

<セキュアプロトコル>

HTTPS

SSLサーバ証明書が必要。

SSLサーバ証明書

認証局が発行。
公開鍵が含まれる。(証明書と公開鍵が)クライアントに送信されるため、秘密鍵ではないことに注意。

IPsec

OSIモデルでのネットワーク層(第3層)(TCP/IPモデルではインターネット層)で提供する、IPを拡張してセキュリティを高めたプロトコル(群)。
(認証を担うプロトコル AH(Authentication Header)、認証と暗号化を担うプロトコル ESP(Encapsulated Security Payload) が含まれる。)

TLSはトランスポート層(第4層)
IPsecはIPが属するネットワーク層(第3層)
L2TPはデータリンク層(第2層)

WPA2-PSK (WPA2 Pre-Shared Key)

無線LANの暗号化方式の規格であるWPA2のパーソナルモード。
(個人宅などの小規模なネットワークで使用されることを想定)。

このモードではアクセスポイントと端末間で事前に8文字から63文字から成るパスフレーズ(PSK:Pre-Shared Key)を共有しておき、そのパスフレーズとSSIDによって端末の認証を行う。

サブミッションポート

メールサーバにメールを届けるときに使用する送信専用のポート番号。
メールサーバでは、サブミッションポートにアクセスしてきたユーザをSMTP-AUTHで認証し、認証できたユーザのみからの送信を受け付ける。

<認証プロトコル>

DNSSEC (DNS Security Extensions)

DNSにおける応答の正当性を保証するための拡張仕様。
ドメイン応答に公開鍵暗号方式によるディジタル署名を付加することで,正当な管理者によって生成された応答レコードであること,また応答レコードが改ざんされていないことの検証が可能になる。

<ネットワークセキュリティ>

パケットフィルタリング

通過するパケットのIPアドレス(送信元・送信先)やポート番号,通信の方向などの情報をもとに中継の可否を判断する方式。
ただしパケットのペイロード(データ部分)に関してはチェックを行わない。
(ファイアウォールがやっていることはコレ。(WAFはペイロードもチェックする。))

IPマスカレード

1つのグローバルIPアドレスで複数のプライベートIPアドレスを持つノードを同時にインターネットに接続できる機能。

NAPT (Network Address Port Translation)

プライベートIPアドレスとグローバルIPアドレスの相互変換するNATの考え方にポート番号を組み合わせた技術。
インターネット接続に使用中のポート番号を記憶するため、攻撃者が内部ネットワークへの不正アクセスを試みても、記憶しているポート番号以外に宛てたパケットは宛先不明として破棄される。


[システム開発技術]

<汎化と集約>

汎化

親クラス - サブクラス

集約

全体 - 部品

コンポジション

集約の1つで、全体と部品が同じライフサイクルになるような強い集約関係。

<UML>

ユースケース図

利用者(アクター)の視点で、システムが要求に対してどう振る舞うかを表す図。

アクティビティ図

業務や処理のフローを表す図。

シーケンス図

オブジェクト間のやりとりを時系列に沿って表す図。

ステートチャート図

外部からのトリガに応じて,オブジェクトの状態がどのように遷移するかを表す図。

SysML(Systems Modeling Language)

ソフトウェア設計の用いられるUMLを、ハードウェアに関する記述を含めたものに拡張し、システム設計を行えるようにしたモデリング言語。

<設計>

モジュール強度

モジュール内部の関連性の強さを表す。
モジュール強度が高いほど良い
独立したソフトウェア部品として再利用や拡張がしやすくなる。

  • 機能的強度(最も強い = 良い)
    一つの機能を実現するためだけのモジュール
  • 情報的強度
    同じデータ構造や資源を扱う機能を一つにまとめたモジュール。
    (例)ある木構造データを扱う機能をデータとともに一つにまとめ,木構造データをモジュールの外から見えないようにした。
  • 連絡的強度
    関連ある逐次的な機能で要素が連絡し合うものをまとめたモジュール。
    (例)二つの機能A, Bは必ずA, Bの順番に実行され,しかもAで計算した結果をBで使うことがあるので,一つのモジュールにまとめた。
  • 手順的強度
    関連ある逐次的な(順番が決まっている)機能をまとめたモジュール。
    データに関連はない。(前の処理結果データを次の処理で使わない。)
  • 時間的強度
    プログラムの開始時など、ある特定の時間に実行する機能をまとめたモジュール。
    (例)複数の機能のそれぞれに必要な初期設定の操作が,ある時点で一括して実行できるので,一つのモジュールにまとめた。
  • 論理的強度
    関連する複数の機能をまとめたモジュール。
    (例)二つの機能A, Bのコードは重複する部分が多いので,A, Bを一つのモジュールにまとめ,A,Bの機能を使い分けるための引数を設けた。
  • 暗合的強度(最も弱い = 悪い)
    関係のない機能をまとめたモジュール

モジュール結合度

モジュール同士の関連性の強さを示す。
モジュール結合度は低いほど良い
モジュール同士の結合度合いが強ければ、関連するモジュールに変更があった場合の影響は大きく、反対に結合度が弱ければ影響を受けにくくなる。

  • データ結合 (弱い↑ = 良い)
    処理に必要なデータだけを単一のパラメータとして受け渡している。
  • スタンプ結合
    処理に必要なデータだけをレコードや構造体などのデータ構造として受け渡している。
  • 制御結合
    もう1つのモジュールの制御要素を受け渡している。
  • 外部結合
    外部宣言された共通データを参照している。
  • 共通結合
    外部宣言されたデータ構造を共通データ領域として参照している。
  • 内容結合 (強い↓ = 悪い)
    お互いのモジュール内部のデータを直接参照している。

<品質>

  • 機能適合性
    ニーズを満足させる機能を,製品又はシステムが提供する度合い
  • 使用性
    利用者が製品又はシステムを利用することができる度合い
  • 信頼性
    明示された機能を実行する度合い
  • 互換性
    システム・構成要素が、他のシステム・構成要素の情報を交換することができる度合い
  • 移植性
    一つのハードウェア・ソフトウェア又は他の運用環境若しくは利用環境からその他の環境に
    システム・構成要素を移すことができる有効性及び効率性の度合い

<レビュー>

パスアラウンド

対象の成果物を複数のレビュアに回覧し、フィードバックを求めるレビュー技法。

インスペクション(Inspection = 検査)

事前に役割を決められた参加者が、責任のある第三者(モデレータ)の下で成果物を確認する、最も公式なレビュー技法。
参加者の役割が明確になっていること、チェックリストなど形式的な文書に基づいて実施すること、正式な記録をすることが特徴。

ウォークスルー

開発者が主体となり、プログラムのステップごとに確認するレビュー技法。

<結合テスト>

トップダウンテスト

上位のモジュールから下位のモジュールへと順に結合しながらテストする手法。
スタブを使う。

  • スタブ
    未完成の下位モジュールの代わり。
    上位モジュールからの呼び出しに対して、下位モジュールが返すべき適切な値を返却する。

ボトムアップテスト

下位のモジュールから上位のモジュールへと順に結合しながらテストする手法。
ドライバを使う。

  • ドライバ
    未完成の上位モジュールの代わり。テスト対象の下位モジュールに適切な引数を与えて呼び出す。

命令網羅

すべての命令を少なくとも1回は実行する。

分岐網羅 (判定条件網羅)

判定条件の真偽を少なくとも1回は実行するテストケースを設計。
(例)if (A or B)の場合、ifが真の場合ifが偽の場合をテストする。

条件網羅

判定条件が複数ある場合に、それぞれの条件が真・偽の場合を組み合わせたテストケースを設計。
(例)if (A or B)の場合、Aが真/Bが偽の場合Aが偽/Bが真の場合をテストする。

<その他>

マッシュアップ

複数の提供元のAPIを組み合わせることで新しいサービスを提供する。


[ソフトウェア開発管理技術]

<開発プロセス>

ソフトウェア実装プロセス

  • 方式設計
    要求事項を実装し,それに対して検証できるソフトウェアの設計を提供する
  • 詳細設計
    要求事項及びソフトウェア方式に対して実装し,検証でき,コーディング及びテストを可能にするために十分に詳細である設計をソフトウェアのために提供する
  • 構築
    ソフトウェア設計を適切に反映した実行可能なソフトウェアユニットを作り出す
  • 結合
    ソフトウェアユニット及び構成部品を組み合わせ,結合されたソフトウェア品目を作り出す

CMMI (Capability Maturity Model Integration)

統合能力成熟度モデルと呼ばれ、組織におけるプロセス改善をガイドするモデル。

クロス開発

開発するマシン環境と実行するマシン環境が異なること。
(例)携帯電話上で動作させるソフトウェアや、組込みソフトウェアなどをPCで開発する場合。

イテレーション(Iteration)

アジャイル開発における反復の単位。

リーンソフトウェア開発

7つの原則を適用するアジャイル開発のフレームワーク。

エクストリームプログラミング(XP)

プログラム中心のアジャイル開発のフレームワークで4分類、19のプラクティスを適用する。

<開発ツール>

パーサ

ソースコードの構文解析を行うソフトウェア。

コンパイラ

ソースコードを一括翻訳して、機械語の目的プログラム(実行ファイル/ロードモジュール)を生成する言語プロセッサ。

知的財産

ソフトウェアは著作物。(特許とは別)


[プロジェクトマネジメント]

<マネジメントの種類>

コンフィギュレーション・マネジメント

構成管理とも呼ばれ、変更に係る次の作業を実施する活動。

  • プロダクト・構成要素などの仕様・特性を文書化する
  • 変更の実施状況を記録し報告する
  • 変更事項の適合性を検証する監査に情報を提供する

ポートフォリオマネジメント

組織が抱えている多数のプロジェクトを区分し、資源配分の最適化を目指す活動。

プロジェクトマネジメント

同時並行的に進められている複数のプロジェクトを組合せ、それらの相互関係を最適化することで、全体として使命をより良く達成するように導く活動。
ここで言う「プログラム」とは相互に関連する複数のプロジェクトを要素としてもつ集合体を指す。

<プロジェクトのコスト>

EVM (Earned Value Management, アーンドバリューマネジメント)

プロジェクトにおける作業を金銭の価値に置き換えて定量的に実績管理をする進捗管理手法。

  • PV (Planned Value)
    プロジェクト開始当初、現時点までに計画されていた作業に対する予算
  • EV (Earned Value)
    現時点までに完了した作業に割り当てられていた予算
  • AC (Actual Cost)
    現時点までに完了した作業に対する実コスト

各指標を比較して、

  • EV-ACがマイナス
    完了済み作業に対する予算よりも投入コストが多いのでコスト超過。
  • EV-PVがマイナス
    完了済み作業に対する予算が当初の予算よりも少ないので進捗遅れ。

見積り手法

  • パラメトリック見積り
    過去に蓄積したデータと関連する変数との統計上の関係を使って、見積りを行う手法。
    試験でよく登場する "ファンクションポイント法" や "COCOMO" 及び "プログラムステップ法" もパラメトリック見積りの一種である。

    • COCOMO (Constructive Cost Model)
      予想されるプログラム行数にエンジニアの能力や要求の信頼性などの補正係数を掛け合わせて、開発工数や期間,要員や生産性を見積もる手法。
      COCOMOを適用するには自社における生産性のデータ収集が不可欠
    • ファンクションポイント法
      外部入出力や内部ファイルの数難易度の高さから開発規模を見積もる。
  • 類推見積り
    類似のプロジェクトにおける過去のコスト実績を使って,プロジェクトのコストを見積もる。

  • 三点見積り
    楽観値,悲観値,最可能値を使って,個々のアクティビティのコストを見積もる。

  • ボトムアップ見積り
    WBSの下位レベルの構成要素単位の見積り結果を集計して,プロジェクトのコストを見積もる。

<時間管理>

トレンドチャート

計画の予算・工期、および実績の費用・進捗を表す2本の折れ線グラフを並べたグラフ。差異の把握や傾向(トレンド)の分析に用いられる。

ガントチャート

作業日程の計画と実績を対比できるように帯状に示したもの。

アローダイアグラム(矢線図)

複数の要素の間を、それらの関係を意味する矢印で結んだ図。(クリティカルパスとかを求めるやつ)

クラッシング

スケジュール短縮のために,割り当てる資源を増やす技法。
例えば,メンバの時間外勤務を増やしたり、業務内容に精通したメンバを新たに増員するなど、クリティカルパス上のアクティビティに資源を追加投入して短縮を図る。

ファストトラッキング

開始当初の計画では直列に並んでいた作業を同時並行的に行い期間短縮を図る方法。
ただし,本来は順番通りになされるべきであった作業を並行して行うことになるので,順序や前後関係がより複雑になるなどの弊害もある。

RACIチャート

要員が担う役割および負う責任を作業別に一覧にしたもの。
R(Responsible)…実行責任
A(Accountable)…説明責任
C(Consulted)…相談対応
I(Informed)…報告先、情報提供

<プロジェクトの体制>

プロジェクトスポンサ

プロジェクトに対して資金などのリソースを提供する立場の人・グループ。
プロジェクトを許可し、経営的決定を下し、プロジェクトマネージャの権限を超える問題及び対立を解決する役割を担います。

プロジェクトマネージャ

豊富な業務経験、情報技術の知識、リーダシップをもち、プロジェクトの運営を管理する役職。
プロジェクトの活動を指揮し、プロジェクトの完了に説明義務を負う

プロジェクトマネジメントチーム

プロジェクトマネージャを含め、プロジェクト管理に関わる人達。
プロジェクトの活動を指揮し、マネジメントするプロジェクトマネージャを支援する役割。

プロジェクトマネジメントオフィス (PMO:Project Management Office)

企業内で並行して実施されている個々のプロジェクトのマネジメント業務の支援、プロジェクトマネージャのサポート、部門間の調整などプロジェクトが円滑に実施されるように支援を行う。
ガバナンス,標準化,プロジェクトマネジメントの教育訓練,プロジェクトの計画及びプロジェクトの監視を含む多彩な活動を遂行する。


[サービスマネジメント]

<サービスマネジメント>

サービス戦略 (サービスストラテジ)

全体的な戦略を確立する。

サービス設計 (サービスデザイン)

事業要件を取り入れ,事業が求める品質,信頼性及び柔軟性に応えるサービスと,それを支えるプラクティス及び管理ツールを作り出す

サービス移行 (サービストランザクション)

サービスおよびサービス変更を運用に利用できるようにするために,前の段階の成果を受け取り,事業のニーズを満たすかどうかをテストし,本番環境に展開する。

サービス運用 (サービスオペレーション)

顧客とサービス提供者にとって価値を確保できるように,サービスを効果的かつ効率的に提供しサポートする

継続的サービス改善

サービスマネジメントプロセスとサービスに対する改善の管理を責務とし,効率性,有効性及び費用対効果を向上させるために,サービス提供者のパフォーマンスを継続的に測定して,プロセス,サービス,インフラストラクチャに改善を加える。

サービスポートフォリオ

サービス・プロバイダ(情報システム部門/外部サービス事業者)によって管理されている全てのサービスをリスト化し,そのサービスごとに詳細情報をまとめたもの
サービス・プロバイダの約束事項と投資を表すものであって,サービス・プロバイダによって管理されている "検討中か開発中","稼働中か展開可能" 及び "廃止済み" の全てのサービスが含まれる

サービスカタログ

サービスカタログとは,サービスプロバイダ(情報システム部門/外部サービス事業者)がエンドユーザー(従業員/顧客)に向けて提供中のITサービスをまとめたリストのこと。現状において稼動中で利用可能な IT サービスを一覧できるようにした文書やデータベースなどをいう。
サービスの販売と提供の支援に使用され,顧客に公開されるものであって,"検討中か開発中" と "廃止済み" のサービスは含まれず,"稼働中か展開可能" のサービスだけが含まれる。
サービスカタログは、IT サービスを受けるエンドユーザーに「いま利用できる IT サービスには何があるか」「すでに利用している IT サービスはどれか」などの情報を明確に提示するもので。従って、IT サービスを利用するうえでは不要な技術的説明などは省き、ITに詳しくない利用者にも理解できるような言葉遣いで表現すべきである。

可用性

サービスを提供すべき時間にどれだけサービスが利用可能であったか。

<サービス継続管理>

段階的復旧(コールド・スタンバイ)

コンピュータを設置できる施設だけを確保しておく
障害発生時には機材などを搬入して、システムの導入とデータの復旧を行って業務を引き継ぐ。

中間的復旧(ウォーム・スタンバイ)

バックアップサイトに本システムと同じ機器を設置しておく方式。
障害発生後には、追加の機器やデータおよびプログラム媒体を搬入してから予備系システムを立ち上げて処理を引き継ぐ。

高速復旧(ホット・スタンバイ)

バックアップサイトに本システムと同じ機器及びバックアップデータを用意しておく方式。
非常時にはデータの復旧を行ってから処理を引き継ぐ
本システムを同じものを稼働させておき、定期的に同期をとる方式もこれに含まれる

即時的復旧(ホット・スタンバイ)

日常からバックアップサイトで本システムと同じものを稼働させておき、非常事態が起きたときに切れ目なく業務を引き継ぐ方式。
常に本システムのデータとの同期が行われており、障害発生時に直ぐにその施設でシステムを運用できる。


[システム監査]

ペネトレーションテスト (侵入テスト)

ネットワークに接続されているシステムに対して、実際に様々な方法で侵入を試みることで脆弱性の有無を検査するテスト。


[システム戦略]

TCO (Total Cost of Ownership)

ある設備・システムに関する、取得から廃棄までに費用の総額。
初期投資額であるイニシャルコストと、維持管理費用であるランニングコストに大別できる。

  • イニシャルコスト
    ハードウェア購入・設置費用、パッケージソフトの購入費用・開発費、初期教育費など
    • 埋没原価
      過去に支出された費用や、意思決定の内容にかかわらず回収できない費用のこと。
      例えば、従来使用していた設備の減価償却費、旧設備の除却損、ユーザサポートに伴う機会損失など。
  • ランニングコスト
    保守・サポート契約費、ライセンス料、運用人件費、消耗品費など

プログラムマネジメント

並行している複数のプロジェクトを組合せ、それらの相互関係を最適化することで、全体として使命をより良く達成するように導く活動。
ここで言う「プログラム」とは、相互に関連する複数のプロジェクトを要素としてもつ集合体

SOA (Service Oriented Architecture, サービス指向アーキテクチャ)

業務上の一処理に相当するソフトウェアで実現されている機能や部品を独立したサービスとし、
それらを組み合わせ連携させることで言語やプラットフォームに依存せずにシステムを構築するという手法。

ERP (Enterprise Resource Planning)

会計,人事,製造,購買,在庫管理,販売などの企業の業務プロセスを一元管理することによって,業務の効率化や経営資源の全体最適を図る手法。


[システム企画]

<要件定義>

利用者および利害関係者が求めるシステムに対する要件を定義。

  • 利害関係者の識別
    システムのライフサイクルの全期間を通して,どの工程でどの関係者が参画するのかを明確にする。
  • 要件の識別
    利害関係者から要件を漏れなく引き出し,制約条件や運用シナリオなどを明らかにする。
  • 要件の評価
    抽出された要件を確認して,矛盾点や曖昧な点をなくし,一貫性がある要件の集合として整理する。
  • 要件の合意
    矛盾した要件,実現不可能な要件などの問題点に対する解決方法を利害関係者に説明し,合意を得る。

業務要件定義

業務要件とは、システム開発やソフトウェア開発の初期の工程で、システム化の対象となる業務の流れを明確化したもの。
要件定義プロセスの初期の段階で定義される。
対象業務の現状を分析し、新たに実現すべき業務の流れを明らかにする
この段階ではシステムの存在は意識せず、業務の詳細な手順や担当者、扱う情報とその流れなどを決めていく。

業務要件が完成した後に、その中のどこをどのようにシステム化するのかを検討し、システムに要求される要件(システム要件)を定義する。
業務要件は業務全体の流れを対象とするため、中にはシステム化の対象とならない(システム要件に対応する項目や要素がない)部分が存在する場合もある。

機能要件定義

機能要件とは、要件のうち、機能や挙動に関するもの。
新しい業務の遂行に必要なアプリケーションシステムに関わる利用者の作業システム機能の実現範囲機能間の情報の流れなどの項目がある。

非機能要件定義

非機能要件とは、システムに求められる要件のうち、機能要件以外の要件のこと。
一般に制約条件や品質要求がこれに該当する。
可用性性能・拡張性運用・保守性移行性セキュリティシステム環境・エコロジー

<知識体系ガイド>

BABOK (Business Analysis Body of Knowledge, ビジネスアナリシス知識体系ガイド)

経営ニーズやステークホルダの課題を調査・整理、および検証して取りまとめるビジネス分析のベストプラクティスを体系化した書籍の略称。

PMBOK (Project Management Body of Knowledge)

プロジェクトマネジメントに関するスコープ,タイム,コスト,品質,人的資源,コミュニケーション,リスクなど九つの知識エリアから成る知識体系。

<契約>

準委任契約

仕事の完成を契約の目的とする請負契約と異なり、委託された仕事の実施自体を目的とする契約形態。
受託者は委任事務を処理する義務を負うものの、仕事の完成についての義務は負わない。
主に業務分析や要件定義、運用テスト工程などの成果物が特定されていない状況で結ばれる。

書類

  • RFI (Request for Information情報提供依頼書)
    企業・組織がシステム調達や業務委託をする場合や、初めての取引となるベンダ企業に対して情報の提供を依頼すること、またはその際に提出される文書のこと。
    RFIを発行することによって相手方が保有する技術・経験や、情報技術動向、及び導入予定のシステムが技術的に実現可能であるかなどを確認することができる。この情報は要件定義や発注先候補の選定に利用。
  • RFP (Request for Proposal提案依頼書)
    調達者から供給者候補に対して,対象システムや調達条件などを示し,提案書の提出を依頼すること。
    RFIを受領した後、発注先候補に対して自社の要求を取りまとめたRFPが発行される。
  • RFC (Request for Change変更要求書)
    調達者から供給者に対して,契約内容で取り決めた内容に関して,変更を要請すること。

<半導体の製造>

ファウンドリ

半導体の生産設備を保有し、他社から半導体の製造を受託する会社。
半導体の製造だけを専門的に行い、自ら回路設計はしない

デザインハウス

半導体の設計のみを専門に受託する会社。


[経営戦略マネジメント]

<事業戦略>

SWOT分析

自社の強みと弱み,市場における機会と脅威を,分類ごとに列挙して,事業戦略における企業の環境分析を行う。

バランススコアカード (BSC:Balanced Score Card)

企業のビジョンと戦略を実現するために、「財務」「顧客」「内部ビジネスプロセス」「学習と成果」という4つの視点から業績を評価・分析する手法。

ファイブフォース分析

業界の収益性を決める五つの競争要因から、業界の構造分析をおこなう手法。
・既存競合者同士の敵対関係(内部要因)
・新規参入の脅威(外部要因)
・代替製品・代替サービスの脅威(外部要因)
・買い手の交渉力(内部要因)
・供給者の支配力(内部要因)

バリューチェーン

「購買した原材料等に対して、各プロセスにて価値(バリュー)を付加していくことが企業の主活動である。」というコンセプトに基づき、企業の活動を顧客に価値を提供するための「価値の連鎖」として捉えたもの。

バリューチェーン分析は,業務を「購買物流」「製造」「出荷物流」「販売・マーケティング」「サービス」という 5 つの主活動と,「調達」「技術開発」「人事・労務管理」「全般管理」の 4 つの支援活動に分類し,製品の付加価値がどの部分(機能)で生み出されているかを分析する。

プロダクトポートフォリオマネジメント

製品を,市場の魅力度と自社の強みの2軸を用いて,花形,金のなる木,問題児,負け犬の4象限のマトリックスに分類する。

  • 花形 … [成長率:高、占有率:高]
    占有率・成長率ともに高く、資金の流入も大きいが、成長に伴い占有率の維持には多額の資金の投入を必要とする分野
  • 金のなる木 … [成長率:低、占有率:高]
    市場の成長がないため追加の投資が必要ではなく、市場占有率の高さから安定した資金・利益の流入が見込める分野。
    投資向き。
  • 問題児 … [成長率:高、占有率:低]
    成長率は高いが占有率は低いので、花形製品とするためには多額の投資が必要になる。投資が失敗し、そのまま成長率が下がれば負け犬になってしまうため、慎重な対応を必要とする分野
  • 負け犬 … [成長率:低、占有率:低]
    成長率・占有率がともに低く、新たな投資による利益の増加も見込めないため市場からの撤退を検討するべき分野

アンゾフの成長マトリクス

事業の成長戦略を,製品(既存・新規)と市場(既存・新規)の2軸を用いて,市場浸透,市場開発,製品開発,多角化の4象限のマトリックスに分類する。

SCM (Supply Chain Management)

生産・在庫・購買・販売・物流などのすべての情報をリアルタイムに交換・一元管理することによって生産から販売に至る一連の流れ全体の効率を大幅に向上させることを目指す経営管理手法。
導入によってサプライチェーンが最適化され、納期短縮や在庫削減といった効果を期待できます。

CRM (Customer Relationship Management)

顧客関係管理手法の一つ。
顧客満足度を向上させるために、顧客との関係を構築することに力点を置く経営手法で、新規顧客を獲得するより、既存顧客の維持に力を入れる方が有効な戦略であるというのが、CRMの考え方。

例えば,企業内のすべての顧客チャネルで情報を共有し,サービスのレベルを引き上げて顧客満足度を高め,顧客ロイヤルティの最適化に結び付ける考え方である。

SFA(Sales Force Automation)

営業活動にITを活用して、営業の質と効率を高め売上や利益の増加につなげようとする仕組み。
営業日報の管理、商談管理機能(コンタクト管理、行動管理、評価・実績管理)など。

ERP (Enterprise Resource Planning)

企業全体の経営資源を有効かつ総合的に計画して管理し,経営の高効率化を図るための手法。

リテールサポート

卸売業者・メーカが,小売店の経営活動を支援してその売上と利益を伸ばすことによって,自社との取引拡大につなげる方法。
(因幡 電工のイメージ)

KGI, KPI

  • KGI (Key Goal Indicator,重要目標達成指標)
    企業目標やビジネス戦略によって達成すべき到達目標(Goal)を測定可能な数値で表したもの。
  • KPI (Key Performance Indicator,重要業績評価指標)
    企業目標やビジネス戦略の実現に向けて行われるビジネスプロセスについて、その実施状況をモニタリングするために設定する指標。

<チャネル>

  • オムニチャネル (Omni Channel)
    どの販路でも同レベルの利便性で注文・購入できるようにした販売環境のこと。
    "オムニ"は「あらゆる」「すべて」という意味。
  • マルチチャネル
    顧客との接点が複数あること。チャネルを超えた連携はない。

<差別化>

コアコンピタンス (Core Competence)

長年の企業活動により蓄積された企業独自のノウハウや技術のこと。
(他社との差別化、または競争力の中核となる)

<価格戦略>

浸透価格戦略

新規製品を市場に投入する際に、価格を低く設定することで可能な限り多くの顧客を獲得し、早期に認知度アップやシェア拡大を狙う価格戦略。
市場シェアを獲得した後は、大量生産によるコスト削減などで中長期的に利益を生み出し初期コストを回収。

上澄み吸収戦略

浸透価格戦略とは逆に、最初に高い価格に設定し、徐々に価格を下げていく価格戦略。

収穫戦略

売上高をできるだけ維持しながら,製品や事業に掛けるコストを徐々に引き下げていくことによって,短期的なキャッシュフローの増大を図る。


[技術戦略マネジメント]

<イノベーション>

プロダクトイノベーション

革新的な新製品を開発するといった、製品そのものに関する技術革新。

プロセスイノベーション

製品やサービスを生み出す過程にある工程や物流の改善による技術革新。

オープンイノベーション

組織内の知識・技術と組織外のアイデアを結合して新たな価値を創造しようとする取組み。
組織の枠組みを越え、広く知識・技術の結集を図る。
(異業種の企業間における共同研究、大学との産学連携、地方自治体との提携など)

ラディカルイノベーション (radical innovation : 抜本的な変革)

技術の面でもビジネスモデルの面でも、従来の延長にない全く新しい技術革新のこと。

インクリメンタルイノベーション

従来に対して改良を施すことで得られる,比較的小さな革新。

<技術経営の3つの障壁>

魔の川

基礎研究 ~ 実用化・製品化にむけた応用研究 の間の障壁。

死の谷

研究開発の成果製品化に結び付かない状況。

ダーウィンの海

事業化されてから、産業として成立するまでに乗り越えなくてはならない弱肉強食の市場の障壁。


[ビジネスインダストリ]

<電子商取引>

エスクローサービス

決済を仲介し,落札者から送金を受け,商品の受渡し完了後に出品者へ送金を行う仕組み。

<マーケティング>

レコメンデーションシステム

情報収集を行うユーザーに対し、ユーザープロファイルに登録されたルールあるいは興味・関心の傾向に応じて、情報を提供するシステム。

成功報酬型広告

Webページに掲載した広告が契機となって商品が購入された場合,売主から成功報酬が得られる仕組み。

リスティング広告 (検索連動型広告)

検索エンジンを運営する企業と契約し,自社の商品・サービスと関連したキーワードが検索に用いられた際に広告を表示する仕組み。

コンテンツ連動型広告

サービス運営会社が発行する広告タグを埋め込んだWebサイトを訪れた利用者に対して,そのWebサイトのコンテンツに関連した広告を自動的に表示する。

インプレッション保証型広告

契約した表示回数に達するまで掲載を続ける広告。

行動ターゲティング

利用者の検索履歴やWebサイトの閲覧履歴・購買履歴などのオンライン上における行動データをもとに、興味のありそうな分野を推測し、利用者ごとに最適な広告を表示する手法である。
行動データの収集にはクッキーおよびWebビーコンが用いられる。

地域ターゲティング

GPSを使い,利用者の現在地に合わせて,近隣の商業施設の広告を利用者が見ている Webサイトに表示する。

<物流>

3PL (3rd Party Logistics)

ある企業の物流の全部または一部第三者企業が受託することで実現する物流業務形態の一つ。
荷主側からみると、物流のための設備や資源を整備する必要なく、外部の資源を有効利用して効率的な物流が期待できる点がメリット。
3PL事業者とすれば、既に自社で保有している資源を外部の企業に開放することで少ない投資で増益を期待できる点がメリット。

用語

  • ディジタルディバイド : 情報格差

  • ディジタルサイネージ(Digital Signage) : 電子看板

  • 電子透かし : 不正利用を防止するためにデータに識別情報を埋め込む技術。

  • エッジコンピューティング : 利用者や端末と物理的に近い場所に処理装置を分散配置して、ネットワークの端点でデータ処理を行う技術。

  • グリッドコンピューティング : ネットワークを介して複数のコンピュータを結ぶことによって,全体として処理能力が高いコンピュータシステムを作る。


[企業活動]

<投資>

SRI (Socially Responsible Investment = 社会的責任投資)

財務評価だけでなく,社会的責任への取組みも評価して,企業への投資を行う。

CSR活動

企業が社会的責任を果たすために,環境保護への投資を行う。

ベンチャー投資

先端技術開発への貢献度が高いベンチャ企業に対して,投資を行う。

コミュニティ投資

地域経済の活性化のために,大型の公共事業への投資を積極的に行う。

<組織>

  • CEO(Chief Executive Officer:最高経営責任者)
    すべての業務を統括する役員のこと。
  • CIO (Chief Information Officer:最高情報責任者)
    経営から求められる役割は,ビジネス価値を最大化させるITサービス活用の促進。
  • CISO(Chief Information Security Officer : 最高情報セキュリティ責任者)
    情報セキュリティ関係の役職。
  • CPO(Chief Privacy Officer : 最高プライバシー責任者)
    情報セキュリティ関係の役職。
  • CFO (Chief Financial Officer)
    企業経営のための財務戦略の立案と遂行を担う。
  • CTO (Chief Technology Officer)
    企業の研究開発方針の立案と実施を担う。
  • CLO (Chief Legal Officer)
    企業の法令遵守の体制の構築と運用を担う。

<会計>

損益分岐点売上高

売上高 = 費用で、利益が0となるとき売上高

固定費÷(1-変動費率)

  • 変動費率 : 売った額のうち、変動費がどれぐらいの比率か ということ。
    変動費率 = 変動費 / 売上高

損益分岐点比率

実際の売上高に対する損益分岐点の割合
この値が低いほど収益性が高く、かつ売上減少に耐える力が強いことを意味する。

損益分岐点売上高÷売上高×100

安全余裕率

実際の売上高と損益分岐点の差がどれくらいあるかを示す。
この値が高いほど経営に余裕があることを意味する。

(売上高-損益分岐点売上高)÷売上高×100

限界利益率

売上高に対する限界利益の割合を示す。

(売上高-変動費)÷売上高×100

<業務分析手法>

ワークサンプリング法

ある時点で作業内容のどの状態にあったかという瞬間観測を繰り返し、観察記録の回数の割合から各作業時間がどのくらいであるかを統計学的に推定する方法。

PTS法(規定時間標準法)

作業動作を基本動作にまで分解して,基本動作の時間標準テーブルから,構成される基本動作の時間を合計して作業時間を求める。

実績資料法

作業票や作業日報などから各作業の実績時間を集計し,作業ごとに平均して標準時間を求める。

ストップウォッチ法(時間観測法)

実際の作業動作そのものをストップウォッチで測定して,作業時間を調査する。

デルファイ法

複数の専門家へのアンケートの繰返しによる回答の収束によって将来を予測する。

回帰分析

将来予測のためのモデル化した連立方程式を解いて予測する。

<ゲーム理論>

マクシマックス原理

各戦略を選択した場合に得られる最大利得が最も大きくなる戦略を選ぶ楽観的な考え方。

マクシミン原理

マクシミン原理は、各戦略を選択した場合に得られる最小利得が最も大きくなる戦略を選ぶ保守的な考え方。


[法務]

<著作権>

  • 請負契約では、開発したプログラムの著作権は受託した請負業者(発注先)に帰属。
  • 派遣契約では、派遣先企業の指揮命令下で開発業務が行われるので、著作権は派遣先に帰属。

<ライセンス>

パテントプール (Patent Pool)

標準規格等に関して、複数の特許権者が保有する特許を持ち寄り、一括で効率よくライセンスする仕組み。
特許権者が各々管理する場合と比較して、①複数の特許についてまとめてライセンス交渉できる、②パテントプールで一定の条件が定められるため市場価格の参考になり、③パテントプールで定められた条件は市場価格に影響するなどの強みがある。

オープンソースソフトウェア

著作権表示を保持することによって,ソフトウェアの使用,複製,改変,及び再頒布が認められる仕組み。

オープンライセンス

特許料が無償でライセンスされている技術。

GNU GPL (GNU General Public License)

フリーウェア運動のために考案されたオープンソースライセンス。
ソフトウェアが独占されることを排除し、全ての利用者にとって自由であることを目的としている。

他のライセンスとの違いは「二次的著作物についても、権利を保護する」点。
これにより、GPLライセンスされた著作物を使用して作成したソフトウェアは、有償・無償に関わらず、無条件にGPLライセンスが適用される。すなわち、その作成したソフトウェア(二次著作物)が自由に使用されることを認めなければいけない

Discussion