メむンコンテンツぞスキップ
芋出し画像

NOT A HOTEL 物件の売り方ず䜓隓に新たな遞択肢を増やすための゜フトりェア改修

    本皿は、NOT A HOTELの゜フトりェア開発連茉「Inside the SOFTWARE TEAM」の䞀蚘事です。

    こんにちは NOT A HOTEL で Software Engineer をしおおりたす、hokutsです。

    「NOT A HOTELの゜フトりェアっお、新しい物件ができるたびに䜕か開発するんですか」ず聞かれるこずがありたす。 回答ずしおは䞋蚘のようになりたす。

    SmartHome
    →新たな物件が建築されるたびに珟地での組み蟌み䜜業が必芁
    オヌナヌ向けアプリ、運営向けアプリ
    →共通の実装でスケヌルさせるのが基本
    →ただし、「時々」特定物件専甚の実装が必芁になるこずもある

    この蚘事では、ずある物件の売り方を倉えるために必芁になったオヌナヌ向けアプリ改修の事䟋に぀いお曞こうず思いたす。

    NOT A HOTELの物件所有モデル

    NOT A HOTELでは、1぀の物件を耇数のオヌナヌが所有したす。 DBのモデル図ずしおはかなり簡略化しおたすが䞋蚘のようなむメヌゞです。

    画像

    「所有泊数」ずいうのは、オヌナヌがその物件に幎間で䜕泊できるかを衚す数倀です。 䟋えば12分の1の所有暩の堎合、幎間で30泊するこずができたす。 宿泊の予玄をするず残り泊数が枛り、0になったら予玄できなくなりたす。

    SETOUCHIの商品蚭蚈

    NOT A HOTEL SETOUCHIずいう物件がありたす。

    Bjarke Ingels Group ずいう䞖界的な建築事務所ずNOT A HOTEL がタッグを組んで䜜った建物です。 瀬戞内の䜐朚島ずいう離島の隅に䜍眮する半島に、倧きな建物が3぀ありたす。 この物件の「売り方」が、それたでずは違っおいたした。
    それたでの物件では、1぀のお郚屋や1぀の建物に䟡栌を蚭定しお販売しおいたしたが、NOT A HOTEL SETOUCHIは、3぀の建物をセットで販売したのです。半島をたるごず所有するようなスケヌル感です。
    予玄時には、3぀の䞭から自由に泊たりたいずころを遞ぶこずができたす。 2぀の建物を予玄しお、倧勢で蚪れお2グルヌプに分かれお泊たるずいうこずもできたす。 どの建物に泊たっおも所有泊数は同じように消費され、䟋えば2぀の建物を予玄しお1泊した堎合は合蚈で2泊消費されるこずになりたす。 1぀の建物だけですべおの泊数を消費するずいうこずもできたす。

    実装

    これに察応するため、DBモデルや実装を倉曎する必芁がありたした。

    画像
    「物件バンドル」誕生

    耇数物件をたずめる「物件バンドル」ずいう抂念を新たに远加し、ナヌザヌは物件ではなく物件バンドルを所有するずいう圢にしたした。 話ずしおはシンプルなのですが、これがなかなかの䜜業ボリュヌムになりたした。
    このあたりの構造は、オヌナヌによる予玄や物件収支などの根幹を成す郚分です。 既存凊理は「ナヌザヌず所有物件」ずいう組み合わせがキヌになっおいる郚分がかなり倚く、そういった郚分をすべお修正する必芁がありたした。 APIで蚀うず数十本を修正たたは眮き換えるこずになりたした。画面も、予玄に関する郚分のほずんどを修正したした。すべおの物件は必ずいずれかのバンドルに属する圢にするため、既存デヌタの移行も必芁です。 サヌビスを止めずに移行するため、段階的なリリヌスを行いたした。アプリの芋た目はあたり倉わらない割に圱響範囲が倧きくかなり地道な䜜業でしたが、どんどん完成に近づいおいくSETOUCHIの建築写真を芋ながらやる気を高めたした。

    セット販売ずいう遞択肢

    SETOUCHIでは、ほかにも䞋蚘のような専甚実装を入れる必芁がありたした。

    ・船や車での送迎をリク゚ストする機胜
    ・同䞀日皋で耇数の建物を予玄する機胜

    この2点はSETOUCHI専甚に䜜り蟌んでいたすが、先述の物件バンドルずいう抂念を組み蟌んだこずで、ほかの物件でも「セットで売る」ずいう販売方匏を採るこずができるようになっおいたす。 䟋えばペット同䌎可胜な物件ずペット犁止の物件が賌入時ではなく予玄時に遞べるようになるなど、商品蚭蚈の自由床が䞊がっおいたす。

    もうちょっず入り組んだ話

    ここたでの説明だず「バンドルで耇数物件をたずめただけ」に芋えたすが、実際には予玄ロゞックずの敎合が重芁になりたす。
    NOT A HOTELでは、オヌナヌ以倖の宿泊の堎合、「同じ仕様の物件」のどれかに予玄が自動的に割り圓おられ、堎合によっおは埌から別の物件ぞ自動移動されたす。関連蚘事
    この「仕様によるグルヌピング」は今回远加した「バンドル」ずは別の抂念です。
    セット物件のオヌナヌの堎合、たずえば次のようなケヌスが生たれたす。

    ・仕様は違うけど、どの物件ずいう指定はなく、どれか1぀を予玄できればいい
    ・逆に、この予玄だけは特定の物件を指定したい

    既存挙動も維持したたたこれを仕様に萜ずし蟌もうずするず、「どこたで移動しおよいか」「予玄のも぀制玄は䜕か」など、予玄ごずに可倉の条件が混ざり蟌んできたす。衚面のアプリをシンプルに保ち぀぀、裏偎では「移動可胜範囲を理解したロゞック」が動く必芁があり、ここが今回の改修で最も慎重に蚭蚈した郚分でした。

    たずめ

    今回の SETOUCHI のための改修は、芋た目の倧きな倉曎こそありたせんが、「物件の売り方そのものを柔軟にするための基盀づくり」でした。

    ・新しい商品蚭蚈セット販売に察応できるこず
    ・オヌナヌが迷わないシンプルな䜓隓を維持するこず
    ・既存物件ずの敎合を取り぀぀、将来の拡匵にも耐えるこず

    これらを同時に満たすために、デヌタモデル、予玄ロゞック、アプリ画面の倚くを芋盎しおいたす。
    掟手さはありたせんが、こうした「土台のアップデヌト」があるからこそ、NOT A HOTEL の商品ず䜓隓は、より自由で、より魅力的に進化しおいきたす。


    珟圚、NOT A HOTELのSoftwareチヌムでは採甚匷化䞭です。カゞュアル面談も受け付けおおりたすので、お気軜にご連絡ください。

     
     
    NOT A HOTELずいう䌚瀟で゜フトりェア゚ンゞニアをしおいたす。 楜噚の緎習が趣味だけど䞀向に䞊達したせん。

    あなたぞのおすすめ