Enviar pesquisa
Carregar
コンポーネントアプローチによるソフトウェア開発の俊敏性と品質向上の実現~カスタマーショーケース
•
Transferir como PPTX, PDF
•
0 gostou
•
110 visualizações
Takuya Tsuchida
Seguir
2020年2月4日(火)に UDX GALLERY NEXT で開催された「Embarcadero Tech Vision 20」で発表したときのスライドです。
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 27
Baixar agora
Recomendados
Consultants-Portfolio_Hiroki Sato
Consultants-Portfolio_Hiroki Sato
Hiroki Sato
JJUG CCC 2013 Spring にて講演。 こちらのスライド版はビデオ再生がないため少しわかりづらいと思いますが、、、
JIRA チーム開発の舞台裏
JIRA チーム開発の舞台裏
Shunsuke (Sean) Osawa
6月12日に開催された「Salesforce開発プロジェクトの進め方とアプリケーションライフサイクルマネジメントWebinar」で使用された資料です。
Salesforce開発プロジェクトの進め方とアプリケーションライフサイクルマネジメント
Salesforce開発プロジェクトの進め方とアプリケーションライフサイクルマネジメント
Salesforce Developers Japan
published at JAWS-UG BGNR #12
201806_OperationsByorganizatinAdmin_jaws-ug12
201806_OperationsByorganizatinAdmin_jaws-ug12
Taiga Ishii
富山にて登壇した、Burikaigi2020の3つ目のセッション「Power Platform がエンジニアにも必要な理由」での資料です。 Power Appsは市民開発者と呼ばれるエンドユーザー向けの資料と思われがちですが、実際にはすべてのユーザー(開発者)が使えるプラットフォームです。このセッションでは、Azure DevOpsやVisual Studioとの親和性なども含む、開発者向けの紹介を行いました。
Microsoft Power Platform がエンジニアにも必要な理由
Microsoft Power Platform がエンジニアにも必要な理由
Taiki Yoshida
API エコノミー友の会 v2 でのセッション資料
20170705 apiをつくろう
20170705 apiをつくろう
CData Software Japan
PowerApps の2019年秋にリリース予定のロードマップ情報と、サービスのビジョンについての資料です。
Microsoft PowerApps ビジョンとロードマップ 2019年秋
Microsoft PowerApps ビジョンとロードマップ 2019年秋
Taiki Yoshida
Salesforce DX と GitHub と Travis CI をもちいた継続インテグレーションについて
Continuous Integration Using Salesforce DX
Continuous Integration Using Salesforce DX
Satoru Ishikawa
Recomendados
Consultants-Portfolio_Hiroki Sato
Consultants-Portfolio_Hiroki Sato
Hiroki Sato
JJUG CCC 2013 Spring にて講演。 こちらのスライド版はビデオ再生がないため少しわかりづらいと思いますが、、、
JIRA チーム開発の舞台裏
JIRA チーム開発の舞台裏
Shunsuke (Sean) Osawa
6月12日に開催された「Salesforce開発プロジェクトの進め方とアプリケーションライフサイクルマネジメントWebinar」で使用された資料です。
Salesforce開発プロジェクトの進め方とアプリケーションライフサイクルマネジメント
Salesforce開発プロジェクトの進め方とアプリケーションライフサイクルマネジメント
Salesforce Developers Japan
published at JAWS-UG BGNR #12
201806_OperationsByorganizatinAdmin_jaws-ug12
201806_OperationsByorganizatinAdmin_jaws-ug12
Taiga Ishii
富山にて登壇した、Burikaigi2020の3つ目のセッション「Power Platform がエンジニアにも必要な理由」での資料です。 Power Appsは市民開発者と呼ばれるエンドユーザー向けの資料と思われがちですが、実際にはすべてのユーザー(開発者)が使えるプラットフォームです。このセッションでは、Azure DevOpsやVisual Studioとの親和性なども含む、開発者向けの紹介を行いました。
Microsoft Power Platform がエンジニアにも必要な理由
Microsoft Power Platform がエンジニアにも必要な理由
Taiki Yoshida
API エコノミー友の会 v2 でのセッション資料
20170705 apiをつくろう
20170705 apiをつくろう
CData Software Japan
PowerApps の2019年秋にリリース予定のロードマップ情報と、サービスのビジョンについての資料です。
Microsoft PowerApps ビジョンとロードマップ 2019年秋
Microsoft PowerApps ビジョンとロードマップ 2019年秋
Taiki Yoshida
Salesforce DX と GitHub と Travis CI をもちいた継続インテグレーションについて
Continuous Integration Using Salesforce DX
Continuous Integration Using Salesforce DX
Satoru Ishikawa
2017年7月12日 (水) の Webセミナー資料です。
Lightning コンポーネント開発〜実装例から学ぶ開発のコツ
Lightning コンポーネント開発〜実装例から学ぶ開発のコツ
Salesforce Developers Japan
管理者と IT 担当者が、企業による Power Apps と Microsoft Power Automate の導入をどのように管理すればよいか説明します。組織のデータとイノベーションを大規模に監視、保護、サポートするための機能やツール、またその実践方法をご確認ください。ローコードによるデジタル トランスフォーメーションを組織に定着させるために役立つガバナンス、セキュリティ、監視の要件に関する重要な情報や、トップ企業が採用した戦略事例もご紹介します。 本資料はMicrosoft Ignite the Tour Tokyo 2019で登壇した際のものです。
POWA50 - Power Apps と Power Automate の大規模な管理とサポート
POWA50 - Power Apps と Power Automate の大規模な管理とサポート
Taiki Yoshida
ここはあえて紙とペン!Value Stream Mapping で開発サイクルの無駄を炙り出せ!
App013 ここはあえて紙と
App013 ここはあえて紙と
Tech Summit 2016
DEV-015_実践! App Service 徹底活用 ~一貫したビジネスロジックの実現~
DEV-015_実践! App Service 徹底活用 ~一貫したビジネスロジックの実現~
DEV-015_実践! App Service 徹底活用 ~一貫したビジネスロジックの実現~
decode2016
メール+添付ファイル・コミニュケーションから脱却! Atlassian 製品の効果的な利用法の紹介
無料Webセミナー:効率的な情報共有によるプロジェクト管理・運用の改善方法
無料Webセミナー:効率的な情報共有によるプロジェクト管理・運用の改善方法
ricksoftKK
Japan Power Platform Day Summer 2020で登壇させていただいた際の資料です。
なぜ今なのか?非開発者でも開発者でも、これから始めるPower Platform
なぜ今なのか?非開発者でも開発者でも、これから始めるPower Platform
Taiki Yoshida
【オンライン】【改善してほしい・欲しい追加機能LT大会編】CircleCI コミュニティミートアップ 登壇資料
MSPサービスを支えるCircleCI
MSPサービスを支えるCircleCI
Takeo Saga
2017/11/09 Cybozu Days 2017 Tokyo CData ミニセッション
kintoneを多様なツールでつなぐには?
kintoneを多様なツールでつなぐには?
CData Software Japan
CData Day Tokyo 2017 CData 桑島 資料
ノンコーディング・超高速のApi 開発・運用基盤「cdata api server」のご紹介
ノンコーディング・超高速のApi 開発・運用基盤「cdata api server」のご紹介
CData Software Japan
2017 12/5 実施の「AI・クラウド時代の『サービスデザイン』 ~カスタマージャーニーの全体設計とデジタルを活用した顧客体験の実践ケーススタディ」のセッション資料です。
ドミノピザおよびJet.comの事例から学ぶストレスフリーな顧客体験の作り方
ドミノピザおよびJet.comの事例から学ぶストレスフリーな顧客体験の作り方
Microsoft Azure Japan
Kube Fest Tokyo 2020 の LT で 使用したスライドになります
手間をかけずにサービス監視する方法
手間をかけずにサービス監視する方法
Harry Hiyoshi
2018年1月11日 (木) に開催された Web セミナーです。
Einsteinvision - object detection を試してみよう
Einsteinvision - object detection を試してみよう
Salesforce Developers Japan
MicrosoftのPower Apps、Power Automate、Power BI、Power Virtual AgentとDynamics 365についての専用イベント、「Microsoft Business Applications Summit 2020」が開催されました!この記事ではそんな中から日本時間5月7日午前1:15から開催されたライブイベント、LIV02「Empower Your Organization with the Microsoft Power Platform」についての日本語スライドです。このセッションはPower Platformの開発チームのトップ、Power Apps・Power Automate・Power Virtual Agentを率いるCharles Lamannaと、Power BIを率いるArun Ulagのセッションのため、タイトルはまるで概要レベルの説明に見えますが、実際のセッション内容としては今年1年の製品の方向性を発表するものとなります。
Microsoft Power Platformで組織に力を与えよう
Microsoft Power Platformで組織に力を与えよう
Taiki Yoshida
2020年1月11日にPower Apps Startup Meeting@広島 で登壇した、基調講演の資料です。 この資料では、Power Apps の操作方法などではなく、人々のキャリアやビジネスがいかにPower Appsを通じて変革したかをご紹介しています。
マイクロソフトのPower Platformが描く、広島の世界
マイクロソフトのPower Platformが描く、広島の世界
Taiki Yoshida
quicksight+cur
Jawsug asakai27 kanako_kodera
Jawsug asakai27 kanako_kodera
Kanako Kodera
STOVE_website_dl_2
STOVE_website_dl_2.pdf
STOVE_website_dl_2.pdf
STOVEInc1
Ignite 2021で発表された注目の新機能について紹介しています
Power Platform Ignite 2021 注目の新機能紹介!
Power Platform Ignite 2021 注目の新機能紹介!
Yuichi Masuda
2017年4月12日(水)に開催されたWebセミナーの資料です。
Lightning Experience 時代のプロセス開発
Lightning Experience 時代のプロセス開発
Salesforce Developers Japan
3/13に実施したイベント「Intelligent Mobile App と Cloud Native が創るアプリ開発の未来」の資料です。 日本マイクロソフト株式会社 川崎 庸市 Microsoft Corporation C+E Senior Program Manager Jan Engelsberg
スケーラブルで手間なく動かせる!もうすぐ 一般提供開始 Azure Database for MySQL / PostgreSQL
スケーラブルで手間なく動かせる!もうすぐ 一般提供開始 Azure Database for MySQL / PostgreSQL
Microsoft Azure Japan
Microsoft PowerAppsが2016年11月に正式リリースされました。この資料では初めてMicrosoft PowerAppsを試されたいかた向けとなっております。
今から始めようMicrosoft PowerApps! (2017年版) - 吉田の備忘録
今から始めようMicrosoft PowerApps! (2017年版) - 吉田の備忘録
Taiki Yoshida
「クラウド時代にこそ求められるIT部門の役割 ~サービスカタログによるITサービス提供~」というタイトルで、2015年10月から継続的に実施しているセミナーの資料です。
クラウド時代にこそ求められるIt部門の役割
クラウド時代にこそ求められるIt部門の役割
Yusuke Oi
2019年8月12日に開催されたセミナー「トラディショナル企業のための、“ビジネスに効く”、アプリケーションモダナイゼーション実践法 ~アプリ開発・提供の「スピードと品質」をどう両立するか~」での基調講演「“実ビジネス”のための、アプリケーションモダナイゼーション導入ステップ なぜ「マイクロサービス“化”」が必要なのか――」の資料です。 https://itmedia.smartseminar.jp/public/application/add/2203
なぜ「マイクロサービス“化”」が必要なのか
なぜ「マイクロサービス“化”」が必要なのか
Yusuke Suzuki
Mais conteúdo relacionado
Mais procurados
2017年7月12日 (水) の Webセミナー資料です。
Lightning コンポーネント開発〜実装例から学ぶ開発のコツ
Lightning コンポーネント開発〜実装例から学ぶ開発のコツ
Salesforce Developers Japan
管理者と IT 担当者が、企業による Power Apps と Microsoft Power Automate の導入をどのように管理すればよいか説明します。組織のデータとイノベーションを大規模に監視、保護、サポートするための機能やツール、またその実践方法をご確認ください。ローコードによるデジタル トランスフォーメーションを組織に定着させるために役立つガバナンス、セキュリティ、監視の要件に関する重要な情報や、トップ企業が採用した戦略事例もご紹介します。 本資料はMicrosoft Ignite the Tour Tokyo 2019で登壇した際のものです。
POWA50 - Power Apps と Power Automate の大規模な管理とサポート
POWA50 - Power Apps と Power Automate の大規模な管理とサポート
Taiki Yoshida
ここはあえて紙とペン!Value Stream Mapping で開発サイクルの無駄を炙り出せ!
App013 ここはあえて紙と
App013 ここはあえて紙と
Tech Summit 2016
DEV-015_実践! App Service 徹底活用 ~一貫したビジネスロジックの実現~
DEV-015_実践! App Service 徹底活用 ~一貫したビジネスロジックの実現~
DEV-015_実践! App Service 徹底活用 ~一貫したビジネスロジックの実現~
decode2016
メール+添付ファイル・コミニュケーションから脱却! Atlassian 製品の効果的な利用法の紹介
無料Webセミナー:効率的な情報共有によるプロジェクト管理・運用の改善方法
無料Webセミナー:効率的な情報共有によるプロジェクト管理・運用の改善方法
ricksoftKK
Japan Power Platform Day Summer 2020で登壇させていただいた際の資料です。
なぜ今なのか?非開発者でも開発者でも、これから始めるPower Platform
なぜ今なのか?非開発者でも開発者でも、これから始めるPower Platform
Taiki Yoshida
【オンライン】【改善してほしい・欲しい追加機能LT大会編】CircleCI コミュニティミートアップ 登壇資料
MSPサービスを支えるCircleCI
MSPサービスを支えるCircleCI
Takeo Saga
2017/11/09 Cybozu Days 2017 Tokyo CData ミニセッション
kintoneを多様なツールでつなぐには?
kintoneを多様なツールでつなぐには?
CData Software Japan
CData Day Tokyo 2017 CData 桑島 資料
ノンコーディング・超高速のApi 開発・運用基盤「cdata api server」のご紹介
ノンコーディング・超高速のApi 開発・運用基盤「cdata api server」のご紹介
CData Software Japan
2017 12/5 実施の「AI・クラウド時代の『サービスデザイン』 ~カスタマージャーニーの全体設計とデジタルを活用した顧客体験の実践ケーススタディ」のセッション資料です。
ドミノピザおよびJet.comの事例から学ぶストレスフリーな顧客体験の作り方
ドミノピザおよびJet.comの事例から学ぶストレスフリーな顧客体験の作り方
Microsoft Azure Japan
Kube Fest Tokyo 2020 の LT で 使用したスライドになります
手間をかけずにサービス監視する方法
手間をかけずにサービス監視する方法
Harry Hiyoshi
2018年1月11日 (木) に開催された Web セミナーです。
Einsteinvision - object detection を試してみよう
Einsteinvision - object detection を試してみよう
Salesforce Developers Japan
MicrosoftのPower Apps、Power Automate、Power BI、Power Virtual AgentとDynamics 365についての専用イベント、「Microsoft Business Applications Summit 2020」が開催されました!この記事ではそんな中から日本時間5月7日午前1:15から開催されたライブイベント、LIV02「Empower Your Organization with the Microsoft Power Platform」についての日本語スライドです。このセッションはPower Platformの開発チームのトップ、Power Apps・Power Automate・Power Virtual Agentを率いるCharles Lamannaと、Power BIを率いるArun Ulagのセッションのため、タイトルはまるで概要レベルの説明に見えますが、実際のセッション内容としては今年1年の製品の方向性を発表するものとなります。
Microsoft Power Platformで組織に力を与えよう
Microsoft Power Platformで組織に力を与えよう
Taiki Yoshida
2020年1月11日にPower Apps Startup Meeting@広島 で登壇した、基調講演の資料です。 この資料では、Power Apps の操作方法などではなく、人々のキャリアやビジネスがいかにPower Appsを通じて変革したかをご紹介しています。
マイクロソフトのPower Platformが描く、広島の世界
マイクロソフトのPower Platformが描く、広島の世界
Taiki Yoshida
quicksight+cur
Jawsug asakai27 kanako_kodera
Jawsug asakai27 kanako_kodera
Kanako Kodera
STOVE_website_dl_2
STOVE_website_dl_2.pdf
STOVE_website_dl_2.pdf
STOVEInc1
Ignite 2021で発表された注目の新機能について紹介しています
Power Platform Ignite 2021 注目の新機能紹介!
Power Platform Ignite 2021 注目の新機能紹介!
Yuichi Masuda
2017年4月12日(水)に開催されたWebセミナーの資料です。
Lightning Experience 時代のプロセス開発
Lightning Experience 時代のプロセス開発
Salesforce Developers Japan
3/13に実施したイベント「Intelligent Mobile App と Cloud Native が創るアプリ開発の未来」の資料です。 日本マイクロソフト株式会社 川崎 庸市 Microsoft Corporation C+E Senior Program Manager Jan Engelsberg
スケーラブルで手間なく動かせる!もうすぐ 一般提供開始 Azure Database for MySQL / PostgreSQL
スケーラブルで手間なく動かせる!もうすぐ 一般提供開始 Azure Database for MySQL / PostgreSQL
Microsoft Azure Japan
Microsoft PowerAppsが2016年11月に正式リリースされました。この資料では初めてMicrosoft PowerAppsを試されたいかた向けとなっております。
今から始めようMicrosoft PowerApps! (2017年版) - 吉田の備忘録
今から始めようMicrosoft PowerApps! (2017年版) - 吉田の備忘録
Taiki Yoshida
Mais procurados
(20)
Lightning コンポーネント開発〜実装例から学ぶ開発のコツ
Lightning コンポーネント開発〜実装例から学ぶ開発のコツ
POWA50 - Power Apps と Power Automate の大規模な管理とサポート
POWA50 - Power Apps と Power Automate の大規模な管理とサポート
App013 ここはあえて紙と
App013 ここはあえて紙と
DEV-015_実践! App Service 徹底活用 ~一貫したビジネスロジックの実現~
DEV-015_実践! App Service 徹底活用 ~一貫したビジネスロジックの実現~
無料Webセミナー:効率的な情報共有によるプロジェクト管理・運用の改善方法
無料Webセミナー:効率的な情報共有によるプロジェクト管理・運用の改善方法
なぜ今なのか?非開発者でも開発者でも、これから始めるPower Platform
なぜ今なのか?非開発者でも開発者でも、これから始めるPower Platform
MSPサービスを支えるCircleCI
MSPサービスを支えるCircleCI
kintoneを多様なツールでつなぐには?
kintoneを多様なツールでつなぐには?
ノンコーディング・超高速のApi 開発・運用基盤「cdata api server」のご紹介
ノンコーディング・超高速のApi 開発・運用基盤「cdata api server」のご紹介
ドミノピザおよびJet.comの事例から学ぶストレスフリーな顧客体験の作り方
ドミノピザおよびJet.comの事例から学ぶストレスフリーな顧客体験の作り方
手間をかけずにサービス監視する方法
手間をかけずにサービス監視する方法
Einsteinvision - object detection を試してみよう
Einsteinvision - object detection を試してみよう
Microsoft Power Platformで組織に力を与えよう
Microsoft Power Platformで組織に力を与えよう
マイクロソフトのPower Platformが描く、広島の世界
マイクロソフトのPower Platformが描く、広島の世界
Jawsug asakai27 kanako_kodera
Jawsug asakai27 kanako_kodera
STOVE_website_dl_2.pdf
STOVE_website_dl_2.pdf
Power Platform Ignite 2021 注目の新機能紹介!
Power Platform Ignite 2021 注目の新機能紹介!
Lightning Experience 時代のプロセス開発
Lightning Experience 時代のプロセス開発
スケーラブルで手間なく動かせる!もうすぐ 一般提供開始 Azure Database for MySQL / PostgreSQL
スケーラブルで手間なく動かせる!もうすぐ 一般提供開始 Azure Database for MySQL / PostgreSQL
今から始めようMicrosoft PowerApps! (2017年版) - 吉田の備忘録
今から始めようMicrosoft PowerApps! (2017年版) - 吉田の備忘録
Semelhante a コンポーネントアプローチによるソフトウェア開発の俊敏性と品質向上の実現~カスタマーショーケース
「クラウド時代にこそ求められるIT部門の役割 ~サービスカタログによるITサービス提供~」というタイトルで、2015年10月から継続的に実施しているセミナーの資料です。
クラウド時代にこそ求められるIt部門の役割
クラウド時代にこそ求められるIt部門の役割
Yusuke Oi
2019年8月12日に開催されたセミナー「トラディショナル企業のための、“ビジネスに効く”、アプリケーションモダナイゼーション実践法 ~アプリ開発・提供の「スピードと品質」をどう両立するか~」での基調講演「“実ビジネス”のための、アプリケーションモダナイゼーション導入ステップ なぜ「マイクロサービス“化”」が必要なのか――」の資料です。 https://itmedia.smartseminar.jp/public/application/add/2203
なぜ「マイクロサービス“化”」が必要なのか
なぜ「マイクロサービス“化”」が必要なのか
Yusuke Suzuki
CData Drivers ハンズオン
CData Drivers HandsOn 20180326
CData Drivers HandsOn 20180326
CData Software Japan
Webセミナー資料 Minitabへようこそ
Minitabへようこそ
Minitabへようこそ
KOZO KEIKAKU ENGINEERING Inc., Minitab
https://nagasaki-it-engineers.connpass.com/event/67240/ 3rd 長崎 Software Quality and Development Gathering にて行ったセッションのスライドです。セミナーではなく勉強会なので「私にはソフトウェアビジネスのコラボレーションはこう見えているけど皆さんはどうでしょう」というスタイルで話しました。あまりテクニカルなことは書いてありません。また、うまくいかない理由は多岐に渡りますが、おそらく皆さんが案外見ていないことを話しました。
[3rd 長崎QDG] チームで、長期間で、たくさんのソフトウェアを快適に開発し、価値を生み続けるためのエンジニアリング
[3rd 長崎QDG] チームで、長期間で、たくさんのソフトウェアを快適に開発し、価値を生み続けるためのエンジニアリング
Masanori Kaneko
【デブサミ2021】2/19(金)13:55 ~ 14:35[19-D-5] なぜ今、ローコードなのか 阿島哲夫[OutSystemsジャパン] セッション資料 #outsystems #devsumi #devsumiD #lowcode
Developer's summit 2021 [19-D-5]なぜ今、ローコードなのか
Developer's summit 2021 [19-D-5]なぜ今、ローコードなのか
Tetsuo Ajima
10/30に実施されたSmart Storeのセミナーの資料です。 日本マイクロソフト株式会社 クラウドソリューションアーキテクト 内藤稔
Ms retail update ra 20191030
Ms retail update ra 20191030
Microsoft Azure Japan
Open Cloud Innovation2016 day1(これからのデータ分析者とエンジニアに必要なdatascienceexperienceツールと考え方)講演資料
Open Cloud Innovation2016 day1(これからのデータ分析者とエンジニアに必要なdatascienceexperienceツールと...
Open Cloud Innovation2016 day1(これからのデータ分析者とエンジニアに必要なdatascienceexperienceツールと...
Atsushi Tsuchiya
AWS Loft Tokyo で毎月実施しているIoT@Loft#13です。第13回目のテーマは、「IoTスタートアップ vol.2」です。スタートアップ企業がどのようにIoTの製品やソリューションを構築しているか、技術的な課題や開発の取り組み方などについて、実際に開発を担当されている方や、それを支援する方にご紹介いただきます。AWSからは、IoTのビジネスを小さく始めて素早く大きく育てていくためのAWSの活用方法やプロトタイピングの実施方法についてご紹介いたします。
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践
Amazon Web Services Japan
Innovation and Startups Today Keyvan Peymani, Global Head of Startup Marketing Innovation requires a culture that fosters invention
Innovation and Startups Today
Innovation and Startups Today
Amazon Web Services
7/21 ヒーロー島で実施したセッション資料です。 ※仮面ライダーを除くw
ヒーロー島 Visual Studio 2012
ヒーロー島 Visual Studio 2012
智治 長沢
楽天テクノロジーカンファレンス2009 ”楽天エンジニアライフ”での発表資料です。
楽天エンジニアライフ
楽天エンジニアライフ
Rakuten Group, Inc.
This is the lecture material of Kokubo of IT innovation consultant.
20160710_PMI日本フォーラム2016_講演資料_ITI小久保v1.1
20160710_PMI日本フォーラム2016_講演資料_ITI小久保v1.1
it-innovation
Tech Summit 2018 で登壇した内容です。 [SCCM 友の会] System Center Configuration Manager この秋おさえておきたい最新機能!
[SCCM 友の会] System Center Configuration Manager この秋おさえておきたい最新機能!
[SCCM 友の会] System Center Configuration Manager この秋おさえておきたい最新機能!
TAKUYA OHTA
2018年8月24日にカサレアルで開催したフリーセミナー用の発表資料です。
2018年度新入社員研修実績紹介
2018年度新入社員研修実績紹介
CASAREAL, Inc.
FISCのシステム監査普及連絡会議で発表した資料です IT界隈のビジネス環境・開発プロセスの変化から、クラウド時代に求められるガバナンスについてまとめてみました
As a service時代のitガバナンス
As a service時代のitガバナンス
宏介 林田
2021年11月9日 JAWS-UG SRE支部 第1回勉強会 登壇資料 大村幸敬
20211109 JAWS-UG SRE keynotes
20211109 JAWS-UG SRE keynotes
Amazon Web Services Japan
PCA クラウド会計およびPCA クラウド商魂・商管データに標準SQL でのアクセスを実現するCData Drivers for PCA の概要説明資料。 ODBC/JDBC/ADO などのドライバーテクノロジーでPCA クラウドとオンプレシステムを簡単にデータ連携。
CData Drivers for PCA 概要
CData Drivers for PCA 概要
CData Software Japan
世界最大級のメガクラウドである Microsoft Azure での、AI サービスや技術の現在を見ていきます。学生なら知っておきたい、 大まかなサービスだけでなく、その周辺で起こっているデータセンターやハードウェアの進化。Sustainability のトピックやデータのBias 問題などにも触れます。
明治大学理工学部 特別講義 AI on Azure
明治大学理工学部 特別講義 AI on Azure
Daiyu Hatakeyama
※質問を選択するページ間リンクがSlideshare では使えません。 kintone は便利だけど、既存ツールからどうやって連携して使う? アプリケーションやツールからのドライバー連携、DB への同期などSQL ベースのkintone 連携!
「私のkintone 連携には何が最適?」CData Software ソリューションを使うケースは?
「私のkintone 連携には何が最適?」CData Software ソリューションを使うケースは?
CData Software Japan
Semelhante a コンポーネントアプローチによるソフトウェア開発の俊敏性と品質向上の実現~カスタマーショーケース
(20)
クラウド時代にこそ求められるIt部門の役割
クラウド時代にこそ求められるIt部門の役割
なぜ「マイクロサービス“化”」が必要なのか
なぜ「マイクロサービス“化”」が必要なのか
CData Drivers HandsOn 20180326
CData Drivers HandsOn 20180326
Minitabへようこそ
Minitabへようこそ
[3rd 長崎QDG] チームで、長期間で、たくさんのソフトウェアを快適に開発し、価値を生み続けるためのエンジニアリング
[3rd 長崎QDG] チームで、長期間で、たくさんのソフトウェアを快適に開発し、価値を生み続けるためのエンジニアリング
Developer's summit 2021 [19-D-5]なぜ今、ローコードなのか
Developer's summit 2021 [19-D-5]なぜ今、ローコードなのか
Ms retail update ra 20191030
Ms retail update ra 20191030
Open Cloud Innovation2016 day1(これからのデータ分析者とエンジニアに必要なdatascienceexperienceツールと...
Open Cloud Innovation2016 day1(これからのデータ分析者とエンジニアに必要なdatascienceexperienceツールと...
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践
Innovation and Startups Today
Innovation and Startups Today
ヒーロー島 Visual Studio 2012
ヒーロー島 Visual Studio 2012
楽天エンジニアライフ
楽天エンジニアライフ
20160710_PMI日本フォーラム2016_講演資料_ITI小久保v1.1
20160710_PMI日本フォーラム2016_講演資料_ITI小久保v1.1
[SCCM 友の会] System Center Configuration Manager この秋おさえておきたい最新機能!
[SCCM 友の会] System Center Configuration Manager この秋おさえておきたい最新機能!
2018年度新入社員研修実績紹介
2018年度新入社員研修実績紹介
As a service時代のitガバナンス
As a service時代のitガバナンス
20211109 JAWS-UG SRE keynotes
20211109 JAWS-UG SRE keynotes
CData Drivers for PCA 概要
CData Drivers for PCA 概要
明治大学理工学部 特別講義 AI on Azure
明治大学理工学部 特別講義 AI on Azure
「私のkintone 連携には何が最適?」CData Software ソリューションを使うケースは?
「私のkintone 連携には何が最適?」CData Software ソリューションを使うケースは?
Mais de Takuya Tsuchida
2020年2月14日(金)に秋葉原 MOGRA で開催された「BuildPoP vol. 1 エンジニアは Bar にいる。」で発表したときのスライドです。
Mikatus エンジニアの成長戦略
Mikatus エンジニアの成長戦略
Takuya Tsuchida
2019年7月11日(木)に株式会社ナビタイムジャパンで開催された「X-Tech JAWS【第8回】〜時代を突き抜ける X-Tech 企業の真髄〜」で発表したときのスライドです。
帳票も今や HTML でつくる時代!?日本の税理士を支えるサーバーレス帳票基盤
帳票も今や HTML でつくる時代!?日本の税理士を支えるサーバーレス帳票基盤
Takuya Tsuchida
2018年8月23日と2018年9月12日にアカウンティング・サース・ジャパン株式会社で開催した「Essential Scala 輪読会 #4」「Essential Scala 輪読会 #5」のスライドです。今回の内容は「第5章 シーケンス処理」です。
Essential Scala 第5章 シーケンス処理
Essential Scala 第5章 シーケンス処理
Takuya Tsuchida
2018年8月1日にアカウンティング・サース・ジャパン株式会社で開催した「Essential Scala 輪読会 #3」のスライドです。今回の内容は「第4章 トレイトによるデータモデリング」です。
Essential Scala 第4章 トレイトによるデータモデリング
Essential Scala 第4章 トレイトによるデータモデリング
Takuya Tsuchida
2018年7月18日にアカウンティング・サース・ジャパン株式会社で開催した「Essential Scala 輪読会 #2」のスライドです。今回の内容は「第3章 オブジェクトとクラス」です。
Essential Scala 第3章 オブジェクトとクラス
Essential Scala 第3章 オブジェクトとクラス
Takuya Tsuchida
2018年6月27日にアカウンティング・サース・ジャパン株式会社で開催した「Essential Scala 輪読会 #1」のスライドです。今回の内容は「第2章 式、型、値」です。なお、第1章は Scala における開発環境構築の内容になるため省略しています。
Essential Scala 第2章 式、型、値
Essential Scala 第2章 式、型、値
Takuya Tsuchida
IPU TOKYO での LT 資料です。youtube-dl をニコニコ動画に対応させて、GitHub の youtube-dl プロジェクトに Pull Request を送ったときのことを説明しています。
youtube-dl に Pull Request 送ったった
youtube-dl に Pull Request 送ったった
Takuya Tsuchida
Waze Map Editor をはじめてつかう人のためのクイックスタートガイドです。 Waze Map Editor は、ソーシャルナビゲーションアプリ Waze の地図を編集するための Web アプリケーションです。Wazer が地図を編集することで、世界中の地図が最新に保たれています。まずは、自宅の周辺から地図の編集をはじめてみましょう。 地図の編集基準などは Waze のフォーラムでディスカッションしています。 疑問に思ったことは下記のトピックに投稿してください。 マップエディタでの編集 http://www.waze.com/forum/viewtopic.php?f=72&t=23256
Waze Map Editor クイックスタートガイド
Waze Map Editor クイックスタートガイド
Takuya Tsuchida
Google App Engine for Java
Google App Engine for Java
Takuya Tsuchida
Mais de Takuya Tsuchida
(9)
Mikatus エンジニアの成長戦略
Mikatus エンジニアの成長戦略
帳票も今や HTML でつくる時代!?日本の税理士を支えるサーバーレス帳票基盤
帳票も今や HTML でつくる時代!?日本の税理士を支えるサーバーレス帳票基盤
Essential Scala 第5章 シーケンス処理
Essential Scala 第5章 シーケンス処理
Essential Scala 第4章 トレイトによるデータモデリング
Essential Scala 第4章 トレイトによるデータモデリング
Essential Scala 第3章 オブジェクトとクラス
Essential Scala 第3章 オブジェクトとクラス
Essential Scala 第2章 式、型、値
Essential Scala 第2章 式、型、値
youtube-dl に Pull Request 送ったった
youtube-dl に Pull Request 送ったった
Waze Map Editor クイックスタートガイド
Waze Map Editor クイックスタートガイド
Google App Engine for Java
Google App Engine for Java
Último
Yufei Xu, Jing Zhang, Qiming ZHANG, Dacheng Tao, "ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation" NeurIPS2022 https://proceedings.neurips.cc/paper_files/paper/2022/hash/fbb10d319d44f8c3b4720873e4177c65-Abstract-Conference.html
論文紹介:ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
論文紹介:ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
Toru Tamaki
This presentation introduces a paper about offline reinforcement learning.
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
atsushi061452
第23回 Customer系エンジニア座談会 の LT 公開用スライドです。 https://customer-x-engineer.connpass.com/event/314639/ クラウド電話システム CallConnect に興味を持った方はこちら。 https://www.callconnect.jp/?slideshare お気軽にフォロー/DM お待ちしています。 https://x.com/24guchia https://www.facebook.com/eiichi.nishiguchi
5/22 第23回 Customer系エンジニア座談会のスライド 公開用 西口瑛一
5/22 第23回 Customer系エンジニア座談会のスライド 公開用 西口瑛一
瑛一 西口
TSG LIVE! 12 LT
Intranet Development v1.0 (TSG LIVE! 12 LT )
Intranet Development v1.0 (TSG LIVE! 12 LT )
iwashiira2ctf
2024/05/25 serverless Meetup osaka
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
ssuserbefd24
This presentation introduces a paper about offline reinforcement learning.
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
atsushi061452
Security-JAWS【第33回】 勉強会 https://s-jaws.doorkeeper.jp/events/173294
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
keikoitakurag
サイバーエージェントAI事業部の新卒研修で利用したスライドを公開します。
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
yassun7010
Lei Ke, Yu-Wing Tai, Chi-Keung Tang, "Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayers" CVPR2021 https://openaccess.thecvf.com/content/CVPR2021/html/Ke_Deep_Occlusion-Aware_Instance_Segmentation_With_Overlapping_BiLayers_CVPR_2021_paper.html
論文紹介:Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayers
論文紹介:Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayers
Toru Tamaki
https://iotlt.connpass.com/event/318403/
20240523_IoTLT_vol111_kitazaki_v1___.pdf
20240523_IoTLT_vol111_kitazaki_v1___.pdf
Ayachika Kitazaki
This paper provides a comprehensive overview of motion planning for robotic manipulation, encompassing grasp planning, motion planning, MoveIt in ROS, OMPL, RRT, forward and inverse kinematics, singularity of robotic manipulators, and manipulability.
ロボットマニピュレーションの作業・動作計画 / rosjp_planning_for_robotic_manipulation_20240521
ロボットマニピュレーションの作業・動作計画 / rosjp_planning_for_robotic_manipulation_20240521
Satoshi Makita
Último
(11)
論文紹介:ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
論文紹介:ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
5/22 第23回 Customer系エンジニア座談会のスライド 公開用 西口瑛一
5/22 第23回 Customer系エンジニア座談会のスライド 公開用 西口瑛一
Intranet Development v1.0 (TSG LIVE! 12 LT )
Intranet Development v1.0 (TSG LIVE! 12 LT )
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
論文紹介:Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayers
論文紹介:Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayers
20240523_IoTLT_vol111_kitazaki_v1___.pdf
20240523_IoTLT_vol111_kitazaki_v1___.pdf
ロボットマニピュレーションの作業・動作計画 / rosjp_planning_for_robotic_manipulation_20240521
ロボットマニピュレーションの作業・動作計画 / rosjp_planning_for_robotic_manipulation_20240521
コンポーネントアプローチによるソフトウェア開発の俊敏性と品質向上の実現~カスタマーショーケース
1.
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 コンポーネントアプローチによる ソフトウェア開発の俊敏性と品質向上の実現 土田 拓也 Mikatus 株式会社
プロダクト開発グループ/デザイングループ グループリーダー
2.
アジェンダ Mikatus のご紹介
Sencha Ext JS 選定の理由 コンポーネントアプローチによる開発とテスト • DEMO: Sencha Architect と Sencha Test による実装例
3.
Mikatus のご紹介 • Mikatus
のミッション • クラウド税務・会計・給与システム A-SaaS • Adobe AIR から Sencha Ext JS へ
4.
Mikatus のミッション
5.
クラウド税務・会計・給与システム A-SaaS
6.
7.
Adobe AIR から
Sencha Ext JS へ 2020年末に Adobe のサポート終了
8.
9.
Sencha Ext JS
選定の理由 • クラウド税務・会計・給与システム A-SaaS の要件 • エンタープライズ品質の Sencha 製品群
10.
クラウド税務・会計・給与システム A-SaaS の要件
動作の安定性 データの整合性 計算結果の正確性 デスクトップアプリケーション並みの高速な操作性 最低でも10年以上帳票出力する機能を維持できる保守性
11.
エンタープライズ品質の Sencha 製品群
十分に検証された高機能コンポーネント群 ベストプラクティスを自然に実現できる統合開発環境 DOM 要素単位ではなくコンポーネント単位での自動テスト環境 エンタープライズ水準のサポート体制 + +
12.
コンポーネントアプローチによる開発とテスト • DEMO: Sencha
Architect と Sencha Test による実装例 • コンポーネントアプローチによる開発とテストのベストプラクティス
13.
DEMO: Sencha Architect
と Sencha Test による実装例
14.
画面を適切な独自コンポーネントに分割する DOs • 画面を適切な粒度の独自コンポーネントに分割する • 独自コンポーネントに分割するときに画面設計も合わせて見直す DON’Ts •
画面を独自コンポーネントに分割せずに画面を実装する • 画面を細かすぎる独自コンポーネントに分割する • 独自コンポーネントを無理に複数の画面で再利用する • 画面設計のワイヤフレームを不可侵としてコンポーネント分割を進める
15.
例:実装例を独自コンポーネントに分割する books.Main books.Toolbar books.Grid
16.
標準コンポーネントを素直に正しく利用する DOs • 標準コンポーネントを組み合わせて独自コンポーネントを実装する • 標準コンポーネントのコンフィグでコンポーネントの動作を指定する •
標準コンポーネントの公開メソッドでコンポーネントを操作する DON’Ts • 標準コンポーネントを深く継承して複雑なコンポーネントを実装する • 標準コンポーネントの非公開メソッドでコンポーネントを操作する • 標準コンポーネントをオーバーライドしてコンポーネントの動作を変更する • 標準コンポーネントの操作を大量に手続き的に実装する
17.
例:実装例の Toolbar を標準コンポーネントに分割する Ext.Button iconCls:
x-fa fa-plus text: Add Ext.Button iconCls: x-fa fa-minus text: Delete Ext.Toolbar docked: top Example.view.books.Toolbar
18.
独自コンポーネントを公開インターフェイスで疎結合にする DOs • 独自コンポーネントを設定するための公開コンフィグを定義する • 独自コンポーネントを操作するための公開メソッドを定義する •
独自コンポーネントと連携するための公開イベントを定義する • 直接の子であるコンポーネントの公開メソッドを呼ぶ • 下位のコンポーネントに依存する DON’Ts • コンフィグ/メソッド/イベントなどの公開インターフェイスを定義しない • 直接の子でないコンポーネントのメソッドを呼ぶ • 上位のコンポーネントに依存する
19.
例:実装例の Toolbar に公開インターフェイスを定義する Configs deleteButtonDisabled
: 削除ボタンの有効/無効 Methods enableDeleteButton : 削除ボタンを有効にする disableDeleteButton : 削除ボタンを無効にする Events addButtonClicked : 追加ボタンがクリックされた deleteButtonClicked : 削除ボタンがクリックされた Example.view.books.Toolbar
20.
例:実装例の Grid に公開インターフェイスを定義する Example.view.books.Grid Methods createNewBook
: 新しい本を作成する deleteSelectedBook : 選択された本を削除する Events bookSelected : 本が選択された bookDeselected : 本の選択が解除された
21.
例:本を選択して削除する処理の流れ 子から親への 連携は イベント 親から子への 連携は メソッド
22.
独自コンポーネントのインターフェイスを自動テストする DOs • 独自コンポーネントの公開インターフェイスを自動テストする • REST
API の通信は SimManager と Simlets でモックにする • テストカバレッジを参考にしつつテストを充実させる DON’Ts • 独自コンポーネントをテストしない • テストカバレッジ100%を必達にする
23.
例:本を選択して削除する処理におけるテスト対象 各コンポーネントの 処理を独立して テストする
24.
例:本を選択して削除する処理におけるテスト対象 各コンポーネントの インターフェイスを 入力と出力の観点で 自動テストする
25.
Sencha Architect と
Sencha Test による実装手順 サンプルアプリケーションの実装手順は下記記事参照 • Sencha Architect と Sencha Test で開発環境を構築する • Sencha Architect と Sencha Test の開発環境に REST API モックサーバーを追 加する • Sencha Architect でコンポーネントを実装して Sencha Test で自動テストす る
26.
まとめ コンポーネントアプローチで開発できる Sencha
Ext JS にしよう ビジュアル開発できる Sencha Architect で始めよう Sencha Test によるコンポーネントテストで品質を担保しよう + +
27.
THANKS! www.embarcadero.com/jp
Notas do Editor
ここからは、コンポーネントアプローチによる Web アプリケーション開発の事例について Mikatus 株式会社の土田が発表させていただきます。
本日のアジェンダはこのようになっておりまして、当社 Mikatus をご紹介させていただいた後に、当社のプロダクト開発でなぜ Sencha Ext JS を選定しているかを説明し、コンポーネントアプローチによる開発とテストをする中で実際に見えてきたベストプラクティスをデモを混じえつつお話させていただきます。
それでは、まずはじめに当社 Mikatus についてご紹介させていただきたいと思います。
当社 Mikatus 株式会社は、「税理士のみなさまにとって、なくてはならない存在として」というミッションを掲げ、税理士のみなさまないしは税理士が所属する会計事務所に向けてサービスを提供する会社となっております。昨年社名をアカウンティング・サース・ジャパンから変更してミカタスになりました。前の社名だと聞き覚えのある方がいらっしゃるかもしれません。さて、当社は税理士の皆様に向けて幅広くサービス提供をしておりますが、
クラウド税務・会計・給与システム A-SaaS が主力製品となっておりまして、会計事務所の仕事を一気通貫でクラウドでできるサービスとなっています。
A-SaaS の画面のひとつはこのようなものになっていまして、見ていただくとおわかりかと思いますが、グリッドやテキストフィールド、ボタンなどの要素が詰まった UI になっています、昔ながらのプロフェッショナル向けの業務アプリケーションという印象を受けられるのではないでしょうか。そして、こちらのアプリケーションは Adobe AIR で開発されています。10年程前に創業したときの選択肢としてはそんなに悪くなかったと思うのですが、
Adobe Flash プラグインの配布終了に伴い、Adobe AIR の Adobe によるサポートも2020年末に終了することになりました。その移行先として当社は Sencha Ext JS を選定しました。その理由はのちほどのスライドで説明させていただきますが、実施に Sencha Ext JS で作り直しているアプリケーションは、
このようなものです。Adobe AIR で開発したアプリケーションの UI をある程度踏襲しながら開発しているので似てはいますが、完全にブラウザー上で動作しています。Sencha Ext JS での開発が進み Adobe AIR で開発されたアプリケーション以上のものができあがりつつあります。
改めて、なぜ当社が Sencha Ext JS を選定するに至ったかを簡単にご説明差し上げたいと思います。
会計事務所向けの業務システムということで複雑な業務ロジックが含まれることは想像に難くないと思います。要件としても、動作の安定性やデータの整合性、計算結果の正確性などは当然求められますが、クラウドで提供するにあたりデスクトップアプリケーション並みの高速な操作性はチャレンジングな要件となってきます。また、法律の関係で10年以上は帳票が出力できることを維持しなければなりません。この中で、動作の安定性と高速な操作性、保守性はクライアントアプリケーションにおいて重要な要件になってきます。その要件を満たすようなフレームワークとして、
エンタープライズ品質の Sencha 製品群を当社は選定しました。十分に検証され、高機能なコンポーネントを持つ Sencha Ext JS のみならず、ベストプラクティスを自然に実現できる統合開発環境である Sencha Architect やコンポーネント単位でテストを書けるテスト環境 Sencha Test など、Sencha 製品群によるエコシステムが高品質な業務システム開発に貢献します。移り変りの早いフロントエンド界隈ですが、エンタープライズ向けということもあり、長期に渡ってサポートされるところも重要なポイントです。
これまで当社は Sencha を導入してコンポーネントアプローチによる開発を行ってきました。サンプルアプリケーションによるデモをした上で、当社なりのコンポーネントアプローチによる開発とテストのベストプラクティスをご紹介したいと思います。
デモでお見せする実装例は本の一覧を管理するアプリケーションです。実装例について簡単に動作を説明した後に、自動テストを実行してお見せしたいと思います。今回はコードの詳細は時間の関係で割愛しますが、ベストプラクティスはこの実装例を元に説明したいと思います。(デモへ移動)デモでお見せする実装例はとてもシンプルなものとなっています。本の一覧になっていて、タイトルと著者を編集できます。選択して削除することもできれば、新規作成することもできます。シンプルなアプリケーションではありますが、ツールバーの部分とグリッドの部分はコンポーネントとして分かれていまして、それぞれを独立してテストできるようになっています。そのテストを実行してみたいと思います。(テスト画面へ)一瞬なので見逃さないようにしてください。(テスト実行)はい。このようにコンポーネントごとに独立してテストを実行しています。もう一度実行しますね。今度はテストでコードカバレッジを取得するようにしてみます。(カバレッジ実行)コードカバレッジもこのように取得できるので、ある程度テストケースを実装するときの参考になるかと思います。このような形でアプリケーションを開発するときには各コンポーネントを独立して実装してテストをしながら開発を進めることで品質の高いアプリケーションが実現できます。そのような開発をしていくためのベストプラクティスをスライドの後半でご紹介していきたいと思います。
今お見せしたアプリケーションではコンポーネントごとにテストを実施しました。アプリケーション開発をする上で画面を適切な粒度のコンポーネントに分割することは重要です。また、コンポーネントに綺麗に分割できないときは画面設計においUX上の課題があることが多いので、画面設計に立ち返ってみることをオススメします。その一方で、コンポーネントに分割せずに開発したり、ボタンひとつひとつを独自コンポーネントとして定義しないようにしましょう。独自に作成したコンポーネントを再利用し過ぎるのも問題になることが多いので注意してください。ある画面のためだけに独自コンポーネントに機能を追加し始めたら赤信号です。
実装例のアプリケーションはブックスツールバーとブックスグリッドにコンポーネント分割をしています。それらのコンポーネントをブックスメインが包含して接続しています。
独自のコンポーネントを実装する際には当然 Sencha が用意している標準コンポーネントを利用します。それらを素直に正しく組み合わせて独自コンポーネントを実装してください。よく考えられたコンフィグやメソッドが各標準コンポーネントに準備されています。それらを使用しましょう。ただし、それらを何度も継承して複雑なコンポーネントを実装しないようにしましょう。また、標準コンポーネントの非公開メソッドを使用したり、Sencha 独自の機能であるオーバーライドという方法で標準コンポーネントの内部動作を 変更するのはやめましょう。手続的にではなく、できるかぎり宣言的に実装するのもポイントです。
これはツールバーの例ですが、当然 Sencha の標準コンポーネントで構成されています。ツールバーは標準のツールバーで実装していますし、追加と削除のボタンは標準のボタンです。そのコンフィグを利用してアイコンやテキストを表現しています。ここまでシンプルなコンポーネントばかりではないですが、自然で素直な方法で実装できていることが理想です。
さらに独自コンポーネントはできる限り疎結合になるように実装しましょう。公開インターフェイスとしてコンフィグ・メソッド・イベントを定義します。メソッドによる連携は直接の子どものコンポーネントに限定して、下位のコンポーネントだけに依存するようにしましょう。そうしない場合、どの機能を使用していいかわからないので複数人で開発していると思いもよらない密結合が発生し、保守性が著しく下がってしまうことがあります。
実装例のツールバーで言えば、削除ボタンの有効無効を切り替えるコンフィグがあります。本を選択していないときは削除ボタンをクリックできなくしたかったからです。その削除ボタンを有効にしたり無効にしたりするメソッドがありますし、追加と削除のボタンがクリックされたときに発火するイベントも定義されています。このコンポーネントについて言えば、この公開インターフェイス以外を触らないでくださいということになります。このあたりを開発チームでルール化しておくと開発が安定するかと思います。
グリッドの公開インターフェイスもシンプルです。新しい本を作成するメソッドと選択された本を削除するメソッドだけが公開メソッドです。本が選択されたり解除されたりしたときはツールバーの削除ボタンの有効無効と連携したいので、本の選択状態に対応するイベントも定義しています。
本を選択して削除する処理の流れをシーケンス図に起こしたものです。ツールバーとグリッドが子でメインが親です。必ず親との連携はイベントで、子との連携はメソッドになっています。コンポーネントはこのような形で疎結合にしておくのがオススメです。
独自コンポーネントを疎結合にしておくとそのコンポーネントを自動テストしやすくなります。独自コンポーネントをテストするときは公開インターフェイスを自動テストするようにします。REST API の通信は SimManager と Simlets という Ext JS の機能でモックにすることができます。先程お見せしたようにテストカバレッジも出るので、それを参考にテストを充実されていきましょう。テストをしないというのは問題ですが、テストカバレッジ100%を常に目指してテストをし過ぎるのも問題になったりします。何事もバランスですね。
先程のシーケンス図で言うところの各コンポーネントの処理を独立してテストします。
そのとき各コンポーネントのインターフェイスを入力と出力の観点でテストしていくといいです。
今回の実装例の詳細は時間の都合で別の記事として書いていますので、手元の環境で試してみたい方はこちらを参考にしてみてください。
最後にまとめますと、コンポーネントアプローチで開発できる Sencha Ext JS はエンタープライズ品質のアプリケーションを開発する上でオススメです。最初はビジュアル開発できる Sencha Architect が取っ付きやすくていいと思います。Sencha Test によるコンポーネントテストも一緒に実施することで複雑なアプリケーションでも高い品質を担保できます。ぜひ試してみてください。
ご清聴ありがとうございました。
Baixar agora