Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ドメインをスペックにしていく
Search
Koichi Nishide
March 07, 2017
Technology
1
8.7k
ドメインをスペックにしていく
Koichi Nishide
March 07, 2017
Tweet
Share
More Decks by Koichi Nishide
See All by Koichi Nishide
システムテスト自動化カンファレンス2018.pdf
knishide5
1
9k
Other Decks in Technology
See All in Technology
進化の早すぎる生成 AI と向き合う
satohjohn
0
320
AIで加速する次世代のBill Oneアーキテクチャ〜成長の先にある軌道修正〜
sansantech
PRO
1
150
SRE視点で振り返るメルカリのアーキテクチャ変遷と普遍的な考え
foostan
2
3k
雲勉LT_Amazon Bedrock AgentCoreを知りAIエージェントに入門しよう!
ymae
2
230
Master Dataグループ紹介資料
sansan33
PRO
1
4k
GitHub を組織的に使いこなすために ソニーが実践した全社展開のプラクティス
sony
15
8.7k
[続・営業向け 誰でも話せるOCI セールストーク] AWSよりOCIの優位性が分からない編(2025年11月21日開催)
oracle4engineer
PRO
1
150
翻訳・対話・越境で強いチームワークを作ろう! / Building Strong Teamwork through Interpretation, Dialogue, and Border-Crossing
ar_tama
0
430
AWS re:Invent 2025 で頻出の 生成 AI サービスをおさらい
komakichi
3
260
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
21k
プラットフォームエンジニアリングとは何であり、なぜプラットフォームエンジニアリングなのか
doublemarket
0
360
.NET 10のEntity Framework Coreの新機能
htkym
0
140
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Optimizing for Happiness
mojombo
379
70k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
11
950
Six Lessons from altMBA
skipperchong
29
4.1k
Done Done
chrislema
186
16k
Transcript
ドメインをスペックにしていく @ichikoich
@ichikoich • 2015年からfreeeでエンジニアしてます ◦ 入社から2年ほど、給与計算freeeのアプリエンジニア ◦ 2017年からQAチームへ • 前職は精密機器メーカーで働いてました
話すこと • 複雑なドメインへの立ち向かい方
freeeの紹介
給与計算freeeを2年間開発してました
給与ってどう計算されてるか知ってますか?
給与明細をみてみる
計算間違いはあってはならない • 従業員へ払う残業代が実際よりも少ない • 年末調整の還付額が少ない • 所得税を少なく計算してしまう etc..
そして、年々変わる料率・制度
散らばるスペック • 単体テストはたくさんあるが、 ◦ それが本当に正しいかはぱっとみわからない ▪ ドメインスペシャリストはコードを見れないし、エンジニアは複雑なドメイン 習得には難航するし、、 ◦ 散らばってるのでリファクタしようとしても、どのテストケースに影響あるかよく
わからない ▪ 制度の改正があるときも同じく テストはRSepcで書いてます
変更を恐れず、どんどんユーザに価値を届けたい
ここから自動化の話
ドメインスペシャリストによるテストが継続的に回る仕組み
フロー 社労士さん エンジニア テストケースの期待結果 テストケース csv - 会社A - 従業員X
- 2017年1月の 給与を計算す る 20,500円やで APIテスト - 従業員登録APIで事 前準備 - 給与明細取得API のレスポンスを確認 デプロイのたびにテ スト
ポイント1 • コードかけなくても自動テストデータを作成できる ◦ Googleスプレッドシート上で社労士さんとやりとりして、一緒にテストケースや データをつくる
ポイント2 • がんがん変更できるように、APIレベルで担保する • Request Specを採用
ドメインスペシャリストが APIテストを書いているイメージ 心強いでしょ?
さらなる効果 • 社労士さんと仲良くなれた • 開発の初期段階で要件漏れを防ぐ効果もでてきた ◦ こういうテストケースを考えてるんですが、他に例外系列やリスクがありそうなところ教えてください ◦ テストケースの結果が返ってき、自分の思ってるのと違うーってなる。よくよく聞いてみると、まだ理 解しきれていないところがあった
◦ 文献や国税庁のHPを読むだけでなく、話してみると気づきはある ◦ チームメンバもよくドメインスペシャリストに相談するようになった
まとめ • ドメインスペシャリストをテストに巻き込む仕組みを作るといいぞ ◦ 複雑なビジネスロジックを教えてもらえる ◦ さらに教えてもらったことが自動テストとして活きてくるので、いいエコサイクルになる ◦ チーム全体がドメインを知るきっかけになる
エンジニア募集中です