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
アジャイル開発における QAの役割と仕事の方法
Search
scrummasudar
May 18, 2023
Technology
0
55
アジャイル開発における QAの役割と仕事の方法
モバイルゲーム業界のQA、特にテスト管理者向けに発表した資料です
scrummasudar
May 18, 2023
Tweet
Share
More Decks by scrummasudar
See All by scrummasudar
動くプロダクトを軸にしたプロジェクトマネージメント〜スプリントレビューの活用方法〜
scrummasudar
0
1.5k
ふりかえりには、ストレスマネージメントの考え方が役に立つ!
scrummasudar
2
680
頻繁に感じる問題に 対処していますか?
scrummasudar
1
700
頻繁に感じている問題に対処できていますか?
scrummasudar
0
94
HowToDevelopInLargeAndComplex
scrummasudar
0
930
OrganizationalChange
scrummasudar
3
1.5k
ConfrontAThickBook
scrummasudar
0
950
HowToAgilePromotionOffice
scrummasudar
1
1.5k
CSM研修共有~会議編~
scrummasudar
0
660
Other Decks in Technology
See All in Technology
なんで私に登壇依頼が?! ~頼られるエンジニアになるためには~ /
mixi_engineers
PRO
2
200
CI/CDがあたりまえの今の時代にAPIテスティングツールに求められていること / CI/CD Test Night #7
k1low
12
2.9k
Oracle Database で機械学習を始めよう! Oracle Machine Learning
oracle4engineer
PRO
1
140
Azureコストは水道代/The_47th_Tokyo_Jazug
aeonpeople
3
360
.NETの非同期戦略とUnityとの相互運用
neuecc
2
2.4k
これまでのキャリアとこれからMLエンジニアとしてどう動くか
masatakashiwagi
0
410
10分でわかるfreeeのQA
freee
0
240
Evolutionary Optimization of Model Merging Recipes
fuyu_quant0
3
530
Elementaryを用いたデータ品質の可視化とデータ基盤の運用改善
10xinc
6
1.6k
どう買う?Azure
kuniteru
1
190
現実世界の事象から学ぶSOLID原則
h0r15h0
24
10k
Autopsy of a Cascading Outage from a MySQL Crashing Bug
jfg956
0
200
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
397
65k
It's Worth the Effort
3n
180
27k
Become a Pro
speakerdeck
PRO
8
4.4k
Designing on Purpose - Digital PM Summit 2013
jponch
109
6.4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
219
21k
Creatively Recalculating Your Daily Design Routine
revolveconf
209
11k
Gamification - CAS2011
davidbonilla
76
4.5k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
14
1.3k
Pencils Down: Stop Designing & Start Developing
hursman
115
11k
A Philosophy of Restraint
colly
195
15k
Docker and Python
trallard
33
2.6k
Build your cross-platform service in a week with App Engine
jlugia
223
17k
Transcript
ΞδϟΠϧ։ൃʹ͓͚Δ 2"ͷׂͱࣄͷํ๏ ૿ాݠଠ
ΠϯτϩμΫγϣϯ ΞδϟΠϧʁεΫϥϜʁ2"Ͳ͏͢Δʁ ▸ શࣾతʹΞδϟΠϧ։ൃΛ࠾༻͢ΔΑ͏ʹͳͬͨͷͰɺ 2"νʔϜΞδϟΠϧ։ൃͷରԠΛഭΒΕ͍ͯΔ ▸ Ұ෦ͷػೳ։ൃͰɺεΫϥϜΛ༻͍ͯ։ൃ͢ΔΑ͏ʹͳΓɺ 2"νʔϜʹٻΊΒΕΔׂ͕มΘ͍ͬͯΔΑ͏ʹײ͍ͯ͡Δ͕ɺ
۩ମతʹͲ͏͢ΕΑ͍͔Θ͔Βͳ͍
ΠϯτϩμΫγϣϯ ΞδϟΠϧ։ൃͰʮมΘΒͳ͍͜ͱʯͱʮมΘΔ͜ͱʯ ▸ ΞδϟΠϧ։ൃɾεΫϥϜʹɺ։ൃͷํ๏͕มΘͬͨͱͯ͠ɺ طଘͷ2"ͷߟ͑ํͰɺܧଓ࣮ͯ͠ફͨ͠ํ͕ྑ͍͜ͱଟ͋͘Δ ▸ ҰํɺΞδϟΠϧ։ൃΛऔΓೖΕΔͱɺϞόΠϧήʔϜ։ൃʹͱͬͯɺ ΑΓదͨ͠2"ͷࣄͷํ๏͕͋ΔͷͰɺઓ͢Δ͖͔͚ͬʹͳͬͯ΄͍͠
ΠϯτϩμΫγϣϯ ૿ాݠଠ ▸ ߸ʮ4$36.."46%"3ʯ ▸ ৫ͷվળɺ։ൃɾӡ༻ϑϩʔͷվળΛ୲͏ ϑϦʔϥϯεͷεΫϥϜϚελʔ ▸ ΞδϟΠϧ։ൃɾεΫϥϜͷاۀ͚ݚम࣮ࢪ
▸ ηΩϡϦςΟιϑτΣΞɾ&$αΠτͷ։ൃͳͲΛܦݧ͠ɺ ݄͔ΒήʔϜۀքʹඈͼࠐΉ ▸ εΫϥϜಓؔͷӡӦϝϯόʔ
ΠϯτϩμΫγϣϯ 2"ͷܦݧɾؔΘΓ ▸ ηΩϡϦςΟιϑτΣΞ։ൃ ॳظ &$αΠτͷ։ൃͰɺ 2"νʔϜ͕ଘࡏ͠ͳ͔ͬͨͷͰɺΤϯδχΞͱͯ͠2"ۀʹܞΘΔ ▸ ։ൃʹܞΘ͍ͬͯͨηΩϡϦςΟιϑτΣΞʹ͓͍ͯ
όά͕ଟ͔ͬͨ͜ͱ͔Βɺςετͷॏཁ͞Λ௧ײ͠ɺ ʹ+452#ೝఆςετٕज़ऀࢿ֨'PVOEBUJPO-FWFMΛऔಘ ▸ $&%&$ͰɺϓϩμΫγϣϯͷӡӦҕһͱͯ͠ɺ 2"ʹؔ͢Δηογϣϯ৹ࠪʹܞΘΔ
ΠϯτϩμΫγϣϯ ΞδΣϯμ ▸ ΞδϟΠϧ։ൃͱ ▸ ΞδϟΠϧ։ൃ͔Βߟ͑ΔϞόΠϧήʔϜͰٻΊΒΕΔ࣭ ▸ ΞδϟΠϧ։ൃʹ͓͚Δςετϓϩηε ▸ ΞδϟΠϧ։ൃʹ͓͚Δ2"ͷࣄ
▸ ͓ΘΓʹ
ΞδϟΠϧ։ൃͱ
ΞδϟΠϧ։ൃͱ ΞδϟΠϧ։ൃͷੜ ▸ ɺܰྔιϑτΣΞ։ൃख๏ͱ࣌ݺΕ͍ͯͨͰ໊ͷ͋Δਓ ͕ू·ΓɺͦΕͧΕ͕ఏএ͍ͯͨ͠εΫϥϜɺΤΫετϦʔϜɾϓϩάϥϛϯά ͳͲͷ։ൃख๏ͷՁ؍ʹ͍ͭͯٞͨ͠ ▸ ٞͷ݁ՌɺʮΞδϟΠϧ։ൃʯͱ͍͏ݴ༿͕ੜ͠ɺҎԼͷͭʹ·ͱΊΒΕ ͨ ▸
ΞδϟΠϧιϑτΣΞ։ൃએݴ ▸ ΞδϟΠϧએݴͷഎޙʹ͋Δݪଇ
ΞδϟΠϧ։ൃͱ ΞδϟΠϧιϑτΣΞ։ൃએݴ ࢲͨͪɺιϑτΣΞ։ൃͷ࣮ફ͋Δ͍࣮ફΛखॿ͚Λ͢Δ׆ಈΛ௨ͯ͡ɺΑΓΑ ͍։ൃํ๏Λݟ͚ͭͩͦ͏ͱ͍ͯ͠Δɻ ͜ͷ׆ಈΛ௨ͯ͠ɺࢲͨͪҎԼͷՁʹࢸͬͨɻ ϓϩηεπʔϧΑΓݸਓͱରΛɺ แׅతͳυΩϡϝϯτΑΓಈ͘ιϑτΣΞΛɺ
ܖަবΑΓސ٬ͱͷڠௐΛɺ ܭըʹै͏͜ͱΑΓมԽͷରԠΛɺ Ձͱ͢Δɻ͢ͳΘͪɺࠨهͷ͜ͱ͕ΒʹՁ͕͋Δ͜ͱΛೝΊͳ͕Βɺࢲͨͪӈ هͷ͜ͱ͕ΒʹΑΓՁΛ͓͘ɻ ࢀߟɿhttps://agilemanifesto.org/iso/ja/manifesto.html
ΞδϟΠϧ։ൃͱ ΞδϟΠϧΞϯϒϨϥ ࢀߟɿhttps://www.somar.co.nz/blog/somar-digital-workshops-agile-fundamentals-and-scrum-101/
ΞδϟΠϧ։ൃͱ ͳͥΞδϟΠϧ։ൃ͕ٻΊΒΕΔͷ͔ʁ ▸ ιϑτΣΞͦͷͷ͕Ϗδωεͷத৺ʹͳ͖͍ͬͯͯΔ ▸ ϚʔΫɾΞϯυϦʔηϯʮιϑτΣΞ͕ੈքΛҿΈࠐΜͰ͍Δʯ ▸ 76$"ͷ࣌ ▸ 7PMBUJMJUZ
มಈੑ ɺ6ODFSUBJOUZ ෆ࣮֬ੑ ɺ$PNQMFYJUZ ෳࡶੑ ɺ "NCJHVJUZ ᐆດੑ ͷ಄จࣈΛͱͬͨݴ༿ ▸ ϏδωεͷมԽ͕ɺ͘ͳΓɺͬͯΈͳ͍ͱΘ͔Βͳ͍͜ͱ͕૿͖͑ͯͨ ▸ ݱɺมԽʹରԠ͍͢͠ΞδϟΠϧ։ൃͷํ͕ద͍ͯ͠Δ
ΞδϟΠϧ։ൃ͔Βߟ͑Δ ϞόΠϧήʔϜͰٻΊΒΕΔ࣭
ΞδϟΠϧ։ൃ͔Βߟ͑ΔϞόΠϧήʔϜͰٻΊΒΕΔ࣭ ϞόΠϧήʔϜ༷͕มΘΓଓ͚Δ ▸ ϞόΠϧήʔϜɺαʔϏεऴྃ·Ͱɺৗʹ༷ͷมߋ͕͋Δ ▸ ظλΠτϧɺҎ্ଓ͍͓ͯΓɺऴΘΓͷͳ͍ࣄ ▸ ߹ʹΑͬͯɺຖ݄ɾຖिΞϓϦΛϦϦʔε͢Δඞཁ͕͋Δ ▸ ηϧϥϯ্ҐͰ͋Δ΄ͲɺϦϦʔεස͕ߴ͍
▸ ಥવɺϓϥοτϑΥʔϜ͔Β༷ͷมߋཁٻ͕͋Δ ▸ ϞόΠϧήʔϜɺΞδϟΠϧͳ։ൃΛ࠾༻ͨ͠ํ͕ྑͦ͞͏
ΞδϟΠϧ։ൃ͔Βߟ͑ΔϞόΠϧήʔϜͰٻΊΒΕΔ࣭ ٻΊΒΕΔ࣭ͷมԽ ࢀߟɿhttps://www.kzsuzuki.com/entry/2023/05/02/183727 ैདྷͷ։ൃ ΞδϟΠϧ։ൃ ࣭ͷҐஔ͚ͮ ɾϦϦʔεʹ͕ܽؕগͳ͍͜ͱ ɾϦϦʔε͕Ϣʔβͷཁٻʹ͍ۙ͜ͱ ɾ͚ۙͮΔೳྗΛ৫͕༗͢Δ͜ͱ
࣭ϝτϦΫεͷ༻్ ɾܭըͷͨΊʹݟੵΔ ɾ։ൃதͷ࣭ঢ়گΛѲ͢Δ ɾ࣭ͷܧଓతͳվળʹͭͳ͛Δ جຊσʔλͷ औಘλΠϛϯά ɾओʹ։ൃதͷσʔλ ɾ։ൃதͱӡ༻தͷσʔλͷ྆ํ جຊσʔλͷݯઘ ɾιʔείʔυཧγεςϜɺνέοτ ཧγεςϜ ɾιʔείʔυཧγεςϜɺνέοτ ཧγεςϜ ɾͦͷଞͷ։ൃج൫ɾຊ൪ڥ
ΞδϟΠϧ։ൃ͔Βߟ͑ΔϞόΠϧήʔϜͰٻΊΒΕΔ࣭ ϞόΠϧήʔϜͰٻΊΒΕΔ࣭ ▸ ػೳੑɿϢʔβʔʹͱͬͯΫϦςΟΧϧͳ͕ܽؕͳ͍͜ͱɺܧଓͯ͠ॏཁ ▸ ৴པੑɾޮੑɿ֤ήʔϜͷঢ়گʹԠͨ͡ӡ༻ʹ͑Δ͜ͱ͕Ͱ͖Δ͔ʁ ▸ อकੑɿήʔϜʹܧଓతʹมߋ͕ೖͬͯ2"ͷ͕ࢦؔతʹ૿͑ͳ͍͔ʁ ▸ ༻ੑɿ։ൃɾςετͯ͠ऴΘΓͰͳ͘ɺϦϦʔεͨ݁͠Ռɺ
Ϣʔβʔ͕ͦͦ༡ΜͰ͍Δ͔ɺࣄલʹఆͨ͠௨Γͷ༡ͼํΛ͍ͯ͠Δ͔ʁ ▸ ϦϦʔεલʹ࣭ΛߴΊΔ͚ͩͰͳ͘ɺӡ༻தͷσʔλ׆༻͠ɺ ܧଓ্࣭ͨ͠ͷͨΊͷ׆ಈ͕ॏཁ
ΞδϟΠϧ։ൃ͔Βߟ͑ΔϞόΠϧήʔϜͰٻΊΒΕΔ࣭ ࣭ΛߴΊΔͨΊͷΞδϟΠϧςετͷՁ؍ ࢀߟɿhttps://nihonbuson.hatenadiary.jp/entry/TestingManifesto
ΞδϟΠϧ։ൃʹ͓͚Δ ςετϓϩηε
ΞδϟΠϧ։ൃʹ͓͚Δςετϓϩηε ΞδϟΠϧ։ൃʹ͓͚Δςετ ࢀߟɿhttps://danashby.co.uk/2016/10/19/continuous-testing-in-devops/
ΞδϟΠϧ։ൃʹ͓͚Δςετϓϩηε ΞδϟΠϧ։ൃʹ͓͚Δςετ ࢀߟɿhttps://danashby.co.uk/2016/10/19/continuous-testing-in-devops/
ΞδϟΠϧ։ൃʹ͓͚Δςετϓϩηε طଘͷςετٕज़ॏཁ ▸ ςετϨϕϧͱςετλΠϓΛߟྀͨ͠ςετܭըͷ࡞ ▸ اըॻ༷ॻʹର͢Δ੩తςετͷ࣮ࢪ ▸ ςετ߲ॻΛ࡞Ͱ͖ΔεΩϧ ▸ ڥքੳɺσγδϣϯςʔϒϧςετɺΤϥʔਪଌɺ୳ࡧతςετ
ͱ͍ͬͨςετٕ๏ͷ࣮ફ ▸ ςετΧόϨοδͷܭଌ ▸ FUD
ΞδϟΠϧ։ൃʹ͓͚Δςετϓϩηε ςετࣗಈԽͰϓϩηεΛ܁Γฦ͘͢͢͠Δ ▸ ຖ݄ɾຖिΞϓϦΛϦϦʔε͢ΔʹɺςετࣗಈԽͷ࣮ࢪ͕ඞਢ ▸ ຖिɺશػೳͷϦάϨογϣϯςετΛखಈͰ࣮ࢪ͢Δ͜ͱඇݱ࣮త ▸ Ϛωʔδϟʔɺ2"͕ςετ߲ॻΛ࡞Ͱ͖Δ͚ͩͰͳ͘ɺςετࣗಈԽ ͷͨΊͷεΫϦϓτΛ࣮Ͱ͖ΔΑ͏ʹɺҭڥΛ͑Δ͜ͱ͕ॏཁ ▸
ձࣾʹΑͬͯɺ2"ΤϯδχΞͱ͍͏৬छΛઃஔ͠ɺ ςετࣗಈԽʹऔΓΜͰ͍Δ
ΞδϟΠϧ։ൃʹ͓͚Δςετϓϩηε ςετࣗಈԽͷࢦɿΞδϟΠϧςετͷݶ ࢀߟɿʰ࣮ફΞδϟΠϧςετʱᠳӭࣾɺP.96
ΞδϟΠϧ։ൃʹ͓͚Δςετϓϩηε ӡ༻͍ͯ͠ΔήʔϜͷ࣭Λ֬ೝ͠ɺө͢Δ ▸ ϦϦʔεલʹɺॏେͳܽؕΛͳͨ͘͢Γલ࣭ͷ্ܧଓͯ͠ॏཁ ▸ ϦϦʔεͨ͠ޙɺϢʔβʔ͕༡ΜͰ͍Δ͔֬ೝ͢Δ͜ͱ͕ॏཁ ▸ ྫ ϦϦʔε·ͰʹࣾͰʮ͍͍͢ʂʯɺʮ໘ന͍ʂʯͱ͍͏্͕͕ͬͨ ߹ɺϦϦʔεޙɺϢʔβʔ͕ಉ͡Α͏ʹײ͍ͯ͡Δ͔Λ֬ೝ͢Δ
▸ ͍͘ΒܽؕΛগͳ͘͠ɺັྗత࣭ΛߴΊͯɺ Ϗδωεͱͯ͠Γཱ͍ͬͯͳ͚Εɺ࣭Λ࡞ΓࠐΜͩͱݴ͑ͳ͍ ▸ δΣϥϧυɾϫΠϯόʔάʮ࣭ͱ୭͔ʹͱͬͯͷՁͰ͋Δʯ
ΞδϟΠϧ։ൃʹ͓͚Δ 2"ͷࣄ
ΞδϟΠϧ։ൃʹ͓͚Δ2"ͷࣄ ैདྷͷνʔϜମ੍ ▸ ֤ఔͷதͰɺઐੑΛ࣋ͬͨϝϯόʔͷΈͰࣄΛ͢Δ اը σβΠϯ ։ൃ ςετ ӡ༻
ΞδϟΠϧ։ൃʹ͓͚Δ2"ͷࣄ ΞδϟΠϧ։ൃͷνʔϜମ੍ اը σβΠϯ ։ൃ ςετ ӡ༻ ▸ ֤ਓ͕ઐੑΛ࣋ͪͭͭɺఔʹରͯ͠ɺνʔϜͰऔΓΉ
ΞδϟΠϧ։ൃʹ͓͚Δ2"ͷࣄ 2"ͷઐੑܧଓͯ͠ॏཁ ▸ 2"ͱͯ͠ɺ࣭ςετʹର͢Δઐੑɺࠓޙॏཁ ▸ ϞόΠϧήʔϜιϑτΣΞͳͷͰɺιϑτΣΞ࣭ಛੑ *40*&$ɺ*40*&$FUD ͷཧղ͕ॏཁ ▸
ιϑτΣΞ࣭ࣝମܥΨΠυ 42V#0, ▸ ଞ৬छٕज़Λत͠ɺϞόΠϧήʔϜͷ࣭ΛߴΊΔୈҰਓऀʹͳΔ
ΞδϟΠϧ։ൃʹ͓͚Δ2"ͷࣄ νʔϜϝϯόʔͱͯ͠ଞ৬छͷཧղͱྖҬ֦େ ▸ ࣭ཧɾςετҎ֎ʹɺଞͷ৬छ͕୲͍ͯ͠ΔࣄΛؚΊɺ ࣗͷରԠՄೳͳྖҬΛ֦େ͍ͯ͘͠ ▸ ΞδϟΠϧ։ൃͰɺಛఆͷઐੑʹՃ͑ͯɺ νʔϜͱͯ͠ෆ͍ͯ͠ΔઐੑΛνʔϜͰิ͏͜ͱ͕ཧ
▸ ྫ ϓϥϯφʔ͕ਓ͔͓͠Βͣଐਓੑ͕ߴ͍߹ɺ ϓϥϯφʔ͕༷ॻͷେےΛهࡌ͠ɺ2"͕ΤοδέʔεΛهࡌ͢Δ ▸ ྫ ΤϯδχΞͰςετࣗಈԽڥΛ࡞ͨ͠ܦݧ͕ͳ͍ͷͰ͋Εɺ 2"͕ϏϧυπʔϧΛௐɺςετࣗಈԽڥΛ࡞ɾӡ༻͢Δ
ΞδϟΠϧ։ൃʹ͓͚Δ2"ͷࣄ ଞ৬छΛཧղ͢Δୈา ▸ νʔϜͱͯ͠ಇͨ͘Ίʹɺ૬खͷ͜ͱΛΔ͜ͱ͕ॏཁ ▸ ૬खΛΔલʹɺ·ͣࣗݾ։ࣔ͠ɺࣗͷ͜ͱΛͬͯΒ͏ ▸ ϦϞʔτϫʔΫ͕૿͍͑ͯΔ͔࣌ͩΒͦ͜ɺ ؾܰʹͤΔ࣌ؒΛ༻ҙ͢Δඞཁ͕͋Δ
▸ ྫ ࣄͱͯ͠ܞΘ͍ͬͯΔήʔϜΛνʔϜͰҰॹʹ༡Ϳ ▸ ྫ ग़ࣾՄೳͳ߹ɺ νʔϜϝϯόʔͱϥϯνΛҰॹʹ৯ͨΓɺίʔώʔΛҰॹʹҿΉ
͓ΘΓʹ
͓ΘΓʹ ·ͱΊ ▸ ΞδϟΠϧ։ൃͷख๏ʹɺ։ൃͷํ๏͕มΘͬͨͱͯ͠ɺ 2"ͱͯ͠ॏཁͳ࣭ཧςετͷٕज़ͷଟ͘ɺܧଓͯ͠ॏཁͳεΩϧ ▸ සͷߴ͍ϦϦʔεΛࢧ͑ΔͨΊͷࣗಈԽͷऔΓΈɺ ϞόΠϧήʔϜΛӡ༻͠ଓ͚ΔͨΊʹϢʔβʔʹՁɾ࣭Λܧଓͯ͠
ఏڙ͍ͯ͠Δ͔Λ֬ೝ͢Δ͜ͱ͕ɺॏཁʹͳΔ ▸ ৬छͰஅ͢ΔͷͰͳ͘ɺ νʔϜϝϯόʔͷҰਓͱͯ͠ɺΈΜͳͰϞόΠϧήʔϜΛӡ༻͍ͯ͘͠
͓ΘΓʹ ࢀߟࢿྉ ▸ *452#ςετٕज़ऀࢿ੍֨'PVOEBUJPO-FWFM&YUFOTJPOγϥόεΞδϟΠϧ ςετ୲ऀຊޠ൛7FSTJPO+ ▸ ʰΞδϟΠϧϝτϦΫεʱᠳӭࣾ ▸ ʰ࣮ફΞδϟΠϧςετʱᠳӭࣾ ▸
ʰ"HJMF5FTUJOH$POEFOTFE+BQBOFTF&EJUJPOʱ-FBOQVC
͓ΘΓʹ $&%&$ͷςετࣗಈԽࣄྫ ▸ ϞόΠϧΞϓϦ2"ςετࣗಈԽͷऔΓΈʙ$&%&$͔Βͷมભʙ IUUQTDFEJMDFTBPSKQDFEJM@TFTTJPOTWJFX ▸ ຖिϦϦʔε͢ΔεϚϗ͚ίϯςϯπʹ͓͚ΔճؼςετͷࣗಈԽͱɺ ςετ݁ՌͷՄࢹԽΛؚΉςετϫʔΫϑϩʔͷఏҊ
IUUQTDFEJMDFTBPSKQDFEJM@TFTTJPOTWJFX ▸ ϒϥοΫϘοΫεςετͷࣗಈԽʹΑΔɺߴ࣭ͳςετͷ࣮ݱͱࣗಈԽ෦ୂͷ ҭ IUUQTDFEJMDFTBPSKQDFEJM@TFTTJPOTWJFX