2018年4月にAWSに新卒入社した5人が、10月に開催された社内イベント向けに顔認証受付サービスを作るまでのストーリー。少人数のチームがAmazon流Working Backwardsを着眼点としたPR/FAQを書いて短期決戦のプロジェクトに立ち上がるまでのいきさつ、1回限りの本番運用を成功させるため各チームと連携しながら短期間でどのように開発を進めたか、セキュリティ・コンプライアンスに準拠するための苦労とアーキテクチャ、などについて話します。
https://event.shoeisha.jp/devsumi/20190214/session/1948/
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.- 1 - ! 2019.02.14 [14-C-5] 14:10 – 14:55
View Slide
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.(&5% “” SA %/3=;="• 20184 )80< *+7 -=6/ (AWS) Japan $• # !' (5$3& )Name:Like:2 4:9 ,.+13 25/
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.Introduction 3
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.4Tech-U !$#" %
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. $ …5 !$'("&%(!#
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.6"6+*.(,.5%#6 1 '&)-$!Starbucks !?
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. 7Photo by MILKOVÍ on Unsplash
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 8Amazon GO
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.Just Walk Out9
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS DeepLens 10AWS IoT GreengrassLambdafunction
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.Capstone: 11Photo by Jeremy Bishop on Unsplash
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.Capstone ProjectSimple Location Finder12
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.0%.$1,• 2 pager )/32?8DBG>4&• PR/FAQ () -• 5H8=9• .- '&7A6;(- #:H@;4(• 7A6;,• AEH5?F;,+'&-(!*",2 2:H@;! #)!13
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.Simple Location Finder (Architecture)14SAsDeviceServicebucket withobjectsLambdafunctionAmazonRekognitionRecognitionServiceAmazonAPI GatewayDataService FrontendAmazonDynamoDBOffice/17F/WestAmazonDynamoDBData lake Web HostingVue.jsAmazonCognitoSAsOffice/17F/NorthSAsOffice/17F/East
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. ! • 5$%! ($"#7)154.864.864.43
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.912…• 10 '/ Amazon/AWS 39;7(• 39;7'!/' Wow! %#$*-/,&2 "• (8:6457 .)!<%10+."%16
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.Face Recognition Gate10 17
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.Invent and Simplify18 !" Invent and Simplify
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved." %19).1-!12+*/0,((+*/0,( AWS )5&%3#'$
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. • PR/FAQ• Press Release + • $%" #!!% • (Amazon GuardDuty Press release)• "• • 20
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.PR/FAQ ('$)Press Release (PR)• 10F!S]_Z:FVa\W3%9`#EC8M• 1+*D2!*F (() PO>?2'%+*• /G!*F C&5MFAQ• ,7AB4M6b• 5F Tech-U ^_[a• YaXG• 1 GQ• S]_ZFYaXF4Gb• *-"F?IF.)/@:=2LFYaXG AWS RUT_Z;D 0• FCC8M6b• !*EKMJ 21
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.Design 22
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.Amazon Rekognition- Deep Learning 6$( API 9C=:- SearchFacesByImage API +!*(-(2. FaceID 6'46"- #%&( / / RTT + 500 ms 1, (: -34) )*(.+!Rekognition -508>B<+@7A;8?.% 23Amazon Rekognition
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.Rekognition "*!$24#&&+)*! (1(*)"#)+)Rekognition "*$ '#-,.+ %
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.!- ''API ' - %" "- "& ($(()- USB #%- % 25
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.26
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. 27 WAIT STOPCamera50 cm180 cm2 !
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.!$7- Rekognition 1 500 ms- #;7+ 1 (2) .9 99% 73 A>*% (= 91) D- 1: Face Model 7GMFIK6>128C@:-(( 7 v3 37D=46)- 2: $+&?B2)//<5)EKHJ373-( L6>12"5%8,:-(280 'WAIT STOP
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved."!#• UI/UX • • • 29
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.Our ArchitectureSecure, Scalable Serverless AI Application30
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.DisplayAWS Cloud31Overall ArchitectureEdge DeviceNG OKUserNameLambdafunctionAmazon DynamoDBAmazonRekognitionAmazon CloudWatchAWS CloudTrail + S3BucketS3BucketAPI ArchiveAWS CloudUSB TemporarysecuritycredentialFaceID
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.DisplayAWS Cloud32Overall Architecture ()Edge DeviceNG OKUserNameAmazon CloudWatchAWS CloudTrailS3BucketAPI ArchiveAWS CloudUSB TemporarysecuritycredentialFaceID LambdafunctionAmazon DynamoDBAmazonRekognition + S3Bucket
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.Amazon CloudWatchAWS CloudTrailAWS Cloud33Overall Architecture ()S3BucketAPI ArchiveAWS CloudLambdafunctionS3BucketDisplayEdge DeviceNG OK UserNameUSB TemporarysecuritycredentialFaceIDAmazon DynamoDBAmazonRekognition
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.USB DisplayAWS Cloud34Overall Architecture ()Edge DeviceNG OKUserNameLambdafunctionAmazon DynamoDBAmazonRekognitionS3BucketFaceIDAmazon CloudWatchAWS CloudTrailS3BucketAPI ArchiveAWS CloudTemporarysecuritycredential
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. 35Overall Architecture ()ArchiveAWS Cloud
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.DisplayAWS Cloud36Overall ArchitectureEdge DeviceNG OKUserNameLambdafunctionAmazon DynamoDBAmazonRekognitionAmazon CloudWatchAWS CloudTrailS3BucketS3BucketAPI ArchiveAWS CloudUSB TemporarysecuritycredentialFaceID +
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.DemoDemo Video37
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.38
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.GuidelineSecurity and Compliance39
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS Develop • IAM • Dev power user ( )• IAM • Client role ()• Admin role ()• Rekognition• + 5• CodeCommit Production • IAM • Client role• Admin role• Rekognition• 40Staging • IAM • Client role• Admin role• Rekognition• + 5
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved..+450)# 41 "(*3)-2/167, IP (VPN )#% $"#!'2API
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.9@)1• S3, DynamoDB AL^T^LKS• TTL J83/':=* <0• $-!@%],+!@"A8>4• Rekognition image B@ "A(Q^O=8;!4GI>4 (2018.10.17 )• L^UNP^X (Rekognition .#P^X) ?&,• Z^MY\@DJ!• Q^O6Z^MY\?@DIH• Rekognition API @[NW\N/J• L^T^[N?FH24!• Z^MY\6CHF5>AKV\R69E9E.7I>442
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.!#• (• !$*. (• #& ,)"'%*%'-%+43إೝূήʔτͰࡱӨΛߦ͍·͢• ࡱӨ͞ΕΔ͜ͱΛ·ͳ͍ํόοδήʔτʹ͓ฒͼ͍ͩ͘͞• ࡱӨ͞Εͨը૾ɺإೝূͷతʹͷΈ༻͞Ε·͢• ࡱӨ͞Εͨը૾ɺήʔτ௨աޙ͔ʹআ͞Ε·͢إೝূήʔτόοδήʔτόοδήʔτόοδΛ͝४උͷ্ྻʹ͓ฒͼ͍ͩ͘͞
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.Results 44
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.Rekognition '$) - ! (+ - # ~ 500 ms- $ Wi-Fi ~ 700 ms- 120 px &*"%)45(Order=2)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.=G@&'(- : 2" / - : 3.38 " / - BG<(6- %$514/21657-4#:- A?@FG< ( E<:>@( )- 6 (E@D9 )- *6 (!)- C;A4346C;A .8 ,+40)(Face Model v3)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. 47 $20 Rekognition ($15), KMS ($2), CloudTrail ($2), etc…
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. 485 4.53
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.Ending49
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.'$(50Working Backwards /150/.-#&AWS .$ /150/.!"+#3864#-&427) %*,$&
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. 51