SlideShare una empresa de Scribd logo
1 de 47
基盤の改善から既存アプリケーションの改善まで~既存資産と.NET~ マイクロソフト株式会社 デベロッパー & プラットフォーム統括本部 開発ツール部 西 拓生 ロバート
スピーカー紹介 / 略歴 Name: Takuo Robert Nishi // 日系2世アメリカ人 1998年~2000年 フリーランス デザイナー/イラストレーター/プログラマーとして活動開始 (米国カリフォルニア) 主に Web 系:JavaScript, CSS, PERL/CGI, PHP 2000年~2001年 Web 開発会社勤務 (米国アトランタ) デザイナー・アート ディレクター 兼 Web デベロッパー 2001年~2004年 アプリケーション開発会社設立 (米国アトランタ) 社内アプリ、Web サイト、SEO、業務プロセス改善、ブランディング 2000年~2004年 美術大学にて Photoshop と Illustrator講師 (米国アトランタ) 2004年~2005年 大学に戻る 国際関係・国際法律専攻 (卒業) 2006年~現在 マイクロソフト株式会社 2006年~2007年:エンジニアとして下記プロダクトに携わる Windows Server 2003, Systems Management Server 2003, Operations Manager 2000/2005, System Center 製品シリーズ 2007年~現在:テクニカル プロダクト マネージャとして下記に携わる Visual Studio Team System, Visual SourceSafe, 開発プロセス改善 ロバートは、ここで見つかります: Blog) http://blogs.msdn.com/tanishi Twitter) robertnishi
アジェンダ マイクロソフトのアプリケーション基盤:.NETFramework VB 資産の .NET 移行 Java 資産や PHP 資産と .NET の整合性
マイクロソフトのアプリケーション基盤:.NETFramework
アプリケーション形態の変化 .NET + Visual Studio のスキルで対応可能 RIA Smart Client 組込みアプリ Client / Server クラウド モバイル アプリ ブラウザ アプリ
アプリケーション形態の変化 単一のフレームワークで様々な環境に対応 クラウド 携帯電話 クライアント サーバー ブラウザー 習得済み技術や資産の再利用 様々な環境・プラットフォームに対応!
Microsoft .NET とは .NET は、すべての層のアプリケーションに、包括的かつ一貫性のあるプログラミング モデルと API の共通セットを提供します .NET は、好みのプログラミング言語で、ソフトウェア、サービス、デバイスを問わず、希望する方法で機能するアプリケーションをビルドできるようにします .NET を使用して、開発者の着想を、すばやく、機能豊富で応答性が高い、人々が使いたくなるアプリケーションとして実現できます
.NET がもたらす価値 堅牢性 一貫性 魅力 優れたエンド ユーザー  エクスペリエンス 強力かつ安全なアプリケーション基盤 包括的かつ接続型のアプリケーションの実現
.NET が実現するアプリケーションの堅牢性 高い安全性を備え、セキュアなアプリケーションを構築することを支援します。 アプリケーションの安全な実行 アプリケーションの状況とセキュリティ ポリシーを判断しセキュリティ設定を適用 アクセス可能なリソースの種類および実行可能な操作の制限 不正なメモリ利用を実行時にチェック 開発者のミスを極力防ぎ、安全なアプリケーションの構築 アプリケーションの種類に応じて予測される脅威への対応を標準で提供
.NET で実現する開発の一貫性 .NET は様々なソフトウェア、サービス、デバイスに対して、使い慣れた開発言語を利用して一貫した開発モデルでの開発を行う事を支援します。 使い慣れた生産性の高い開発言語による開発 すべての機能を VisualBasic、C# などの単一の .NET 言語で実装可能 IronPython、IronRuby などの動的言語や 3rd Party で提供されている.NET 対応 COBOL などを利用可能 様々なディバイスに対して一貫した開発モデルを適用 Windows アプリケーション、Web アプリケーション、モバイル アプリケーションに統一された UI デザイン、ロジック実装の方法を提供 Web サービスの業界標準へ対応 WS-*、REST、RSS などの Web サービスにおける業界標準に単一の機能を使用して対応
.NET で実現するアプリケーションの魅力 開発者の発想を素早く実装し、エンドユーザーの生産性を高める事を支援します。 エンドユーザーの生産性向上を支援する優れた表現能力 操作ミスや学習コストを低減する直感的データ表現や操作方法を実現可能 ツールとの連携による直感的なデザインの実現 VisualStudio や ExpressionBlend を活用することで、開発者やデザイナーの能力や発想を効率よく、アプリケーションに反映 ExpressionBlend では画面に動きを付けたり、部品の見た目のカスタマイズなどを行う事が可能 優れた拡張性とパートナー、コミュニティによる拡張部品 ユーザーインターフェイス 部品をはじめとする様々な拡張部品がパートナーやコミュニティから提供されており、アプリケーションをより操作性の高いものへと拡張可能
.NET がもたらす価値 堅牢性 一貫性 魅力 優れたエンド ユーザー  エクスペリエンス 強力かつ安全なアプリケーション基盤 包括的かつ接続型のアプリケーションの実現
VIDEO: マイクロソフトが目指す10年後
マイクロソフト基盤
逆境の中で Opportunity を作る .NETFramework によるビジネス支援 ビジネス戦略の真髄 短期での要求が激減する中 長期的に考える アドバンテージ ビジネスにおいて IT に対する要求レベル 現在の経済事情 ダウンサイズ Do more with less 価値 想定内 乗り遅れ始め 競合が増える中 差別化をはかる ? ? ? イノベーション 少ないリソースで多くを遂げることが難しくなっていると言う事実 時間 また、差別化を図るアプリケーション開発を積極的に取り組むことにより、市場において競合他社より一歩先の場に位置付けることが可能になります マイクロソフトのアプリケーション基盤と開発ツールを用いて、差別化を図るソフトウェアを素早く開発し、経済状況が芳しくない中でもビジネス強化を見込めます
.NETFramework の柔軟性 Communication .NETFramework は高い親和性を兼ね備えたプラットフォームであるため、環境に応じたベスト プラクティスをプラットフォーム レベルで提供できます。 また、業界標準に準拠することにより、他社プラットフォームとの高い相互運用性を実現します。管理者や技術者にかかる負担を下げながらも、基盤の改善を進め、ビジネス効率を上げて行くことが実現できます。 Core Workflow Web PHP Data Client Java
VB 資産の .NET 移行
VB資産を .NET 化する利点は? 展開が楽になる: 配置の柔軟性 ClickOnce 保守が楽になる さようなら、DLLHell アプリケーションのパフォーマンス向上 .NETFramework に処理を任せる
展開が楽になる: 配置の柔軟性 配置は従来のVB6アプリケーションの頭痛の種 バージョンアップ版のインストールを徹底しづらい ClickOnce .NET Framework 2.0で導入 ノータッチデプロイメントの長所をそのままに短所を改善
保守が楽になる DLL Hellとは DLL の更新により、更新前のバージョンを利用していたアプリケーションが動かなくなる バージョンごとに別々の DLL ファイルを作成した結果、同じような DLL があふれかえる DLL Hellの原因 そして、DLL Hellの終焉
アプリケーションのパフォーマンス向上 アプリケーション アプリケーション アプリケーション アプリケーション アプリケーション アプリケーション アプリケーション アプリケーション内での処理 カスタム クラス ライブラリ      .NET Framework クラスライブラリ Visual Basic ランタイム 共通言語ランタイム Operating System Visual Basic 6.0 Visual Basic 2008 .NET Framework とアプリケーション (VB 6.0 との比較)
VB 資産を .NET 化するには 【事実】コストは伴います 時間 技術スキル (VB.NET) 開発ツール (Visual Studio) 【事実】サポートするメカニズムがあります トレーニング メニュー  マイクロソフト コンサルティング サービス パートナー様 ホワイトペーパー ガイドライン サードパーティー移行ツール
.NET 化計画時の検討要素 (1) アプリケーションのアップグレード VB アプリケーションのアップグレード プロセスを適用する 必要に応じて機能を追加 ビジネスの範囲を広げる アップグレードの利点 以前の投資の大部分が (特にビジネス ロジックの領域で) 活用できる アプリケーションを書き換えるのに比べて、バグが混入する可能性が低い 特に自動アップグレード プロセスを使用した場合に顕著になる 既存の資産を活かす
.NET 化計画時の検討要素 (2) アプリケーションの再利用 アプリケーションを更新する代わり アプリケーションの上に層を追加して、組織内の新しい Visual Basic .NET システムと相互運用できるようにする 統合を目的としてアプリケーションを更新する場合 Visual Basic 6.0 システムと Visual Basic .NET の両方のシステムをメンテナンスする必要が出てくる 短期ソリューション:.NET 化の第一歩 既存の資産をそのまま利用
.NET 化計画時の検討要素 (3) アプリケーションの書き換え 最初から完全に書き換えること以外にアプリケーションを更新する方法がない場合 元のアプリケーションを破棄して新しく作り直す ビジネスの運用手順が徐々に変化し、アプリケーションの妥当性がなくなった場合 アプリケーションの大部分、またはすべてを書き換える コードがメンテナンス不可能なほど冗長、ドキュメントが古い、アプリケーションが複雑になりすぎた 複数のバージョンのアプリケーションがさまざまな開発者によって作成され、最新版に対して作業できる人が現在ではだれもいない アプリケーションを書き換えることの利点 最先端のテクノロジを使用して完全に新しいデザインを自由に作 アプリケーションを書き換えることの欠点 既存のアプリケーションの再開発であっても、新しいアプリケーションを作成することは、他の選択肢よりも費用がかかり、リスクも大きい 新しいアプリケーションを書き換える場合、既存のアプリケーションに対するすべての投資を無駄にすることになる 既存の資産の見直し・作り直し
.NET 化計画時の検討要素 (4) アプリケーションの置き換え アプリケーションを置き換えるのに適したパッケージを探す アプリケーションが行っていた作業を外部に委託 現在の要件に完全に適合するパッケージが存在する可能性は低いため、ビジネス モデルを変更してパッケージに歩み寄る (非現実的) 既存の資産を廃止
検討マトリックス
最新バージョンへの移行の利点
Java 資産や PHP 資産と .NET の整合性
Web サービス Interoperability Java アプリケーション .NET アプリケーション Web アプリケーション Web アプリケーション Java Server Pages Web Service Client Web Service Client  Web Service Interface Web Service Interface Microsoft .NET 3.5 IBM WebSphere Java EE Enterprise Java Beans C# Middle Tier Components JDBC Oracle
.NET のスマート クライアント .NET スマート クライアント Web サービス Interoperability Web Service クライアント  Web Service Interface Web Service Interface Microsoft .NET 3.5 IBM WebSphere Java EE Enterprise Java Beans C# Middle Tier Components JDBC Oracle
PHP Web アプリケーション Apache Axis2/C Web サービス Interoperability Web Service クライアント  Web Service Interface Microsoft .NET 3.5 C# Middle Tier Components
.NET サービス層 WS-* Advanced Web Services による Message-level Security Web Service Interoperability Service to Service Interoperability WS-* Interface WS-* Interface WS-* Interface .NET OrderProcessing Service PHP Order Processing Service Java Order Processing Service .NET C# WCF Service WSO2 Web Services Framework for PHP WSO2 Web Services Application Server ADO.NET Data Access PHP Data Access JDBC Data Access 他の RDBMs
まとめ Smart Client 組込みアプリ RIA クラウド Client / Server モバイル アプリ ブラウザ アプリ 競争力の強化へ 開発コスト 生産性 統一アプリケーション基盤 基盤を活用した開発 開発期間
再度・マイクロソフト基盤
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation.  Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.  MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
appendix
Microsoft .NET.NET はマイクロソフトテクノロジーの代名詞 .NET は 情報、人、システム、デバイスをつなぐためのコンセプト 人と人の相互作用 人とモノの相互作用 モノとモノの相互作用
.NET Framework 採用の理由 開発生産性 強力な統合開発環境 VBアプリケーション開発の延長線上での開発が可能 クライアントからデータアクセスまで同一技術で実現可能 既存資産の有効活用 VB アプリケーションや ASP アプリケーションからの移行が容易 豊富な開発要員(Visual Basic 経験者) 一環された UI による新しい開発スタイルへの容易な移行 多彩なユーザインターフェイス Web フォーム / Windows フォームを状況によって選択可能 スマートクライアント,スマートデバイス, Office クライアント  複雑な GUI を実現するコントロールが用意されている 信頼性、将来性 高いパフォーマンス、次世代の分散システム構築技術として注目 Windows DNA 技術者からのスキルシフトが容易 Web サービス、XMLへの対応によりバックエンドとシームレスな連携が可能
Interoperability を容易に 一環した API セットで様々なプロトコルを統一する Tools, Frameworks, SDKs BizTalk Services –“クラウドの Interop” Federated Identity Federated Connectivity Federated Workflow BizTalk Server – “Interop 製品” LOB applications: SAP  Siebel Applications PeopleSoft Enterprise JD EdwardsOneWorld JD Edwards     Enterprise One B2B standards: XML EDI (EDIFACT, ANSI X12, HIPAA) AS2 SWIFT HL7 RosettaNet Legacy (IBM): CICS, IMS 3270, APPC COBOL, RPG DB2, VSAM Message buses: WebSphere MQ  MSMQ/MSMQT TIBCO Rendezvous TIBCO Enterprise    Message Service Other formats: SQL Server SharePoint Oracle DBMS File, FTP HTTP, SOAP POP3 / SMTP Windows Communication Foundation – “Framework 内の Interop” Web 2.0 POX REST JSON RSS/ATOM Security: WS-Security, WS-SecureConversation, WS-Trust  Reliability and Transactions: WS-Reliable Messaging, WS-Coordination, WS-AtomicTransaction Unified protocols: ASMX WSE .NET Remoting COM+ MSMQ Messaging:  SOAP, WS-Addressing, MTOM  Metadata: WSDL, WS-MetadataExchange, WS-Policy
参考情報 VBマイグレーション センター http://www.microsoft.com/japan/msdn/vbasic/migration/ VB マイグレーション Tips http://msdn.microsoft.com/ja-jp/vbasic/cc707256.aspx Visual Basic .NET へのアップグレードを円滑に行うための Visual Basic 6.0 アプリケーションの準備 http://msdn.microsoft.com/ja-jp/library/aa260644(VS.60).aspx MSDN http://www.microsoft.com/japan/msdn/ Visual Basicデベロッパー センター http://www.microsoft.com/japan/msdn/vbasic/ Visual Studioデベロッパー センター http://www.microsoft.com/japan/msdn/vstudio/ ASP.NETデベロッパー センター http://www.microsoft.com/japan/msdn/asp.net/ スマート クライアント デベロッパー センター http://www.microsoft.com/japan/msdn/smartclient/ 導入事例紹介 http://www.microsoft.com/japan/showcase/
PLUS ALPHA
マイグレーションを始める前に やるか or やらないか
バージョンの遷移 ライブラリと CLR の変遷 3.5 Add 3.0 3.0 Keep Add 1.0 1.1 2.0 2.0 2.0 V-UP Keep Keep V-UP 1.0 1.1 2.0 2.0 2.0 V-UP Keep Keep V-UP 包含 共存
共通言語ランタイムとは(Common Language Runtime , CLR) .NET コード (C++, C#, VB.NET, など) CLR メモリ管理 例外処理 セキュリティ スレッド管理 ガベージコレクション その他多数!
バージョン番号とアップグレード 3.5 3.0 .NET 4 Upgrade? .NET 2.0
Side-by-Side 実行同一プロセス配下 3.5 3.0 .NET 2.0 .NET 4 ホストプロセス

Más contenido relacionado

La actualidad más candente

SiteMraiZを使ったサイト構築ご提案資料
SiteMraiZを使ったサイト構築ご提案資料SiteMraiZを使ったサイト構築ご提案資料
SiteMraiZを使ったサイト構築ご提案資料MasahikoShirokawa1
 
WPF & Windows Forms on .NET Core 3.0
WPF & Windows Forms on .NET Core 3.0WPF & Windows Forms on .NET Core 3.0
WPF & Windows Forms on .NET Core 3.0ShinichiAoyagi
 
技術コミュニティリーダーMicrosoft MVPの活躍に学ぶ コミュニティ活動のススメ
技術コミュニティリーダーMicrosoft MVPの活躍に学ぶ コミュニティ活動のススメ技術コミュニティリーダーMicrosoft MVPの活躍に学ぶ コミュニティ活動のススメ
技術コミュニティリーダーMicrosoft MVPの活躍に学ぶ コミュニティ活動のススメRie Moriguchi
 
IBM XCITE Spring 2015 - XPages application success story and IBM Bluemix
IBM XCITE Spring 2015 - XPages application success story and IBM BluemixIBM XCITE Spring 2015 - XPages application success story and IBM Bluemix
IBM XCITE Spring 2015 - XPages application success story and IBM BluemixAtsushi Sato
 
新しい Visual Studio & .NET と新時代のアーキテクチャ
新しい Visual Studio & .NET と新時代のアーキテクチャ新しい Visual Studio & .NET と新時代のアーキテクチャ
新しい Visual Studio & .NET と新時代のアーキテクチャ慎一 古賀
 
patterns & practices "Project Silk" に見る HTML5 とモダンブラウザのための Web 開発の今後
patterns & practices "Project Silk" に見る HTML5 とモダンブラウザのための Web 開発の今後patterns & practices "Project Silk" に見る HTML5 とモダンブラウザのための Web 開発の今後
patterns & practices "Project Silk" に見る HTML5 とモダンブラウザのための Web 開発の今後Akira Inoue
 
NSA NB委員会セミナー「モバイルアプリ開発業務におけるmonacaの活用」
NSA NB委員会セミナー「モバイルアプリ開発業務におけるmonacaの活用」NSA NB委員会セミナー「モバイルアプリ開発業務におけるmonacaの活用」
NSA NB委員会セミナー「モバイルアプリ開発業務におけるmonacaの活用」アシアル株式会社
 

La actualidad más candente (7)

SiteMraiZを使ったサイト構築ご提案資料
SiteMraiZを使ったサイト構築ご提案資料SiteMraiZを使ったサイト構築ご提案資料
SiteMraiZを使ったサイト構築ご提案資料
 
WPF & Windows Forms on .NET Core 3.0
WPF & Windows Forms on .NET Core 3.0WPF & Windows Forms on .NET Core 3.0
WPF & Windows Forms on .NET Core 3.0
 
技術コミュニティリーダーMicrosoft MVPの活躍に学ぶ コミュニティ活動のススメ
技術コミュニティリーダーMicrosoft MVPの活躍に学ぶ コミュニティ活動のススメ技術コミュニティリーダーMicrosoft MVPの活躍に学ぶ コミュニティ活動のススメ
技術コミュニティリーダーMicrosoft MVPの活躍に学ぶ コミュニティ活動のススメ
 
IBM XCITE Spring 2015 - XPages application success story and IBM Bluemix
IBM XCITE Spring 2015 - XPages application success story and IBM BluemixIBM XCITE Spring 2015 - XPages application success story and IBM Bluemix
IBM XCITE Spring 2015 - XPages application success story and IBM Bluemix
 
新しい Visual Studio & .NET と新時代のアーキテクチャ
新しい Visual Studio & .NET と新時代のアーキテクチャ新しい Visual Studio & .NET と新時代のアーキテクチャ
新しい Visual Studio & .NET と新時代のアーキテクチャ
 
patterns & practices "Project Silk" に見る HTML5 とモダンブラウザのための Web 開発の今後
patterns & practices "Project Silk" に見る HTML5 とモダンブラウザのための Web 開発の今後patterns & practices "Project Silk" に見る HTML5 とモダンブラウザのための Web 開発の今後
patterns & practices "Project Silk" に見る HTML5 とモダンブラウザのための Web 開発の今後
 
NSA NB委員会セミナー「モバイルアプリ開発業務におけるmonacaの活用」
NSA NB委員会セミナー「モバイルアプリ開発業務におけるmonacaの活用」NSA NB委員会セミナー「モバイルアプリ開発業務におけるmonacaの活用」
NSA NB委員会セミナー「モバイルアプリ開発業務におけるmonacaの活用」
 

Similar a 基盤の改善から既存アプリケーションの改善

Solution semniar vs2013_multi_device-1209-new
Solution semniar vs2013_multi_device-1209-newSolution semniar vs2013_multi_device-1209-new
Solution semniar vs2013_multi_device-1209-newShotaro Suzuki
 
Five Steps to Culture Change を日本語で解説する 2020/11/06
Five Steps to Culture Change を日本語で解説する 2020/11/06Five Steps to Culture Change を日本語で解説する 2020/11/06
Five Steps to Culture Change を日本語で解説する 2020/11/06Issei Hiraoka
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向Tsutomu Ogasawara
 
レガシー Web からの脱却 ~ 開発者が次に目指すべき Web アプリの姿とは?
レガシー Web からの脱却 ~ 開発者が次に目指すべき Web アプリの姿とは?レガシー Web からの脱却 ~ 開発者が次に目指すべき Web アプリの姿とは?
レガシー Web からの脱却 ~ 開発者が次に目指すべき Web アプリの姿とは?Akira Inoue
 
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像Akira Inoue
 
Interactive connection2
Interactive connection2Interactive connection2
Interactive connection2Takao Tetsuro
 
【17-D-6】.NETアセンブリの宿命
【17-D-6】.NETアセンブリの宿命【17-D-6】.NETアセンブリの宿命
【17-D-6】.NETアセンブリの宿命Developers Summit
 
【BS10】Microsoft と GitHub の開発エコシステムで、開発にドライブをかけよう!
【BS10】Microsoft と GitHub の開発エコシステムで、開発にドライブをかけよう!【BS10】Microsoft と GitHub の開発エコシステムで、開発にドライブをかけよう!
【BS10】Microsoft と GitHub の開発エコシステムで、開発にドライブをかけよう!日本マイクロソフト株式会社
 
Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.Recruit Technologies
 
Microsoft MVP から見たクラウド サービスの現状と今後について
Microsoft MVP から見たクラウド サービスの現状と今後についてMicrosoft MVP から見たクラウド サービスの現状と今後について
Microsoft MVP から見たクラウド サービスの現状と今後についてIIJ
 
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイルVisual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイルAkira Inoue
 
Enterprise agile dev ops-and-xr-techonology-adoption-for-fintech-20180324
Enterprise agile dev ops-and-xr-techonology-adoption-for-fintech-20180324Enterprise agile dev ops-and-xr-techonology-adoption-for-fintech-20180324
Enterprise agile dev ops-and-xr-techonology-adoption-for-fintech-20180324Shotaro Suzuki
 
HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解Monaca
 
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~Yuki Ando
 
Microsoft 365 を使い、よりよい業務環境の在り方と仕事への向き合い方を考えよう
Microsoft 365 を使い、よりよい業務環境の在り方と仕事への向き合い方を考えようMicrosoft 365 を使い、よりよい業務環境の在り方と仕事への向き合い方を考えよう
Microsoft 365 を使い、よりよい業務環境の在り方と仕事への向き合い方を考えようAi Hirano
 

Similar a 基盤の改善から既存アプリケーションの改善 (20)

Force.com開発基礎
Force.com開発基礎Force.com開発基礎
Force.com開発基礎
 
Solution semniar vs2013_multi_device-1209-new
Solution semniar vs2013_multi_device-1209-newSolution semniar vs2013_multi_device-1209-new
Solution semniar vs2013_multi_device-1209-new
 
Five Steps to Culture Change を日本語で解説する 2020/11/06
Five Steps to Culture Change を日本語で解説する 2020/11/06Five Steps to Culture Change を日本語で解説する 2020/11/06
Five Steps to Culture Change を日本語で解説する 2020/11/06
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向
 
レガシー Web からの脱却 ~ 開発者が次に目指すべき Web アプリの姿とは?
レガシー Web からの脱却 ~ 開発者が次に目指すべき Web アプリの姿とは?レガシー Web からの脱却 ~ 開発者が次に目指すべき Web アプリの姿とは?
レガシー Web からの脱却 ~ 開発者が次に目指すべき Web アプリの姿とは?
 
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
 
Interactive connection2
Interactive connection2Interactive connection2
Interactive connection2
 
【17-D-6】.NETアセンブリの宿命
【17-D-6】.NETアセンブリの宿命【17-D-6】.NETアセンブリの宿命
【17-D-6】.NETアセンブリの宿命
 
【BS10】Microsoft と GitHub の開発エコシステムで、開発にドライブをかけよう!
【BS10】Microsoft と GitHub の開発エコシステムで、開発にドライブをかけよう!【BS10】Microsoft と GitHub の開発エコシステムで、開発にドライブをかけよう!
【BS10】Microsoft と GitHub の開発エコシステムで、開発にドライブをかけよう!
 
Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.
 
Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.
 
[GrapeCity Web TECH FORUM 2018]グレープシティJavaScript製品のご紹介 活用のコツと開発のポイント
[GrapeCity Web TECH FORUM 2018]グレープシティJavaScript製品のご紹介 活用のコツと開発のポイント[GrapeCity Web TECH FORUM 2018]グレープシティJavaScript製品のご紹介 活用のコツと開発のポイント
[GrapeCity Web TECH FORUM 2018]グレープシティJavaScript製品のご紹介 活用のコツと開発のポイント
 
Microsoft MVP から見たクラウド サービスの現状と今後について
Microsoft MVP から見たクラウド サービスの現状と今後についてMicrosoft MVP から見たクラウド サービスの現状と今後について
Microsoft MVP から見たクラウド サービスの現状と今後について
 
20021007
2002100720021007
20021007
 
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイルVisual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
 
Enterprise agile dev ops-and-xr-techonology-adoption-for-fintech-20180324
Enterprise agile dev ops-and-xr-techonology-adoption-for-fintech-20180324Enterprise agile dev ops-and-xr-techonology-adoption-for-fintech-20180324
Enterprise agile dev ops-and-xr-techonology-adoption-for-fintech-20180324
 
HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解
 
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
 
【BS2】.NET 6 最新アップデート
【BS2】.NET 6 最新アップデート【BS2】.NET 6 最新アップデート
【BS2】.NET 6 最新アップデート
 
Microsoft 365 を使い、よりよい業務環境の在り方と仕事への向き合い方を考えよう
Microsoft 365 を使い、よりよい業務環境の在り方と仕事への向き合い方を考えようMicrosoft 365 を使い、よりよい業務環境の在り方と仕事への向き合い方を考えよう
Microsoft 365 を使い、よりよい業務環境の在り方と仕事への向き合い方を考えよう
 

Último

LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 

Último (11)

LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 

基盤の改善から既存アプリケーションの改善

  • 2. スピーカー紹介 / 略歴 Name: Takuo Robert Nishi // 日系2世アメリカ人 1998年~2000年 フリーランス デザイナー/イラストレーター/プログラマーとして活動開始 (米国カリフォルニア) 主に Web 系:JavaScript, CSS, PERL/CGI, PHP 2000年~2001年 Web 開発会社勤務 (米国アトランタ) デザイナー・アート ディレクター 兼 Web デベロッパー 2001年~2004年 アプリケーション開発会社設立 (米国アトランタ) 社内アプリ、Web サイト、SEO、業務プロセス改善、ブランディング 2000年~2004年 美術大学にて Photoshop と Illustrator講師 (米国アトランタ) 2004年~2005年 大学に戻る 国際関係・国際法律専攻 (卒業) 2006年~現在 マイクロソフト株式会社 2006年~2007年:エンジニアとして下記プロダクトに携わる Windows Server 2003, Systems Management Server 2003, Operations Manager 2000/2005, System Center 製品シリーズ 2007年~現在:テクニカル プロダクト マネージャとして下記に携わる Visual Studio Team System, Visual SourceSafe, 開発プロセス改善 ロバートは、ここで見つかります: Blog) http://blogs.msdn.com/tanishi Twitter) robertnishi
  • 3. アジェンダ マイクロソフトのアプリケーション基盤:.NETFramework VB 資産の .NET 移行 Java 資産や PHP 資産と .NET の整合性
  • 5. アプリケーション形態の変化 .NET + Visual Studio のスキルで対応可能 RIA Smart Client 組込みアプリ Client / Server クラウド モバイル アプリ ブラウザ アプリ
  • 6. アプリケーション形態の変化 単一のフレームワークで様々な環境に対応 クラウド 携帯電話 クライアント サーバー ブラウザー 習得済み技術や資産の再利用 様々な環境・プラットフォームに対応!
  • 7. Microsoft .NET とは .NET は、すべての層のアプリケーションに、包括的かつ一貫性のあるプログラミング モデルと API の共通セットを提供します .NET は、好みのプログラミング言語で、ソフトウェア、サービス、デバイスを問わず、希望する方法で機能するアプリケーションをビルドできるようにします .NET を使用して、開発者の着想を、すばやく、機能豊富で応答性が高い、人々が使いたくなるアプリケーションとして実現できます
  • 8. .NET がもたらす価値 堅牢性 一貫性 魅力 優れたエンド ユーザー エクスペリエンス 強力かつ安全なアプリケーション基盤 包括的かつ接続型のアプリケーションの実現
  • 9. .NET が実現するアプリケーションの堅牢性 高い安全性を備え、セキュアなアプリケーションを構築することを支援します。 アプリケーションの安全な実行 アプリケーションの状況とセキュリティ ポリシーを判断しセキュリティ設定を適用 アクセス可能なリソースの種類および実行可能な操作の制限 不正なメモリ利用を実行時にチェック 開発者のミスを極力防ぎ、安全なアプリケーションの構築 アプリケーションの種類に応じて予測される脅威への対応を標準で提供
  • 10. .NET で実現する開発の一貫性 .NET は様々なソフトウェア、サービス、デバイスに対して、使い慣れた開発言語を利用して一貫した開発モデルでの開発を行う事を支援します。 使い慣れた生産性の高い開発言語による開発 すべての機能を VisualBasic、C# などの単一の .NET 言語で実装可能 IronPython、IronRuby などの動的言語や 3rd Party で提供されている.NET 対応 COBOL などを利用可能 様々なディバイスに対して一貫した開発モデルを適用 Windows アプリケーション、Web アプリケーション、モバイル アプリケーションに統一された UI デザイン、ロジック実装の方法を提供 Web サービスの業界標準へ対応 WS-*、REST、RSS などの Web サービスにおける業界標準に単一の機能を使用して対応
  • 11. .NET で実現するアプリケーションの魅力 開発者の発想を素早く実装し、エンドユーザーの生産性を高める事を支援します。 エンドユーザーの生産性向上を支援する優れた表現能力 操作ミスや学習コストを低減する直感的データ表現や操作方法を実現可能 ツールとの連携による直感的なデザインの実現 VisualStudio や ExpressionBlend を活用することで、開発者やデザイナーの能力や発想を効率よく、アプリケーションに反映 ExpressionBlend では画面に動きを付けたり、部品の見た目のカスタマイズなどを行う事が可能 優れた拡張性とパートナー、コミュニティによる拡張部品 ユーザーインターフェイス 部品をはじめとする様々な拡張部品がパートナーやコミュニティから提供されており、アプリケーションをより操作性の高いものへと拡張可能
  • 12. .NET がもたらす価値 堅牢性 一貫性 魅力 優れたエンド ユーザー エクスペリエンス 強力かつ安全なアプリケーション基盤 包括的かつ接続型のアプリケーションの実現
  • 15. 逆境の中で Opportunity を作る .NETFramework によるビジネス支援 ビジネス戦略の真髄 短期での要求が激減する中 長期的に考える アドバンテージ ビジネスにおいて IT に対する要求レベル 現在の経済事情 ダウンサイズ Do more with less 価値 想定内 乗り遅れ始め 競合が増える中 差別化をはかる ? ? ? イノベーション 少ないリソースで多くを遂げることが難しくなっていると言う事実 時間 また、差別化を図るアプリケーション開発を積極的に取り組むことにより、市場において競合他社より一歩先の場に位置付けることが可能になります マイクロソフトのアプリケーション基盤と開発ツールを用いて、差別化を図るソフトウェアを素早く開発し、経済状況が芳しくない中でもビジネス強化を見込めます
  • 16. .NETFramework の柔軟性 Communication .NETFramework は高い親和性を兼ね備えたプラットフォームであるため、環境に応じたベスト プラクティスをプラットフォーム レベルで提供できます。 また、業界標準に準拠することにより、他社プラットフォームとの高い相互運用性を実現します。管理者や技術者にかかる負担を下げながらも、基盤の改善を進め、ビジネス効率を上げて行くことが実現できます。 Core Workflow Web PHP Data Client Java
  • 18. VB資産を .NET 化する利点は? 展開が楽になる: 配置の柔軟性 ClickOnce 保守が楽になる さようなら、DLLHell アプリケーションのパフォーマンス向上 .NETFramework に処理を任せる
  • 19. 展開が楽になる: 配置の柔軟性 配置は従来のVB6アプリケーションの頭痛の種 バージョンアップ版のインストールを徹底しづらい ClickOnce .NET Framework 2.0で導入 ノータッチデプロイメントの長所をそのままに短所を改善
  • 20. 保守が楽になる DLL Hellとは DLL の更新により、更新前のバージョンを利用していたアプリケーションが動かなくなる バージョンごとに別々の DLL ファイルを作成した結果、同じような DLL があふれかえる DLL Hellの原因 そして、DLL Hellの終焉
  • 21. アプリケーションのパフォーマンス向上 アプリケーション アプリケーション アプリケーション アプリケーション アプリケーション アプリケーション アプリケーション アプリケーション内での処理 カスタム クラス ライブラリ      .NET Framework クラスライブラリ Visual Basic ランタイム 共通言語ランタイム Operating System Visual Basic 6.0 Visual Basic 2008 .NET Framework とアプリケーション (VB 6.0 との比較)
  • 22. VB 資産を .NET 化するには 【事実】コストは伴います 時間 技術スキル (VB.NET) 開発ツール (Visual Studio) 【事実】サポートするメカニズムがあります トレーニング メニュー マイクロソフト コンサルティング サービス パートナー様 ホワイトペーパー ガイドライン サードパーティー移行ツール
  • 23. .NET 化計画時の検討要素 (1) アプリケーションのアップグレード VB アプリケーションのアップグレード プロセスを適用する 必要に応じて機能を追加 ビジネスの範囲を広げる アップグレードの利点 以前の投資の大部分が (特にビジネス ロジックの領域で) 活用できる アプリケーションを書き換えるのに比べて、バグが混入する可能性が低い 特に自動アップグレード プロセスを使用した場合に顕著になる 既存の資産を活かす
  • 24. .NET 化計画時の検討要素 (2) アプリケーションの再利用 アプリケーションを更新する代わり アプリケーションの上に層を追加して、組織内の新しい Visual Basic .NET システムと相互運用できるようにする 統合を目的としてアプリケーションを更新する場合 Visual Basic 6.0 システムと Visual Basic .NET の両方のシステムをメンテナンスする必要が出てくる 短期ソリューション:.NET 化の第一歩 既存の資産をそのまま利用
  • 25. .NET 化計画時の検討要素 (3) アプリケーションの書き換え 最初から完全に書き換えること以外にアプリケーションを更新する方法がない場合 元のアプリケーションを破棄して新しく作り直す ビジネスの運用手順が徐々に変化し、アプリケーションの妥当性がなくなった場合 アプリケーションの大部分、またはすべてを書き換える コードがメンテナンス不可能なほど冗長、ドキュメントが古い、アプリケーションが複雑になりすぎた 複数のバージョンのアプリケーションがさまざまな開発者によって作成され、最新版に対して作業できる人が現在ではだれもいない アプリケーションを書き換えることの利点 最先端のテクノロジを使用して完全に新しいデザインを自由に作 アプリケーションを書き換えることの欠点 既存のアプリケーションの再開発であっても、新しいアプリケーションを作成することは、他の選択肢よりも費用がかかり、リスクも大きい 新しいアプリケーションを書き換える場合、既存のアプリケーションに対するすべての投資を無駄にすることになる 既存の資産の見直し・作り直し
  • 26. .NET 化計画時の検討要素 (4) アプリケーションの置き換え アプリケーションを置き換えるのに適したパッケージを探す アプリケーションが行っていた作業を外部に委託 現在の要件に完全に適合するパッケージが存在する可能性は低いため、ビジネス モデルを変更してパッケージに歩み寄る (非現実的) 既存の資産を廃止
  • 29. Java 資産や PHP 資産と .NET の整合性
  • 30. Web サービス Interoperability Java アプリケーション .NET アプリケーション Web アプリケーション Web アプリケーション Java Server Pages Web Service Client Web Service Client Web Service Interface Web Service Interface Microsoft .NET 3.5 IBM WebSphere Java EE Enterprise Java Beans C# Middle Tier Components JDBC Oracle
  • 31. .NET のスマート クライアント .NET スマート クライアント Web サービス Interoperability Web Service クライアント Web Service Interface Web Service Interface Microsoft .NET 3.5 IBM WebSphere Java EE Enterprise Java Beans C# Middle Tier Components JDBC Oracle
  • 32. PHP Web アプリケーション Apache Axis2/C Web サービス Interoperability Web Service クライアント Web Service Interface Microsoft .NET 3.5 C# Middle Tier Components
  • 33. .NET サービス層 WS-* Advanced Web Services による Message-level Security Web Service Interoperability Service to Service Interoperability WS-* Interface WS-* Interface WS-* Interface .NET OrderProcessing Service PHP Order Processing Service Java Order Processing Service .NET C# WCF Service WSO2 Web Services Framework for PHP WSO2 Web Services Application Server ADO.NET Data Access PHP Data Access JDBC Data Access 他の RDBMs
  • 34. まとめ Smart Client 組込みアプリ RIA クラウド Client / Server モバイル アプリ ブラウザ アプリ 競争力の強化へ 開発コスト 生産性 統一アプリケーション基盤 基盤を活用した開発 開発期間
  • 36. © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
  • 38. Microsoft .NET.NET はマイクロソフトテクノロジーの代名詞 .NET は 情報、人、システム、デバイスをつなぐためのコンセプト 人と人の相互作用 人とモノの相互作用 モノとモノの相互作用
  • 39. .NET Framework 採用の理由 開発生産性 強力な統合開発環境 VBアプリケーション開発の延長線上での開発が可能 クライアントからデータアクセスまで同一技術で実現可能 既存資産の有効活用 VB アプリケーションや ASP アプリケーションからの移行が容易 豊富な開発要員(Visual Basic 経験者) 一環された UI による新しい開発スタイルへの容易な移行 多彩なユーザインターフェイス Web フォーム / Windows フォームを状況によって選択可能 スマートクライアント,スマートデバイス, Office クライアント 複雑な GUI を実現するコントロールが用意されている 信頼性、将来性 高いパフォーマンス、次世代の分散システム構築技術として注目 Windows DNA 技術者からのスキルシフトが容易 Web サービス、XMLへの対応によりバックエンドとシームレスな連携が可能
  • 40. Interoperability を容易に 一環した API セットで様々なプロトコルを統一する Tools, Frameworks, SDKs BizTalk Services –“クラウドの Interop” Federated Identity Federated Connectivity Federated Workflow BizTalk Server – “Interop 製品” LOB applications: SAP Siebel Applications PeopleSoft Enterprise JD EdwardsOneWorld JD Edwards Enterprise One B2B standards: XML EDI (EDIFACT, ANSI X12, HIPAA) AS2 SWIFT HL7 RosettaNet Legacy (IBM): CICS, IMS 3270, APPC COBOL, RPG DB2, VSAM Message buses: WebSphere MQ MSMQ/MSMQT TIBCO Rendezvous TIBCO Enterprise Message Service Other formats: SQL Server SharePoint Oracle DBMS File, FTP HTTP, SOAP POP3 / SMTP Windows Communication Foundation – “Framework 内の Interop” Web 2.0 POX REST JSON RSS/ATOM Security: WS-Security, WS-SecureConversation, WS-Trust Reliability and Transactions: WS-Reliable Messaging, WS-Coordination, WS-AtomicTransaction Unified protocols: ASMX WSE .NET Remoting COM+ MSMQ Messaging: SOAP, WS-Addressing, MTOM Metadata: WSDL, WS-MetadataExchange, WS-Policy
  • 41. 参考情報 VBマイグレーション センター http://www.microsoft.com/japan/msdn/vbasic/migration/ VB マイグレーション Tips http://msdn.microsoft.com/ja-jp/vbasic/cc707256.aspx Visual Basic .NET へのアップグレードを円滑に行うための Visual Basic 6.0 アプリケーションの準備 http://msdn.microsoft.com/ja-jp/library/aa260644(VS.60).aspx MSDN http://www.microsoft.com/japan/msdn/ Visual Basicデベロッパー センター http://www.microsoft.com/japan/msdn/vbasic/ Visual Studioデベロッパー センター http://www.microsoft.com/japan/msdn/vstudio/ ASP.NETデベロッパー センター http://www.microsoft.com/japan/msdn/asp.net/ スマート クライアント デベロッパー センター http://www.microsoft.com/japan/msdn/smartclient/ 導入事例紹介 http://www.microsoft.com/japan/showcase/
  • 44. バージョンの遷移 ライブラリと CLR の変遷 3.5 Add 3.0 3.0 Keep Add 1.0 1.1 2.0 2.0 2.0 V-UP Keep Keep V-UP 1.0 1.1 2.0 2.0 2.0 V-UP Keep Keep V-UP 包含 共存
  • 45. 共通言語ランタイムとは(Common Language Runtime , CLR) .NET コード (C++, C#, VB.NET, など) CLR メモリ管理 例外処理 セキュリティ スレッド管理 ガベージコレクション その他多数!
  • 47. Side-by-Side 実行同一プロセス配下 3.5 3.0 .NET 2.0 .NET 4 ホストプロセス
  • 48. .NET Framework の歴史 VisualStudio と共に進化 (例外:3.0) 2007 3.5 2006 3.0 2005 2.0 2003 1.1 2002 1.0 6 Years

Notas del editor

  1. .NET の話に入り込む前に、まずはアプリケーションの形態の変化について少しだけ触れさせて下さい。クライアント上で個別に動作するアプリケーションに始まり、ビジネス面においてはクライアント・サーバーのアプリケーションや、ブラウザー アプリケーション。近年においてはスマート クライアントだけにとどまらず、Rich Interactive/Internet Application(RIA) やモバイル アプリケーション… ここには載せていませんが、バーチャル アプリケーション (仮想化されたアプリケーション) そして将来的にはクラウドのアプリケーションと言う風に、同じアプリケーションでありながらも、色んなプラットフォーム上で動作する必要性がでてきています。要は、時代の流れとともに、アプリケーションにはフレキシビリティ・柔軟性が求められるようになっています。ここでは、上に「単一のフレームワークで様々な環境に対応」と書いてありますが、これは何をさすかと言うと、.NET と言う共通のアプリケーション基盤と、Visual Studio と言う開発ツールで .NET 用のアプリケーションを開発することにより、今現在あるニーズと今後のニーズと言ったところにも対応していくことが可能になるように、マイクロソフトは構想をしてきています…と言うことです。マイクロソフトのテクノロジで言うと VB。他のテクノロジで言うとそれは JAVA であったり、Flash であったり、PHP であったり…各プラットフォーム (環境) に合わせて作る。.NET を活用することで、All Platform を通してアプリケーションが活用できる。A secure, reliable, high-performance development framework that enables developers to easily reuse skills and assets across cloud, web, desktop, server and devicesProvides developers with higher levels of abstraction, thus allowing them to focus on the business logicIncreasing developer productivity while preserving compatibility are the key drivers of every .NET release
  2. 今の.NETPillars堅牢性 (けんろうせい).NET は強力で、これまでになく高い安全性を備えているため、信頼性と拡張性の高いソリューションをビルド、テストおよび配置するのに役立ちます。これは、アプリケーション レベルの話ですね。→ 前のセッションにおいて、パスワードのお話もありましたね。これは、OS レベルの制御・管理であり、Active Directory や Active Directory の Federated Service などを活用することや、Organization Unit(OU) レベルでのグループ ポリシーをなどを活用してセキュリティを万全にします。一貫性.NET は、包括的で接続型の開発フレームワークを提供することにより、好みのプログラミング言語で、ソフトウェア、サービス、デバイスを問わず、希望する方法で機能するアプリケーションをビルドできるようにします。魅力.NET では、開発者の着想を、すばやく、エンドユーザーの生産性を高めるのに役立つ、機能豊富で応答性の高いアプリケーションとして実現できるようにすることで、優れたユーザー エクスペリエンスを構築できます。(new .NET pillars)One Set of Skills: クライアント、ブラウザ、サーバー、モバイル、クラウドといった複数のプラットフォームをターゲットとしたアプリケーションの開発を実現します (マイクロソフトのプラットフォームとして、マイクロソフトのアプリケーションもそのように構成されているため、弊社の製品を拡張するにおいても、それが容易になります)Speed to Solution: 問題を直すことに時間を要するのではなく、あるべきソリューションを開発できるように… 決して無駄ではないことであっても、時間を割くところをソリューションに向けて…Interoperability: マイクロソフトの技術だけに特化せず、マイクロソフト以外のテクノロジやツールとのインテグレーションを実現します。このフレキシビリティがあるからこそ、Non-Microsoft なアプリケーションの拡張も、.NET の上で実現することが更に簡単にできます。
  3. このように、.NET はアプリケーションのセキュリティ、フレキシビリティ・柔軟性を確保するための基盤 (フレームワーク)を提供しているのです。
  4. On the left you can see Trade 6.1 running in an “all-Java” configuration, where each tier is implemented in Java running in a J2EE application server such as WebSphere.On the right you can see the .NET StockTrader, running in an “all-.NET” configuration, with each tier implemented in .NET.However, because both WebSphere and .NET StockTrader expose their services as industry standard Web Services, each front end application (JSP and ASP.NET) can access the business service layer and hence data access technology of the other platform. This is bi-directional interoperability based on open standards. On the .NET side, WCF is driving both the service definitions on the middle tier, as well as the ASP.NET client operations against the remote services. On the WebSphere side, Apache/Axis as integrated within WebSphere drive the service interactions.
  5. As a service-based application, any user interface tier based on the industry-standard WS-* protocols can plug in. .NET StockTrader 2.0 ships with a Windows Presentation Foundation Smart Client application that illustrates this as an alternative to a Web-based UI. It can work with both .NET and Java EE middle tiers.
  6. WSO2 has also created a PHP implementation of the front-end, which uses the WSO2 Web Services Framework for PHP to connect to any available middle tier (business services); on either .NET, PHP or Java. The WS02 Web Services Framework for PHP supports a full range of WS-* standards, for advanced interoperability scenarios including full message security between .NET and PHP-based services.
  7. .NET StockTrader also now includes a demonstration of interoperability over Advanced Web Services (WS-*) standards. WS02 has published both a PHP and Java-based implementation of the Order Processing Service. .NET StockTrader Business Services can be configured, using WS-* for message-level security (both service and client X.509 certificates) to work with any of these implementations; using the same WCF client class, since WCF supports these advanced industry standards out-of-the-box. WS02 is an open-source base group, and you can download their PHP and Java StockTrader components from http://wso2.org/interop/stocktrader
  8. Abstracts code from the operating system it is running onEnables the code to run in a managed environment, relieving the developer from the need to worry about things such as:Memory managementThread managementException handlingGarbage collectionSecurity
  9. Prior releases of new .NET Framework could have created versioning difficulties for developers with existing code.NET Framework 4 introduces a new concept that easily solves the versioning concerns
  10. CLR 4 enables in-process side-by-side executionEasily combine existing development assets from previous versions with new ones, running under the same host processSaves time and money by running existing code along with new code, no need to invest in time in handling versioning compatibilityIn-process side-by-side hosting enables an application to load and activate multiple versions of the common language runtime (CLR) in the same processOlder components continue to use the same CLR version, and new components use the new CLR versionFor example, you can run applications that are based on the .NET Framework 2.0 SP1 and applications that are based on .NET Framework 4 Beta 1 in the same process