Systems Architect Examination cheat sheet
Systems Architect Examination · Keep the key ideas within reach.
科目A-1 基礎理論・アルゴリズム・ハードウェア・ソフトウェア
浮動小数点数の表現: (-1)^S × 1.M × 2^(E-bias)。単精度(IEEE 754)は符号1・指数8・仮数23ビット、バイアス127。倍精度は指数11・仮数52、バイアス1023。
丸め誤差と情報落ち: 絶対値の大きく異なる2数を加算すると小さい方が失われる(情報落ち)。桁落ちは近接した同符号数の減算で有効桁が減る現象。打切り誤差は無限級数の有限項打切りで生じる。
2の補数: nビットで表せる範囲は -2^(n-1) 〜 2^(n-1)-1。負数は全ビット反転して1を加える。減算は加算器で実現できるため加算回路のみで四則演算の一部が構成可能。
誤り検出・訂正: パリティビットは1ビット誤り検出のみ可能。ハミング符号は検査ビット数mに対しデータ長 2^m - m - 1 まで訂正可能。CRCは生成多項式による剰余でバースト誤りに強い。
計算量: 二分探索O(log n)、平衡二分探索木の探索O(log n)、クイックソート平均O(n log n)・最悪O(n^2)、マージソート常にO(n log n)、ハッシュ表平均O(1)。
オーダ記法: Oは上界、Ωは下界、Θは上下界が一致。再帰式 T(n)=2T(n/2)+O(n) はマスター定理よりO(n log n)。
関係データベースの正規化: 第1正規形=繰返し項目排除、第2正規形=部分関数従属排除、第3正規形=推移的関数従属排除、ボイスコッド正規形=候補キー以外の決定項排除。
論理回路: 組合せ回路は現入力のみで出力決定(加算器・デコーダ)、順序回路は記憶素子を含み過去の状態に依存(フリップフロップ・カウンタ)。カルノー図で論理式を簡約。
CPU性能: 実行時間 = 命令数 × CPI × クロック周期。パイプライン処理は命令を段階分割して並行実行し、分岐ハザード・データハザード・構造ハザードへの対策(分岐予測・フォワーディング・遅延スロット)が必要。
科目A-2 システム構成・ネットワーク・データベース・セキュリティ・マネジメント
可用性: MTBFとMTTRから 稼働率 = MTBF / (MTBF + MTTR)。直列系統の稼働率は積、並列(冗長)系統は 1-(1-a1)(1-a2)。
RAID: RAID0はストライピングで冗長なし、RAID1はミラーリング、RAID5はパリティ分散で1台故障まで耐える、RAID6は二重パリティで2台まで、RAID10はミラー+ストライプ。
CAP定理: 分散システムは一貫性(Consistency)・可用性(Availability)・分断耐性(Partition tolerance)のうち同時に2つまでしか満たせない。ネットワーク分断時はCとAの選択となる。
OSI参照モデル7層: 物理・データリンク・ネットワーク・トランスポート・セッション・プレゼンテーション・アプリケーション。TCPはトランスポート層、IPはネットワーク層、Ethernetはデータリンク層。
TCPとUDP: TCPはコネクション型で順序保証・再送・フロー制御(ウィンドウ制御)・輻輳制御を提供。UDPはコネクションレスで低遅延、音声・映像・DNS問合せに適する。
サブネット計算: /n のホスト部ビット数 h = 32 - n、利用可能ホスト数 = 2^h - 2(ネットワークアドレスとブロードキャストアドレスを除く)。CIDRで可変長サブネット分割。
公開鍵暗号と共通鍵暗号: RSA・楕円曲線は鍵配送と署名に、AESなど共通鍵は大量データ暗号化に用いる。ハイブリッド方式は共通鍵を公開鍵で配送する。
認証と完全性: メッセージ認証コード(MAC)は共通鍵で完全性と認証を提供、ディジタル署名は送信者の秘密鍵で作成し公開鍵で検証、否認防止を実現。
プロジェクトマネジメント: クリティカルパスは最早開始・最遅開始が一致する作業の連なりで、全体工期を決定する。EVMでは CPI=EV/AC、SPI=EV/PV、CPI<1はコスト超過。
科目B-1 記述式(アルゴリズム・プログラミング・データ構造)
記述式では疑似言語のトレース表を作り、変数名・配列添字・ループ条件・戻り値を1行ずつ書き出す。設問の空欄番号と解答欄番号を照合してから記入する。
配列の添字範囲は問題文の宣言(例: 配列の添字は1から始まる)に従う。0起点と1起点の混同は最頻出の失点原因であり、ループ終端条件を必ず確認する。
線形探索はO(n)、二分探索は整列済み配列に限りO(log n)。二分探索の中央値計算 mid=(low+high)/2 は切捨て方向を問題文で確認する。
スタックはLIFO( push/pop、トップポインタ)、キューはFIFO( enqueue/dequeue、先頭と末尾ポインタ)。リングバッファでは剰余演算で添字を循環させる。
バブルソートは隣接交換をn-1回繰り返しO(n^2)、安定。選択ソートは最小値選択でO(n^2)、不安定。挿入ソートはほぼ整列済みで高速。
再帰呼出しは基底条件(終了条件)と再帰条件を明示する。フィボナッチの素朴な再帰はO(2^n)、メモ化によりO(n)へ改善できる。
木構造: 二分探索木は左部分木<節点<右部分木。行きがけ(前順)・通りがけ(中間)・帰りがけ(後順)の走査順を出力結果から判別できるようにする。
解答は結論を先に書き、根拠となるトレース結果や計算式を続ける。字数制限がある場合は変数名や添字を省略せず、採点者が追跡できる形で記述する。
科目B-2 論述式(システム設計・非機能要件・意思決定)
論述構成は「結論(方針)→理由(技術的根拠)→具体策(実装・運用)→リスクと対策」の4段で組み立て、設問の問いに対応する段落を明示する。
非機能要件はJIS X 25010の品質特性(性能効率性・信頼性・セキュリティ・使用性・保守性・移植性・機能適合性・互換性)に沿って分類し、各要件に測定可能な目標値を付す。
性能要件はレスポンスタイム・スループット・同時接続数で、可用性要件は稼働率(%)と目標復旧時間(RTO)・目標復旧時点(RPO)で数値化する。
冗長化の論述では単一障害点(SPOF)を特定し、Active-ActiveかActive-Standbyかの選択理由、フェイルオーバー時間、データ同期方式を対応付けて述べる。
トレードオフは必ず両面を書く: 例として強整合性は整合性を高めるがレイテンシと可用性を犠牲にし、結果整合性は可用性を高めるが一時的不整合を許容する。
セキュリティ設計では多層防御・最小権限・ゼロトラストの観点を示し、対策が脅威のどの要素(機密性・完全性・可用性)を守るのかを明記する。
クラウド選定の論述ではIaaS/PaaS/SaaSの責任分界点、スケーラビリティ(水平・垂直)、ベンダロックイン、コスト構造(固定費と変動費)を比較軸として提示する。
採点されやすい記述は、設問のキーワードを主語にした一文と、その根拠となる数値・技術名・比較対象を含む。曖昧な形容詞のみの記述は評価されにくい。