Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
スクラムで Power Apps 開発をやってみた / Tried to develop Po...
Search
Takashi Shinohara
February 19, 2021
Programming
1
2.6k
スクラムで Power Apps 開発をやってみた / Tried to develop Power Apps with Scrum
Power Apps オンライン勉強会 (
https://powerapps.connpass.com/event/201457
) に登壇したときのスライドです。
Takashi Shinohara
February 19, 2021
Tweet
Share
More Decks by Takashi Shinohara
See All by Takashi Shinohara
徹底解説!Microsoft 365 Copilot の拡張機能 / Complete guide to Microsoft 365 Copilot extensions
karamem0
1
2.5k
Microsoft Search の Graph コネクタ ハンズオン / Handson for Graph Connector of Microsoft Search
karamem0
0
65
いまだから「検索」を語ろう! SharePoint FAST Search から Microsoft Search セマンティックインデックスまで / Let's talk about search now
karamem0
3
1.2k
徹底解説!Power Platform 導入の成功事例から見る DX 推進のコツ / Tips for DX promotion from Power Platform case studies
karamem0
0
5k
どうする Power Pages?Web 開発者からみる Power Pages / How to deal with Power Pages
karamem0
0
1.2k
Fluent UI を理解する / Understanding Fluent UI
karamem0
0
670
Microsoft Teams の 会議アプリ開発のはじめかた / How to start Microsoft Teams app development
karamem0
0
3.6k
Web API 開発を加速しよう - Avanade Beef のご紹介 / Accelerate your web API - development introducing Avanade Beef
karamem0
0
2.7k
Japan Microsot 365 Developer Community Day 2021: Microsoft Teams ハンズオン / Japan Microsot 365 Developer Community Day 2021: Microsoft Teams Hands-on
karamem0
0
29
Other Decks in Programming
See All in Programming
Security_for_introducing_eBPF
kentatada
0
110
なまけものオバケたち -PHP 8.4 に入った新機能の紹介-
tanakahisateru
1
120
Recoilを剥がしている話
kirik
5
6.7k
テストケースの名前はどうつけるべきか?
orgachem
PRO
0
130
KMP와 kotlinx.rpc로 서버와 클라이언트 동기화
kwakeuijin
0
140
menu基盤チームによるGoogle Cloudの活用事例~Application Integration, Cloud Tasks編~
yoshifumi_ishikura
0
110
バグを見つけた?それAppleに直してもらおう!
uetyo
0
180
ゆるやかにgolangci-lintのルールを強くする / Kyoto.go #56
utgwkk
2
370
103 Early Hints
sugi_0000
1
230
責務を分離するための例外設計 - PHPカンファレンス 2024
kajitack
2
670
20年もののレガシープロダクトに 0からPHPStanを入れるまで / phpcon2024
hirobe1999
0
460
PHPとAPI Platformで作る本格的なWeb APIアプリケーション(入門編) / phpcon 2024 Intro to API Platform
ttskch
0
210
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
YesSQL, Process and Tooling at Scale
rocio
169
14k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Making Projects Easy
brettharned
116
5.9k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Building Applications with DynamoDB
mza
91
6.1k
The Language of Interfaces
destraynor
154
24k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Designing for Performance
lara
604
68k
Being A Developer After 40
akosma
87
590k
GitHub's CSS Performance
jonrohan
1030
460k
Transcript
スクラムで Power Apps 開発をやってみた 2021/2/19 篠原 敬志 (@karamem0)
自己紹介 Name 篠原 敬志 (Takashi Shinohara) Company アバナード株式会社 Award Microsoft
MVP for Office Development (2018-) Twitter @karamem0 Facebook t.shinohara.56 LinkedIn tshino56 Blog https://blog.karamem0.jp
事前アンケートの回答をお願いします https://forms.office.com/Pages/ResponsePage.aspx?id=P-3bknrTGU-jkvaXBQXMauLxNEt3DL1PqM-UpGBgIe5UODNXWjNBSlhLNzNZWjRXNzg3WVlWVzdONi4u
はじめに スクラムってなんだ?
スクラムの概要 スクラムとはアジャイル開発の手法のひとつです。 困難で複雑な問題に対応するためのフレームワークです。 反復的で漸進的なアプローチにより予測可能性を最適化します。 スプリントと呼ばれる短い期間で価値のあるインクリメントを生み出します。
スクラムのメリット ビジネスの変化に対応しやすい 価値のあるものを優先的に投入できる 不具合の早期発見によりコストを削減できる
スクラムの三本柱 透明性 作業やプロセスが作業 を行う人やその作業を 受け取る人に見えてい ること 検査 インクリメントと進捗 状況は頻繁かつ熱心に 検査されなければなら
ないこと 適応 プロセスやプロダクト に問題があることがわ かったときは速やかに 調整されること
スクラムのプロセス
スクラムの役割 プロダクト オーナー プロダクトの価値を最 大化することの結果に 責任を持つ。常に 1 名。 スクラム マスター
スクラムを確立させる ことの結果に責任を持 つ。常に 1 名。 開発チーム プロダクトのインクリ メントを作成する。通 常 10 名以下で構成さ れる。 ステークホルダー プロダクトの要求を提 供しインクリメントを レビューする。
スクラムで Power Apps 開発?
Power Apps 開発におけるスクラム導入のポイント スクラムでは開発言語や開発手法を規定しません。さらにいえばソフトウェア開発 以外のドメインでもスクラムを適用することができます。これは Power Apps で あっても同様です。 ただしすべてのシナリオにおいてスクラムが適しているわけではありません。以下
のポイントで判断する必要があります。 要件 規模 期間
Power Apps 開発における検討事項 Power Apps で開発するということは単にアプリを作成することのみを指すのでは ありません。作成したアプリをユーザーが使えるようにするために検討しなければ いけないことがあります。 テストをどうする? デプロイをどうする?
バージョン管理を どうする? 運用をどうする?
Power Apps はチーム開発には向かない? チーム開発を行う上での懸念事項として Power Apps の編集は同時にはできない という問題があります。作業が止まらないように実装以外のタスクをうまくチーム 間で振り分ける必要があります。 フロント
エンド 設計 バック エンド 設計 アプリ 作成 テーブル 作成 コネクタ 作成 テスト ケース 作成 テスト 実施 レビュー 準備
Power Apps をチーム開発するためのプラクティス 用途や対象によって適切な粒度でアプリを分割する 例えば、申請アプリだったら…? 申請者向けアプリ 承認者向けアプリ 管理者向けアプリ
スクラムをやってみた
作ったもの ダッシュボード的なアプリ リストやグラフが複数表示される複雑な UI カスタム コネクタによる API 連携 データ ソースとして
Microsoft Dataverse を使用
作った人たち スクラム チーム 開発チーム プロダクト オーナー スクラム マスター
開発チーム インクリメントの作成 (設計/開発/テスト) スクラム イベントへの参加 バックログ リファインメントの実施
プロダクト オーナー バックログ リファインメントの実施 スクラム イベントへの参加 プロジェクトの管理 (※) プロジェクトの進捗状況の報告 開発チームのアサインの調整
技術的なサポート (※) (※) 本来はスクラムにおけるプロダクト オーナーの役割ではない
スクラム マスター スクラムに関するトレーニングの実施 スクラム イベントへの参加 開発環境や検証環境の整備 (※) Azure DevOps のセットアップ
Power Apps や Office 365 のライセンスの管理 技術的なサポート (※) (※) 本来はスクラムにおけるスクラム マスターの役割ではない
Power Apps の CI/CD
CI/CD 継続的インテグレーション/継続的デリバリーまたは継続的デプロイメントの略 ビルド/テスト/リリースのプロセスを自動化することが可能 頻繁にテストをすることで不具合を早期に発見できる 開発したものがすぐにユーザーに提供されるためフィードバックを得やすい 作業の自動化によりヒューマン エラーが少なくなる アジャイルでは頻繁にリリースが行われるため作業の自動化は必須
Azure DevOps アプリケーション ライフサイクル マネジメント (ALM) をサポートするためのさ まざまな機能を備えるツール Azure Boards
Azure Pipelines Azure Repos Azure Test Plans Azure Artifacts
Power Apps の CI/CD のアーキテクチャ 開発環境 ソリューション キャンバス アプリ フロー
カスタム コネクタ テーブル 検証/本番環境 ソリューション キャンバス アプリ フロー カスタム コネクタ テーブル
Power Apps のソリューション アプリ/フロー/その他のコンポーネントを含めることができる カスタマイズをまとめて他の環境に移動することができる
Power Platform Build Tools ソリューションをエクスポート/インポートするための機能を提供する Azure DevOps の拡張機能
Service Connection Azure DevOps から Power Platform への接続方法は 2 種類あります。
ユーザー名/パスワード サービス プリンシパル/クライアント シークレット (推奨) サービス プリンシパルを使用する場合、Azure AD アプリケーションを Power Platform 環境のアプリケーション ユーザーとして追加する必要があります。作成 するための PowerShell スクリプトが提供されています。
Azure Pipelines: Build Pipeline ソリューションをエクスポートして Azure Repos に Push する
Pipeline
Azure Pipelines: Release Pipeline Azure Repos から Clone してソリューションをインポートする Pipeline
Azure Repos 展開したソリューション ファイルは変更管理が可能 (ただしキャンバス アプリは msapp 形式になるため不可能)
DEMO
Power Apps テスト スタジオ Power Apps の UI テストを実施できる機能 (試験段階)
PowerAppsTestAutomation Power Apps テスト スタジオのテストを自動化するためのプロジェクト Azure Pipelines からテストを実行することが可能
Azure Pipelines PowerAppsTestAutomation は拡張機能として提供されていないため自前でのビ ルドが必要
DEMO
まとめ アプリは作ったら終わりではないです。利用者からフィードバックを受け常に改善 していくことが重要です。スクラムを採用することでアプリを継続的に成長させる ことができます。 アジャイルにとって CI/CD は非常に重要です。CI/CD を実践することで、開発者 は開発に集中することができ、またアプリの品質を高めることができます。
ご清聴ありがとうございました。 質問はありますか?