Open棟梁Project - マイクロソフト系技術情報 Wiki
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-[[戻る>開発支援ツール]]

* 目次 [#h9ebedb9]
#contents

*概要 [#cdc3c578]
種々の開発ツールを分析した。

-参考
--開発支援ツールとは? その種類と特徴を、まめてみした。 - OSSコンソーシアム~
https://www.osscons.jp/jowaxn8yr-537/

*IDE [#b818d91a]
IDE:統合開発環境。

-統合開発環境 - Wikipedia~
http://ja.wikipedia.org/wiki/%E7%B5%B1%E5%90%88%E9%96%8B%E7%99%BA%E7%92%B0%E5%A2%83
**特徴 [#w0fabaf8]
-開発者向け
-高い柔軟性
-汎用的に利用可能

**機能 [#v1b771ee]
下記機能を保有している。
-チーム開発
-バージョン管理
-プロジェクト管理
-作成補助(インテリセンス)
-GUIの作成(GUIデザイナ)
-ビルド、デバッグ補助

**Visual Studio [#d8bb498f]
**[[Visual Studio]] [#d8bb498f]
Visual Studioは、VB時代から進化を続けている~
デザイナ操作でGUI開発をサポートするRAD開発ツールと言える。

**Eclipse [#l23f11db]
-Visual Studioはエンタープライズ向けとして多数のユーザを持っている。
-実際に、stack overflowの質問数は、ASP.NET MVCが多いとのこと。
-しかし、Github上のOSSプロジェクト数になると、Node.jsなどのLL言語が勝者。

**参考 [#y8674481]
-[[統合開発環境 (IDE) - .NET 開発基盤部会 Wiki>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?%E7%B5%B1%E5%90%88%E9%96%8B%E7%99%BA%E7%92%B0%E5%A2%83%20%28IDE%29]]

-開発支援ツール徹底調査2008年版~
Visual StudioとEclipse、満足度が高いのは?:ITpro~
http://itpro.nikkeibp.co.jp/article/COLUMN/20080619/308761/

*EUCツール [#fb3f61c9]
エントリ系+条件検索などの単純な画面の開発に適合する。
*EUC、RADツール [#fb3f61c9]

**注意点 [#ya4dfab5]
-ツールに慣れる必要がある(習得は比較的容易)。
**EUCツール [#n2db9be4]
-[[EUC : End User Computing>End User Computing (EUC)]]

-ExcelやAccessなども含まれるが、ここでは、~
「システム開発向けのEUCツール」に言及する。

※ EUCツールとしてはExcelやAccessが最も活用されており、~
 EUCツール界には、Excel VBA最強説というものが存在する。

***特徴 [#tc61d980]
「システム開発向けのEUCツール」は、

-コーディング・レスを訴求ポイントにしているものが多く、~
デザイナだけで設計・開発を行い、コーディングを行わずシステムを生成タイプのものが多い。

-[[FP生産性>https://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%83%B3%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%9D%E3%82%A4%E3%83%B3%E3%83%88%E6%B3%95]]を測定すれば、恐らく、どのツールより高い生産性を示すと思われる。~
(対象となる工程範囲は詳細設計から結合テストまで。基本設計以前やユーザ・テスト以降は含まれない.)

-しかし、どちらも[[IDE>#b818d91a]]より柔軟性が低いので、要求仕様に応えられないケースがある。~
従って、UXを重視したり仕様をコントロールできない案件では問題になり易い。
--エントリ系+条件検索などの単純な画面の開発。
--自部門が使うツールなど、UXが重視されず、仕様を制御できるモノの開発。

-参考
--[見積もり編]FPを過信してはいけない | 日経 xTECH(クロステック)~
http://tech.nikkeibp.co.jp/it/article/COLUMN/20080528/304554/

***注意点 [#ya4dfab5]
-ツールに慣れる必要がある。

-ベンダーロックインの危惧がある。

-ツールによっては
--実装できない処理がある。
--採用できない処理方式がある。
--アドオン開発のI/Fがあっても、~
アドオン開発が増えると逆効果になる。

**EUCツールの現状 [#c971f522]
**RADツール [#a5ac0702]
RAD : Rapid Application Development

-4GL懐古主義者の~
「企業アプリ開発には、Javaは行き詰まっている」という主張~
http://www.anlyznews.com/2010/11/4gljava.html
***RADツールの現状 [#c971f522]
強力な[[Visual Studio]]などの[[IDE>#b818d91a]]との競争に晒され、衰退傾向。

--あまり現実的な主張に思えなかった。~
IT Proが、エンドユーザー開発はExcelで~
満たされているため、4GL製品は下火になったと指摘している。
-色々なプロダクトが開発されてきたが、強力な[[IDE>#b818d91a]]との競争に晒され、衰退傾向。

-記者のつぶやき - “4GL・MML・EUD”は死んだ?それとも生きている?:ITpro~
http://itpro.nikkeibp.co.jp/article/COLUMN/20071003/283725/
-昨今のトレンドを分析すると、下記のように強力な[[IDE>#b818d91a]]との差別化を図っている模様。
--RAD・EUC機能の追加
--クロスプラットフォーム対応

--5. 古い4GLアプリは継続的な開発では支障が出る
--6. 4GLが成功するケースは、エンド・ユーザー開発
--7. 現在のエンド・ユーザー開発では、Excelが使われている
--8. 論点が曖昧で、誤解が多い
***プロダクト [#fd7a0b01]

--クラウドに最適化した 4GL アプリケーションを開発してデプロイする~
http://www.ibm.com/developerworks/jp/cloud/library/cl-3gl4glclouddev/~
---皆さんのデータ駆動型クラウド・アプリケーションに最適なプラットフォームは~
3GL ですか、それとも 4GL ですか、あるいはその両方ですか?
---4GLの衰退は、インターネット・ベースのコンピューティングという新しいパラダイムに付いてこれなかったことにある。

--本当に"死んで"いる? さびれゆくコンピュータスキル"トップ10" - 米誌調査~
(1) "死んでいる" or "死につつある"スキルを眺めてみる | マイナビニュース~
http://news.mynavi.jp/articles/2007/05/28/deadskills/
---[[ColdFusion>http://www.adobe.com/jp/products/coldfusion-enterprise.html?sdid=KHOZW&skwcid=AL!3085!3!42622960763!p!!g!!coldfusion&skwcid=AL!3085!3!42622960763!p!!g!!coldfusion&skwcid=AL!3085!3!42622960763!p!!g!!coldfusion&ef_id=JG5QL5jumLEAABV-:20141008145057:s]]
---[[PowerBuilder>http://www.powerbuilder.jp/]]

--Delphiはなぜ廃れた?~
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1129082271

**プロダクト [#fd7a0b01]

-[[4GL系>http://en.wikipedia.org/wiki/Fourth-generation_programming_language]]
--[[PowerBuilder>http://www.powerbuilder.jp/]]
--[[Delphi>http://www.embarcadero.com/jp/products/delphi]]
--Oracle Developer
---Oracle Forms
---Oracle Reports
---.etc
--FoxPro
--Progress
--Informix 4GL
--.etc

-Office
--Excel
--Access

-画面デザインのみ
--[[FileMaker>http://www.filemaker.co.jp/]]
--[[Lotus Notes>http://ja.wikipedia.org/wiki/Lotus_Notes]]
--[[Forguncy>http://www.forguncy.com/]]

***注意点 [#ya4dfab5]
-ツールに慣れる必要がある。
-ベンダーロックインの危惧がある。

***参考 [#af5095c6]
-記者のつぶやき - “4GL・MML・EUD”は死んだ?それとも生きている?:ITpro~
http://itpro.nikkeibp.co.jp/article/COLUMN/20071003/283725/

-クラウドに最適化した 4GL アプリケーションを開発してデプロイする~
http://www.ibm.com/developerworks/jp/cloud/library/cl-3gl4glclouddev/~

-本当に"死んで"いる? さびれゆくコンピュータスキル"トップ10" - 米誌調査~
(1) "死んでいる" or "死につつある"スキルを眺めてみる | マイナビニュース~
http://news.mynavi.jp/articles/2007/05/28/deadskills/
--ColdFusion
--PowerBuilder

-Delphi
--Delphiはなぜ廃れた?~
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1129082271
--Delphiは何故流行らないか?~
http://www.w-frontier.com/delphi/famous.html
--Delphi10の無料版が出たので使ってみた - Qiita~
https://qiita.com/kujirahand/items/926e3459fc51e9a1f476

-4GL懐古主義者の~
「企業アプリ開発には、Javaは行き詰まっている」という主張~
http://www.anlyznews.com/2010/11/4gljava.html

*BRMSツール [#q4984228]
対象業務:分岐や四則演算が複雑で、頻繁に変更するもの。

**注意点 [#r9bd2e8a]
-専門の設計者が必要
-ベンダーロックインの危惧
-ツールによっては
--実装できない処理がある。
--採用できない処理方式がある。

--生産性の向上は詳細設計~単体テストの範囲で期待できる。

**BRMSツールのタイプ [#ke3d220b]
BRMSツールには、以下の2つのタイプが存在する。

-オールインワン型
--Webアプリ全体を固有のツールで開発する。
--開発言語に詳しくなくてもアプリケーションを開発可能。
--生産性(高い)と柔軟性(低い)のトレードオフがあるため~
基幹システムというより部門システムなどの小規模の開発に適合する。

-ルール特化型
--ビジネス・ルールだけを対象にしている。
--複雑なルールが必要なシステムやルールが頻繁に変わるようなシステムに適合。
--オールインワン型ではないので、組み合わせ次第で基幹システムにも適用可能。
--対象業務
---分岐や四則演算が複雑で、頻繁に変更するもの。


**参考情報 [#n43fc29d]
-「GeneXus, Wagby, Web Performer 徹底比較セミナー」でわかったこと-ジャスミンソフト日記~
http://yoshinorinie.hatenablog.com/entry/2014/02/12/093632
--[[Wagby>http://wagby.com/]]
--[[Genexus>http://www.genexus.com/japan/genexus-japan?ja]]
--[[WebPerformer>http://www.canon-soft.co.jp/product/web_performer/]]

-[[SmartBPM>http://www.pega.com/jp/products/smartbpm]]

-ITpro
--NC特集 - 「超高速開発」が日本を救う~
http://itpro.nikkeibp.co.jp/article/NC/20120309/385541/
--記者の眼 - あなたの知らない超高速開発~
http://itpro.nikkeibp.co.jp/article/Watcher/20120316/386842/

-超高速開発ツールはWebアプリケーションに革新をもたらすか! IT Leaders~
http://it.impressbm.co.jp/articles/-/11050

*パッケージ・アドオン [#z04491eb]
*パッケージ・アドオン系 [#z04491eb]

-古くからパッケージ・アドオン開発用の言語や開発ツールが提供されている。
--SAP:[[ABAP>http://ja.wikipedia.org/wiki/ABAP]]
--[[Dynamics AX]]:[[X++、AOT>Dynamics AX開発 (AOT)]]
--[[Dynamics CRM]]:[[CRMのカスタマイズ]]
---ソリューションを使用した拡張機能のパッケージ化および配布~
https://msdn.microsoft.com/ja-jp/library/gg334530.aspx

-近年は、パッケージ側がWebAPIを提供するので、~
HTML5でクライアントを開発するパターンが主流になっている。

-MicrosoftはRAD開発環境であるVisual Studioを提供している。~
このため[[Dynamics CRM]]のアドオン開発(データアクセス)に~
[[LINQ]]を採用するなど製品間の連携にも力を入れている。

**SAP [#y25728e8]
SAP Fiori

-HTML5対応のシンプルで使いやすい~
アプリ群「SAP Fiori」SAPジャパン ブログ~
-HTML5対応のシンプルで使いやすいアプリ群「SAP Fiori」~
http://www.sapjp.com/blog/archives/3711
-Developing Mobile Apps for Microsoft Dynamics AX 2012 R3~
https://www.microsoftpressstore.com/articles/article.aspx?p=2240846&seqNum=4

PGK側がWebAPIを提供するので、~
HTML5でクライアントを開発する。
**Dynamics [#lf872b73]
-参考:[[Dynamicsのカスタマイズ]]

**Dynamics [#lf872b73]
***CRM [#o2d1576e]
-Dynamics CRM SDK~
http://www.infoq.com/jp/news/2011/08/dynamics-platform
-参考:[[CRMのカスタマイズ]]

-設計思想
--Visual Studioデザイナを使用してリポジトリに情報を溜めるイメージ
---FileMakerのように、画面をデザイナで作るとDBテーブルも自動的に作成される。
---上記の画面定義(DBテーブル自動的作成)とJavaScriptイベント定義のみで開発。
***AX [#z4c92d7d]
リッチクライアントであり、~
Dynamics CRMとアーキテクチャが異なる。

--基本1画面・1テーブルとなっている。
--パッケージなので実際に動く基本形の画面が存在する。
--自動生成ツールと言うよりも、アドオンのEUC支援ツールの位置付け。
-参考:[[Dynamics AX開発 (AOT)]]

-ポイント
--設計情報の入力I/Fに専用ツールを採用
--ラウンド・トリップ開発に非対応。
--設計情報の入力フォーマットやテンプレート修正量不可
*統合CASEツール [#xb5fa00b]
ソフトウェアの設計・開発・保守といった各プロセスの作業をコンピュータで支援する。~
多くの統合CASEツールは、DFDやDOAの設計情報をリポジトリに格納し、~
[[リポジトリを使用して自動生成を行う>開発支援ツールの自動生成方式#ed279100]]自動生成方式を採用している。

--カスタマイズ
---業務的な定義も必要
---柔軟性に難あり、例えば一覧メンテ処理は実装できない
---(必ず[一覧表示] → [詳細表示] → [データ修正]が必須)
---アドオン開発をするときは他の開発ツールを併用~
(Dynamics CRM SDK、Visual Studio、Excel)

--Dynamics CRM SDK
---Dynamics CRMの生成したDBテーブルにアクセスする場合は付属のSDKを使用する
---SDKはLINQ to CRMを前提としている(直接アクセスはセルフサポート扱い)~
---LINQ を使用したクエリの構築~
http://msdn.microsoft.com/ja-jp/library/gg328328.aspx
**分類 [#y658d518]
統合CASEツールのサブコンポーネントは、以下の2種類に分類される。

***AX [#z4c92d7d]
リッチクライアントであり、~
Dynamics CRMとアーキテクチャが異なる。
***上流CASEツール [#n9e9794d]
ソフトウェアの分析・設計工程に関するツール群
-図作成ツール
-報告書作成ツール
-分析ツール
-, etc.

-参考:[[Dynamics AX開発 (AOT)]]
***下流CASEツール [#o230ee1f]
-データベーススキーマ生成ツール
-プログラム生成ツール
-実装ツール
-テストツール
-構成管理ツール

*自動生成ツール [#ef762170]
-[[自動生成のいろいろ]]
**参考 [#d59def18]
-Computer Aided Software Engineering - Wikipedia~
https://ja.wikipedia.org/wiki/Computer_Aided_Software_Engineering

-情報システム用語事典:CASE(しーえいえすいー) - ITmedia エンタープライズ~
http://www.itmedia.co.jp/im/articles/1109/09/news128.html

-統合CASEツールの類は何故、廃れたのか? - OSSコンソーシアム~
https://www.osscons.jp/joeii3bn2-537/

*参考 [#q110bf36]

**エンタープライズ分野 [#e27b2b09]
***EclipseとVisual Studio [#c6af4749]
-開発支援ツール徹底調査 2009
--マイクロソフトが1、2位を独占 利用数はMS Project が圧倒:ITpro~
http://itpro.nikkeibp.co.jp/article/COLUMN/20090713/333713/
--EclipseとVisual Studioの2強対決 総合満足度でEclipse が1位を堅持:ITpro~
http://itpro.nikkeibp.co.jp/article/COLUMN/20090713/333732/

***古いプログラミング言語 [#qc95eb89]
-古いプログラミング言語がなくならない理由~
http://readwrite.jp/archives/13680

-COBOL
--既存資産というものがあるので、一定のニーズが維持される。
---COBOLコンソーシアム - 増え続けるCOBOL資産・必要とされ続けるCOBOL技術者~
http://www.cobol.gr.jp/knowledge/report/report002/index.html
--若い世代が使用しない言語は、将来廃れる可能性がある。
---焦点を読む - 損保ジャパンがCOBOL一掃を決断 金融機関が変われば、IT業界も変わる:ITpro~
http://itpro.nikkeibp.co.jp/atcl/column/14/531236/101300035/
--COBOL will outlive us all  ITworld~
http://www.itworld.com/article/2832862/it-management/cobol-will-outlive-us-all.html

**サービス分野 [#i1cf01b3]
-Is Node.js better than ASP.NET?~
https://thomasbandt.com/is-nodejs-better-than-aspnet

----
Tags: [[:.NET開発]], [[:ツール類]]


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS