ロゴ
ユニオンペディア
コミュニケーション
Google Play で手に入れよう
新しい! あなたのAndroid™デバイスでユニオンペディアをダウンロードしてください!
無料
ブラウザよりも高速アクセス!
 

オブジェクト指向分析設計

索引 オブジェクト指向分析設計

ブジェクト指向分析設計 (オブジェクトしこうぶんせきせっけい、OOAD、object-oriented analysis and design) は、ソフトウェア工学において、ソフトウェア (システム) を相互作用するオブジェクトの集まりとしてモデル化 (オブジェクト指向モデリング) する、オブジェクト指向に基づくソフトウェア開発の方法である。オブジェクト指向の理論的枠組みに基づくソフトウェア開発、すなわちオブジェクト指向開発を行う際の、ソフトウェア開発工程において、分析工程であるオブジェクト指向分析 (OOA; object-oriented analysis) と、設計工程であるオブジェクト指向設計 (OOD; object-oriented design) の、総称である。なおプログラミング工程は、オブジェクト指向プログラミング (OOP; object-oriented programming) という。オブジェクト指向プログラミングの詳細については同項目を参照のこと。オブジェクト指向開発の具体的な方法論を、オブジェクト指向開発方法論 (object-oriented methodology) という。この項目では、オブジェクト指向開発におけるオブジェクト指向分析とオブジェクト指向設計、およびオブジェクト指向開発方法論を、主に説明する。.

107 関係: ATLAS Transformation Language実装並行性引数依存性の注入マーティン・ファウラーバートランド・メイヤーポリモーフィズムメソッド (計算機科学)メタモデルモデルベーステストモデル駆動型アーキテクチャモデル駆動工学ユーザー機能駆動開発ユーザインタフェースユースケースユースケース図ラルフ・ジョンソンラショナルラショナル統一プロセスリチャード・ヘルムルック・アンド・フィールプラットフォーム (コンピューティング)プロトタイプベースプログラミング (コンピュータ)プログラミング言語プログラマプログラム (コンピュータ)プログラム仕様パッケージ (Java)ビジネスロジックピーター・コードテスト駆動開発データベースデータ構造デザインパターン (ソフトウェア)ドメイン固有モデリングドメイン固有言語分散コンピューティングアナリシスパターンアンチパターンアプリケーションフレームワークアプリケーションソフトウェアアジャイルソフトウェア開発アスペクト指向プログラミングインスタンス変数インタフェース (情報技術)イヴァー・ヤコブソンウォード・カニンガムエーリヒ・ガンマ...エドワード・ヨードンエクストリーム・プログラミングオペレーティングシステムオライリーメディアオブジェクト (プログラミング)オブジェクトモデル化技法オブジェクトデータベースオブジェクト関係マッピングオブジェクト指向オブジェクト指向モデリングオブジェクト指向プログラミングオブジェクト指向ソフトウェア工学ギャング・オブ・フォー (情報工学)クラス (コンピュータ)クラスベースクラス図グラディ・ブーチグラフ理論ケント・ベックシーケンス図ジョン・ブリシディースジェームズ・ランボースーパークラス (計算機科学)スクラム (ソフトウェア開発)ソースコードソフトウェアソフトウェア工学ソフトウェア保守ソフトウェアテストソフトウェアドキュメンテーションソフトウェアコンポーネントソフトウェア開発ソフトウェア開発工程ソフトウェア開発者サブルーチンサブクラス (計算機科学)Booch法CRCカード継承 (プログラミング)翔泳社統一モデリング言語Eiffel表 (データベース)要求仕様要求分析関係 (データベース)関係モデル関係データベースGRASPMeta-Object FacilityObject Management GroupQVTUnified ProcessXML Metadata Interchange標準化団体 (コンピュータと通信)永続性日本ヒューレット・パッカード インデックスを展開 (57 もっと) »

ATLAS Transformation Language

ATLAS Transformation Language(ATL)は、QVTの Request for Proposal を受けて INRIA が開発したモデル変換言語である。QVT は Object Management Group によるモデル変換の標準である。ATL は、文法的変換にも意味論的変換にも使える。ATL は、モデル変換用仮想機械上に構築されている。.

新しい!!: オブジェクト指向分析設計とATLAS Transformation Language · 続きを見る »

実装

実装(じっそう、implementation)とは、何らかの機能(や仕様)を実現するための(具体的な)装備や方法のこと。.

新しい!!: オブジェクト指向分析設計と実装 · 続きを見る »

並行性

並行性(へいこうせい、concurrency)とは、計算機科学において、時間的にオーバーラップして実行される計算を伴うシステムの属性であり、そのような計算ではリソースを共有することがある。並行計算は、同一チップ上の複数のコア、単一プロセッサ上のプリエンプションを伴うマルチスレッド、物理的に分離した複数プロセッサ上などで行われる。並行計算のための数学的モデルとして、ペトリネット、プロセス計算、並列ランダムアクセス機械モデル、アクターモデル、 などが開発された。.

新しい!!: オブジェクト指向分析設計と並行性 · 続きを見る »

引数

引数(ひきすう)は、数学における関数やコンピュータプログラムにおける手続きにおいて、その外部と値をやりとりするための特別な変数、あるいはその変数の値のことである。 数学や最適化問題に関するそれ(「パラメータ」とカタカナで表現されることが多い)については「媒介変数」の記事を参照のこと。以下は専らコンピュータプログラミングに関して説明する。 関数・サブルーチン・メソッド等を定義する時に、外部から値を渡される特別な変数として指定されるのが仮引数。関数(等)を呼出す式において、仮引数に対応する式(あるいはその値)が実引数である。実行時には、実引数の値を仮引数が受け取る。 「引数」を「いんすう」と読む読み方もあるが、術語としては変則的に湯桶読みして「ひきすう」としている。数学分野で因数との取違えを防ぐためといった理由もある。.

新しい!!: オブジェクト指向分析設計と引数 · 続きを見る »

依存性の注入

依存性の注入(いそんせいのちゅうにゅう、Dependency injection)とは、コンポーネント間の依存関係をプログラムのソースコードから排除し、外部の設定ファイルなどで注入できるようにするソフトウェアパターンである。英語の頭文字からDIと略される。.

新しい!!: オブジェクト指向分析設計と依存性の注入 · 続きを見る »

マーティン・ファウラー

マーティン・ファウラー マーティン・ファウラー (Martin Fowler、1963年 -) は、アメリカ合衆国で活動しているソフトウェア技術者である。 ソフトウェアアーキテクチャについての、いくつかの本の著者、および講演者として、広く知られている。 とりわけオブジェクト指向分析とオブジェクト指向設計、統一モデリング言語 (UML) 、アナリシスパターンをはじめとしたソフトウェアパターン、エクストリーム・プログラミング (XP) を含むアジャイルソフトウェア開発方法論の、各分野において、活発に活動している。.

新しい!!: オブジェクト指向分析設計とマーティン・ファウラー · 続きを見る »

バートランド・メイヤー

バートランド・メイヤー(2006年) バートランド・メイヤー(Bertrand Meyer ベルトラン・メイエー(ル) バートランド・マイヤー、1950年 - )は、オブジェクト指向プログラミング言語 Eiffel を開発したフランス出身のコンピュータ科学者、プログラミング言語関連書の著者、研究者、コンサルタント。 ソフトウェア工学において契約による設計を創始した。オブジェクト指向プログラミング (OOP) の教科書 Object-Oriented Software Construction (日本語訳『オブジェクト指向入門』) の著者である。.

新しい!!: オブジェクト指向分析設計とバートランド・メイヤー · 続きを見る »

ポリモーフィズム

ポリモーフィズム()とは、プログラミング言語の型システムの性質を表すもので、プログラミング言語の各要素(定数、変数、式、オブジェクト、関数、メソッドなど)についてそれらが複数の型に属することを許すという性質を指す。ポリモルフィズム、多態性、多相性、多様性とも呼ばれる。対義語はモノモーフィズム(Monomorphism)、単態性、単相性で、プログラミング言語の各要素が唯一つの型に属するという性質を指す。 ポリモーフィズムは次のようないくつかの種類に分けられる。.

新しい!!: オブジェクト指向分析設計とポリモーフィズム · 続きを見る »

メソッド (計算機科学)

メソッド あるいは メンバー関数 (-かんすう) とはオブジェクト指向プログラミング言語において、あるクラスないしオブジェクトに所属するサブルーチンを指す。.

新しい!!: オブジェクト指向分析設計とメソッド (計算機科学) · 続きを見る »

メタモデル

地図情報メタモデルの例。4種類の自己言及のあるメタオブジェクトを持つ。David R. Soller et al. (2001) http://pubs.usgs.gov/of/2001/of01-223/soller2.html Progress Report on the National Geologic Map Database, Phase 3: An Online Database of Map Information Digital Mapping Techniques '01 -- Workshop Proceedings U.S. Geological Survey Open-File Report 01-223. メタモデル(Metamodel)とは、ソフトウェア工学およびシステム工学などにおいて、所定の問題領域でのモデリングに適用可能で有益なフレーム・規則・制限・モデル・理論を意味する。メタモデリング(Metamodeling)とは、メタモデルの分析・構築・開発を意味する。この用語はメタとモデルという用語の組み合わせである。 メタモデリングは「メタ」であるが故に、その活動とメタモデルは、メタ科学、メタ哲学、メタ理論、一般システム理論などで研究されている。そういった意味ではによればメタモデルはゴール指向のメタ知識であり、モデル化する領域(参照領域)に関連している。そのため、理論的に言えばメタモデリングの成果であるモデル階層をメタモデル階層と混同するかもしれない。 計算の観点では、この概念は数学で使われており、計算機科学/計算機工学/ソフトウェア工学で実用のために応用されている。本項目は主に後者の観点で述べている。.

新しい!!: オブジェクト指向分析設計とメタモデル · 続きを見る »

モデルベーステスト

モデルベーステスト(Model-besed testing)とは、テストケースの一部または全部を評価対象システムの(通常、機能的側面を)モデル化したものから導出して行うソフトウェアテストの手法である。モデルはテスト対象のシステムの実現すべき動作を表現した抽象的なものである。そのようなモデルから導出されるテストケースはモデルと同程度に抽象化された機能テストであり、直接実行することはできない。そのため、抽象的なテストケースを実行可能なテストケースに変換する必要がある。 モデルからテストを導出する方法はいくつも存在する。ソフトウェアテストは実験的でヒューリスティックスに基づいているため、最善の方法というものは存在しない。一般に全てのテストに関連する設計上の決定をまとめ、パッケージ化する。これを「テスト要求仕様; test requirements」、「テスト目的; test purpose」、場合によっては「ユースケース」と呼ぶ。このパッケージにはテストの中心となるべき部分のモデルに関する情報が含まれ、テスト終了条件が記述される。 モデルベーステストではテストスイートはソースコードからではなくモデルから抽出されるため、一種のブラックボックステストを構成するのが一般的である。見方によってはこれは完全とはいえない。モデルベーステストとソースコードレベルのテストの網羅率測定を組み合わせ、機能的モデルを初期段階のソースコードに基づいて構築するなどのテスト改善方法が考えられる。 複雑なソフトウェアシステムのモデルベーステストは発展途上の分野である。.

新しい!!: オブジェクト指向分析設計とモデルベーステスト · 続きを見る »

モデル駆動型アーキテクチャ

モデル駆動型アーキテクチャ(モデルくどうがたアーキテクチャ、Model-Driven Architecture、MDA)とは、Object Management Group (OMG) が2001年に公式に発表したソフトウェア設計手法である。MDA はソフトウェアシステムにおけるモデル駆動工学サポートを意図したものである。.

新しい!!: オブジェクト指向分析設計とモデル駆動型アーキテクチャ · 続きを見る »

モデル駆動工学

モデル駆動工学(モデルくどうこうがく、Model-Driven Engineering、MDE)とは、アルゴリズム的な概念よりも、ドメインモデルの作成と利用を中心とするソフトウェア開発方法論の一種である。ドメインモデルとは、特定の適応領域についての知識や活動を抽象化して表現したものである。 モデル駆動工学(以下、MDE)は、工学的ライフサイクルを通して、モデルをシステム的に利用する工学手法を意味する。また、MDEの適用範囲は、ソフトウェア、システム、データ工学などである。MDEでは、モデルを第一に考える。.

新しい!!: オブジェクト指向分析設計とモデル駆動工学 · 続きを見る »

ユーザー機能駆動開発

ユーザー機能駆動開発(ユーザーきのうくどうかいはつ、Feature Driven Development, FDD)は、反復的ソフトウェア開発工程の一種。アジャイルソフトウェア開発手法の1つでもある。FDD は業界におけるいくつかのベストプラクティスを混合したものである。それらは全て、顧客にとっての機能価値(feature)という観点で駆動される。その主な目的は、実際に動作するソフトウェアを繰り返し、適切な間隔で提供することである。.

新しい!!: オブジェクト指向分析設計とユーザー機能駆動開発 · 続きを見る »

ユーザインタフェース

ユーザインタフェース(User Interface, UI)または使用者インタフェースは、機械、特にコンピュータとその機械の利用者(通常は人間)の間での情報をやりとりするためのインタフェースである。ユーザインターフェース/ユーザインタ(ー)フェイス/ユーザーインターフェ(イ/ー)スなどの表記ゆれが見られるが、本記事では「ユーザインタフェース」で統一する。ユーザインタフェースは以下の手段を提供する。.

新しい!!: オブジェクト指向分析設計とユーザインタフェース · 続きを見る »

ユースケース

ユースケース(Use Case)は、ソフトウェア工学やシステム工学でシステム(あるいはシステムのシステム)の機能的要求を含む振舞を把握するための技法である。各ユースケースは、何らかの目的・目標/機能に関する台本(シナリオ)での主体(アクター(actor))と呼ぶ利用者(ユーザ)とシステムのやりとりを描いている。ユースケースのアクターはエンドユーザーの場合もあるし、別のシステムの場合もある。ユースケースでは技術専門用語をなるべく使わず、エンドユーザーやそのビジネスの専門家に分かり易い用語を用いる。ユースケースの作成は、ビジネスアナリストとエンドユーザーが共同で行う。ユースケースを図にしたものがユースケース図であり、両者を厳密に区別すべき根拠はない。 1986年、後に統一モデリング言語(UML)やラショナル統一プロセス (RUP) で重要な役割を演じたイヴァー・ヤコブソンは、初めてユースケースの視覚化モデリング技法を成文化した。当初彼は usage scenarios とか usage case という用語を使用していたが、それらが英語として不自然であると気づき use case という用語を使うようになった。ヤコブソンが創始したユースケースのモデリングに対して、Kurt Bittner、Alistair Cockburn、Gunnar Overgaard といった人々が改良を加えていった。 1990年代、ユースケースは機能要求を含む振舞を把握する手法として使われるようになってきた。発祥の分野であるオブジェクト指向関連で顕著である。ユースケースの有効性はオブジェクト指向に限らない。ユースケースの仕様は、オブジェクト指向とは直接的な関係がない。 システム工学において、ユースケースはソフトウェア工学よりも抽象度の高いレベルで利用され、システムの任務やシステム保有者の目標を描くのに使われる。より詳細な要求は SysML のリクワイアメント図などで把握される。.

新しい!!: オブジェクト指向分析設計とユースケース · 続きを見る »

ユースケース図

ユースケース図(-ず)とは、UMLで定義されている図のうちの1つである。.

新しい!!: オブジェクト指向分析設計とユースケース図 · 続きを見る »

ラルフ・ジョンソン

ラルフ・ジョンソン(Ralph E. Johnson, 1955年10月7日 - )は、コンピュータサイエンスの教科書であるデザインパターンの共同執筆者。イリノイ大学アーバナ・シャンペーン校コンピュータサイエンス学部準教授。 Smalltalkコミュニティの先駆者で、Gang of Four(GoF)とも呼ばれている。OOPSLA(Object-Oriented Programming, Systems, Languages & Applications)には毎年参加している。 Category:コンピュータ関連人物 Category:イリノイ大学アーバナ・シャンペーン校の教員 Category:1955年生 Category:存命人物.

新しい!!: オブジェクト指向分析設計とラルフ・ジョンソン · 続きを見る »

ラショナル

ラショナル(Rational)は、IBMソフトウェアのブランドの1つで、ソフトウェア開発のライフサイクル基盤を提供する。かつてはRational softwareという独立したソフトウェア企業であったが、2003年にIBMに買収され統合された。.

新しい!!: オブジェクト指向分析設計とラショナル · 続きを見る »

ラショナル統一プロセス

ラショナル統一プロセス (Rational Unified Process; RUP) とは、IBM社ラショナルブランドのオブジェクト指向型ソフトウェア開発プロセス、およびその製品のことを指す。RUPでは、以下の6つのベストプラクティスが定められている。.

新しい!!: オブジェクト指向分析設計とラショナル統一プロセス · 続きを見る »

リチャード・ヘルム

リチャード・ヘルム(Richard Helm)は現在ボストン・コンサルティング・グループ(BCG)でビジネスへの戦略的なテクノロジーの適用についてコンサルティングをしている。 彼のキャリアは先端技術開発、製品開発、システムインテグレーション、ITコンサルティングに及ぶ。BCGに参加する以前、リチャードはIBM Global Services、DMRで働いており、ニューヨークのIBMのT.J.ワトソン研究所の研究者として彼のキャリアは始まった。 彼は国際的にソフトウェアアーキテクチャと設計の権威として知られ、幅広く本を書いている。デザインパターンの本を執筆したGoF(Gang of Four)の一員としても名声を得ている。 2005年にACM Programming Languages Awardを受賞。2006年にGoFはAITO Dahl-Nygaard Prizeを受賞。 彼はオーストラリアのメルボルン大学で学士および博士号を取得した。 へるむりちゃあど.

新しい!!: オブジェクト指向分析設計とリチャード・ヘルム · 続きを見る »

ルック・アンド・フィール

ルック・アンド・フィール(look and feel、LnF)とは、グラフィカルユーザインタフェースにおける色、形状、レイアウト、書体のような要素を含むデザインの側面(ルック)と、ボタン、ボックス、メニューといった動的振る舞い(フィール)からなる。 ルック・アンド・フィールという用語はソフトウェアとウェブサイト両方に関して使われている。それ以外にも、文書では例えば、視覚的なレイアウト(ドキュメントサイズ、色、フォント、その他)と書法を表して使われる。機器などでは、それは生産ライン上での表示と制御の一貫性を意味する。.

新しい!!: オブジェクト指向分析設計とルック・アンド・フィール · 続きを見る »

プラットフォーム (コンピューティング)

プラットフォーム()とは、コンピュータにおいて、主に、オペレーティングシステム (OS) やハードウェアといった基礎部分を指す。 一般的なコンピューター・プログラム(アプリケーションソフトウェア)は、実行環境であるそれぞれのOSに依存し、Windows、macOS、Linuxなどの専用のプログラムとして動作する。さらに特定のハードウェアでしか動作しないプログラムもある(ネイティブコード)。例えば、PowerPCプロセッサ上のLinuxでは、PowerPCプロセッサ上のMac OS X用あるいはx86/x64プロセッサ上のLinux用のAdobe Readerは動作しない。 プラットフォーム非依存とは、それら特定のOS、ハードウェアに依存せずに動作するプログラムのこと。例えば、Javaは各プラットフォームにおいてJavaアプリケーションが動作する仮想のプラットフォームを実装することによって、プラットフォーム非依存を実現させている。ちょうど異なるプラットフォーム上に介在としてJavaプラットフォームという仮想化された共通プラットフォームがあり、共通プラットフォーム上でJavaアプリケーションが動作する。またプラットフォームの差異をミドルウェアで吸収し、複数のプラットフォームで動作するように設計したソフトウェアをクロスプラットフォームとよぶ。マイクロソフトの.NET FrameworkもJavaとよく似たアプリケーション開発・実行プラットフォームである。プログラムのソースコードを実行時に翻訳・解釈するスクリプト言語や動的プログラミング言語で書かれたソフトウェアもクロスプラットフォームであることが多い。.

新しい!!: オブジェクト指向分析設計とプラットフォーム (コンピューティング) · 続きを見る »

プロトタイプベース

プロトタイプベースとは、オブジェクト指向言語と総称されるプログラミング言語のうち、プロトタイプを基礎(ベース)としてオブジェクトを取り扱うものをいう。インスタンスベースとも。一方、クラスでおこなっているものをクラスベースとよぶ。なおオブジェクト指向のスタイルとして、(Simula由来の、C++などに代表される)クラスベースに対し、もう一つのスタイルとされるのは、プロトタイプベースではなく、(アラン・ケイの)「メッセージ指向」のスタイルである。 プロトタイプベースのオブジェクト指向言語は、クラスベースのオブジェクト指向言語が委譲をクラスの継承関係にもとづいておこなうのに対し、委譲を「プロトタイプ」と呼ぶ既存のオブジェクトに投げる、といったようにしておこなう点が特徴である。そのために例えば、新しいオブジェクトを作る際には、「クラスのインスタンスを作る」のではなく、「既存のオブジェクト(プロトタイプ)のクローンを作る」というようなスタイルになる。Smalltalkを元にクラスの複雑性を排除したSelfが特に有名である。他にJavaScript、NewtonScript、Ioなどがプロトタイプベース(またはその機能を持つ)と考えられる。.

新しい!!: オブジェクト指向分析設計とプロトタイプベース · 続きを見る »

プログラミング (コンピュータ)

ンピュータのプログラミング(programming)とは、コンピュータプログラムを作成することにより、人間の意図した処理を行うようにコンピュータに指示を与える行為である。.

新しい!!: オブジェクト指向分析設計とプログラミング (コンピュータ) · 続きを見る »

プログラミング言語

プログラミング言語(プログラミングげんご、programming language)とは、コンピュータプログラムを記述するための形式言語である。なお、コンピュータ以外にもプログラマブルなものがあることを考慮するならば、この記事で扱っている内容については、「コンピュータプログラミング言語」(computer programming language)に限定されている。.

新しい!!: オブジェクト指向分析設計とプログラミング言語 · 続きを見る »

プログラマ

プログラマ(Programmer)とは、コンピューターのプログラムを作成する人全般を指す。プログラマーとも表記される(#プログラマに対する呼称参照)。.

新しい!!: オブジェクト指向分析設計とプログラマ · 続きを見る »

プログラム (コンピュータ)

ンピュータプログラム(英:computer programs)とは、コンピュータに対する命令(処理)を記述したものである。コンピュータが機能を実現するためには、CPUで実行するプログラムの命令が必要である。 コンピュータが、高度な処理を人間の手によらず遂行できているように見える場合でも、コンピュータは設計者の意図であるプログラムに従い、忠実に処理を行っている。実際には、外部からの割り込み、ノイズなどにより、設計者の意図しない動作をすることがある。また設計者が、外部からの割り込みの種類を網羅的に確認していない場合もある。.

新しい!!: オブジェクト指向分析設計とプログラム (コンピュータ) · 続きを見る »

プログラム仕様

プログラム仕様(プログラムしよう、Program specification)は、プログラムに求められることを定義したものである。プログラムの設計図や開発者から見たユーザーマニュアルの元となる文書のような「非形式的」な形態の場合と、数学的に厳密に動作を定義する「形式的」な形態の場合がある。実際、最もよい仕様は既存のアプリケーションを理解して改善するために書かれたものであることが多いが、重要なソフトウェアは開発前に注意深く仕様を記述する必要がある。仕様は特に常に安定性が求められる外部インタフェースでは重要である。.

新しい!!: オブジェクト指向分析設計とプログラム仕様 · 続きを見る »

パッケージ (Java)

Javaパッケージ(Java package)は名前空間の中にあるJavaクラスをまとめるメカニズムである。Javaパッケージは、JARファイルと呼ばれる圧縮ファイルの中に保存することができ、クラス群を一つのグループとしてまとめた方が1つずつダウンロードするよりも高速化される。プログラマも一般に同じカテゴリに属しているクラスや類似した機能を提供するクラスをまとめたパッケージを使う。 Javaソースファイルはファイルの先頭にソースファイルが定義したクラスのパッケージを明示するpackage構文を含むことができる。.

新しい!!: オブジェクト指向分析設計とパッケージ (Java) · 続きを見る »

ビジネスロジック

ビジネスロジック(business logic)は、データベース上のデータに対する処理手順といったようなものを指す、ソフトウェア工学的な用語である。「アルゴリズム」という語が説明に使われていることがあるが、アルゴリズムは数学的・論理的に明確な概念であり間違った説明の仕方である。どんなプログラミング言語の仕様を見ても、APIを見てもビジネスロジックという用語は出てこないし、学術論文にも現われない。基本的には、エンタープライズ系(業務支援系)ソフトウェアを開発する企業が内部的に、もしくは顧客への販売促進のために用いる用語である。この用語は、主にプログラムが3層構造となるWebアプリケーション開発で使われる。ビジネスロジックは3層の中の中間層(アプリケーションサーバ)に相当する。いずれにしても、ビジネスロジックという用語は明確な定義がなく、人によって意味が異なる可能性がある。.

新しい!!: オブジェクト指向分析設計とビジネスロジック · 続きを見る »

ピーター・コード

ピーター・コード (英: Peter Coad、1953年12月31日 -) は、 ソフトウェアアントレプレナーでありソフトウェア工学に関する書籍の著者である。 コードは、カラーUMLとして知られるようになった技法を説明する役割を果たしたことで著名である。 カラーUMLは、色分けされた記法であり、人が設計やモデルを理解するのを容易にする技法である。.

新しい!!: オブジェクト指向分析設計とピーター・コード · 続きを見る »

テスト駆動開発

テスト駆動開発 (てすとくどうかいはつ、test-driven development; TDD) とは、プログラム開発手法の一種で、プログラムに必要な各機能について、最初にテストを書き(これをテストファーストと言う)、そのテストが動作する必要最低限な実装をとりあえず行った後、コードを洗練させる、という短い工程を繰り返すスタイルである。多くのアジャイルソフトウェア開発手法、例えばエクストリーム・プログラミングにおいて強く推奨されている。近年はビヘイビア駆動開発へと発展を遂げている。.

新しい!!: オブジェクト指向分析設計とテスト駆動開発 · 続きを見る »

データベース

データベース(database, DB)とは、検索や蓄積が容易にできるよう整理された情報の集まり。 通常はコンピュータによって実現されたものを指すが、紙の住所録などをデータベースと呼ぶ場合もある。コンピュータを使用したデータベース・システムでは、データベース管理用のソフトウェアであるデータベース管理システムを使用する場合も多い。.

新しい!!: オブジェクト指向分析設計とデータベース · 続きを見る »

データ構造

データ構造(データこうぞう、data structure)は、計算機科学において、データの集まりをコンピュータの中で効果的に扱うため、一定の形式に系統立てて格納するときの形式のことである。 ソフトウェア開発において、データ構造についてどのような設計を行うかは、プログラム(アルゴリズム)の効率に大きく影響する。そのため、さまざまなデータ構造が考え出されている。 多くのプログラムの設計において、データ構造の選択は主要な問題である。これは大規模システムの構築において、実装の困難さや質、最終的なパフォーマンスはベストのデータ構造を選択したかどうかに大きく依存してきたという経験の結果である。多くの場合、データ構造が決まれば、利用するアルゴリズムは比較的自明に決まる。しかし場合によっては、順番が逆になる。つまり、与えられた仕事をこなす最適なアルゴリズムを使うために、そのアルゴリズムが前提としている特定のデータ構造が選択される。いずれにしても適切なデータ構造の選択は極めて重要である。 この洞察は、多くの定式化された設計手法やプログラミング言語において、データ構造がアルゴリズムよりもキーとなる構成要素となっていることに現れている。大半の言語は異なるアプリケーションにおいてデータ構造を安全に再利用できるよう、実装の詳細をインターフェイスの背後に隠蔽するような、モジュール化のしくみを備えている。C++やJavaといったオブジェクト指向プログラミング言語はクラスをこの目的に用いている。 データ構造は専門的なプログラミングにとって非常に重要なので、C++におけるSTLや、Java API、および.NET Frameworkのようなプログラミング言語の標準ライブラリや環境において多くのデータ構造がサポートされている。 データ構造が実装を表すのかインターフェースを表すのかについてはいくらか議論がある。どのように見えるかは相対的な問題なのかもしれない。データ構造は2つの関数の間にあるインターフェイスとして見ることもできるし、データ型に基づいて構成されたストレージにアクセスする方法を実装したものとして見ることもできる。.

新しい!!: オブジェクト指向分析設計とデータ構造 · 続きを見る »

デザインパターン (ソフトウェア)

フトウェア開発におけるデザインパターン(型紙(かたがみ)または設計パターン、design pattern)とは、過去のソフトウェア設計者が発見し編み出した設計ノウハウを蓄積し、名前をつけ、再利用しやすいように特定の規約に従ってカタログ化したものである。.

新しい!!: オブジェクト指向分析設計とデザインパターン (ソフトウェア) · 続きを見る »

ドメイン固有モデリング

ドメイン固有モデリング(ドメインこゆうモデリング、Domain-Specific Modeling、DSM)とは、ソフトウェアなど主にITシステムで使われるシステム設計開発手法である。グラフィカルなドメイン固有言語(DSL)を使用してシステムの様々な面を表現する。DSM言語は汎用モデリング言語よりも抽象度が高く、システムを記述するのに詳細化を要しない。.

新しい!!: オブジェクト指向分析設計とドメイン固有モデリング · 続きを見る »

ドメイン固有言語

ドメイン固有言語(ドメインこゆうげんご、domain-specific language、DSL)とは、特定のタスク向けに設計されたコンピュータ言語である。 DSL は一種類のタスクをうまく実行することに集中したものであり、古くから存在した。何らかのプログラミング言語それ自体の構文と処理系を利用する internal DSL(あるいは embedded DSL)と、独立した構文と処理系を持つ external DSL に大別されるが、そのいずれにしても近年の、自由度と機能が高いプログラミング言語により手軽に扱えるようになったことから広まっている。ドメイン固有モデリングの支持者によれば、ドメイン固有モデリングの発達と共にDSLという用語も広く知られるようになってきた、とされる。実際にはドメイン固有言語はモデリングとは特別な関係が何もあるわけでもなく(ドメイン固有モデリングのためのドメイン固有言語、といったものはあるが)、モデリング以外にもあらゆる分野のための言語がある。 例えば、ハードウェア記述言語のVerilog HDLやVHDL、表計算ソフトのマクロ、データベースへの問い合わせ言語(SQLなど)、文脈自由文法を記述するBNFや正規文法を記述する正規表現、図を作成する言語を構築する 、音響や音楽の合成用のCsound、グラフ(ネットワーク)描画システムGraphvizのDOT言語、依存関係解決用のmakeなどがある。.

新しい!!: オブジェクト指向分析設計とドメイン固有言語 · 続きを見る »

分散コンピューティング

分散コンピューティング(ぶんさんコンピューティング、英: Distributed computing)とは、プログラムの個々の部分が同時並行的に複数のコンピュータ上で実行され、各々がネットワークを介して互いに通信を行いながら全体として処理が進行する計算手法のことである。複雑な計算などをネットワークを介して複数のコンピュータを利用して行うことで、一台のコンピュータで計算するよりスループットを上げようとする取り組み、またはそれを実現する為の仕組みである。分散処理(ぶんさんしょり)ともいう。並列コンピューティングの一形態に分類されるが、一般に並列コンピューティングと言えば、同時並行に実行する主体は同じコンピュータシステム内のCPU群である。ただし、どちらもプログラムの分割(同時に実行できる部分にプログラムを分けること)が必須である。分散コンピューティングではさらに、それぞれの部分が異なる環境でも動作できるようにしなければならない。例えば、2台の異なるハードウェアを使ったコンピュータで、それぞれ異なるファイルシステム構成であっても動作するよう配慮する必要がある。 問題を複数の部分問題に分けて各コンピュータに実行させるのが基本であり、素数探索や数多く試してみる以外に解決できない問題の対処として用いられているものが多い。分散コンピューティングの例としてBOINCがある。これは、大きな問題を多数の小さな問題に分割し、多数のコンピュータに分配するフレームワークである。その後、それぞれの結果を集めて大きな解を得る。一般的に処理を分散すると一台のコンピュータで計算する場合と比べ、問題データの分配、収集、集計するためのネットワークの負荷が増加し、問題解決の為のボトルネックとなるため、部分問題間の依存関係を減らすことが重要な課題となる。 分散コンピューティングは、コンピュータ同士をネットワーク接続し、効率的に通信できるよう努力した結果として自然に生まれた。しかし、分散コンピューティングはコンピュータネットワークと同義ではない。単にコンピュータネットワークと言った場合、複数のコンピュータが互いにやり取りするが、単一のプログラムの処理を共有することはない。World Wide Web はコンピュータネットワークの例であるが、分散コンピューティングの例ではない。 分散処理を構築するための様々な技術や標準が存在し、一部はその目的に特化して設計されている。例えば、遠隔手続き呼出し (RPC)、Java Remote Method Invocation (Java RMI)、.NET Remoting などがある。.

新しい!!: オブジェクト指向分析設計と分散コンピューティング · 続きを見る »

アナリシスパターン

アナリシスパターン(英: Analysis patternあるいはSoftware analysis patterns)とは、モデリングの過程でしばしば遭遇する状況を抽象化して捉えたソフトウェア工学における概念モデルである。 アナリシスパターンは"関連を持った一群のステレオタイプ的な属性(データの定義)を持った汎用のオブジェクト(メタクラス)、振る舞い(メソッドのシグネチャ)、ドメインに中立的な方法で定義された期待される相互作用" であると Purao、Storey、Han は述べている 。.

新しい!!: オブジェクト指向分析設計とアナリシスパターン · 続きを見る »

アンチパターン

アンチパターン (anti-pattern) とは、ある問題に対する、不適切な解決策を分類したものである 。語源は、ソフトウェア工学におけるデザインパターンである。 主に失敗した開発プロセスに焦点を当てて失敗に陥るパターンを類型化する。そうすることで、そのような事例の早期発見と対応策に関しての提案を目的とする。 競合状態が発生するソフトウェア開発や保守性の低いソースコードなどが主な例である。 アンチパターンという呼び方は、が1995年に作り出したもので、後に書籍The patterns handbookで再掲された。 ギャング・オブ・フォーの書籍『オブジェクト指向における再利用のためのデザインパターン』からヒントを得て、書籍AntiPatternsが出版され、3年後には「アンチパターン」という単語はソフトウェアの設計から一般的な社会の相互作用についても広く用いられるようになった。AntiPatternsの著者によれば、アンチパターンと単なる悪癖、悪習などと区別するには二つの要素があるという。.

新しい!!: オブジェクト指向分析設計とアンチパターン · 続きを見る »

アプリケーションフレームワーク

アプリケーションフレームワーク (Application Framework) とは、プログラミングにおいて、特定のオペレーティングシステムのためのアプリケーションの標準構造を実装するのに使われるクラスやライブラリの集まりである。単にフレームワークとも呼ぶ。 多くの再利用可能なコードをフレームワークにまとめることによって、開発者の手間を省き、新たなアプリケーションのために標準的なコードを改めて書かなくて済むようにする。アプリケーションフレームワークはグラフィカルユーザインタフェース (GUI) が一般的になるに連れて一般化してきた。というのも、GUIはアプリケーションの基本的構造の標準化を促進する傾向があるためである。アプリケーションの基本コード構造が明らかであるため、標準フレームワークを使えば自動GUI作成ツールが作り易くなる。フレームワークの実装にはオブジェクト指向プログラミング技法が一般に使われ、あるアプリケーションの独自の部品がフレームワーク内の既存のクラスを継承することができる。 商用の最初のフレームワークとしてMacAppがある。アップルコンピュータがMacintosh向けに開発したものである。当初、拡張(オブジェクト指向化)されたPascal言語Object Pascalで書かれていたが、後にC++言語で書き直された。Macintosh向けの他のフレームワークとしてMetrowerks PowerPlantやMacZoopがある(いずれもCarbonベース)。別の系統のアプリケーションフレームワークとして macOS 向けのCocoaがある。 フリーソフトウェアとしては、Mozilla、OpenOffice.org、GNOME、KDEといったプロジェクトにはアプリケーションフレームワークが含まれている。 マイクロソフトは、Microsoft Foundation Class (MFC) と呼ばれる Windows 向けの同様の製品を開発している。MFCはWindows APIを薄くラップしたC++言語専用のクラスライブラリおよびフレームワークであり、マイクロソフトは他にもActive Template Library (ATL) やWindows Template Library (WTL) といったC++のテンプレート機能を活用したクラスライブラリ・フレームワークを開発している。 wxWidgetsやFOX toolkitのようなウィジェット・ツールキットのように、Macintosh、Windows、Linuxなどの複数のプラットフォーム向けのアプリケーションを同一ソースコードから作成できるフレームワークも多数存在する。 また、ウェブアプリケーション構築のためのアプリケーションフレームワークも多数存在する(Apache Struts、Ruby on Railsなど)。.

新しい!!: オブジェクト指向分析設計とアプリケーションフレームワーク · 続きを見る »

アプリケーションソフトウェア

アプリケーションスイートである。 アプリケーションソフトウェア(application software, 応用ソフトウェア)は、アプリケーション(応用)プログラムともいい、ワープロや表計算などといった、コンピュータを「応用」する目的に応じた、コンピュータ・プログラムである。なお、それに対してシステムプログラムは、アプリケーションプログラムに対して処理実行のための計算機資源を抽象化して提供する、などのインフラとしての役割のプログラムであり、ユーザーが要求する情報処理を直接実行するものではなく、ユーザーが普段は意識することはない裏方的な存在がシステムプログラムである。.

新しい!!: オブジェクト指向分析設計とアプリケーションソフトウェア · 続きを見る »

アジャイルソフトウェア開発

アジャイルソフトウェア開発 (アジャイルソフトウェアかいはつ、英: agile software development) は、ソフトウェア工学において迅速かつ適応的にソフトウェア開発を行う軽量な開発手法群の総称である。 近年、アジャイルソフトウェア開発手法が数多く考案されている。 ソフトウェア開発で実際に採用される事例も少しずつではあるが増えつつある。 アジャイルソフトウェア開発手法の例としては、エクストリーム・プログラミング (XP) などがある。 非営利組織 Agile Alliance がアジャイルソフトウェア開発手法を推進している。.

新しい!!: オブジェクト指向分析設計とアジャイルソフトウェア開発 · 続きを見る »

アスペクト指向プログラミング

アスペクト指向プログラミング(アスペクトしこうプログラミング、Aspect Oriented Programming、AOP)は、オブジェクト指向ではうまく分離できない特徴(クラス間を横断 (cross-cutting) するような機能)を「アスペクト」とみなし、アスペクト記述言語をもちいて分離して記述することでプログラムに柔軟性をもたせようとする試み。アスペクトの例としては、データ転送帯域の制限や例外の処理などがある。Java にアスペクト指向的要素を追加したAspectJ が実験的に実装されている。 オブジェクト指向プログラミングとは直交するプログラミングパラダイムである。 既存のプログラミングパラダイムを置き換えるものではなく、あくまで既存の言語の補助機能として利用されることを目的としている。.

新しい!!: オブジェクト指向分析設計とアスペクト指向プログラミング · 続きを見る »

インスタンス変数

インスタンス変数()とは、Smalltalk等のオブジェクト指向言語において、オブジェクトのインスタンスごとに割り当てられた変数のことである。フィールド()、データメンバ()、メンバ変数()とも呼ばれる。それに対してクラス変数は、同じクラスに対する全てのインスタンスが同じ値を共有する。 インスタンス変数は、インスタンスフィールド()あるいは、略して「フィールド」と呼ぶこともある(本来、この「フィールド」の意味には、「クラス変数」も含まれるが、インスタンス変数のプログラミング言語によってはインスタンス変数のことを「フィールド」と呼び、クラス変数とは名前を区別しているものもある)。UMLではインスタンス変数のことを属性()とも呼ぶ。 上記の例において、barはクラスFooのインスタンス変数である。それに対して、bazはクラス変数である。 以下のプログラムで、Fooクラスを用いて クラス変数とインスタンス変数の違いを示す。 プログラム例 実行結果 上記のプログラムにおいて、foo1.bazとfoo2.bazはFooクラスのクラス変数を表している。 つまり、foo1.bazとfoo2.bazが表しているインスタンスは同一である。 そのため、結果として出力されるfoo1.bazとfoo2.bazの値は同じとなる。 逆に、foo1.barとfoo2.barはインスタンス変数であり、独立した変数である。 そのため、結果として出力されるfoo1.barとfoo2.barは異なった値となる。.

新しい!!: オブジェクト指向分析設計とインスタンス変数 · 続きを見る »

インタフェース (情報技術)

インタフェース(interface)は、ものごとの境界となる部分と、その境界でのプロトコルを指す。コンピュータなどでは、コンピュータシステム内、あるいはシステム間のインタフェースや、人間と機械の間のインタフェース(ヒューマンマシンインタフェース)などがある。他分野の専門用語の借用になるが、界面という訳語がある。.

新しい!!: オブジェクト指向分析設計とインタフェース (情報技術) · 続きを見る »

イヴァー・ヤコブソン

イヴァー・ヤコブソン (瑞: Ivar Hjalmar Jacobson、1939年9月2日 -) は、スウェーデンのコンピュータ科学者である。 ソフトウェア工学、とりわけオブジェクト指向ソフトウェア開発方法論であるオブジェクト指向ソフトウェア工学 (OOSE) や統一モデリング言語 (UML) の開発の業績で広く知られている。.

新しい!!: オブジェクト指向分析設計とイヴァー・ヤコブソン · 続きを見る »

ウォード・カニンガム

ハワード・ウォード・カニンガム(Howard G. "Ward" Cunningham、1949年5月26日 - )は、世界初のウィキを開発したアメリカ合衆国のコンピュータ・プログラマーである。デザイン・パターンおよびエクストリーム・プログラミングのパイオニアでもある。彼は1994年にWikiWikiWebを開発し始め、1995年3月25日に自分のソフトウェアコンサルタントのウェブサイトである (ドメイン名のc2.comとしても有名)に、のアドオンとしてインストールした。彼は、アジャイル・マニフェストの17人の元署名者の1人でもある。 彼はオレゴン州ビーバートンに住んでおり、New Relicのプログラマーとして働いている。それ以前はCitizenGlobalのCo-Creation Czarを務めていた。ナイキのCode for a Better World Fellowも務めている。 彼は、というタイトルのwikiに関する書籍を著したり、 というテストフレームワークを開発した。ウィキの研究と実践に関するカンファレンスの初めの3回でキーノートスピーチを行い、Wikimedia Developer Summit 2017でもキーノートスピーチを行った。.

新しい!!: オブジェクト指向分析設計とウォード・カニンガム · 続きを見る »

エーリヒ・ガンマ

ーリヒ・ガンマ (独: Erich Gamma) は、スイスのソフトウェア技術者である。日本ではエリック・ガンマと呼ばれることも多い。ガンマは、IBM のチューリヒ研究所に技術部長として勤務し、Rational部門のJazzプロジェクトに関わった後、現在は、チューリッヒのMicrosoftにてVisual Studioの開発などに携わっている。ケント・ベックと共に Javaプログラミングのための単体テストのフレームワーク JUnit を開発した。Eclipse (開発環境プラットフォーム、統合開発環境) の Java Development Tools (、Java開発環境) の設計リーダーでもある。 ガンマは、スイスのチューリヒ大学でコンピュータ科学の博士号を取得した。スイスユニオン銀行 (現在の UBS AG) の研究所でソフトウェア技術者として勤務した。1993年から1995年の間は、Taligent社に勤務した。ガンマは、ET++というC++クラスライブラリの開発のリーダーの一人であった。ET++は、インタラクティブでグラフィカルなアプリケーションソフトウェアを開発するための、移植性の高いC++クラスライブラリである。 ガンマは、オブジェクト指向におけるデザインパターンの業績でよく知られている。1991年に先述の ET++ 開発での経験をもとに博士論文 Object-Oriented Software Development based on ET++: Design Patterns, Class Library, Tools を書いた。そして1995年に、この論文をもとにして、リチャード・ヘルム、ラルフ・ジョンソン、ジョン・ブリシディースと共に、デザインパターンの本 Design Patterns - Elements of Reusable Object-Oriented Software (日本語訳『オブジェクト指向における再利用のためのデザインパターン』) を著した。ガンマを含めたこの本の4人の著者は、Gang of Four (GoF) と呼ばれている。 この他にもオブジェクト指向開発に関するいくつかの技術書を著している。.

新しい!!: オブジェクト指向分析設計とエーリヒ・ガンマ · 続きを見る »

エドワード・ヨードン

ドワード・ヨードン(2008年撮影) エドワード・ヨードン(Edward Nash Yourdon, 1944年4月30日 - 2016年1月20日)はアメリカ合衆国のコンピュータ・コンサルタント、作家、講師。構造化プログラミングにおけるソフトウェア開発手法の先駆者として知られ、コンピュータ関連コンサルティング会社、NODRUOY Inc.のCEOも務める。.

新しい!!: オブジェクト指向分析設計とエドワード・ヨードン · 続きを見る »

エクストリーム・プログラミング

トリーム・プログラミング、XP(extreme programming)は、ケント・ベックらによって定式化され、提唱されているソフトウェア開発手法である。柔軟性の高い開発手法であるため、難易度の高い開発やビジネス上の要求が刻々と変わるような状況に向いた開発手法である。事前計画よりも柔軟性を重視する。1999年に書籍『XPエクストリーム・プログラミング入門―ソフトウェア開発の究極の手法』によって発表された。 XPは、軽量開発手法あるいはアジャイルソフトウェア開発手法と呼ばれる、同種の開発手法のなかで代表的なものである。柔軟性の高い開発手法であるが、古典的には開発が進むにつれ変更コストは大きくなると言うことを前提に開発手法が構築されているのに対して、自動テストを導入するなど様々な対策をすることにより開発が進んでも変更コストが大きくならないような工夫を持ち込むことにより、変更に対する柔軟性を実現している。この変更コストが増大しないという前提が破綻すると、この手法も破綻する。 XPは比較的少人数の開発にもっとも適用しやすく、5つの価値と19の具体的なプラクティス(実践)が定義されている。XPはドキュメントよりもソースコードを、組織的開発の歯車となることよりも、個人の責任と勇気を重んじる人間中心の開発プロセスであるとしている。.

新しい!!: オブジェクト指向分析設計とエクストリーム・プログラミング · 続きを見る »

オペレーティングシステム

ペレーティングシステム(Operating System、OS、オーエス)とは、コンピュータのオペレーション(操作・運用・運転)のために、ソフトウェアの中でも基本的、中核的位置づけのシステムソフトウェアである。通常、OSメーカーが組み上げたコンピュータプログラムの集合として、作成され提供されている。 オペレーティングシステムは通常、ユーザーやアプリケーションプログラムとハードウェアの中間に位置し、ユーザーやアプリケーションプログラムに対して標準的なインターフェースを提供すると同時に、ハードウェアなどの各リソースに対して効率的な管理を行う。現代のオペレーティングシステムの主な機能は、ファイルシステムなどの補助記憶装置管理、仮想記憶などのメモリ管理、マルチタスクなどのプロセス管理、更にはGUIなどのユーザインタフェース、TCP/IPなどのネットワーク、などがある。オペレーティングシステムは、パーソナルコンピュータからスーパーコンピュータまでの各種のコンピュータや、更にはスマートフォンやゲーム機などを含む各種の組み込みシステムで、内部的に使用されている。 製品としてのOSには、デスクトップ環境やウィンドウシステムなど、あるいはデータベース管理システム (DBMS) などのミドルウェア、ファイル管理ソフトウェアやエディタや各種設定ツールなどのユーティリティ、基本的なアプリケーションソフトウェア(ウェブブラウザや時計などのアクセサリ)が、マーケティング上の理由などから一緒に含められていることもある。 OSの中で、タスク管理やメモリ管理など特に中核的な機能の部分をカーネル、カーネル以外の部分(シェルなど)をユーザランドと呼ぶ事もある。 現代の主なOSには、Microsoft Windows、Windows Phone、IBM z/OS、Android、macOS(OS X)、iOS、Linux、FreeBSD などがある。.

新しい!!: オブジェクト指向分析設計とオペレーティングシステム · 続きを見る »

オライリーメディア

ライリーメディア(O'Reilly Media)は、アメリカ合衆国のメディア企業。ティム・オライリーが創設した。コンピュータ関連の書籍出版、ウェブサイト作成、カンファレンスの開催などを主な業務としている。表紙に動物の木版画を使った書籍群でよく知られている。日本法人はオライリー・ジャパン。.

新しい!!: オブジェクト指向分析設計とオライリーメディア · 続きを見る »

オブジェクト (プログラミング)

ブジェクト(object)はオブジェクト指向プログラミングにおいて、プログラム上の手続きの対象を抽象化する概念である。.

新しい!!: オブジェクト指向分析設計とオブジェクト (プログラミング) · 続きを見る »

オブジェクトモデル化技法

ブジェクトモデル化技法 (オブジェクトモデルかぎほう、OMT; Object Modeling Technique) は、オブジェクト指向ソフトウェア開発方法論であり、1990年頃にジェームズ・ランボー、マイケル・ブラハ、ウィリアム・プレメラニ、フレデリック・エディ、ウィリアム・ローレンセンなどの人々によって開発された。 ジェームズ・ランボーたちは著書『オブジェクト指向方法論OMT モデル化と設計』 (原著は1990年刊、日本語訳は1992年刊) で OMT を説明している。 現在では OMT は、.

新しい!!: オブジェクト指向分析設計とオブジェクトモデル化技法 · 続きを見る »

オブジェクトデータベース

ブジェクトデータベースは、オブジェクト指向プログラミングで使うオブジェクトの形式で表現されるデータを格納するデータベースである。 オブジェクト指向データベースともいう。オブジェクト指向プログラミングにおいて、オブジェクトをデータベースに格納(永続化)する方法の一つである。オブジェクトデータベースは、オブジェクト指向プログラミング言語と密接に連携する。 オブジェクトデータベースのデータベース管理システム (DBMS) を、.

新しい!!: オブジェクト指向分析設計とオブジェクトデータベース · 続きを見る »

オブジェクト関係マッピング

ブジェクト関係マッピング(英: Object-relational mapping、O/RM、ORM)とは、データベースとオブジェクト指向プログラミング言語の間の非互換なデータを変換するプログラミング技法である。オブジェクト関連マッピングとも呼ぶ。実際には、オブジェクト指向言語から使える「仮想」オブジェクトデータベースを構築する手法である。オブジェクト関係マッピングを行うソフトウェアパッケージは商用のものもフリーなものもあるが、場合によっては独自に開発することもある。.

新しい!!: オブジェクト指向分析設計とオブジェクト関係マッピング · 続きを見る »

オブジェクト指向

ブジェクト指向(オブジェクトしこう)とは、オブジェクト同士の相互作用として、システムの振る舞いをとらえる考え方である。英語の object-oriented (直訳は、「対象物志向の」「目的重視の」という意味の形容詞) の日本語訳である。 オブジェクト指向の枠組みが持つ道具立ては、一般的で強力な記述能力を持つ。複雑なシステム記述、巨大なライブラリ(特に部品間で緊密で複雑な相互関係を持つもの)の記述においては、オブジェクト指向の考え方は必須である。.

新しい!!: オブジェクト指向分析設計とオブジェクト指向 · 続きを見る »

オブジェクト指向モデリング

ブジェクト指向モデリング (オブジェクトしこうモデリング、英: Object-Oriented Modeling 、OOM) とは、システム等のモデリングにおいて、オブジェクト指向を取り入れたものである。以下、主としてコンピュータプログラムの設計におけるそれに関して述べる。.

新しい!!: オブジェクト指向分析設計とオブジェクト指向モデリング · 続きを見る »

オブジェクト指向プログラミング

ブジェクト指向プログラミング(オブジェクトしこうプログラミング、)は、コンピュータ・プログラミングのパラダイムのひとつで、オブジェクト指向の概念や手法を取り入れたものである。プログラムを、データとその振舞が結び付けられたオブジェクトの集まりとして構成する、などといった特徴がある。このパラダイムを指向しているプログラミング言語がオブジェクト指向プログラミング言語である。.

新しい!!: オブジェクト指向分析設計とオブジェクト指向プログラミング · 続きを見る »

オブジェクト指向ソフトウェア工学

ブジェクト指向ソフトウェア工学 (オブジェクトしこうソフトウェアこうがく、OOSE、Object-oriented software engineering) は、オブジェクト指向ソフトウェア開発方法論であり、1992年頃にObjectory AB 社において、イヴァー・ヤコブソンなどの人々が開発した。 OOSEはユースケースをソフトウェア設計を主導する概念として採用した、最初のオブジェクト指向開発方法論である。 OOSEでは、オブジェクトモデル化技法 (OMT) で使われている設計の概念群も、採用している。 ヤコブソンは、著書『オブジェクト指向ソフトウェア工学OOSE: use-caseによるアプローチ』 (原著は1992年刊、日本語訳は1995年刊、2003年再刊) でOOSEを説明している。.

新しい!!: オブジェクト指向分析設計とオブジェクト指向ソフトウェア工学 · 続きを見る »

ギャング・オブ・フォー (情報工学)

ンピュータ関連におけるGang of Four(ギャング・オブ・フォー、GoF)とは、書籍『オブジェクト指向における再利用のためのデザインパターン』(原題:Design Patterns: Elements of Reusable Object-Oriented Software) の著者である、エーリヒ・ガンマ、リチャード・ヘルム、ラルフ・ジョンソン、ジョン・ブリシディースの4人を指す。 GoFによるデザインパターン(GoFパターン)は、多数のソフトウェアパターンの中で最も広く知られているものである。.

新しい!!: オブジェクト指向分析設計とギャング・オブ・フォー (情報工学) · 続きを見る »

クラス (コンピュータ)

ラス()は、クラスベースのオブジェクト指向においてオブジェクトの設計図にあたるもの。抽象データ型の一つ。クラスから生成したオブジェクトのことをインスタンスという。 クラスには、インスタンスの保持するデータ(メンバ変数、フィールド(UMLでは「属性」ともいう))と操作(メソッド、メンバ関数)が記述される。 クラスは、継承・ポリモーフィズム・カプセル化などの、オブジェクト指向プログラミングにおける重要な概念を実現する強力な手段である。.

新しい!!: オブジェクト指向分析設計とクラス (コンピュータ) · 続きを見る »

クラスベース

ラスベースとはオブジェクト指向のスタイルのひとつで、「鋳型」となるクラスがあり、その鋳型によってオブジェクトの実体であるインスタンスを生成する、というスタイルである。クラスベースのシステムでは、システム内に、継承のシステムを持っていることが多い。 クラスベースでない、オブジェクト指向における「同類のオブジェクトに同じような振舞いをさせるためのメカニズム」の一例としては、プロトタイプベースがある。現代の代表例としてはJavaScriptであろう。 なおオブジェクト指向のスタイルとして、(Simula由来の、C++などに代表される)クラスベースに対し、もう一つのスタイルとされるのは、プロトタイプベースではなく、(アラン・ケイの)「メッセージ指向」のスタイルである。.

新しい!!: オブジェクト指向分析設計とクラスベース · 続きを見る »

クラス図

統一モデリング言語 (UML)におけるクラス図(クラスず、英: class diagram)とは、クラス、属性、クラス間の関係からシステムの構造を記述する静的な構造図である。 クラス図とソースコードの同期が可能なUMLモデリングツールも存在する。.

新しい!!: オブジェクト指向分析設計とクラス図 · 続きを見る »

グラディ・ブーチ

ラディ・ブーチ (Grady Booch 、1955年2月27日 -) はアメリカ合衆国のソフトウェア技術者である。 ブーチは、ソフトウェア設計者であり、ソフトウェア開発方法論者であり、またデザインパターンなど、オブジェクト指向のソフトウェア工学の分野で活動している。 オブジェクト指向ソフトウェア開発方法論であるBooch法を開発した。 ソフトウェア開発のためのモデリング言語 UML (Unified Modeling Language; 統一モデリング言語) の開発において大きな役割を果たしている。 IBM のラショナル部門の主席技術者である。 また Addison Wesley Benjamin/Cummings シリーズの書籍の編集者でもある。.

新しい!!: オブジェクト指向分析設計とグラディ・ブーチ · 続きを見る »

グラフ理論

ラフ理論(グラフりろん、graph theory)は、ノード(節点・頂点)の集合とエッジ(枝・辺)の集合で構成されるグラフに関する数学の理論である。グラフ (データ構造) などの応用がある。.

新しい!!: オブジェクト指向分析設計とグラフ理論 · 続きを見る »

ケント・ベック

ント・ベック ケント・ベック (Kent Beck) はエクストリーム・プログラミング (XP) の考案者でアジャイルマニフェスト (Agile Manifesto) の起草者の一人。彼はデザインパターン、テスト駆動開発、Smalltalkに関する本を書いた。ベックはウォード・カニンガムと一緒にCRCカードを普及させた。SmalltalkのユニットテストのフレームワークであるSUnitを開発した。さらにエーリヒ・ガンマと共同でJavaのユニットテストのフレームワークJUnitを開発した。ケント・ベックはオレゴン大学のコンピュータサイエンスの修士号を取得している。.

新しい!!: オブジェクト指向分析設計とケント・ベック · 続きを見る »

シーケンス図

ーケンス図(シーケンスず: sequence diagram)とは、UMLで定義されている、相互作用図の1種類である。.

新しい!!: オブジェクト指向分析設計とシーケンス図 · 続きを見る »

ジョン・ブリシディース

ョン・ブリシディース(John Matthew Vlissides, 1961年8月2日 - 2005年11月24日)は、ソフトウェア科学者で、デザインパターンの本を書いた(Gang of Four)の一人として知られている。ブリシディースはつつましく自分自身のことを「#4 of the Gang of Four」以外ないだろうと呼んでいた。 ブリシディースはバージニア大学とスタンフォード大学で電気工学を学んだ。1976年以降、ソフトウェアエンジニア、コンサルタント、リサーチアシスタント、としてスタンフォード大学で働いた。1991年からニューヨーク、ホーソーンのIBM T.J. Watson Research Centerに研究スタッフのメンバーとして滞在した。 ブリシディースはいくつかの本、雑誌の記事とカンファレンスペーパーの執筆者でいくつかの特許を与えられている。オブジェクト指向の技術、デザインパターンとソフトウェアのモデリングに彼の仕事の全力を注いだ。 ブリシディースは脳腫瘍による合併症との長い闘病のあとに2005年の感謝祭の日の午前1:30に死去。 ウォード・カニンガムとグラディ・ブーチはブリシディース未亡人であるドゥルーアンがブリシディースの逸話を求めていることをブログ上で伝え、ウィキに設置されたブリシディースのページ への投稿を呼びかけた。それ以降、マーティン・ファウラーやリチャード・ヘルムといったブリシディースの多くの友人と関係者を含めて、ブリシディースのページに一定の量の投稿が続いている。.

新しい!!: オブジェクト指向分析設計とジョン・ブリシディース · 続きを見る »

ジェームズ・ランボー

ェームズ・ランボー (Dr.、1947年8月22日 -) は、アメリカ合衆国のソフトウェア技術者である。 オブジェクト指向のソフトウェア工学の分野で活動している。 オブジェクト指向ソフトウェア開発方法論 OMT (Object Modeling Technique; オブジェクトモデル化技法) とその後継となる Unified Process (UP)、ソフトウェア開発のためのモデリング言語 UML (Unified Modeling Language; 統一モデリング言語) の開発において、大きな役割を果たしてきた。.

新しい!!: オブジェクト指向分析設計とジェームズ・ランボー · 続きを見る »

スーパークラス (計算機科学)

計算機科学においてスーパークラス (superclass) とは、他の下位クラスの派生元となる上位クラスのことである。スーパークラスは親クラスや基底クラスとも呼ばれる。スーパークラスから派生したクラスは子クラス、派生クラス、あるいはサブクラスとして知られている。クラスAがクラスBのサブクラスであるとき、「クラスAはクラスBを拡張 (extends) する」とも言える。 スーパークラスは仮想関数の使用を通じて、特殊化された機能に対する汎用インターフェイスの提供を可能にする。 スーパークラスのメカニズムは、共通の機能をモジュールとなるオブジェクトにカプセル化することで実現される再利用性を持つことから、オブジェクト指向プログラミングで広範囲に利用される。 多くのオブジェクト指向言語は抽象クラスと具象クラス両方をサポートするだろう。.

新しい!!: オブジェクト指向分析設計とスーパークラス (計算機科学) · 続きを見る »

スクラム (ソフトウェア開発)

ラム(Scrum)は、ソフトウェア開発における反復的で漸進的なアジャイルソフトウェア開発手法の1つである。この方法論は「柔軟かつ全人的なプロダクト開発ストラテジーであり、共通のゴールに到達するため、開発チームが一体となって働くこと」とされる。この方法論は、製品開発における伝統的な、シーケンシャルなアプローチとは大きく異なる。この方法論は、チームが自発的に組織だって行動することを可能にする。この自己組織化を実現するのは、すべてのチームメンバーが物理的に同じ場所にいること、あるいは密なオンライン共同作業を通じ、全員が日々直接会ってお互いにコミュニケーションをとり、プロジェクトにおける規律を守ることである。 スクラムのカギとなる基本原則は、プロジェクト開発の途中で、顧客は、要求や必要事項を変えられるという認識である。予想できない変更について、計画に基づく方法で対処することは、容易ではない。したがって、スクラムは経験に基づくアプローチを採用する。問題を十分に理解することも、定義することもできないので、現れた要求へ素早く対応するためのチームの能力を最大化することに集中する、というアプローチである。.

新しい!!: オブジェクト指向分析設計とスクラム (ソフトウェア開発) · 続きを見る »

ソースコード

青で示されているのが有効なコードである。 ソースコード(source code)とは、コンピュータプログラミング言語で書かれた、コンピュータプログラムである文字列(テキストないしテキストファイル)のことである。.

新しい!!: オブジェクト指向分析設計とソースコード · 続きを見る »

ソフトウェア

フトウェア(software)は、コンピューター分野でハードウェア(物理的な機械)と対比される用語で、何らかの処理を行うコンピュータ・プログラムや、更には関連する文書などを指す。ソフトウェアは、一般的にはワープロソフトなど特定の作業や業務を目的としたアプリケーションソフトウェア(応用ソフトウェア、アプリ)と、ハードウェアの管理や基本的な処理をアプリケーションソフトウェアやユーザーに提供するオペレーティングシステム (OS) などのシステムソフトウェアに分類される。.

新しい!!: オブジェクト指向分析設計とソフトウェア · 続きを見る »

ソフトウェア工学

フトウェア工学(ソフトウェアこうがく、Software engineering)は、コンピュータのプログラム、およびその作成行為であるプログラミングを対象とした工学である。.

新しい!!: オブジェクト指向分析設計とソフトウェア工学 · 続きを見る »

ソフトウェア保守

フトウェア保守またはソフトウェアメンテナンス (software maintenance) とは、ソフトウェア工学において既存のソフトウェアを改良・最適化していくと共にバグを修正していくプロセスを意味する。ソフトウェア保守はソフトウェア製品ライフサイクルにおける主要なプロセスの一部であり、ソフトウェアの実際の現場への投入後に行われる。ソフトウェア保守工程では、実際の使用で発見された問題点やバグを修正すると共に、そのソフトウェアのユーザビリティや可用性を改善するための機能追加も行う。.

新しい!!: オブジェクト指向分析設計とソフトウェア保守 · 続きを見る »

ソフトウェアテスト

フトウェアテスト()は、コンピュータのプログラムから仕様にない振舞または欠陥(バグ)を見つけ出す作業のことである。ソフトウェアテストで見つかったプログラム中の欠陥を修正する作業をデバッグという。ソフトウェアテストに成功するとは、テストで欠陥が発見されるか、規定した試験項目にすべて合格するか、規定した品質目標に到達することである。目標とした品質には、規定した試験項目にすべて合格することもある。例えば、OS, プログラミング言語では、仕様を満たしているかどうかの適合試験を規定している。ソフトウェアテストでは、欠陥が存在することを示すことはできるが、欠陥が存在しないことは証明できない。ソフトウェアに仕様にない振舞がないことを保証する作業を証明といい、証明用のシステム、証明しやすい言語も多数存在している。本項では動的なソフトウェアテストを中心に扱う。.

新しい!!: オブジェクト指向分析設計とソフトウェアテスト · 続きを見る »

ソフトウェアドキュメンテーション

フトウェアドキュメンテーションとは、コンピュータのソフトウェアに付随する文書、またはそのような文書を作成することを意味する。類似の用語としてソースコードドキュメンテーションがある。 仕様書を含むか、含まないかは立場により異なる。仕様書は設計/実装のために事前または事後に作成する文書である。ドキュメンテーションは開発中あるいは既に完成したソフトウェアに付随する文書を指す訳ではない。ソフトウェアに関する文書には作成する順番があるとは限らない。図からソフトウェアを生成する場合もあれば、ソフトウェアから図を生成する場合もある。ソフトウェアから仕様を生成する場合もあれば、仕様からソフトウェアを生成する場合もある。.

新しい!!: オブジェクト指向分析設計とソフトウェアドキュメンテーション · 続きを見る »

ソフトウェアコンポーネント

UML 2.0 のコンポーネント図で、2つのコンポーネントを表現した例。CheckoutコンポーネントはCardProcessingコンポーネントを使用している。 ソフトウェアコンポーネント(Software Componentry)は、ソフトウェアシステムの様々な機能を関心の分離によって分割したものである。システムを独立した結合の弱い再利用可能なコンポーネント群で構成する設計技法は Component-based software engineering (CBSE) と呼ばれ、ソフトウェア工学の一分野となっている。 コンポーネントの考え方は、サービス指向の起点となっている。例えば、Webサービスやサービス指向アーキテクチャ (SOA) ではソフトウェアコンポーネントの考え方を発展させサービスをコンポーネント化するという考え方をする。.

新しい!!: オブジェクト指向分析設計とソフトウェアコンポーネント · 続きを見る »

ソフトウェア開発

フトウェア開発(ソフトウェアかいはつ、Software Development)とは、ユーザーのニーズやマーケティング上の目標をソフトウェア製品に変換する作業である。ソフトウェア開発には、ソフトウェア工学の研究的側面とソフトウェア製品を開発するマーケティング的側面が含まれていると言われることがある。ソフトウェア製品のマーケティング活動そのものは、必ずしも新商品開発とは結びつかない。顧客の期待を満足させるべく開発されたソフトウェア製品の成功/失敗の責任が工学的側面にあるのかマーケティング的側面にあるのかを判別するのは、多くの場合困難である。そのため、ソフトウェア開発全体として工学的側面とマーケティング的側面を共に理解し、それらの協調を促進することが重要である。工学とマーケティングの両方の側面をまとめ、バランスをとるのは、プロジェクトマネージャなどと呼ばれる立場の人である。 マーケティングとの関わりはソフトウェア要求分析としても知られている。ソフトウェア開発はクライアントが必要とするもの以上の機能を開発しようとしたり、逆に妥協しようとしたりする。そのため、ソフトウェア開発は通常の工学/技術とは関連付けられていなかった各種プロセス(市場調査、人材登用、リスクマネジメント、知的財産権、予算、危機管理など)まで取り込もうとする場合がある。その場合、ソフトウェア開発は Business Development と呼ばれる領域ともオーバーラップすることになる。 Alan M. Davis は著書 "Great Software Debates" の章 "Requirements" の節 "The Missing Piece of Software Development" で次のように述べている.

新しい!!: オブジェクト指向分析設計とソフトウェア開発 · 続きを見る »

ソフトウェア開発工程

フトウェア開発工程(ソフトウェアかいはつこうてい、Software Development Process)とは、ソフトウェア製品の開発の構造を意味する。ソフトウェアライフサイクル、ソフトウェア開発プロセス、ソフトウェアプロセスもほぼ同義語である。開発工程にはいくつかのモデルがあり、開発工程内の各種タスク・活動のための手法を提案している。.

新しい!!: オブジェクト指向分析設計とソフトウェア開発工程 · 続きを見る »

ソフトウェア開発者

フトウェア開発者 (英: software developer) とは、ソフトウェア開発工程に何らかの形で関わる人を表す総称的な職業名である。主に、ソフトウェアに関する調査・設計・実装(プログラミング)・テストを行う者が含まれる。さらにプロジェクトマネージャなどが含まれることもある。また、英語でsoftware developerと言う場合は、個人だけでなく、ソフトウェアを開発する企業や部門を指すこともある。 ソフトウェア開発者の職務内容をさらに限定化した職業名として、日本では例えば以下のようなものが使われる:.

新しい!!: オブジェクト指向分析設計とソフトウェア開発者 · 続きを見る »

サブルーチン

ブルーチン(subroutine)は、コンピュータプログラミングにおいて、プログラム中で意味や内容がまとまっている作業をひとつの手続きとしたものである。繰り返し利用されるルーチン作業をモジュールとしてまとめたもので、呼び出す側の「主」となるもの(メインルーチン)と対比して「サブルーチン」と呼ばれる。サブプログラム (subprogram) と呼ばれることもある。また、「サブ」をつけずに「ルーチン」と呼ぶこともある。 プログラムのソース中で、繰り返し現れる作業をサブルーチン化することで、可読性や保守性を高く保つことができる。繰り返し現れる作業でなくても、意味的なまとまりを示すためにサブルーチン化することもある。また、キャッシュのような階層的メモリの設計を持つコンピュータ(現在のパソコンやワークステーションなどほぼすべて)では、よく使われるサブルーチンがキャッシュに格納されることで高速な動作を期待できる。.

新しい!!: オブジェクト指向分析設計とサブルーチン · 続きを見る »

サブクラス (計算機科学)

ブジェクト指向プログラミングにおいてサブクラス (subclass) とは、上位階層に位置するクラス(スーパークラス)のいくつかのプロパティ(特性)を継承する下位クラスのことである。 プログラマは普通、そのクラスをスーパークラスの「一種」であるものとして、例えば「マンクスは猫の一種である」または「正方形は長方形の一種である」などとして、サブクラスのことを考える。.

新しい!!: オブジェクト指向分析設計とサブクラス (計算機科学) · 続きを見る »

Booch法

Booch法 (ブーチほう、Booch method) は、オブジェクト指向ソフトウェア開発方法論であり、1990年頃にグラディ・ブーチによって開発された。 オブジェクト指向分析設計の分野で広く採用された。 ブーチは、著書『Booch法:オブジェクト指向分析と設計』 (原著初版は1991年刊、原著第2版は1993年刊、第2版日本語訳は1995年刊) でBooch法を説明している。 現在ではBooch法は、.

新しい!!: オブジェクト指向分析設計とBooch法 · 続きを見る »

CRCカード

CRCカードとは、オブジェクト指向ソフトウェア設計で使われるブレインストーミングツールである。CRC とは「クラス-責務-コラボレータ」を表す英語の頭文字である。ウォード・カニンガムの考案である。通常、設計の最初期にどのようなクラスが必要で、それらがどのように相互に連携するかを決定するのに使う。 CRCカードにはインデックスカードが使われる(米国では76mm×127mmサイズが一般的)。それに以下のような項目を記述していく.

新しい!!: オブジェクト指向分析設計とCRCカード · 続きを見る »

継承 (プログラミング)

継承(けいしょう、inheritance:インヘリタンス)とはオブジェクト指向を構成する概念の一つである。あるオブジェクトが他のオブジェクトの特性を引き継ぐ場合、両者の間に「継承関係」があると言われる。 主にクラスベースのオブジェクト指向言語で、既存クラスの機能、構造を共有する新たなクラスを派生することができ(サブクラス化)、そのようなクラスは「親クラス(スーパークラス)を継承した」という。具体的には変数定義や操作(メソッド)などが引き継がれる。またJavaのインタフェース継承のように機能セットの仕様のみを引き継ぐ場合もある。 一般的に、BがAを継承する場合、B is a A. (BはAの一種である)という意味的な関係(Is-a関係)が成り立つ。従って、同じふるまいを持つからと言って、意味的に無関係なクラス間に継承関係を持たせるのは適切でない場合が多い。 プロトタイプベースのオブジェクト指向言語(Self、NewtonScript等)のように「クラス」という概念を持たない場合でも、クローン元となるオブジェクトを指して「継承」と呼ぶ。 継承と類似の概念に「委譲」があるが、継承では一度定まった継承関係は通常変更されないのに対して、委譲対象は必要に応じて変更されうるものである。 Is-a関係を持つ継承とは階層が異なる概念として集約 (aggregation) とコンポジション集約 (composition) があるが、これはクラス間の関係がHas-aである包含関係であり、クラス間の関係は継承よりも疎である。.

新しい!!: オブジェクト指向分析設計と継承 (プログラミング) · 続きを見る »

翔泳社

株式会社翔泳社(しょうえいしゃ)は、日本の東京都新宿区に所在する、出版やソフトウェア開発等を主業務とする会社。本稿では持株会社のSEホールディングス・アンド・インキュベーションズ株式会社についても述べる。 1985年創業。1998年JASDAQに株式公開。2006年10月SEホールディングス・アンド・インキュベーションズ株式会社に社名を変更し、持株会社制に移行。株式会社翔泳社の商号は分社化した出版事業部門が引き継いでいる。.

新しい!!: オブジェクト指向分析設計と翔泳社 · 続きを見る »

統一モデリング言語

統一モデリング言語(とういつモデリングげんご、UML、英: Unified Modeling Language)は、主にオブジェクト指向分析や設計のための、記法の統一がはかられた(Unified)モデリング言語(Modeling Language)である。仕様記述言語であるなどとされることもあるが、統一されているのは構文に相当する記法だけで、仕様を表現するような意味が形式的に与えられていない図もあるので、形式仕様記述言語ではない。 最初期の版はラショナルにおいて、グラディ・ブーチ、イヴァー・ヤコブソン、ジェームズ・ランボーの3人が策定した。この3人はスリーアミーゴスと呼ばれている。現在は Object Management Group(OMG) が管理しており、現在最も普及していると主張されている。2015年7月現在の最新版は UML 2.5 であり、ISO/IEC 19501:2005 として UML 1.4.2 を、また、ISO/IEC 19505-1:2012 ならびに ISO/IEC 19505-2:2012 として UML 2.4.1 を標準化している。 UML 2.0 以降では、ダイアグラム(図法)が13種類もあり(#UMLのダイアグラムを参照)、各種の図法を必要に応じて使い分けなければならない(というより、別に節を改めて説明しているが、単なる肥大化であり、単に必要ないものは無視すべきということである)。よく使う図としては、ユースケース図、ステートマシン図、シーケンス図、クラス図などがある。UMLはデザインパターンを説明するために良く使われている。.

新しい!!: オブジェクト指向分析設計と統一モデリング言語 · 続きを見る »

Eiffel

Eiffel(アイフェル、エッフェル)は頑健なソフトウェアの生産に注力したオブジェクト指向プログラミング言語である。.

新しい!!: オブジェクト指向分析設計とEiffel · 続きを見る »

表 (データベース)

関係データベースやフラットファイルデータベースにおける表またはテーブルとは、データ要素(値)の集合を垂直な列と水平の行のモデルで構成したものである。表には所定の個数の列があるが、行数は不定である。各行は特定の列の値で識別され、それを候補キーと呼ぶ。 表は関係と同じ意味でも使われる。ただし、表は多重集合がありうるが、関係モデルにおける関係は重複を許さない点が異なる。実際のデータ行の他に、表にはその表や特定の列での値に関する制約のような何らかのメタ情報が対応しているのが一般的である。 表内のデータはデータベースに物理的に格納されている必要はない。ビューも一種の表だが、そのデータはクエリ時に計算で求められる。また、別のデータベース内の表へのポインタとして機能するニックネームもある。.

新しい!!: オブジェクト指向分析設計と表 (データベース) · 続きを見る »

要求仕様

要求仕様(ようきゅうしよう、Requirements Specification)とは、工学分野において特定の製品やサービスがどうあるべきかを記述する文書を指す。主にシステム工学とソフトウェア工学で使われる用語である。英語のrequirementからリクワイアメント(リクワイヤメント)ともいう。 従来からの工学的手法では、要求仕様を入力として製品開発における設計工程が行われる。 要求仕様作成工程の前に一般に実現可能性調査(feasibility study)や概念的分析の工程が置かれることがある。要求仕様作成工程は、要求収集(関係者からのヒアリングなど)、要求分析(一貫性と完全性の検証)、要求定義(開発者に要求を理解させるための文書を作成)、要求仕様記述(要求と設計の橋渡しとなる文書を作成)の各工程にさらに分けることができる。.

新しい!!: オブジェクト指向分析設計と要求仕様 · 続きを見る »

要求分析

要求分析(ようきゅうぶんせき、Requirements Analysis)とは、システム工学やソフトウェア工学において新たなシステムやシステム更新に際しての調査/定義に関わる工程を指す。要求分析はシステム設計工程でも重要な部分であり、アナリストやシステムエンジニア/ソフトウェア開発者が顧客の必要性や要求を特定する工程である。顧客の要求が特定されたら、システム設計者がその解決策を設計することになる。.

新しい!!: オブジェクト指向分析設計と要求分析 · 続きを見る »

関係 (データベース)

関係 (relation) を含む関係モデルの概念関係(かんけい、リレーション、)とは関係モデル(リレーショナルモデル)において、一つの見出しと0以上の同じ型の組 (タプル、行) の順序づけられていない集合からなるデータ構造のことである。 値としての関係を関係値 (relation value) といい、関係値を値としてもつ変数を関係変数 (relvar, relation variable) という。 関係データベースのデータベース言語であるSQL では、関係変数とほぼ同じ意味で'''表''' ('''テーブル''') という用語が使われている。文脈によって、関係変数を関係と呼ぶこともあり、また関係値を関係と呼ぶこともある。 その他、データベースにおける関係には以下のことが言える。.

新しい!!: オブジェクト指向分析設計と関係 (データベース) · 続きを見る »

関係モデル

関係モデル(かんけいモデル、リレーショナルモデル、relational model)はエドガー・F・コッドが集合論と述語論理に基づいて考案したデータベースモデルであり、関係データベース(リレーショナルデータベース)の基礎となっている。.

新しい!!: オブジェクト指向分析設計と関係モデル · 続きを見る »

関係データベース

関係データベース(かんけいデータベース、リレーショナルデータベース、英: relational database)は関係モデル(リレーショナルデータモデル、後述)にもとづいて設計、開発されるデータベースである。関係データベースを管理するデータベース管理システム (DBMS) を関係データベース管理システム (RDBMS) と呼ぶ。 Oracle Database、Microsoft SQL Server、MySQL、PostgreSQL、DB2、FileMaker、H2 Database などがRDBMSである関係データベースに含まれないデータベースは、NoSQL などを参照。 。.

新しい!!: オブジェクト指向分析設計と関係データベース · 続きを見る »

GRASP

GRASP、General Responsibility Assignment Software Pattern あるいは ~Principle とは、オブジェクト指向設計において用いられる、クラスやオブジェクトに責務を割り当てる方針を導くパターンや原則である。Craig Larmanが著書「実践UML」で示した。 GRASP で例として示される様々なパターンや原則として、「情報エキスパート (Information Expert)」、「生成者 (Creator)」、「コントローラ(Controller)」、「疎結合 (Low Coupling)」、「高凝集性 (High Cohesion)」、「多態性 (Polymorphism)」、「純粋人工物 (Pure Fabrication)」、「変動からの保護 (Protected Variations)」、「間接化 (Indirection)」がある。 これらのパターンは全て何らかのソフトウェアの課題に対する回答であり、大半のものはソフトウェア開発プロジェクトのほとんどに共通である。したがって、これらのパターンは新しい情報を導き出すのではなく、これまでに実証されたオブジェクト指向設計におけるプログラミングの原則をよりよく記述し、標準化するためにある。 「ソフトウェア開発において決定的な設計技術となるのは、設計の原則の中で磨き上げられた考え方である。UML やその他の技法ではない」(Larman, CraigApplying UML and Patterns - Third Edition.). つまり、GRASP はオブジェクト指向ソフトウェアの設計を助ける、純粋に考え方そのものである。.

新しい!!: オブジェクト指向分析設計とGRASP · 続きを見る »

Meta-Object Facility

Meta-Object Facility(MOF)とは、OMGの定めたモデル駆動工学のための標準規格である。公式ページは。.

新しい!!: オブジェクト指向分析設計とMeta-Object Facility · 続きを見る »

Object Management Group

Object Management Group (オブジェクト・マネージメント・グループ、OMG) は、コンピュータ業界の非営利の標準化コンソーシアムであり、国際的で誰でも会員になれる。様々な技術および広範囲の業種について企業統合標準を開発している。OMGのモデリング標準は、ソフトウェアや他のプロセスの強力な視覚的設計・実行・保守を可能にする。当初はオブジェクト指向システムの標準化を目的としいていたが、後に(プログラム、システム、ビジネスプロセスなどの)モデリングとモデルベースの標準策定に注力している。.

新しい!!: オブジェクト指向分析設計とObject Management Group · 続きを見る »

QVT

QVT(Queries/Views/Transformations)とは、Object Management Groupが定義したモデル駆動型アーキテクチャにおけるモデル変換の標準である。Meta-Object Facility(MOF)に関連する標準であることから、MOF QVT とも呼ばれる。.

新しい!!: オブジェクト指向分析設計とQVT · 続きを見る »

Unified Process

Unified Software Development Process もしくはUnified Processは一般的な反復型ソフトウェア開発工程フレームワークである.

新しい!!: オブジェクト指向分析設計とUnified Process · 続きを見る »

XML Metadata Interchange

XML Metadata Interchange(XMI)とは、Extensible Markup Language (XML)を使ってメタデータ情報を交換する標準規格であり、OMGが策定した。Meta-Object Facility (MOF)で表現できるメタモデルに従うメタデータを扱うことができる。XMIの典型的な利用法として、UMLモデルの交換形式としての利用があるが、他の言語のモデル(メタモデル)のシリアライズにも使うことができる。.

新しい!!: オブジェクト指向分析設計とXML Metadata Interchange · 続きを見る »

標準化団体 (コンピュータと通信)

標準化団体 (コンピュータと通信)(ひょうじゅんかだんたいこんぴゅーたとつうしん)では、コンピュータと通信に関係する標準化団体をとりあげる。 主な分野として、コンピュータのハードウェア(インタフェースなど)、ソフトウェア(文字コード、データフォーマット、言語仕様など)、無線通信および電気通信(通信プロトコル、ネットワークのインタフェースなど)がある。 標準化活動策定する規格には、国際規格として公開するもの、勧告または推奨という形で公開するものがある。前者では、例えばISOおよび国際電気標準会議IECのIS(International Standard、国際標準規格)がある。後者では、例えばITU-Tの場合、V.シリーズ勧告、X.シリーズ勧告などのように訳す。 各国には、ISO, IECで決めた分野の国家規格とそれを決める団体がある。日本では、JISCが国内審議団体で、規格は日本工業規格(JIS)である。 特定の製品やサービスに特化して、その業務に関連する企業等がフォーラムやコンソーシアム等と称する民間の標準化団体を結成して、業界団体規格,民間規格を決める。(DVDフォーラム、XMLコンソーシアム、Linux Foundationなど).

新しい!!: オブジェクト指向分析設計と標準化団体 (コンピュータと通信) · 続きを見る »

永続性

計算機科学における永続性(Persistence)は、データを生成したプログラムが終了してもそのデータが存続する特性を指す。この特性がない場合、データはメモリ上にのみ存在し、コンピュータのシャットダウン時など、メモリの電源が切られた時点で消失する。.

新しい!!: オブジェクト指向分析設計と永続性 · 続きを見る »

日本ヒューレット・パッカード

日本ヒューレット・パッカード株式会社(にほんヒューレット・パッカード)は、エンタープライズ製品(サーバー、ネットワーク機器等)の製造・販売、ソリューションサービスの提供を主とする日本のコンピュータ関連企業。 2015年に親会社であるヒューレット・パッカード(Hewlett-Packard Company)が分社、二つのHP Inc.(HPI)とヒューレット・パッカード・エンタープライズ (Hewlett Packard Enterprise, HPE)として誕生したことに伴い、現在ではHPEのハードウェア事業を行っている。 PC・プリンティング事業(PC、プリンターの製造・販売)は、2015年8月1日に株式会社 日本HPへ分割しHPIの日本法人となる。.

新しい!!: オブジェクト指向分析設計と日本ヒューレット・パッカード · 続きを見る »

ここにリダイレクトされます:

OOAOOADOODオブジェクト指向ソフトウェア開発方法論オブジェクト指向分析オブジェクト指向設計オブジェクト指向開発オブジェクト指向開発方法論

出ていきます入ってきます
ヘイ!私たちは今、Facebook上です! »