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
人類には早すぎる、謎の計算ロジックに立ち向かう / Strugle with the most...
Search
Jun Tomioka
February 04, 2019
Technology
1.8k
1
Share
人類には早すぎる、謎の計算ロジックに立ち向かう / Strugle with the most complicated logic ever
Jun Tomioka
February 04, 2019
More Decks by Jun Tomioka
See All by Jun Tomioka
Dotty で軽量な DI ライブラリをかいてみた
jooohn
1
380
ソフトウェアエンジニアとしてモナドを完全に理解する / make-perfect-sense-of-monad
jooohn
14
8k
ScalaのコンパイラにFizzBuzzを解いてもらう(Dottyもあるよ)
jooohn
1
1.1k
Write stack safe non-tailrec recursive functions
jooohn
4
1k
Introduction to Clean Architecture
jooohn
1
600
Work at M3 USA
jooohn
0
1.4k
クラウド電子カルテを支えるテクノロジーの光と闇
jooohn
0
1.4k
怖くないCats
jooohn
0
910
Scalaの型クラスを完全に理解する
jooohn
5
2.1k
Other Decks in Technology
See All in Technology
ルールやカスタム機能、どう使う?理想の出力を引き出すために今知りたいIBM Bob 5つの機能
muehara
0
150
Generative UI × A2UI で AI エージェントを作った話 AI-DLC も使ってみた!
kmiya84377
1
280
Claude Codeを組織で使いこなす— サーバサイドAIエージェント運用の実践知
techtekt
PRO
0
130
Strands Agents超入門
kintotechdev
1
140
JEP 522 Deep Dive - G1 GC同期コスト削減によるスループット向上を徹底検証&解説
tabatad
1
380
脅威をエンジニアリングの糧にして:恐怖を乗り越えた先にあったもの / Turn threats into fuel for engineering: what lay beyond overcoming fear
nrslib
1
350
Datadog 認定試験の概要と対策
uechishingo
0
200
AIガバナンス実践 - 生成AIコネクタのデータ漏洩リスクと実務対策
knishioka
0
140
電子辞書Brainをネットに繋げてみた(自力編)
raspython3
0
320
Fabric-cicd によるAzure DevOps デプロイ
ryomaru0825
0
150
コードレビューを制するチームがソフトウェアデリバリーのフローを制す / Beyond Code Review: Distributing Its Responsibilities Across the SDLC
mtx2s
2
450
ITエンジニアを取り巻く環境とキャリアパス / A career path for Japanese IT engineers
takatama
4
1.8k
Featured
See All Featured
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
760
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
250
30 Presentation Tips
portentint
PRO
1
310
Game over? The fight for quality and originality in the time of robots
wayneb77
1
180
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
Facilitating Awesome Meetings
lara
57
6.9k
WENDY [Excerpt]
tessaabrams
11
38k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
170
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
440
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
Transcript
人類には早すぎる 謎の計算ロジックに 立ち向かう @jooohn1234
M3, Inc. @jooohn1234 • エムスリーデジカルCTO • Scala / FP 好き
電子カルテとレセコン
受付 診察 会計
受付 診察 会計 電子カルテ 患者への医療行為を記録
受付 診察 会計 レセコン 会計計算・保険請求
? ?
?
None
ORCA に依存した場合のキャップ 電カルだけの場合のキャップ レセコン単体・一体型のポテンシャル
レセコン 作っちゃいましょう! 当時の電カルチーム PM
レセコンとは
医療機関 レセコン
医療機関 レセコン 合計: 1,000円 自己負担: 300円 日時会計処理 (会計計算・記録) 患者
医療機関 レセコン 月次請求処理 (必要ファイル・書類の作成) 支払基金・自治体
レセコン 会計計算、保険請求の処理を担う魔法の機械。 以下の要素でできている。 ・診療報酬点数を計算する謎のロジック ・保険・公費を適用した際の請求額や窓口会計額などを計算 する謎のロジック
レセコン 会計計算、保険請求の処理を担う魔法の機械。 以下の要素でできている。 ・診療報酬を計算する謎のロジック ・保険・公費を適用した際の請求額や窓口会計額などを計算 する謎のロジック す、すごい!
安くて 良いレセコンを 作りたい! 謎の 計算ロジック
レセコンのつくりかた • 製品品質の担保 • コード品質の担保
製品品質の 担保
None
協力クリニックを募り、デジレセ・ORCA双 方に同じ処方内容を入力 それぞれからレセ電ファイルを出力
差分を比較、分析。 改善すべき計算ルールを特定。
計算ルールを仕様に落とし実装。 目標差分になるまで改善ループを回す。
この改善サイクルを複数診療科で実行。 (診療科によって診療パターンが大きく違う)
コード品質の 担保
エンジニアA 調剤レセコン開発経験ありのエン ジニア Rubyが得意 エンジニアB 関数型やScalaが得意。 「メンテを考えたら絶対に静的型 言語で書くべき。」
ロジックの検証を真っ先に行えるよ うにRubyでプロトタイプを作成。 捨てる前提で爆速で開発。 長期のメンテナンス性を考慮し、 Scalaで書き直し。 計算ロジックを理解、モデルを整理 しながら清書。 エンジニアA 調剤レセコン開発経験ありのエン ジニア
Rubyが得意 エンジニアB 関数型やScalaが得意。 「メンテを考えたら絶対に静的型 言語で書くべき。」
結果
新規導入数の推移(の雰囲気) レセ単体・一体型のローン チ1年半ほどで、 新規導入比率が連携型と 同程度に!
新規導入数の推移(の雰囲気) 爆上げ 間違い なし!!
まとめ • サービス成長過程で超えるべき壁がある(あった) ◦ 一見難しそうに見えるし、実際に難易度は高い(高かった) ◦ やったリターンは大きい ( 大きかった )
• 工夫で品質を担保する ◦ 既存の製品をベンチマークとして品質を担保 ◦ 一度作ったプロトタイプを捨てることでコード品質を担保