Abstract Data Type
|
抽象データ型:データを使う手続きを公開する。
|
abstraction
|
抽象化:本質を見極め、枝葉を捨象する。
|
adaptive life cycle
|
適合型ライフサイクル:反復型と漸進型の開発プロセスの総称
|
afferent
|
求心性:物理的なデータが、意味を伴いながら、上位に伝わるというデータの流れ。
|
agile development
|
|
architect
|
アーキテクト:経営と技術をつなぎリーダーシップを発揮する人。
|
architecting
|
|
architectural description (AD)
|
アーキテクチャ記述:システムを複数ビューで図表化して統合したもの。
|
architectural design
|
アーキテクチャ設計:設計意図を複数ビューの図表で表現したもの。
|
architectural design phase
|
|
architectural design review
|
|
architectural structure
|
|
architectural style
|
アーキ手テクチャスタイル:全体構造のタイプ。レイヤー型やバッチ型など。
|
Architecture
|
アーキテクチャ:システムの構造を決めること。
|
argument
|
|
association
|
関連:クラス間の依存線
|
backlog
|
|
call
|
|
call by name
|
|
call by value
|
|
call graph
|
コールグラフ:関数呼び出しの図解。
|
call list
|
|
calling sequence
|
|
cloning
|
クローン化:コード断片をコピペすること。
|
cohesion
|
凝集度:モジュール内部の結びつきの高さ。凝集度は高いほど良い。
|
coincidental cohesion
|
|
common storage
|
|
common-environment coupling
|
|
commonality
|
|
communicational cohesion
|
|
completion time theorem
|
|
component
|
コンポーネント:複数のファイルから成るプログラム。インタフェースを有す。
|
composite task
|
|
concern
|
関心事:複雑なシステムを、関心事の単位に分離する。
|
concurrent communication diagram
|
|
concurrent task architecture
|
|
concurrent task architecture
|
並行タスクアーキテクチャ:複数のタスクを切り替えてリアルタイム性を確保する設計。
|
content coupling
|
|
control clustering
|
|
control coupling
|
制御結合:フラグ渡しで相手の内部を制御してしまうこと。
|
control task
|
|
core asset
|
コア資産:プロダクトライン開発におけるソフトウェア資産。コア資産を使ってプロダクト開発を行う。
|
coupling
|
結合度:モジュール同士の結びつきの強さ。結合度は弱いほど良い。
|
critical piece first
|
|
critical section
|
|
criticality
|
|
cumulative flow diagram (CFD)
|
|
data coupling
|
データ結合:モジュール間のやり取りが単純なデータであること。結合度が弱く、良い設計品質になる。
|
data structure-centered design
|
|
data-sensitive faultprogram-sensitive fault
|
|
deadlock
|
デッドロック:複数スレッドが複数の共有リソース獲得で競合し、プログラム実行が停止してしまうこと
|
decomposition
|
モジュール分割:複雑な対象物を管理できる単位に分割すること。分割統治。
|
decomposition diagram
|
|
decoupling
|
|
defect, fault
|
|
demodularization
|
|
dependency
|
依存性:モジュール間の利用関係のこと
|
design
|
作ることを計画すること
|
design analyzer
|
|
design architecture
|
|
design description
|
|
design level
|
|
design phase
|
|
detailed design phase
|
詳細設計フェーズ:ソースコードに直結するファイル単位や関数単位の設計。
|
device interface task
|
|
domain architecture
|
|
domain asset
|
ドメイン資産:問題ドメイン単位のソフトウェアの資産化。共通部分を作るプラットフォーム化、変動部分を管理するプロダクトライン化がある
|
domain engineering
|
ドメインエンジニアリング:解決すべき問題ドメインにフォーカスした開発。
|
domain model
|
|
domain scoping
|
ドメインスコーピング:問題ドメインの適用範囲を決めること。
|
driver
|
ドライバー:ハードウェアなどの外部実体にアクセスするモジュール
|
dynamic error
|
|
efferent
|
|
encapsulation
|
|
engineering viewpoint
|
|
enterprise viewpoint
|
|
entry point
|
|
equivalent faults
|
|
error
|
エラー:
|
event sequence analysis
|
イベント・シーケンス分析:
|
event sequence diagram
|
シーケンス図:イベントを起点とした処理の流れの図面化
|
event synchronization
|
イベント同期:イベントのトリガに同期して、複数の制御スレッドのタイミングを合わせること。
|
event-sequencing logic
|
|
factoring
|
ファクタリング:モジュールに分解すること。
|
failure
|
欠陥:
|
fatal error
|
|
feature
|
フィーチャ:特徴のある機能要件や非機能要件
|
function
|
ファンクション:「入力ー処理-出力」の単位。
|
function-oriented design
|
ファンクション指向設計:「入力―機能ー出力」に分割し、構造化する設計
|
functional analysis
|
|
functional architecture
|
|
functional cohesion
|
|
functional decomposition
|
機能分割:全体を複数の機能に分けて分割統治すること。
|
functional design
|
ファンクション設計:「入力―処理-出力」のモジュールを構造化すること
|
global data
|
グローバルデータ:どこからでも読み書きできるデータ。グローバルスコープの変数。
|
global variable
|
|
hard failure
|
|
heavyweight process
|
重量プロセス:専用のメモリ空間を持つタスクやスレッド
|
hierarchical decomposition
|
|
high-level design
|
|
hybrid coupling
|
ハイブリッド結合:同一変数が、値によって異なる意味を持つこと
|
I/O task-structuring criteria
|
|
incipient failure
|
|
information hiding
|
情報隠蔽:情報をモジュール内部に閉じ込め、モジュール外へ公開しないこと
|
information viewpoint
|
|
inherited error
|
|
input-process-output (IPO) chart
|
IPOチャート:入力―処理ー出力を単位とした接続図。
|
integration test
|
|
interface
|
|
interface design document (IDD)
|
|
interface task
|
|
internal event
|
|
internal software quality
|
|
internal task-structuring criteria
|
|
iteration
|
|
kanban board
|
|
layer
|
|
lightweight process
|
軽量プロセス:共有のメモリ空間を持つタスクやスレッド
|
local data
|
ローカルデータ:スコープが限定されているデータ。ローカル変数。
|
local variable
|
ローカル変数:関数内部のライフタイムを持つ変数。関数を抜けたら使ってはいけない。
|
logical cohesion
|
|
logical relationship
|
|
mean execution time
|
|
microarchitecture
|
|
mistake
|
|
modular decomposition
|
モジュール分割:識別可能な名称を持つ単位に分割すること。
|
modular programming
|
|
modularity
|
|
Module
|
モジュール:論理的に分割された単位。
|
module data
|
|
multiprocessing
|
|
multiprogramming
|
|
multitasking
|
|
mutual exclusion
|
|
non-time-critical computationally intensive task
|
|
on-demand scheduling
|
|
optional task
|
|
overhead time
|
|
packaging
|
|
parameter
|
|
partitioning
|
パーティション化:水平垂直分割アーキテクチャにおいては垂直分割すること。
|
passive I/O device interface task
|
|
pathological coupling
|
|
periodic I/O device interface task
|
|
periodic task
|
|
persona
|
ペルソナ:要求獲得において仮想ユーザをモデリングすること
|
point design
|
|
preliminary design
|
|
preparation time
|
|
priority
|
|
priority ceiling protocol
|
|
priority inversion
|
|
private
|
|
procedural cohesion
|
|
process
|
|
process architect
|
|
process architecture
|
|
process reference model
|
|
product line
|
|
public
|
|
rate-monotonic algorithm
|
|
real-time scheduling theory
|
|
recursion
|
|
recursive
|
|
reentrant
|
|
reentry point
|
|
relation
|
|
relocation dictionary
|
|
requirement partitioning
|
|
resource monitor task
|
|
return
|
|
return code
|
|
return value
|
|
reusable
|
|
reusable product
|
|
reusable software product
|
|
scheduler
|
|
scrum
|
|
self-descriptiveness
|
|
sequential clustering
|
|
sequential cohesion
|
|
simplicity
|
|
simultaneous recursion
|
|
soft failure
|
|
software component (SC)
|
ソフトウェアコンポーネント:複数のファイルから成るプログラム。インタフェースを有す。
|
software requirements verification
|
|
software test incident
|
|
sprint
|
|
sprint0
|
スプリントゼロ:アジャイル開発における最初のイテレーション。
|
static error
|
|
stepwise refinement
|
|
structure chart
|
|
structure clash
|
|
stub
|
スタブ:最下層からの呼び出しに対して応答を返すモジュール
|
synchronous message communication
|
|
synchronous message communication with reply
|
|
synchronous message communication without reply
|
|
system architecture
|
|
system design
|
|
system interface task
|
|
system stakeholder
|
|
systems engineering
|
|
Task
|
|
task behavior specification
|
|
task completion
|
|
task interface
|
|
task inversion
|
|
task mode
|
|
task priority criteria
|
|
task structuring
|
|
task submission
|
|
task type
|
|
task-clustering criteria
|
|
task-structuring criteria
|
|
technology viewpoint
|
技術的視座:アーキテクチャ設計の視座の一つで、テクノロジに関するもの。
|
temporal clustering
|
|
temporal cohesion
|
|
test driver
|
|
test set architecture
|
|
thread of control
|
制御スレッド。プログラム実行の流れ。
|
throughput
|
スループット:CPU単位時間の処理量。処理効率。
|
throughput rating value
|
|
time-critical task
|
|
timer event
|
|
timing diagram
|
|
Tool
|
|
transaction
|
|
transform analysis
|
|
unit test
|
|
use case
|
|
user interface task
|
|
user story
|
|
UX
|
ユーザエクスペリエンス:ユーザの活用ストーリを基に要求定義すること
|
variability
|
変動点:プロダクトライン開発において機種ごとに異なる部分。
|
variability in space
|
空間的な変動点:製品ファミリ開発(プロダクトライン)における機種ごとの違い
|
variability in time
|
経時的な変動点:機種群開発(プロダクトライン)における機種ごとの違い
|
variability management
|
変動点マネジメント:変動点に名称を付けて、アーキテクチャにマッピングして管理する
|
variability mechanism
|
変動点メカニズム:変動点の実装方法。特にライフタイムに着目して。
|
variability traceability
|
|
variant
|
変異体:プロダクトライン開発における機種ごとの違いの実体
|
variation point
|
変異体箇所:プロダクトライン開発において変異体が埋め込まれている箇所
|
view
|
視点:ある視座から見えるもの。
|
viewpoint
|
視座:物事を見る立場。
|
viewpoint (on a system)
|
視座:システムを見る立場。
|
ソフトウェア設計用語集
|
|
テスト
|
|
バグ種別
|
|
並行性
|
|
品質尺度
|
|
品質観点
|
|
図表化
|
|
図面
|
|
変数スコープ
|
|
多重性
|
|
実装
|
|
形状
|
|
文法
|
|
関数と変数
|
|