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
楽楽精算のリリースプロセス最適化/meetup_20211117
Search
Rakus_Dev
November 29, 2021
Technology
0
1.5k
楽楽精算のリリースプロセス最適化/meetup_20211117
Rakus_Dev
November 29, 2021
Tweet
Share
More Decks by Rakus_Dev
See All by Rakus_Dev
ラクスCTOが語る顧客視点を重視したプロダクト開発 / RAKUSTechCon2024_Kude
rakus_dev
0
2.4k
マルチプロダクトでのプロダクトマネージャーのリアル / RAKUSTechCon2024_Inagaki
rakus_dev
4
4.1k
拡大するマルチプロダクトSaaSの顧客理解にデザイン組織はどう取り組んでいるか / RAKUSTechCon2024_Design
rakus_dev
0
2.2k
急成長する大規模プロダクト開発のマネジメント課題とアプローチ / RAKUSTechCon2024_Seisan
rakus_dev
0
2.2k
パフォーマンス向上とリソース管理のためのアプローチ / RAKUSTechCon2024_RLC
rakus_dev
0
2.1k
急成長するサービスを支えるためのインフラ戦略 / RAKUSTechCon2024_Fujii
rakus_dev
0
2.1k
楽楽精算のQA改革 / RAKUSTechCon2024_Kaneko
rakus_dev
1
2.1k
新たな顧客課題に挑む17年目の進化とモダナイゼーション / RAKUSTechCon2024_Haihaimail
rakus_dev
1
2.1k
クロージングトーク / RAKUSTechCon2024_Closingtalk
rakus_dev
0
2k
Other Decks in Technology
See All in Technology
10年もののバグを退治した話
n_seki
0
110
スケールし続ける事業とサービスを支える組織とアーキテクチャの生き残り戦略 / The survival strategy for Money Forward’s engineering.
moneyforward
0
120
生成AIをより賢く エンジニアのための RAG入門 - Oracle AI Jam Session #20
kutsushitaneko
4
320
AWS re:Invent 2024 Recap in ZOZO - Serverless で好きなものをしゃべってみた
chongmyungpark
0
490
サービスでLLMを採用したばっかりに振り回され続けたこの一年のあれやこれや
segavvy
2
620
マイクロサービスにおける容易なトランザクション管理に向けて
scalar
0
200
ZOZOTOWN の推薦における KPI モニタリング/KPI monitoring for ZOZOTOWN recommendations
rayuron
1
170
DevFest 2024 Incheon / Songdo - Compose UI 조합 심화
wisemuji
0
200
MasterMemory v3 最速確認会
yucchiy
0
230
AIエージェントに脈アリかどうかを分析させてみた
sonoda_mj
2
100
サーバーなしでWordPress運用、できますよ。
sogaoh
PRO
0
140
GitHub Copilot のテクニック集/GitHub Copilot Techniques
rayuron
41
18k
Featured
See All Featured
Gamification - CAS2011
davidbonilla
80
5.1k
Site-Speed That Sticks
csswizardry
2
200
Six Lessons from altMBA
skipperchong
27
3.5k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
A better future with KSS
kneath
238
17k
Optimizing for Happiness
mojombo
376
70k
Raft: Consensus for Rubyists
vanstee
137
6.7k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
Reflections from 52 weeks, 52 projects
jeffersonlam
347
20k
Transcript
©2021 RAKUS Co., Ltd. 楽楽精算のリリースプロセス について 根井 達規
#RAKUSMeetup アジェンダ ・開発体制 ・リリース担当者の役割 ・リリースサイクル ・担当してみての課題と対策 ・今後の作業効率化・品質向上にむけて
#RAKUSMeetup 自己紹介 根井 達規(ねい たつのり) 経歴 2005年~2013年:エンジニアになる以前(もともと作曲家) 2014年~2020年:ラクス入社前(Sierでシステム開発を経験) 2020年11月:ラクス入社 現在
楽楽精算の開発と並行してリリース関連業務を担当
©2021 RAKUS Co., Ltd. 楽楽精算のご紹介 本題に入る前に、担当製品の楽楽精算についてご紹介 させていただきます。
#RAKUSMeetup 楽楽精算のご紹介 経費・交通費・出張費・旅費・交際費など、すべての経費精算フローを、 社内の誰もが「楽」できるようになるクラウド型の経費精算システムです。
©2021 RAKUS Co., Ltd. 楽楽精算の開発体制とリリー スフロー
#RAKUSMeetup 開発体制 ・各チーム3~4名体制 ・機能開発チーム×3 ・スマホアプリ開発チーム ・オフショアチーム ・ウォーターフォール開発
#RAKUSMeetup リリース担当となったきっかけ 元々はSREチームが楽楽精算のリリース業務を担当 楽楽精算がサービスとして成長するとともにSREの業務負荷が増え、対 応しきれなくなってきたのと、よりインフラやSREとしての業務(自動化推進 など)に専念するために開発チームにて巻き取ることとなりました。
#RAKUSMeetup リリース担当者の役割(担当作業) ・リリーススケジュールの作成,確認 ・機能開発 ・IT/ST ・品質審査 ・リリース
#RAKUSMeetup リリース担当者の役割(進捗管理)
#RAKUSMeetup リリースサイクル
#RAKUSMeetup リリースサイクル ・設計(項目決定) 開発期間開始時に各事業部でタスクを整理して、どのバージョンにどのような変更をいれるか管理す るようにしています。 ・機能開発 設計~単体テストまでの開発全行程 ・テスト期間(結合・システムテスト) 不具合の洗い出しと、その改修を行います。開発機能として優先度の高い内容を除くと、多くは前回リ リースからの実装差分に焦点を充てて確認を行います。この期間で行うのは主にリリース前の手動に
よるテスト実施してます。この期間でなくとも、自動テストや手動テストを必要に応じて回し、不具合が あれば修正します。
#RAKUSMeetup リリース メジャーバージョンアップ 新機能追加を伴う、アプリケーションリリース。 同時にBugfixなどの対応を行うことがある。 マイナーバージョンアップ Bugfixを中心とした、アプリケーションリリース。 リスクが大きいものは対象としないため、2段階リリースは行わない。 リリース時のサービス停止は発生しない。
©2021 RAKUS Co., Ltd. 担当してみて発生した課題 障害事例の紹介
#RAKUSMeetup 属人化 問題 ・あるチームの開発機能で、本来実施しておくべき作業手順(特定顧客向けの設定) が漏れており、リリース直前に手戻りが発生。 ・イレギュラーな対応を行うことでの障害リスクも増大させてしまった。 原因 ・作業手順/作業分担ができておらず、明確化していなかった 反省点 ・前任者はリリース担当の経験も長く十分にナレッジがあったため、その方式でもリス
クを検知し独自に動けていたが引継ぎ後の体制では漏れてしまった。
#RAKUSMeetup 対策 リリースサイクルのガイドラインを設ける ・特定個人への依存した運用とならないよう、リリースサイクルのガイドラインを作 成 オブジェクトや物資の不足 ・開発担当者・リリース担当者・インフラへの作業引き渡しが曖昧とならないよう、 最終チェックの場を設けた 対策結果 リリースフローが形式知化され、必要な情報は資料を見れば分かる状態となった
©2021 RAKUS Co., Ltd. 今後の展望 今後の作業効率化・品質向上に向けて改善したいこと
#RAKUSMeetup 【現状】 リリース担当者の負担が大きい リリース担当者というリリースに責任を負う人物を立てて、問題なくリリースが行える ように部署間の施策の調整をしたり、スケジュールの調整を行う役目を担ってました。 次のリリースに入るはずの機能がマージできていないときに関係者をつっつくような 役目も持っていたので、とにかく細かい作業や人間の間の調整で忙殺されてしまう。 【理想】 当事者間の調整や確認に非常に手間をとられてるので、「調整・確認」を減らしたい、 なんなら無くしたい!
#RAKUSMeetup 生産性向上に向けた効率化計画
#RAKUSMeetup やってみたいこと CI/CD ・Jenkinsによるビルド、テスト、検証環境へのデプロイは実装できてる ・ジョブが増えすぎたこともあって整理したい ・ソースコード管理にGitlabを利用してるので、GitlabCIを利用してビルド→テスト→デ プロイ→動作確認(性能検証・シナリオテスト)までの一連の流れを一つのパイプライ ンで実施できるようにしたい Selenium 自動化したシナリオテストをもっているが、全機能網羅できてるわけでない。また主要
機能を確認するだけでも5-6時間以上かかってる。シナリオテストの実行時間を減らし たい
#RAKUSMeetup 楽楽精算のリリースサイクルについてご説明しました。 サービスが拡大し環境も変化するで、システム品質を損なわずにどう開発を続けてい けるか試行錯誤してるところです。 まだまだ困っていることもたくさんありますがより良い方法を考えていきたいと思って います。