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
デザインから逆算して難易度を見積もるための観点
Search
Fumiya Sakai
February 05, 2025
Technology
0
220
デザインから逆算して難易度を見積もるための観点
2/5に開催された『みんなのアジャイル』発売記念LT大会 in 虎ノ門でのLT資料になります。
Fumiya Sakai
February 05, 2025
Tweet
Share
More Decks by Fumiya Sakai
See All by Fumiya Sakai
Liquid Glass革新とSwiftUI/UIKit進化
fumiyasac0921
0
330
iOS/Androidで無限循環Carousel表現を考えてみる
fumiyasac0921
0
200
ノートを取る習慣を続けていたので、その記録の一部を書籍にまとめてみました
fumiyasac0921
1
95
Riverpod & Riverpod Generatorを利用して状態管理部分の処理を書き換えてみる簡単な事例紹介
fumiyasac0921
0
150
iOS/Android間でUI実装を近づけるヒントと道標
fumiyasac0921
0
450
GeometryReaderやスクロールを用いた表現と紐解き方
fumiyasac0921
0
180
SwiftUIで座標位置を取り扱う場合の細かなポイントを探ろう
fumiyasac0921
1
250
iOS/Androidで同じUI体験をネイティブで作成する際に気をつけたい落とし穴
fumiyasac0921
1
240
DroidKaigi2024公式アプリiOS側Contribution裏話
fumiyasac0921
1
160
Other Decks in Technology
See All in Technology
Connect 100+を支える技術
kanyamaguc
0
190
KubeCon + CloudNativeCon Japan 2025 Recap by CA
ponkio_o
PRO
0
290
LangSmith×Webhook連携で実現するプロンプトドリブンCI/CD
sergicalsix
1
210
Delta airlines Customer®️ USA Contact Numbers: Complete 2025 Support Guide
deltahelp
0
360
React開発にStorybookとCopilotを導入して、爆速でUIを編集・確認する方法
yu_kod
1
230
怖くない!はじめてのClaude Code
shinya337
0
380
整頓のジレンマとの戦い〜Tidy First?で振り返る事業とキャリアの歩み〜/Fighting the tidiness dilemma〜Business and Career Milestones Reflected on in Tidy First?〜
bitkey
2
15k
Lazy application authentication with Tailscale
bluehatbrit
0
170
「良さそう」と「とても良い」の間には 「良さそうだがホンマか」がたくさんある / 2025.07.01 LLM品質Night
smiyawaki0820
1
510
PO初心者が考えた ”POらしさ”
nb_rady
0
190
Yamla: Rustでつくるリアルタイム性を追求した機械学習基盤 / Yamla: A Rust-Based Machine Learning Platform Pursuing Real-Time Capabilities
lycorptech_jp
PRO
4
240
Flutter向けPDFビューア、pdfrxのpdfium WASM対応について
espresso3389
0
130
Featured
See All Featured
Embracing the Ebb and Flow
colly
86
4.7k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Unsuck your backbone
ammeep
671
58k
Building an army of robots
kneath
306
45k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Six Lessons from altMBA
skipperchong
28
3.9k
How to train your dragon (web standard)
notwaldorf
94
6.1k
YesSQL, Process and Tooling at Scale
rocio
173
14k
How GitHub (no longer) Works
holman
314
140k
Site-Speed That Sticks
csswizardry
10
680
Transcript
デザインから逆算して難易度を見積もるための観点 Fumiya Sakai 『みんなのアジャイル』発売記念LT大会 in 虎ノ門 @ 虎ノ門ヒルズビジネスタワー 2025/02/05 書籍ダイジェスト版
& 補足事項
自己紹介 ・Fumiya Sakai ・Mobile Application Engineer アカウント: ・Twitter: https://twitter.com/fumiyasac ・Facebook:
https://www.facebook.com/fumiya.sakai.37 ・Github: https://github.com/fumiyasac ・Qiita: https://qiita.com/fumiyasac@github 発表者: ・Born on September 21, 1984 これまでの歩み: Web Designer 2008 ~ 2010 Web Engineer 2012 ~ 2016 App Engineer 2017 ~ Now iOS / Android / sometimes Flutter
iOSのUI実装本を執筆しています! 書籍に掲載したサンプルのバージョンアップや続編等に現在着手中です。 少しの工夫で実現できるTIPS集やライブラリ表現の活用集をはじめとした、iOSア プリ開発の中でも特にUI実装やUIKitを利用した画面の中で特徴を与える様な表現 という題材に焦点を当てた書籍となっております。 現在は電子書籍版のみとなります。 こちらは全て¥1,000となっております。 https://just1factory.booth.pm/ 概要: https://book-tech.com/
価格: 📖 Booth 📖 Book Tech
UI実装であると嬉しいレシピブックの最新情報 UI実装であると嬉しいレシピブックVol.3として2022年10月に商業化しました! Still WIP これまでの同人誌として頒布したものに加えて、Vol.1及びVol.2に頒布したものの 中で書籍に載せきれなかったものや表現や動きが特徴的でユーザーにもほんの少し 遊び心を与える様なUI実装を紹介したものをVol.3としています。 概要: これからの構想: こちらで購入可能です:
Amazon / Google Play / Apple Books / KINOKUNIYA / Rakuten BOOKS etc.. 🏊 iOS: SwiftUIを利用したUI実装や動画関連の実装 🏊 Android: Jetpack Composeの基本やその他気になるUI表現の考察
技術書同人誌博覧会スタッフ&デザイン協力もしてます (御礼)第11回技術書同人誌博覧会参加ありがとうございました! 🍀 #9 一般参加募集チラシ 🍀 #10 次回案内チラシ 🍀 #11
次回案内チラシ 🍀 技書博 mini OSC案内 (ちょっと宣伝)上記案内のデザインは私が作成しました。
デザインを基に実装難易度を見積もる重要性に関して iOS/Androidはそれぞれ異なるデザインガイドラインや技術的要件を持つ 同じ様なデザインを実装する場合でも、異なるアプローチが必要になる。 1. モバイルアプリ開発において難易度を見積もる際に重要な観点を整理する: デザインから逆算して実装の難易度を正確に見積もることは、プロジェクトの円滑な進行に不可欠だと考えています。 2. iOS/AndroidそれぞれのUI実装観点からの重要性: デザイナーとの協業においても、これらの技術的な制約や可能性を共有することで、実装しやすく、かつユーザー体験の高いデ ザインの創出につながると考えています。
3. アジャイル開発の観点からiOS/Androidでの類似点・相違点を押さえる例: iOS/Android両方の違いを事前に把握することで、スプリント計画の制度向上によるリソースの最適配分やリスクの早期特定から 適切な対策を立てることができるので、スムーズな開発支援にもつながると考えています。
モバイルアプリ開発において難易度を見積もる際に重要な観点を整理する(1) 観点は様々ありますが、見積もりの際に特に重要なものをピックアップしました 😀 1. UIコンポーネントの複雑さ 2. プラットフォーム間の差異 3. データフローとステート管理 4.
パフォーマンスへの影響 5. API連携とデータ同期 標準のまま or カスタムの必要 / AnimationやLayoutの複雑さ / 複雑なInteraction / 階層構造 UIガイドライン / プラットフォーム固有機能 / デバイス毎の画面やアスペクト比 データフローと状態管理の複雑さ(※複数の依存関係がどの様に絡むか?) 大量データの取り扱い / 画像処理 / 動画再生(重い処理)、Background処理 / Push通知(応答性) 必要なAPI呼び出し数・データの同期方法(ネットワーク不安定時・オフライン時・データ競合防止) 特にUI実装に直結する ような項目を列挙 ※本書でフォーカスしている点 ※本書でフォーカスしている点
モバイルアプリ開発において難易度を見積もる際に重要な観点を整理する(2) 観点は様々ありますが、見積もりの際に特に重要なものをピックアップしました 🧐 6. セキュリティ要件 7. アクセシビリティ対応 8. ローカライゼーション 9.
テスト容易性 10. メンテナンス性と拡張性 ユーザー認証 / データ暗号化 / Secure Storage(実装の複雑さに影響を及ぼす可能性がある点) 色コントラスト比 / 音声読み上げ機能 / Touch Target Size(使いやすさの考慮に関する要件) 多言語対応 / RTL / 地域ごとの法的要件や文化的配慮(グローバル展開を視野に入れた場合) ユニットテスト / UIテスト(実装のしやすさ)・エッジケースや異常系(テストシナリオ設計) コードの再利用性 / 将来的な機能追加や変更のしやすさ(長期的なプロジェクト成功の想定) 機能要件や仕様次第で はUI実装に影響する可 能性がある項目を列挙
iOS/AndroidそれぞれのUI実装観点からの重要性 iOS/Android両方の難易度を見積もる上で重要な観点をピックアップしました 1. コンポーネント単位で見た時の方針選択 2. iOS/Android間における考え方の相違点 3. カスタムUIコンポーネントの実装 4. アニメーションとトランジション
5. システムUIとの統合 一見すると同じ様な見 た目や体験が同じ様に 見えても注意が必要。 ・UIコンポーネントの複雑さ ・プラットフォーム間の差異 6. アプリのライフサイクルの違い iOS/Androidの両方のUIガイドライン(iOS: Human Interface Guideline/Android: Material Design)、 レイアウトエンジン、ナビゲーションパターン等の違いを事前に把握することによって、各プラット フォームに応じた開発タスクの見積もりを正確に行う際の手助けになる。
アジャイル開発の観点からiOS/Androidでの類似点・相違点を押さえる この様な動きをするために普段から心がけておくと良いポイント 1. 定期的な公式ドキュメントの確認・新機能やデザインの変更点の共有 2. 両プラットフォームに共通する部分と独自に調整すべき部分の明確化 3. プロトタイプ段階でアニメーション・インタラクションの確認 4. iOS/AndroidのUI処理における相違点やアプリケーションとの調和の確認
5. 定期的なデザインレビューやユーザビリティテストの実施 チームで実際に発生し た問題や事例を共有す る機会を積極的に創出 ・スプリント計画の精度向上 ・リスク早期特定と問題対処 6. 各プラットフォームにおける実装の課題や成功事例の共有 - 各プラットフォームのガイドラインやベストプラクティスにできるだけ従う - 同じ機能でもプラットフォームによって実装アプローチが異なる場合がある点に注意する - ユーザー体験を損なわないよう、各プラットフォームの特性を理解した上で設計・実装する
アジャイル開発の観点からiOS/Androidでの類似点・相違点を押さえる
アジャイル開発の観点からiOS/Androidでの類似点・相違点を押さえる
アジャイル開発の観点からiOS/Androidでの類似点・相違点を押さえる
アジャイル開発の観点からiOS/Androidでの類似点・相違点を押さえる
アジャイル開発の観点からiOS/Androidでの類似点・相違点を押さえる
なぜこの観点がアジャイル開発において重要だと考えるか? アジャイル開発の特性や目指す成果と密接に関係すると考えています 1. 迅速なフィードバックサイクルの促進 2. 優先順位の明確化とスコープ管理 3. チームの共通理解と連携の強化 4. リスク管理と技術的負債の抑制
5. 持続可能なペースの確保 デザイナーとエンジニ アだけではなく関連す る職種の皆様と一緒に ・Communication ・Collaboration 6. ユーザー価値の最大化 デザインから逆算して難易度を見積もる観点は、スムーズなスプリント計画、リスクの早期発見、チー ム全体の連携、持続可能な開発ペースの維持、そしてユーザー価値の最大化に直結します。これらはア ジャイル開発の成功に欠かせない要素であり、結果として全体効率や品質向上にもつながります。
まとめ 難易度を見積もる際に大切なのは「目に見えない」部分への準備力のところ 時間やリソースが限られた状況で、技術的に難しい部分やリスクの高い部分を特定して対応する準備が大切。 1. チーム全体の連携: 各役割が1つのチームとして協力することが不可欠になります。特にUI実装と機能ロジックは切り離して考える事が難しい場合も 珍しくないため、役割や職種を越えて共通理解を持っている状態が望ましいと思います。 2. 技術的な実現可能性の評価: デザインが提案された時点で「実現が技術的にどれほど難しいか?」をという問いを常に持ち、評価する事も重要になってきま
す。複雑な実装を要する箇所を早期特定する事で、可能性の模索や難しい場合の代替案を検討がしやすくなると思います。 3. 時間とリソース制約の考慮: 時間やリソースには限りがあるため、実装の難易度が高い部分を早期に見極めることが求められます。これにより、開発プロセ スの初期段階でリスクを管理し、優先順位をつけて進めることが可能になると思います。
Thank you for listening !