システム開発に関するその他の用語
開発方法論
マッシュアップ、API、リバースエンジニアリング、BPR、DevOps、EA…開発周辺の重要キーワードを一気に押さえよう!
システム開発に関するその他の用語
簡単にいうと
マッシュアップ、API、リバースエンジニアリング、BPR、DevOps、EA…開発周辺の重要キーワードを一気に押さえよう!
① マッシュアップ
マッシュアップとは、Web上に公開されている複数のWebサービスを組み合わせて、新しいソフトウェアやサービス、データベースなどを作る手法の総称です。たとえばGoogleが提供する地図サービス、Amazonが提供する商品情報など、Web上の情報を活用して自社のホームページを構成する企業が増えています。ITの深い知識がなくても短期間でアプリケーション開発ができることから、新しい開発技法として注目されています。
② API(Application Programming Interface)
APIとは、ソフトウェアの機能や管理するデータなどを部品として、外部のプログラムから呼び出して利用するための仕組みのことです。開発者はAPIに沿って機能を呼び出す短いプログラムを記述するだけで、自らプログラミングを行うことなく、その機能を利用したソフトウェアを作成することができます。マッシュアップはAPIを活用して複数サービスを統合する手法であるため、APIの理解が前提となります。
③ リバースエンジニアリング
リバースエンジニアリングとは、通常の開発手順とは逆に、現在実装されているプログラムから上流工程に向かって作業を行い、設計仕様などを抽出する技術のことです。既存ソフトウェアの動作を解析することで、プログラムの仕様やソースコードを導き出します。
ソフトウェアパッケージなどの製品化されているソフトウェアについてもリバースエンジニアリングを行うことが可能なため、プログラムの著作権をめぐってトラブルが生じることもあります。
なお、通常の手順によって開発を進めることをフォワードエンジニアリングと呼びます。
④ BPR(リエンジニアリング)
BPR(Business Process Reengineering)とは、収益や顧客満足度の向上を目的として、業務内容や業務の流れを抜本的に見直すことを意味します。ITはビジネスプロセスを迅速に変更する有効なツールであるため、ERPパッケージなどを全面的に導入し、業務の流れを同時に変える手法が一般的です。
単なる業務改善ではなく、既存のプロセスをゼロベースで再設計する点がBPRの特徴です。
⑤ DevOps(デブオプス)
DevOpsは「Development(開発)」と「Operations(運用)」を組み合わせた造語で、開発チームと運用チームが密に連携し、システムの導入や更新を柔軟かつ迅速に行う開発の方法論です。アジャイル開発プロセスに通じる概念であり、プログラムの変更とリリース(運用開始)を頻繁に繰り返すアジャイル開発においては、開発担当者と運用担当者の連携を密に行う必要があります。
CI/CD(継続的インテグレーション/継続的デリバリー)パイプラインの構築、インフラのコード化(Infrastructure as Code)、自動テスト・自動デプロイなどの手法を活用します。
⑥ MLOps(エムエルオプス)
MLOpsは「Machine Learning(機械学習)」と「Operations(運用)」を組み合わせた用語で、データサイエンティスト(機械学習エンジニア)と運用担当者がお互いに連携し、コミュニケーションを取りながら行う開発の方法論です。DevOpsから発展して生まれた考え方です。
機械学習チームと開発チームが、最終的なソリューションの一環となる機械学習モデルの作成とデプロイを自動化し、リリースサイクルを早めます。運用チームは、刻々と変化するビジネス要求を捉え、機械学習チームにフィードバックすることにより、より付加価値の高いソリューションをエンドユーザーに届けます。
⑦ EA(エンタープライズアーキテクチャ)
EA(Enterprise Architecture)とは、企業の業務プロセスや情報システムの標準化、組織の最適化を進めることにより、効率的な組織構造を実現するためのフレームワークです。企業の事業発展とそれを支援する情報システムとの結びつきを強化しており、今後は情報システムだけでなく、ビジネスプロセスとの関連づけ、分析し、統一していくことが重要です。
情報システムとビジネスプロセスを集約することで、企業全体の設計図(=エンタープライズアーキテクチャ)が完成することになります。
EAは以下の4つのアーキテクチャ(4層構造)で構成されます。
| 層 | 名称 | 対象 | 主な成果物 |
|---|---|---|---|
| BA | 政策・業務体系(Business Architecture) | 業務プロセス | 業務説明書、機能構成図、DFD、業務流れ図 |
| DA | データ体系(Data Architecture) | データ構造 | ERD、情報体系整理図(UMLクラス図)、データ定義表 |
| AA | 適用処理体系(Application Architecture) | アプリケーション | 情報システム関連図、情報システム機能構成図 |
| TA | 技術体系(Technology Architecture) | IT基盤 | ネットワーク構成図、ソフトウェア構成図、ハードウェア構成図 |
EAの4層構造は、ビジネス、データ、アプリケーション、テクノロジーの4つのアーキテクチャを用いて、企業が組織の構造と機能を全体最適の観点から分析する枠組みです。
具体例
APIとマッシュアップの関係を、飲食店の予約サイトで見てみましょう。
ある飲食店検索サービスが、以下の外部APIを組み合わせて構築されています。
Google Maps API: 店舗の位置を地図上に表示する機能。自社で地図システムを開発する必要がなく、APIを呼び出すだけで高品質な地図表示が実現できます。
ぐるなびAPI: 店舗の口コミ・評価データを取得。自社でレビュー機能を一から作らなくても、既存の膨大なレビューデータを活用できます。
決済API(Stripe等): オンライン予約時の決済処理を外部サービスに委託。セキュリティの高い決済基盤を自前で構築するコストを削減できます。
このように、複数のWebサービスのAPIを組み合わせて新しいサービスを作る手法がマッシュアップです。ITの深い知識がなくても短期間でアプリケーション開発ができるため、近年注目されています。
試験のポイント
- ・要は「マッシュアップ=複数WebサービスのAPI組合せ、リバースエンジニアリング=既存プログラムから設計抽出(逆がフォワード)、BPR=業務プロセスの抜本的見直し、EA=BA/DA/AA/TAの4層で企業全体を設計」
- ・DevOps=開発+運用の密連携、MLOps=機械学習+運用の密連携も頻出
- ・EA4層の名称と対応する成果物(BAにDFD、DAにERD等)の組み合わせを正確に覚えること
独学で診断士合格を目指すなら
過去問演習・AI添削・テキストPDFまで
すべて揃ったプレミアムプランで合格を掴む!
予備校代の1/10以下で、独学の不安をまるごと解決
- 📝1次試験 過去問演習(全7科目・年度別)無制限プレミアム限定
- 🤖2次試験 AI添削(事例I〜IV・無制限)最適なフィードバックで実力アッププレミアム限定
- 📄科目別テキストPDFダウンロード。印刷して好きな使い方で学習できるプレミアム限定
- 🔖ブックマーク機能で苦手分野・何度も確認したい部分を管理プレミアム限定
- 📊学習記録・成績管理で自分の進捗を可視化プレミアム限定
プレミアムプラン
¥9,800(税込)
自動更新なし / 1年間有効
決済は Stripe(PCI-DSS準拠)で安全に処理されます。カード情報は当サービスに保存されません。