開発プロセス・手法|知的財産適用管理|開発環境管理|構成管理・変更管理
開発プロセス・手法
エクストリームプログラミング(XP:Extreme Programming)における“テスト駆動開発”の特徴はどれか。
- 最初のテストで,なるべく多くのバグを摘出する。
- テストケースの改善を繰り返す。
- テストでのカバレージを高めることを目的とする。
- プログラムを書く前にテストコードを記述する。
スクラムのスプリントにおいて,(1)〜(3)のプラクティスを採用して開発を行い,スプリントレビューの後にKPT手法でスプリントレトロスペクティブを行った。 “KPT”の“T”に該当する例はどれか。
〔プラクティス〕
(1)ペアプログラミングでコードを作成する。
(2)スタンドアップミーティングを行う。
(3)テスト駆動開発で開発を進める。
- 開発したプログラムは欠陥が少なかったので,今後もペアプログラミングを継続する。
- スタンドアップミーティングにメンバー全員が集まらないことが多かった。
- 次のスプリントからは,スタンドアップミーティングにタイムキーパーを置き,終了5分前を知らせるようにする。
- テストコードの作成に見積り以上の時間が掛かった。
アジャイル開発の手法の一つであるスクラムにおいて,決められた期間におけるスクラムチームの生産量を相対的に表現するとき,尺度として用いるものはどれか。
- スプリント
- スプリントレトロスペクティブ
- バックログ
- ベロシティ
図は,ある図形描画ツールのクラス図の一部である。新たな形状や線種で図形を描画する機能の追加を容易にするために,リファクタリング“継承の分割”を行った。変更後のクラス図はどれか。
アジャイル開発におけるプラクティスの一つであるバーンダウンチャートはどれか。ここで,図中の破線は予定又は予想を,実線は実績を表す。
アジャイル開発手法の一つであるスクラムでは,プロダクトオーナ,スクラムマスタ,開発者でスクラムチームを構成する。スクラムマスタが行うこととして,最も適切なものはどれか。
- 各スプリントの終わりにプロダクトインクリメントのリリースの可否を判断する。
- スクラムの理論とプラクティスを全員が理解するように支援する。
- プロダクトバックログアイテムを明確に表現する。
- プロダクトバックログの優先順位を決定する。
スクラムチームにおけるプロダクトオーナの役割はどれか。
- ゴールとミッションが達成できるように,プロダクトバックログのアイテムの優先順位を決定する。
- チームのコーチやファシリテータとして,スクラムが円滑に進むように支援する。
- プロダクトを完成させるための具体的な作り方を決定する。
- リリース判断可能な,プロダクトのインクリメントを完成する。
アジャイル開発などで導入されている“ペアプログラミング”の説明はどれか。
- 開発工程の初期段階に要求仕様を確認するために,プログラマと利用者がペアとなり,試作した画面や帳票を見て,相談しながらプログラムの開発を行う。
- 効率よく開発するために,2人のプログラマがペアとなり,メインプログラムとサブプログラムを分担して開発を行う。
- 短期間で開発するために,2人のプログラマがペアとなり,交互に作業と休憩を繰り返しながら長時間にわたって連続でプログラムの開発を行う。
- 品質の向上や知識の共有を図るために,2人のプログラマがペアとなり,その場で相談したりレビューしたりしながら,一つのプログラムの開発を行う。
アジャイル開発手法の説明のうち,スクラムのものはどれか。
- コミュニケーション,シンプル,フィードバック,勇気,尊重の五つの価値を基礎とし,テスト駆動型開発,ペアプログラミング,リファクタリングなどのプラクティスを推奨する。
- 推測(プロジェクト立上げ,適応的サイクル計画),協調(並行コンポーネント開発),学習(品質レビュー,最終QA/リリース)のライフサイクルをもつ。
- プロダクトオーナなどの役割,スプリントレビューなどのイベント,プロダクトバックログなどの作成物,及びルールから成るソフトウェア開発のフレームワークである。
- モデルの全体像を作成した上で,優先度を付けた詳細なフィーチャリストを作成し,フィーチャを単位として計画し,フィーチャ単位に設計と構築を繰り返す。
(1)~(7)に示した七つの原則を適用して,アジャイル開発プラクティスを実践する考え方はどれか。
(1)ムダをなくす
(2)品質を作り込む
(3)知識を作り出す
(4)決定を遅らせる
(5)早く提供する
(6)人を尊重する
(7)全体を最適化する
- エクストリームプログラミング
- スクラム
- フィーチャ駆動型開発
- リーンソフトウェア開発
ソフトウェアライフサイクルプロセスのうちの,システム要求事項分析プロセスにおける要求事項評価の基準はどれか。
- システム要求事項のテスト網羅性
- システム要求事項への追跡可能性
- 取得ニーズとの一貫性
- 使用されたテスト方法及び作業標準の適切性
アジャイル開発で“イテレーション”を行う目的のうち,適切なものはどれか。
- ソフトウェアに存在する顧客の要求との不一致を短いサイクルで解消したり,要求の変化に柔軟に対応したりする。
- タスクの実施状況を可視化して,いつでも確認できるようにする。
- ペアプログラミングのドライバとナビゲータを固定化させない。
- 毎日決めた時刻にチームメンバが集まって開発の状況を共有し,問題が拡大したり,状況が悪化したりするのを避ける。
アジャイル開発のプラクティスの一つである“ふりかえり(レトロスペクティブ)”を行う適切なタイミングはどれか。
- “イテレーション”の各回の最後
- “タスクボード”に貼ったタスクカードが移動されたとき
- “ニコニコカレンダー”に全チームメンバが記入し終えたとき
- 毎日行う“朝会”
アジャイル開発のプラクティスのうち,回帰テストを行うことを前提とするものはどれか。
- 日次ミーティング
- ふりかえり
- ペアプログラミング
- リファクタリング
CMMIの説明はどれか。
- ソフトウェア開発組織及びプロジェクトのプロセスの成熟度を評価するためのモデルである。
- ソフトウェア開発のプロセスモデルの一種である。
- ソフトウェアを中心としたシステム開発及び取引のための共通フレームのことである。
- プロジェクトの成熟度に応じてソフトウェア開発の手順を定義したモデルである。
知的財産適用管理
日本において特許Aを取得した特許権者から,実施許諾を受けることが必要になるのはどれか。
- 出願日から25年を超えた特許Aと同じ技術を新たに事業化する場合
- 特許Aの出願日よりも前から特許Aと同じ技術を独自に開発して,特許Aの出願日に日本国内でその技術を用いた製品を製造し,市場で販売していたことが証明できる場合
- 特許Aを家庭内で個人的に利用するだけの場合
- 日本国内で製造し,米国に輸出する製品に特許Aを利用する場合
自社開発したソフトウェアの他社への使用許諾に関する説明として,適切なものはどれか。
- 既に自社の製品に搭載して販売していると,ソフトウェア単体では使用許諾できない。
- 既にハードウェアと組み合わせて特許を取得していると,ソフトウェア単体では使用許諾できない。
- ソースコードを無償で使用許諾すると,無条件でオープンソースソフトウェアになる。
- 特許で保護された技術を使っていないソフトウェアであっても,使用許諾することは可能である。
開発環境管理
ソフトウェア開発に使われるIDEの説明として,適切なものはどれか。
- エディタ,コンパイラ,リンカ,デバッガなどが一体となったツール
- 専用のハードウェアインタフェースでCPUの情報を取得する装置
- ターゲットCPUを搭載した評価ボードなどの実行環境
- タスクスケジューリングの仕組みなどを提供するソフトウェア
構成管理・変更管理