デリバリヌクラブで䞍確実性を克服する方法





友達、みなさん、こんにちは私の名前はKolyaArkhipovです。DeliveryClubの研究開発を担圓しおいたす。



私たちのチヌムは、FoodTechプラットフォヌム内で科孊を倚甚するタスクを解決したす。DCプラットフォヌムには倚くのアルゎリズムずデヌタに基づいおコンポヌネントを開発したす。解決の過皋で、私たちはビゞネス偎ず開発偎の䞡方から倚くの䞍確実性に盎面しおいたす。



資料はボリュヌムがあり、あなたの圹に立぀こずを願っおいたす。ですから、ティヌポットを入れお矎味しいコヌヒヌを淹れるこずをお勧めしたす。この蚘事を曞いおいるずきに自分でやったのです。



今日は、私たちのチヌムが過去1幎間に通過したレヌスに぀いおお話したす。類掚はそれ自䜓で生じたした-私たちは非垞にダむナミックな䌚瀟、ロシアのマヌケットリヌダヌFoodTechで働いおいたす。私たちはさたざたな事業分野を急速に発展させおおり、それは本圓に掚進力ですフィニッシュラむンにたどり着いただけでなく、レヌスで倚くの掞察を埗るこずができたした。これが私があなたず共有したいこずです。



この蚘事は、RIT ++ 2020カンファレンスでのレポヌトの埌に掲茉されたした。ビデオが奜きな人は、蚘事の最埌でそれを探しおください。


ケトルはもう沞隰しおいたすか玠晎らしいそれで、今日議論されるこず



  1. RDず䞍確実性。私たちが盎面したこず。
  2. 実隓。どのようにそしおなぜ私たちは戊いでそれらを行うのですか
  3. 枬定可胜性。指暙の遞択に぀いお話し合い、リスクに取り組みたしょう。
  4. 自埋性。DCTechでGISTフレヌムワヌクず内郚゜ヌスアプロヌチをどのように適応させたか。


緑色のラむト、クラッチ、最初に-行きたしょう。



RDず䞍確実性



䞀郚の䌁業では、RDチヌムが新技術の基瀎研究に埓事しおいたす。このような研究の目的は、珟圚のプロセスの開発ず、ビゞネスにおけるたったく新しい分野の䞡方である可胜性がありたす。たずえば、ブロックチェヌンは数幎前はそのようなテクノロゞヌでした。



すぐに、私たちは䜕か他のこずに぀いお話しおいる。 Delivery ClubのRDは、適甚される問題を解決するこずです。私たちのビゞネスは急速に成長しおおり、泚文も増えおおり、内郚プロセスのほずんどはデヌタずアルゎリズムに基づいおいたす。入力デヌタの量が増えるず、䞀郚のアルゎリズムは効果がなくなり、昚日は完党に適合したコンポヌネントが、今日では動䜜䞍胜になるこずがよくありたす。



ご想像のずおり、このような問題は決定論的ではないこずが倚く、その結果、あらゆる偎面から倚くの䞍確実性が䌎いたす。重芁なものを匷調したしょう





私たちが盎面しおいるこず、そしおこれらが本圓に困難であるかどうかを詳しく芋おみたしょう。



目暙



を達成する方法私たちは垞にビゞネス目暙を明確に理解しおいたす。぀たり、どの方向に進むか、どこに行かなければならないかです。しかし、研究課題に関しお、この目暙にどのように取り組むかが垞にすぐに明らかになるずは限りたせん。どの戊略を採甚するか実隓たたは機胜の倧芏暡な展開を通じお戊闘でのシミュレヌションたたは実隓で環境を構築したすか遞択肢は倧きいです-目が䞊がりたす。



正確に䜕をする䟡倀があるか



さお、私たちはビゞネス目暙を理解し、どの戊略に埓うかに぀いお合意したした。䜜業に必芁な特定の機胜セットを決定するずきが来たした。それらを遞択する方法、バックログに含めるもの、順序「正確に䜕をする䟡倀があるか」だけでなく、誰が私たちの分野で最倧の専門知識を持っおいるかを決定する必芁がありたす。



目暙を



達成できる時期は、ビゞネスにずっお確かに非垞に重芁です。研究はクヌルで面癜いです。デヌタの新機胜や研究アルゎリズムを探したり、他の囜の同僚からの興味深いメモを読んだりできたす。しかし、間違ったタむミングで起動された機胜は必芁ないこずが倚いため、目暙がい぀達成されるかをビゞネスが理解するこずは重芁です。FoodTech垂堎は珟圚非垞にダむナミックです。



なぜ誰かが私のコヌドを必芁ずするのですか



最埌の䞍確実性は、重芁ではありたせんが、開発者の動機付けの問題です。 RDは䞻に実隓的な開発であり、その結果、私たちのコヌドは必ずしも本番環境に定着するずは限りたせん。最初は、なぜこの機胜を䜜成したのか理解できず、心を蟌めお非垞に腹を立お、ビゞネスはそれが機胜せず、切り離す必芁があるず刀断したした。質問-なぜ私はこれをしおいるのですかなぜ誰かが私のコヌドを必芁ずするのですか -私たちず䞀緒に頻繁に登堎したした。その過皋で、私たちはこれをどのように扱うこずができ、どのように取り組むべきかを理解したした。そしお今、これは最初に克服する必芁がある最も重倧な䞍確実性の1぀であるず確信しおいたす。



それで、そのようなたずもなバンプの束を埋めた埌、私たちはすべおの問題を1぀の堎所に集め、幞犏のためにこれらの䞍確実性の亀差点に3぀のプロセスが欠けおいるこずに気づきたした。



  1. , , .
  2. . , , . , - , , .
  3. , , - . . IT- ( ), , , , 2-3 . — , .


䞋の図に抂略的に瀺されおいたす。



実隓は、目暙を達成する方法ず正確に䜕をすべきかずいう質問に答えたす。メトリックにより、このコヌドを実際に本番環境に残す必芁があるかどうかずいう質問に、非垞に明確か぀透過的に答えるこずができたす。完党な自埋性は、期限を評䟡しお満たすのに圹立ちたす。



止たらない。クラッチ、セカンドギア、私たちは急速に勢いを増しおいたす。



実隓



カスタムの宅配䟿自動割り圓おプラットフォヌムを怜蚎しおください。圌女の仕事はかなり単玔です。パヌトナヌ、ロゞスティクス担圓者぀たり、宅配䟿業者、顧客の3人の垂堎参加者を集めお、すべおの参加者が満足できるようにするこずです。぀たり、泚文が到着したら、レストランが料理の準備を終えたずきに正確にレストランに来お、すぐにそれを受け取り、玄束した時間に熱くおおいしいクラむアントに届ける宅配䟿を遞択する必芁がありたす。



非垞に単玔に芋えたす、そしおここであなたは蚀うかもしれたせん-十分な理論それは実際の打ち䞊げに移る時です。



私はあなたに同意したすが、それでも実隓のプロセスに぀いお少し詳しく芋おいきたしょう。党䜓像を芋おみたしょう。



  1. - — . — , , .
  2. — . . — , .
  3. — Just In Time. , : , , . , , , . , FoodTech- : , . , .


補品増分の内郚でどのプロセスが行われおいるのかを詳しく芋おみたしょう。







3.1仮説。それは蚀葉で定匏化するか、たたは抂略的に瀺すこずができたす。䞻なこずは、なぜそれがたったく機胜するのかを明確に正圓化するこずです。぀たり、実隓には理論的なトレヌニングが必芁です。



3.14開発。ここでは詳しく説明したせん。開発の詳现に぀いおは、この蚘事で説明したす。 Scrumを䜿甚し、必芁なすべおのアクティビティを2週間繰り返したす。



3.2準備。次に、実隓を準備する必芁がありたす。぀たり、この実隓䞭に通信するゞオセグメントたたはオヌディ゚ンスを決定する必芁がありたす。たた、結果を比范するセグメントを遞択したす。



3.3実隓。次に、実隓自䜓を開始したす。重芁なポむント開始前であっおも、監芖するビゞネス指暙に同意したす。今日は、実隓が開始され、技術的に安定しおいるこずを瀺す技術指暙の説明を残しおおきたしょう。ビゞネス指暙に぀いお詳しく説明したす。間違いなく危険信号を修正したす-これらは、実隓䞭に超えおはならないいく぀かのしきい倀です。



3.4分析。私たちだけが持っおいるクヌルでナニヌクなデヌタをたくさん蓄積しおきたした。それらから有甚な情報を抜出しないこず、぀たり、テストされおいる仮説の劥圓性に぀いお合理的な結論を導き出すこず、および私たちのサヌビスの聎衆に぀いお新しいこずを匷調するこずは奇劙です。



3.5結論。おそらくこのプロセスで最も重芁なポむントです。この堎合、出力は垞に3぀のボタンを抌しおいたす。



  • 実隓をさらに展開しお、次の地域たたは聎衆の次のセグメントに展開したす。
  • 䜕か問題が発生した堎合はロヌルバックしたす。
  • 継続する。考慮しなかった第䞉者芁因の圱響が芋られる堎合があり、その結果、明確な結論を出すこずはできたせん。このような堎合は、続行するこずにしたす。


実際の実隓



最埌に、これが実際の䟋でどのように機胜するかを確認するずきが来たした。もう疲れたしたか楜しみが始たりたす。



自動割り圓おプラットフォヌムに戻りたす。その前に、玍期を短瞮するためにゞャストむンタむムアプロヌチが非垞にクヌルであるこずを提案したした。これを、貪欲なアルゎリズムずしお瀺す珟圚の割り圓お戊略ず比范したす。



たず、仮説を正圓化したす。



貪欲なアルゎリズム



その重芁な特城は、すぐに凊方するこずです。泚文がプラットフォヌムに到着するずすぐに、この泚文に最適なパヌトナヌの宅配䟿を探し、遅滞なく指定しお、この泚文に぀いお宅配䟿業者に通知したす。その結果、宅配䟿を探す時間を最適化したす。ただし、新しい泚文が到着したり、別の宅配䟿がリリヌスされたりするず、状況がすぐに倉わる可胜性があるため、このアプロヌチは垞に効果的であるずは限りたせん。アルゎリズムはこれに反応しなくなりたした。以䞋はむラストです。





この䟋では、2぀の泚文を遞択するのに合蚈45分かかりたす。もっずうたくやれるようです。



ちょうど間に合う



このアルゎリズムのタスクは、泚文の準備ができたずきにレストランに到着する宅配䟿業者を正確に遞択するこずです。それは私たちに䜕を䞎えるでしょうか次の事実により、最終的に玍期が短瞮されたす。



  • 宅配䟿業者はレストランで過ごす時間が少なくなりたす。
  • 宅配䟿をより最適に遞択したす。


技術的には、これは実装が非垞に簡単です。泚文を受けた堎合、すぐに宅配䟿を遞択したすが、泚文に぀いおは䌝えないため、「仮想予玄」を行い、遞択を倉曎する時間を確保したす。そしお、レストランぞの道が泚文を準備するための残りの時間ず等しい堎合にのみ、最終的に泚文を宅配䟿に転送するかどうか決定したす。抂略的に-䞋の図で。







その結果、わずか30分で泚文を遞択できたす。これは、前のケヌスの3分の1です。



私の意芋では、仮説は正圓化されおおり、私たちはそれを開発に取り入れおいたす。合意したずおり、開発プロセスに぀いおは詳しく怜蚎したせん。



実隓の準備に移りたしょう



私たちの堎合、䜕を準備する必芁がありたすかそれほど倚くはありたせん。A/ Bテストの期間、実隓の地理、および比范するものです。私たちは特定の郜垂に定䜏し、ある予玄戊略が別の予玄戊略に䞎える圱響を最小限に抑えるように条件を遞択したした。



私たちは間違いなく、危険信号ずそれらに察する反応に぀いおビゞネスず亀枉したす。危険信号は、実隓䞭に超えたくないビゞネスメトリックのしきい倀です。亀差した堎合、圧倒的な数の実隓でこれはロヌルバックです。しかし、私たちのせいで亀差点が発生したのではなく、他の芁因の結果であるこずが確実にわかっおいる堎合は䟋倖がありたす。この堎合、実隓を続行するこずを決定できる堎合がありたす。



他に䜕を準備する必芁がありたすかコントロヌルルヌムの同僚に同意したす。圌らは、泚文に問題がないこずをリアルタむムで芳察したす。圌らにずっお、私たちの倉化は目に芋えるでしょう。なぜなら、私たちがすぐに宅配䟿の泚文を割り圓おる前に、今はこれを行わないので、私たちは自分の考えを倉えるための時間を䞎えたす。そのため、蚈画されおいる実隓に぀いお同僚に譊告する必芁がありたす。



さお、次に進みたしょう。実隓を準備し、実斜し、結果を埗たした。そしお、ここに楜しい郚分がありたす-分析。



実隓分析



総玍期の改善に合意し、いきなり4぀のスケゞュヌルがありたした。ここで説明する䟡倀がありたす。実隓を開始するずきは、1぀の䞻芁な指暙ではなく、ビゞネスにずっお重芁ないく぀かのビゞネス指暙を確認するこずが重芁です。この堎合、プラットフォヌムの実際のプロセスに圱響を䞎える仮説の倱敗のリスクを倧幅に枛らすこずができたす。正盎に蚀うず、私たちは実隓の開始時にそのような間違いを犯したした、そしお時々それらは本圓に䞍快な結果に぀ながりたした。しかし、間違いは良いこずです。私たちはそれらから孊びたす。



結果を芋おみたしょう。この蚘事の目的はJustIn Timeアルゎリズムの効率の詳现な分析ではないため、特定の倀なしでグラフを衚瀺したす。実隓を行う際には、私たちのアプロヌチにもっず焊点を合わせたいず思いたす。同じ理由で、A / Bテストを実斜し、結果の統蚈的有意性を刀断する理論に぀いおは詳しく説明したせん。これは、次の出版物、そしおおそらくサむクル党䜓にずっおも倧きなトピックです。







  • « ». , , . , . , — , . , . , , . , . , , (/), — , , . -, .
  • « ». . , , , . , . , .
  • « » « ». : . .




その結果、䞻芁な指暙1が枛少し、非垞に重芁な指暙2が枛少し、他の2぀の䞻芁な指暙3、4の安定した倀が埗られ、赀いフラグは点灯したせん。これにより、実隓の成功ずテストされおいる仮説の劥圓性に぀いお結論を䞋すこずができたす。



クラス次の仮説に走りたしたかそれは玠晎らしく面癜くお、みんなの生掻を改善するように蚭蚈されおいたすしかし、いいえ、それだけではありたせん。おそらく、忘れおはならない最も重芁なステップの1぀が残っおいたす。これは、次の3぀のボタンのいずれかを抌すこずです。



  1. ロヌルアりトする
  2. ロヌルバック
  3. 継続する


実隓の過皋で、チヌムには、機胜を完党に担圓する圹割を持぀同僚が必芁です。同僚は、これら3぀のボタンのいずれかを抌したす。圓初、このステップを忘れおしたった堎合があり、その結果、数十回の同時起動実隓があり、それぞれの状況がわかりたせんでした。それらは肯定的な結果をもたらしたしたが、完党には展開されおおらず、ビゞネスには効果がありたせん。さらに、詳现を芚えお敎理するためだけに、かなりのリ゜ヌスを費やす必芁がありたした。しかし、繰り返しになりたすが、私たちは間違いから孊びたす。



実䞖界の実隓



なぜ戊闘ですぐに実隓するのかに぀いお簡単に説明したしょう。このアプロヌチは通垞、履歎デヌタに基づいお、そのような機胜を実装した堎合に「それがどうなるか」に䞀定の粟床で答えるこずができる分析シミュレヌション環境によっお反察されたす。



なぜ私たちは自分たちのために最初のアプロヌチを遞んだのですか 2぀の理由。



  • -, .

    , , . , - , , . — .



    . .



    ? , , , — . , , , , , . , .



    これはかなり危険なアプロヌチであるずいうこずは、ここで正盎に蚀う䟡倀がありたす。聎衆、顧客、ビゞネスを倱望させるリスク。この蚘事では、このようなリスクを軜枛する方法に぀いお䞻に説明したす。メトリックいく぀かを泚意深く正確に遞択し、それらをリアルタむムで監芖したす。䜕か問題が発生した堎合は、すぐに実隓をオフにしたす。


  • 2぀目は、もちろん速床です。戊闘条件での実隓は、結果をはるかに正確か぀迅速に瀺したす。


先に進む前に、いく぀かの小さな勝利を修正したしょう。





透明性のある実隓プロセスは、目暙を達成する方法の質問に察する答えを私たちに䞎えたす。そしお、実際の状況ですぐにテストを実斜するこずで、私たちは聎衆をよりよく理解し始めたす。その結果、開発チヌムは、ビゞネス䞊の問題を解決する特定の機胜を提案するのに十分な専門知識を持っおいたす。



悪くはありたせんが、それだけではありたせん。今こそ、枬定可胜性に぀いおもっず話す時です。そしお、その間、3番目のガスを床に向けるず、颚が鳎り響きたす。



枬定可胜性



なぜメトリックが必芁なのですか䞻に仮説を確認するか、倱敗した仮定の圱響を枛らすため。理論的には十分に根拠のある仮説でさえ、垞に成功するずは限りたせん。そしお、圌らが撃぀ずき、時には膝で。



  • -, FoodTech, : , , , .
  • -, , , . , , , . ! , , , . , , -.




私たちの経隓によるず、良いレシピはいく぀かの指暙がある堎合です。1぀のタヌゲットメトリック-それを改善したす。そしおさらにいく぀かの重芁なもの-私たちはそれらを萜ずしおはいけたせん。



ビゞネスず開発の䞡方が芋られる統䞀された監芖スペヌスを導入したす。1぀のツヌルである必芁はなく、MetabaseずGrafanaの2぀を䜿甚したすが、将来的にはどちらかを遞択する予定です。最も重芁なこずは、ビゞネスず開発の䞡方の同僚が芋える単䞀のスペヌスが必芁です。そしお、必ず危険信号を特定しおください。



赀い旗



はい、これらは、実隓䞭に超えおはならないメトリックのいく぀かのしきい倀です。反応が亀差した堎合は、反応に぀いおビゞネスに同意し、アラヌトを投皿するこずは䟡倀がありたす。



そしおもう1぀の小さな勝利「なぜ誰かが私のコヌドを必芁ずするのか」ずいう質問に答えたした。圌女のこずを忘れないでください





開発偎のこの䞍確実性は、コヌドが本番環境に留たらない理由を垞に理解しおいるずは限らないこずを思い出させおください。率盎に蚀っお、これに぀いおは悲しかったです。開発からビゞネスメトリクスたでピアツヌピアのむマヌゞョンアプロヌチを採甚するこずで、お客様の゜リュヌションに察する理解を深めるだけでなく、最終結果に焊点を圓おるこずでビゞネス䞊の問題を解決するための意欲を高めるこずができたした。



さお、私たちは実隓ず透明なプロセス、枬定基準ず枬定可胜性を理解したした。前方がフィニッシュラむンで、4番目をオンにし、勝利するたで最高速床でオンにしたす。



自埋性



䞊蚘のすべおは、私たちがビゞネス偎ず開発偎の䞡方から自埋的になったずきにのみ、可胜な限りうたく機胜したす。



芁旚



ここで、自埋性ずは、決定を䞋す際の最小の䟝存関係を意味したす。承認プロセスに溺れるこずなく迅速に決定を䞋すために、ビゞネス偎で䜕をしたしたか GISTフレヌムワヌクを実装したした。





このアプロヌチは、目暙、アむデア、ステッププロゞェクト、タスクです。同瀟には、経営陣がすべおの埓業員に透過的に䌝達するずいう明確なビゞネス目暙がありたす。これらの目暙を達成するために、埓業員はアむデアを投げかけたす。1ダヌスたたは1぀のアむデアがありたす。アむデアはただプロゞェクトではないこずが重芁です。これらは私が実装したいアプロヌチのいく぀かです。ステッププロゞェクト-これらはすでにプロゞェクトですこれらのアむデアを実装する非垞に倧きな機胜。Just In Timeの䟋では、宛先はたさにステッププロゞェクトです。最埌のレベルは、私たちが慣れおいるタスクです。これはすでに分解されたステッププロゞェクトであり、人件費で芋積もられおいたす。



では、このアプロヌチはどのように自埋性を達成するのに圹立ちたすかこの機胜を䜜成するこずを提案するずJust In Time、ビゞネスは次のこずを透過的に認識したす。



  1. 機胜を実装するサむズずコスト。
  2. 圌はどのような考えを実行しおいたすか。
  3. 䌚瀟の具䜓的な目暙は䜕ですか圱響。


次に、同じ基準コスト、圱響に埓っお、隣接するステッププロゞェクトず比范する必芁がありたす。私たちは䌚議を開き圌らは私たちず定期的に、話し合い、優先順䜍を付け、決定を䞋したす。



ずおもシンプルでわかりやすいように芋えたす。私たちの堎合はそうです、そしおそれは機胜したすビゞネスは迅速に決定を䞋したす、私たちは幞せです。しかし、これは自埋性ぞの第䞀歩にすぎたせん。開発偎からもブロックされるべきではないからです。



内郚゜ヌス



瀟内のみのオヌプン゜ヌスのようなものです。Delivery Clubのアヌキテクチャはマむクロサヌビスであり、珟圚では100を超えおいたす。倚くの堎合、機胜を䜜成するには、チヌムが担圓するコンポヌネントだけでなく、隣接するサヌビスも倉曎する必芁がありたす。そしおここに2぀の方法がありたす



  1. 他のチヌムのバックログに改善を加え、みんながそれらを䜜るこずに同意したす。
  2. 自分でやれ。






私たちの適応では、プロセスは次のように機胜したす。ゞャストむンタむムの倧きな機胜があり、3぀のサヌビスグル​​ヌプに圱響したす。



  • RDが担圓する自動割り圓おプラットフォヌム、
  • ロゞスティクスプラットフォヌム、
  • パヌトナヌレストランやショップずのやり取りのコンポヌネント。


私たちはこれを行いたす



  1. すべおのタスクをRDチヌムのバックログに収集したす。
  2. チヌム内で優先順䜍を付けお配垃し、どの人がどのコンポヌネントを改良するかを決定したす。
  3. 実装の埮劙な違いに぀いお、ロゞスティクスチヌムおよびパヌトナヌ領域の技術リヌダヌに同意したす。
  4. 私たちは自分自身を成長させ、同僚はレビュヌを行いたす。
  5. 次に、自分でテストしたす。
  6. 私たちはすでにサヌビスオヌナヌに本番環境ぞの移行を提䟛しおいたす。


本番環境に移行した埌も、これらの改善は、これらのサヌビスを所有するチヌムの責任の領域に残りたす。



正盎なずころ、このアプロヌチは完璧ではなく、リスクがありたす。䞻なものはタむミングです。ほずんどの堎合、サヌビス所有者が行うよりも2〜2.5倍長くコンポヌネントを倉曎したす。



しかし、その利点も明らかであり、実装のわずかな遅延をはるかに䞊回りたす。それは予枬可胜性です。ここで重芁なのは、他のチヌムには独自のバックログず優先順䜍があり、ほずんどの堎合、「緊急に」タスクを実行できないこずです。したがっお、私たちのビゞネスの締め切りは珟実的であり、他のチヌムの優先順䜍が倉曎される可胜性の圱響を受けたせん。



だから、おめでずうございたす-終了、勝利





迅速で透過的な意思決定のためのGISTフレヌムワヌクず、開発における自埋性のための内郚゜ヌスアプロヌチを実装したした。これで、パズルのすべおのピヌスが組み立おられたした。締めくくりの時間です、それは面癜いレヌスでした、あなたの参加に感謝したすたずめたしょう。



結論



  • 実隓は、目暙を達成するための透過的で効果的なツヌルです。
  • 実際の環境で実行するこずで、オヌディ゚ンスを調査したす。これにより、毎回倉曎を加えるこずができ、すべおの機胜を本番環境に残しおおく必芁がない理由も理解できたす。
  • しかし、混乱を避けるためには、明確なプロセス、圹割の分配、責任者の任呜が必芁です。
  • 実隓のアクティブフェヌズず分析䞭に、いく぀かの䞻芁なメトリックを䞀床に監芖し、結論を出すこずを忘れないでくださいこの堎合、3぀のボタンのいずれかを抌しおください。
  • 開発においお迅速な決定ず自埋性を行うこずは、結果を達成し、チヌムの意欲を維持するのに圹立ちたす。


RIT ++ 2020䌚議からのレポヌトのビデオ録画。





以䞊です、このレヌスに䞀緒にいおくれおありがずう。私たちはただ始たったばかりであり、倧きな課題がただ先にあるず確信しおいたす。喜んで共有したす、たたね



All Articles