$30 off During Our Annual Pro Sale. View Details »

社会構造をハックする -電子申請編- / railsdm2018

社会構造をハックする -電子申請編- / railsdm2018

Rails Developers Meetup 2018: Day 2
https://railsdm.github.io/

Wataru MIYAGUNI

March 25, 2018
Tweet

More Decks by Wataru MIYAGUNI

Other Decks in Technology

Transcript

  1. 3BJMT%FWFMPQFST.FFUVQ%BZ
    ࣾձߏ଄ΛϋοΫ͢Δ
    ిࢠਃ੥ฤ
    4VO
    ٶᅳ౉ !HPOHP;

    4NBSU)3ιϑτ΢ΣΞΤϯδχΞ

    View Slide

  2. ࣗݾ঺հ
    ࢯ໊ٶᅳ౉ Έ΍͙ʹΘͨΔ

    ॴଐגࣜձࣾ4NBSU)3
    ೥݄ೖࣾ ԭೄ͔ΒҾͬӽ͖ͯ͠·ͨ͠

    ιϑτ΢ΣΞΤϯδχΞ όοΫΤϯυ

    ΞΧ΢ϯτ
    5XJUUFS!HPOHP;
    (JU)VCHPOHP

    View Slide

  3. 4NBSU)3ͷ͝঺հ

    View Slide

  4. גࣜձࣾ4NBSU)3

    View Slide

  5. 4NBSU)3ͱ͸
    ਓࣄ࿑຿ͷखଓ͖ΛΧϯλϯʹ͢Δ
    Ϋϥ΢υܕιϑτ΢ΣΞͰ͢

    View Slide

  6. ࿑຿୲౰ͷෛ୲Λܰݮ
    ࣾձอݥɾ࿑ಇอݥʹඞཁͳॻྨΛ
    ैۀһσʔλ͔Βࣗಈ࡞੒
    ໾ॴ΁ͷlిࢠਃ੥z΋
    ΫϦοΫʂ

    View Slide

  7. ैۀһͷෛ୲΋ܰݮͯ͘͠ΕΔ
    εϚϗͰαΫαΫ
    ೥຤ௐ੔͕ϖʔύʔϨεʹ
    ैۀһ͸4NBSU)3ͷ࣭໰ʹैͬͯ1$ɾεϚϗͰೖྗ
    ˠ΄ͱΜͲ͕ʮ͸͍ʯʮ͍͍͑ʯͷΧϯλϯͳ࣭໰
    ࿑຿୲౰ऀ͸ूͬͨ৘ใΛҰׅͰ$47ʹग़ྗ͠ɺ
    څ༩ܭࢉιϑτʹऔΓࠐΉ͚ͩʂ

    View Slide

  8. ಋೖاۀ਺ɾܧଓ཰
    ಋೖاۀ਺

    ܧଓ཰

    ೥d݄࣮੷
    αʔϏε։͔࢝Β೥

    View Slide

  9. 4NBSU)3ͱిࢠਃ੥

    View Slide

  10. ిࢠਃ੥ͱ͸
    ࢴʹΑͬͯߦΘΕ͍ͯΔਃ੥΍ಧग़ͳͲͷखଓΛ
    ύιίϯ΍εϚʔτϑΥϯΛར༻ͯ͠
    ΠϯλʔωοτͰߦ͑ΔΑ͏ʹ͢Δ΋ͷ
    ୅දతͳϠπ
    w F5BY
    w ࠃ੫ిࢠਃࠂɾೲ੫γεςϜ
    w F-5"9
    w ஍ํ੫ϙʔλϧγεςϜ

    View Slide

  11. ిࢠਃ੥ͱ͸
    ࢴʹΑͬͯߦΘΕ͍ͯΔਃ੥΍ಧग़ͳͲͷखଓΛ
    ύιίϯ΍εϚʔτϑΥϯΛར༻ͯ͠
    ΠϯλʔωοτͰߦ͑ΔΑ͏ʹ͢Δ΋ͷ
    ୅දతͳϠπ
    w F5BY
    w ࠃ੫ిࢠਃࠂɾೲ੫γεςϜ
    w F-5"9
    w ஍ํ੫ϙʔλϧγεςϜ ˠ4NBSU)3͸ʜ

    View Slide

  12. 4NBSU)3͕ѻ͏ʮిࢠਃ੥ʯͱ͸
    ૯຿লͷӡӦ͢Δిࢠ੓෎ͷ૯߹૭ޱ
    IUUQTXXXFHPWHPKQ
    w ๏ྩ΍ߦ੓खଓҊ಺ͷݕࡧ
    w ߦ੓खଓͷిࢠਃ੥ˡ ͜Ε

    ͳͲ
    F(PW ΠʔΨϒ

    View Slide

  13. F(PWిࢠਃ੥
    ֤෎ল͕ॴ؅͢Δ༷ʑͳߦ੓खଓʹ͍ͭͯ
    ਃ੥ɾಧग़Λߦ͏͜ͱ͕Ͱ͖·͢
    4NBSU)3͸F(PWిࢠਃ੥ͷ8FC"1*Λར༻ͯ͠
    ࣾձอݥɾ࿑ಇอݥؔ࿈ͷखଓ͖Λߦ͍·͢
    ར༻ํ๏
    ϒϥ΢βͰը໘Λϙνϙν
    F(PW͕ఏڙ͢Δʮ֎෦࿈ܞ 8FC
    "1*ʯ

    View Slide

  14. 4NBSU)3F(PWిࢠਃ੥

    View Slide

  15. 4NBSU)3F(PWిࢠਃ੥
    σʔλͷ΍ΓͱΓ͸
    9.-ܗࣜ

    View Slide

  16. 4NBSU)3F(PWిࢠਃ੥
    ࣄલʹ࡞੒ࡁΈͷॻྨ͔Β
    ిࢠਃ੥༻ʹม׵͞ΕΔͨΊ
    ಛผͳ࡞ۀ͕૿͑Δ͜ͱ͸ͳ͍

    View Slide

  17. 4NBSU)3F(PWిࢠਃ੥
    ఏग़ઌͰॻྨͷ
    ৹͕ࠪߦΘΕΔ

    View Slide

  18. F(PWిࢠਃ੥Λࢧ͑Δٕज़

    View Slide

  19. F(PWిࢠਃ੥Λࢧ͑Δٕज़
    ͭ͋Γ·͢

    View Slide

  20. F(PWిࢠਃ੥Λࢧ͑Δٕज़ͦͷ

    View Slide

  21. F(PWిࢠਃ੥Λࢧ͑Δٕज़ͦͷ
    ͜͜Λࢧ͑ͯ·͢

    View Slide

  22. F(PW࿈ܞ"1*ΫϥΠΞϯτϥΠϒϥϦ
    ,JKJ*T+BQBOFTFFHPW*OUFSGBDF
    IUUQTHJUIVCDPNLVGVLJKJ
    ʮͳͥϥΠϒϥϦͱͯ͠ެ։ͨ͠ͷ͔ ʯ
    w 3VCZ੡
    w F(PWిࢠਃ੥Ͱར༻͢Δɺ࿈ܞ"1*ϥΠϒϥϦ

    View Slide

  23. F(PWిࢠਃ੥࿈ܞ"1*ͷॴײ
    গ͠લʹ͓఻͑͠·ͨ͠
    l9.-Ͱ3FRVFTU3FTQPOTF͢Δ͚ͩ z
    lF(PWిࢠਃ੥ɺ؆୯ʹ࢖͑·͢Ͷʂz

    View Slide

  24. F(PWిࢠਃ੥࿈ܞ"1*ͷॴײ
    গ͠લʹ͓఻͑͠·ͨ͠
    ͦ͏΢Ϛ͘͸͍͔ͳ͍
    l9.-Ͱ3FRVFTU3FTQPOTF͢Δ͚ͩ z
    lF(PWిࢠਃ੥ɺ؆୯ʹ࢖͑·͢Ͷʂz

    View Slide

  25. F(PW࿈ܞ"1*ͷগ͠πϥΠͱ͜Ζ ˞

    ిࢠॺ໊෇͖ͷ9.-Ͱͳ͚Ε͹ͳΒͳ͍
    w ࣄۀॴຖʹిࢠূ໌ॻΛ࡞੒ͯ͠΋Β͏
    શͯͷϦΫΤετʹࣄલ४උ͕ඞཁ
    w ϦΫΤετຖʹΞΫηεΩʔΛൃߦ͔ͯ͠Β
    "1*࢓༷ ॻ
    ͕๲େ
    w ࣌ʑؒҧͬͯͨΓ͢Δ
    ˞
    ৄࡉ͸εϥΠυ຤ඌͷ෇࿥ʹͯ

    View Slide

  26. F(PW࿈ܞ"1*ͷগ͠πϥΠͱ͜Ζ ˞

    ిࢠॺ໊෇͖ͷ9.-Ͱͳ͚Ε͹ͳΒͳ͍
    w ࣄۀॴຖʹిࢠূ໌ॻΛ࡞੒ͯ͠΋Β͏
    શͯͷϦΫΤετʹࣄલ४උ͕ඞཁ
    w ϦΫΤετຖʹΞΫηεΩʔΛൃߦ͔ͯ͠Β
    "1*࢓༷ ॻ
    ͕๲େ
    w ࣌ʑؒҧͬͯͨΓ͢Δ
    ։ൃऀൃ৴ͷ৘ใ͕গͳ͍
    w ͜Ε͕஍ຯʹπϥ͍
    ˞
    ৄࡉ͸εϥΠυ຤ඌͷ෇࿥ʹͯ

    View Slide

  27. ։ൃऀࢹ఺ͰͷF(PW࿈ܞ"1*ͷ࿩͋·Γฉ͔ͳ͍໰୊
    w ݸਓͰ͸ϋʔυϧ͕ߴ͍
    w ిࢠূ໌ॻ࡞ͬͨΓɺ๲େͳ࢓༷ॻΛಡΜͩΓ
    w ͦ΋ͦ΋ݸਓ༻్͕ແ͍
    w Α͋͘Δʮࢼͯ͠Έ·ͨ͠ʯهࣄ·Ͱൃల͠ͳ͍
    w ຊ൪ͷ
    ࿈ܞ"1*Λ࢖͏ͨΊʹ͸ɺ
    ʮ͜ͷιϑτ΢ΣΞ͸"1*࢖ͬͯ0,ʯ
    ͱ͍͏૯຿ল͕ઃ͚Δ࠷ऴ֬ೝࢼݧΛಥഁ͢Δඞཁ͕͋Δ
    w اۀൃ৴΋ͳ͔ͳ͔ݟ͔͚ͳ͍
    w "1*࢖͍ͬͯΔاۀ͸͍͔ͭ͋͘Δ
    w IUUQXXXFHPWHPKQIFMQTIJOTFJBQJ@TPGUXBSFJOEFYIUNM

    View Slide

  28. F(PWిࢠਃ੥Λൃలͤ͞ΔͨΊʹ
    F(PW࿈ܞ"1*Λগ͠Ͱ΋࢖͍΍͍ͨ͘͢͠
    ࢖͍΍͘͢ͳΔ͜ͱͰF(PWͷೝ஌౓΍
    ར༻཰ͷ޲্ʹߩݙͰ͖Δ

    View Slide

  29. F(PWిࢠਃ੥Λൃలͤ͞ΔͨΊʹ
    F(PW࿈ܞ"1*Λগ͠Ͱ΋࢖͍΍͍ͨ͘͢͠
    ࢖͍΍͘͢ͳΔ͜ͱͰF(PWͷೝ஌౓΍
    ར༻཰ͷ޲্ʹߩݙͰ͖Δ
    ͦΕ͕Ϣʔβͷମݧ޲্ʹܨ͕Δ
    ͦͷͨΊͷLJKJ

    View Slide

  30. F(PWిࢠਃ੥Λࢧ͑Δٕज़ͦͷ͓ΘΓ

    View Slide

  31. F(PWిࢠਃ੥Λࢧ͑Δٕज़ͦͷ
    ͜͜΋ࢧ͑ͯ·͢

    View Slide

  32. $47ܗࣜಧॻ࡞੒ϥΠϒϥϦ
    w 3VCZ੡
    w $47ܗࣜಧॻF(PWిࢠਃ੥ͷҰ෦ͷखଓ
    ͖Ͱඞཁͳɺ9.-ͱ͸ผͰఴ෇͢ΔϑΝΠϧͷ
    ໊শ
    IUUQTHJUIVCDPNLVGVLJSJDP

    View Slide

  33. LJSJDP͸Կނੜ·Εͨͷ͔
    $47ܗࣜಧॻͷਖ਼ମ
    $47ܗࣜಧॻʜ
    ৄ͘͠͸Θ͔Βͳ͍͚Ͳɺ
    ͭ·Γ$47ϑΝΠϧͩΑͶʜ
    γϡοͱ࡞ΕΔ͡ΌΜ

    View Slide

  34. LJSJDP͸Կނੜ·Εͨͷ͔
    $47ܗࣜಧॻͷਖ਼ମ
    şŘŪ


    şŘŪ ౦ژ౎ઍ୅ా۠

    şŘŪ ŠřŮƃŘŧƁř ް೥Ұ࿠
    şŘŪ ŠřŮƃŢƄƁř ް೥ೋ࿠
    $47
    ܗࣜಧॻྫ

    View Slide

  35. şŘŪ


    şŘŪ ౦ژ౎ઍ୅ా۠

    şŘŪ ŠřŮƃŘŧƁř ް೥Ұ࿠
    şŘŪ ŠřŮƃŢƄƁř ް೥ೋ࿠
    LJSJDP͸Կނੜ·Εͨͷ͔
    $47ܗࣜಧॻͷਖ਼ମ
    ๻ୡͷ஌͍ͬͯΔ$47͡Όͳ͍
    $47
    ܗࣜಧॻྫ

    View Slide

  36. LJSJDP͸Կނੜ·Εͨͷ͔
    $47ܗࣜಧॻͷ࡞Γํ
    ࣮͸೔ຊ೥ۚػߏ͔Βʮಧॻ࡞੒ϓϩάϥϜʯͱ͍
    ͏ΞϓϦέʔγϣϯ͕ެ։͞Ε͍ͯΔ
    IUUQXXXOFOLJOHPKQEFOTIJCFOSJTFUTVNFJIUNM

    View Slide

  37. LJSJDP͸Կނੜ·Εͨͷ͔
    $47ܗࣜಧॻͷ࡞Γํ
    ࣮͸೔ຊ೥ۚػߏ͔Βʮಧॻ࡞੒ϓϩάϥϜʯͱ͍
    ͏ΞϓϦέʔγϣϯ͕ެ։͞Ε͍ͯΔ
    IUUQXXXOFOLJOHPKQEFOTIJCFOSJTFUTVNFJIUNM
    ಈ࡞؀ڥ
    8JOEPXTͷΈ

    View Slide

  38. LJSJDP͸Կނੜ·Εͨͷ͔ ݁Ռ

    w ࡞ۀ͸4NBSU)3಺Ͱ׬͍݁ͨ͠
    w F(PWిࢠਃ੥ιϑτ΢ΣΞ಺͔Β$47ܗࣜಧॻ͕
    ࡞੒Ͱ͖Δͱศར
    w ಧॻ࡞੒࢓༷ॻ͸ެ։͞Ε͍ͯΔ
    w IUUQTXXXOFOLJOHPKQEFOTIJCFOSJTFUTVNFJIUNM
    3VCZϥΠϒϥϦͱͯ͠࡞੒ɺެ։

    View Slide

  39. F(PWిࢠਃ੥Λࢧ͑Δٕज़ͦͷ͓ΘΓ

    View Slide

  40. ·ͱΊ

    View Slide

  41. ·ͱΊ
    w 4NBSU)3͸F(PWిࢠਃ੥Λ࢖ͬͯ
    ࣾձอݥ΍࿑ಇอݥؔ࿈ͷखଓ͖Λߦ͍·͢
    w F(PWిࢠਃ੥Λࢧ͑Δ3VCZϥΠϒϥϦΛ
    ։ൃɾެ։͍ͯ͠·͢
    w ͜Ε͔Β΋ͬͱ࢖͍΍͘͢ͳΔͱ͍͍ͳ

    View Slide

  42. ͦΜͳ4NBSU)3͸஥ؒΛ୳͍ͯ͠·͢
    ΤϯδχΞઈࢍ࠾༻த
    IUUQTTNBSUISDPKQSFDSVJUIFMMPXPSME

    View Slide

  43. ෇࿥044ؔ࿈هࣄ
    w F(PW"1*ʹରԠͨ͠HFNʮLJKJʯΛެ։͠·ͨ͠2JJUB
    w IUUQTRJJUBDPNLBLJQPJUFNTDDFGEGDGFE
    w ߦ੓खଓ͖ͷిࢠਃ੥Λ΋ͬͱ਎ۙʹʂ$47ܗࣜಧॻ࡞੒ϥΠϒϥϦ
    ʮLJSJDPʯΛެ։͠·ͨ͠4NBSU)35FDI#MPH
    w IUUQUFDITNBSUISKQFOUSZ
    w 4NBSU)3ΦʔϓϯιʔεLJSJDPͷϩΰͷ࡞Γํ4NBSU)35FDI
    #MPH
    w IUUQUFDITNBSUISKQFOUSZ

    View Slide

  44. ෇࿥࿈ܞ"1*ͷগ͠େมͳͱ͜Ζ

    ిࢠॺ໊෇͖ͷ
    9.-Ͱͳ͚Ε͹ͳΒͳ͍
    w ຊਓ ࣄۀॴ
    ֬ೝ ˞
    ɺվ᜵ݕ஌ͳͲͷͨΊ
    w શϦΫΤετͰඞਢ
    ˞ิ଍
    ిࢠূ໌ॻ͸ࣄۀॴຖʹ࡞੒͕ඞཁ

    View Slide

  45. ෇࿥࿈ܞ"1*ͷগ͠େมͳͱ͜Ζ

    શͯͷϦΫΤετʹ
    ࣄલ४උ͕ඞཁ
    ར༻ऀ*%Λొ࿥͢Δ
    w ిࢠূ໌ॻͷొ࿥ ߋ৽
    ޙʹඞཁ
    ར༻ऀ*%Ͱೝূ͠ɺΞΫηεΩʔΛऔಘ͢Δ
    w ༗ޮظؒ͋Γ ϦΫΤετຖʹඞཁ

    ֤छిࢠਃ੥ॲཧ࣮ߦ

    View Slide

  46. ෇࿥࿈ܞ"1*ͷগ͠େมͳͱ͜Ζ

    "1*࢓༷ ॻ
    ͕๲େ
    w ࿈ܞ"1*ͷ9.-ߏ଄ఆٛॻ͸1%'Ͱఏڙ
    w ֤खଓ͖ͷਃ੥࢓༷͸&YDFMͰఏڙ
    w ࣌ʑؒҧ͍ͬͯΔ
    w ૹ৴ͯ͠े਺෼ޙͰͳ͍ͱ֬ೝͰ͖ͳ͍
    IUUQXXXFHPWHPKQTIJOTFJJOUFSGBDF@BQJEPXOMPBEIUNM

    View Slide