Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
調理場で使うタブレット専用アプリ をどうつくったか -STORES モバイルオーダー 実装の...
Search
Kenta Enomoto
December 04, 2025
Technology
0
13
調理場で使うタブレット専用アプリ をどうつくったか -STORES モバイルオーダー 実装の舞台裏-
STORES Tech Conf 2025 "What would you do?" で登壇した際の資料です
https://storesinc.tech/conf/2025
Kenta Enomoto
December 04, 2025
Tweet
Share
More Decks by Kenta Enomoto
See All by Kenta Enomoto
[DroidKaigi 2025] 共有と分離 - Compose Multiplatform "本番導入" の設計指針
enomotok
0
26
Kotlin Multiplatform / Compose Multiplatform を活用したモバイルアプリ開発の最前線
enomotok
0
110
Compose MultiplatformにおけるiOSネイティブ実装のベストプラクティス
enomotok
1
450
STORES ブランドアプリのスケールするアプリづくり
enomotok
0
61
What's new in Xcode 16 ダイジェスト
enomotok
0
830
Introducing Pkl
enomotok
0
2.9k
iOS リポジトリへの Renovate の導入
enomotok
2
410
iOS開発とGitLab CI
enomotok
7
4.1k
ポモドーロテクニックについて
enomotok
0
150
Other Decks in Technology
See All in Technology
株式会社ビザスク_AI__Engineering_Summit_Tokyo_2025_登壇資料.pdf
eikohashiba
1
120
日本Rubyの会: これまでとこれから
snoozer05
PRO
6
240
AWSに革命を起こすかもしれない新サービス・アップデートについてのお話
yama3133
0
510
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
1
770
通勤手当申請チェックエージェント開発のリアル
whisaiyo
3
470
MySQLとPostgreSQLのコレーション / Collation of MySQL and PostgreSQL
tmtms
1
1.2k
投資戦略を量産せよ 2 - マケデコセミナー(2025/12/26)
gamella
0
420
日本の AI 開発と世界の潮流 / GenAI Development in Japan
hariby
1
480
Kiro を用いたペアプロのススメ
taikis
4
1.9k
[2025-12-12]あの日僕が見た胡蝶の夢 〜人の夢は終わらねェ AIによるパフォーマンスチューニングのすゝめ〜
tosite
0
180
20251218_AIを活用した開発生産性向上の全社的な取り組みの進め方について / How to proceed with company-wide initiatives to improve development productivity using AI
yayoi_dd
0
670
Bedrock AgentCore Memoryの新機能 (Episode) を試してみた / try Bedrock AgentCore Memory Episodic functionarity
hoshi7_n
2
1.9k
Featured
See All Featured
Odyssey Design
rkendrick25
PRO
0
440
New Earth Scene 8
popppiees
0
1.2k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
200
Done Done
chrislema
186
16k
SEO for Brand Visibility & Recognition
aleyda
0
4.1k
From π to Pie charts
rasagy
0
91
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
0
3.4k
ラッコキーワード サービス紹介資料
rakko
0
1.8M
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
340
Building an army of robots
kneath
306
46k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
30
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
0
31
Transcript
調理場で使うタブレット専用アプリ をどうつくったか -STORES モバイルオーダー 実装の舞台裏- Kenta Enomoto
榎本 健太 STORES ブランドアプリチーム iOS エンジニア enomot_ enomoto 自己紹介
1. STORES モバイルオーダーとは 2. 私たちが直面した「制約」 3. 制約の中で下した判断 4. 開発の結果とタイムライン 5.
まとめ アジェンダ
STORES モバイルオーダー とは
注文から決済、受け取りまでを スムーズにデジタル化するプロダクト STORES モバイルオーダーとは • モバイルオーダーサービスを 簡単に導入できる仕組み • 注文、決済、受け取りまでをス ムーズに
キッチンディスプレイとは 調理場で使われるタブレット専用アプリ • 調理場でオーダー情報をリア ルタイムに把握 • オーダーのステータスを変更 し、お客さまに進捗を通知
2. 私たちが直面 した「制約」
制約 6 1. 調理場特有の要件 2. ビジネスのスピード感と、限られたリソースによる、 事業上の制約
制約①:調理場特有の要件 一般的なアプリとは異なる現場環境からの要求 • 一覧性 ◦ 一画面で必要な情報がすべてわかるUI • 即時性 ◦ 新しい注文に「すぐ」気づくことができる通知やUI
• 堅牢性 (端末) ◦ 故障に強い端末(例:防水性)を選択可能であること
実際に使われている現場 (iki Roastery & Eatery さま)
実際に使われている現場 (iki Roastery & Eatery さま)
実際に使われている現場 (iki Roastery & Eatery さま)
実際に使われている現場の様子 (iki Roastery & Eatery さま)
制約①:調理場特有の要件(再掲) 一般的なアプリとは異なる現場環境からの要求 • 一覧性 ◦ 一画面で必要な情報がすべてわかるUI • 即時性 ◦ 新しい注文に「すぐ」気づくことができる通知やUI
• 堅牢性 (端末) ◦ 故障に強い端末(例:防水性)を選択可能であること
制約②:事業上の制約 ビジネスのスピード感と、限られたリソースによる制約 • ゼロからの新規開発 • ビジネス要求に応えるための早期リリース • Android版 のリリースが必須 ◦
端末の選択肢のため • 少人数チームと技術スタックの制限
制約の中で下した 判断
制約の中でどのように判断をしたか MUST/前提として満たす必要あり • Android版の提供 • 一画面で情報がわかる UI • 早期リリース •
エンジニアリソースの不足 • ゼロからの開発 WANT/妥協できる • ネイティブらしいリッチな UI ◦ 凝ったアニメーション ◦ 複雑で美しいデザイン • iOS版の早期リリース 全てはトレードオフである
制約への回答 1. Kotlin Multi Platform / Compose Multi Platform という技術選定
◦ Android 版の提供 ◦ 早期リリース ◦ エンジニアリソースの不足 2. UI 設計による問題解決 ◦ 一画面で情報がわかるUI
制約への回答①:技術選定 Kotlin Multiplatform / Compose Multiplatform (KMP / CMP) Shared
UI Compose Multiplatform Shared logic Kotlin Multiplatform
制約への回答①:技術選定 Kotlin Multiplatform / Compose Multiplatform を選定 • Android 版を先行リリース
• iOS 版も要望が上がる可能性が高い • 仮に iOS をネイティブで作り直しになっても、 KMP / CMP の コードは Android の資産として活かせる • 業務アプリのため、プラットフォーム固有の UI の作り込みは少 ない
技術選定上の工夫 プロトタイピング • リリース前の時点では CMP を用いた事例はまだ少なかった • 実装に先駆けて2週間のプロトタイピングを実施 • マルチプラットフォーム環境での開発効率を検証
KMP/CMP による実装の詳細を知りたい方へ https://2025.droidkaigi.jp/timetable/944860/
制約への回答②:UI設計と工夫 • 1画面で情報がわかる UI の設計 • ボトムシート UI
制約への回答②:UI設計と工夫 1画面で情報がわかる UI の設計
制約への回答②:UI設計と工夫 ボトムシート UI
開発の結果と タイムライン
Android 版の成果 Android 版 • 通常の Android ネイティブ開発に対して、1.3倍程度の工数でリ リース (KMP/CMP
のキャッチアップも含む) • Jetpack Compose の知識があれば UI 実装で迷う部分は少な い
iOS 版の成果 iOS 版 • 実装着手からおよそ 2 ヶ月でリリース • Android
版と 90 %のコードを共有 • コードを共有できないだけモジュール分割と DI を用いて分離す る手法を用いた
開発タイムライン プロダクト 構想 2024/03 Android版 開発着手 2024/08 Android版 リリース 2024/12
2025/03 iOS版 リリース 制約の中での迅速なリリースを実現 技術選定/ 設計
得られたもの 採用した技術選定は、 STORES として 今後の資産としても活用できる基盤になった
まとめ
得られたもの 制約から最適解に辿り着く • まず制約をすべて明らかにすること • その中で最も重要なビジネス上の制約を特定し、遵守する • 守るべきものを決めれば、最適な設計は自ずと浮かび上がる