Sandbox คืออะไร ? มีความสำคัญและใช้ประโยชน์อะไรได้บ้าง ?
Sandbox คืออะไร ? มีความสำคัญและใช้ประโยชน์อะไรได้บ้าง ?
หลายคนอาจเคยได้ยินคำว่า Sandbox ผ่านหูกันมาบ้าง โดยเฉพาะกับผู้ที่อยู่ในแวดวง IT หรือวงการธุรกิจต่าง ๆ แต่สำหรับใครที่รู้สึกว่าไม่คุ้นหูและสงสัยว่ามันคืออะไร แล้วมีความสำคัญหรือประโยชน์อะไรกับเราบ้างแล้วนั้น เราก็ได้รวบรวมคำตอบแบบคร่าว ๆ มาให้แล้วในบทความนี้
Sandbox คืออะไร ?
คำว่า Sandbox นอกจากจะสามารถแปลเป็นไทยได้ความหมายว่า "กระบะทราย" หรือ "กล่องทราย" ที่หลาย ๆ คนเคยเล่นก่อปราสาททราย (Sand Castle) กันในตอนเด็ก ๆ แล้ว มันยังมีความหมายเฉพาะในวงการ IT อีกด้วย โดยมันจะหมายถึงการทดสอบการทำงานของซอฟต์แวร์ในสภาพแวดล้อมที่จำกัด ด้วยการสร้างพื้นที่ในการทดสอบขึ้นมาใหม่ (แยกออกจากระบบเดิม) ทำให้ง่ายต่อการจัดการข้อผิดพลาดและไม่ส่งผลกระทบและความเสียหายกับระบบในส่วนอื่น ๆ
และเนื่องจากว่าการทดสอบระบบในลักษณะนี้มีความคล้ายคลึงกับการเล่นก่อกองทรายภายในกระบะทราย (Sandbox) ที่นอกจากจะมีพื้นที่จำกัดเฉพาะแล้ว ยังง่ายต่อการรื้อและสร้างระบบขึ้นใหม่ อีกทั้งการทดสอบ Sandbox บางประเภทยังเปิดให้ ผู้พัฒนาซอฟต์แวร์บุคคลที่สาม* (3rd Party Software Developer) จากภายนอกสามารถเข้ามาร่วมทดสอบระบบได้อีกด้วย ดังนั้นจึงเป็นที่มาของการใช้คำว่า Sandbox (หรือบางครั้งอาจใช้คำว่า Sandboxing)
ข้อมูลเพิ่มเติม : 3rd Party หรือบุคคลที่สาม คือ อะไร ?
ภาพจาก : https://image.freepik.com/free-vector/malicious-software-application-code-development-sandbox-debug-flat-isometric_126523-2026.jpg
โดยระบบของ Sandbox นี้ก็ใช้ในการทดสอบซอฟต์แวร์หลากหลายรูปแบบ ไม่ว่าจะเป็น
- การทดสอบฟีเจอร์ใหม่ (New Feature) หรือแพตช์ใหม่ (New Patch)
- การจำลองใช้งานแอปพลิเคชัน (Application)
- การตรวจหาข้อผิดพลาด (Bug) ต่างๆ
- การตรวจสอบความปลอดภัยในการเจาะเข้าระบบของ มัลแวร์ (Malware) อย่าง ไวรัส (Virus) ต่าง ๆ ได้
ช่วยให้ผู้ทดสอบซอฟต์แวร์ (Software Tester) ทำงานได้สะดวกมากยิ่งขึ้น อีกทั้ง ผู้พัฒนาซอฟต์แวร์ ที่เป็น Third Party ยังสามารถเข้ามาทดสอบใช้งานโค้ดของตนเองบนระบบจำลองนี้ก่อนนำเอากลับไปพัฒนาต่อและปล่อยออกมาให้ใช้งานจริงได้ และโมเดลของ Sandbox ก็ถูกนำเอาไปประยุกต์ใช้ในหลาย ๆ วงการอีกด้วย
ตัวอย่างเช่น ทางบริษัทใหญ่อย่าง Google เองก็ได้มีการนำเอาโมเดลของระบบ Sandbox ไปใช้ในการพัฒนา Privacy Sandbox ร่วมกับระบบ FLoC (Federated Learning of Cohorts) หรือตัว โอเพ่นซอร์ส (Open Source) ทาง Google พัฒนาขึ้นมาเพื่อใช้ทดแทนการทำงานของ 3rd Party Cookies ที่มีความเสี่ยงต่อการรั่วไหลของข้อมูล ทำให้ผู้ใช้สามารถเข้าถึงและใช้งานเว็บไซต์ต่าง ๆ ได้อย่างปลอดภัย และช่วยให้ธุรกิจต่าง ๆ สามารถยิงโฆษณาให้ตรงความสนใจของผู้ใช้ได้
โดยการทำงานของ Privacy Sandbox ของ Google นี้จะทำการจัดเก็บข้อมูลผู้ใช้เอาไว้ให้มีความปลอดภัยในระบบที่ทางบริษัทพัฒนาขึ้นและไม่นำเอาออกไปเผยแพร่สู่ภายนอก คล้ายกับ “กระบะทราย (Sandbox)” ในสนามเด็กเล่นที่เปิดพื้นที่ให้ ผู้พัฒนาซอฟต์แวร์บุคคลที่สาม สามารถเข้ามาร่วมทดสอบใช้งานระบบได้นั่นเอง
Sandbox กับภาคธุรกิจ
สำหรับภาคธุรกิจและการเงินแล้ว ทาง FinTech ก็ได้มีการนำเอาโมเดลของ Sandbox มาปรับใช้งานกับการจำลองทดสอบแผนการทำธุรกิจต่าง ๆ ด้วย กลไกการทดสอบแผนธุรกิจในพื้นที่จำลอง (Regulatory Sandbox) (อาจเป็นพื้นที่จริงหรือพื้นที่เสมือนก็ได้) ที่มีการกำหนดกฎเกณฑ์เฉพาะขึ้นมาใช้งานโดยอยู่ภายใต้การดูแลของรัฐบาล
ซึ่งพื้นที่ที่ใช้ในการจำลองแผนธุรกิจนั้นอาจมีการผ่อนปรนกฎระเบียบ หรือข้อกฎหมายบางอย่างเพื่อให้การทดสอบการดำเนินงานเป็นไปอย่างราบรื่นมากขึ้น ทำให้ภาคสามารถประเมินความเป็นไปได้ของแผนธุรกิจนั้น ๆ ก่อนนำเอาไปพิจารณาปรับปรุงแผนและนำออกมาใช้งานจริงในอนาคต (หรืออาจยกเลิกไปหากผลลัพท์ออกมาไม่เป็นอย่างที่คาดหวัง)
ภาพจาก : https://www.menabytes.com/whitepaper-fintech-sandboxes-mena/
หรือในประเทศไทยเองก็มีโครงการอย่าง Phuket Sandbox ที่เป็นโครงการนำร่องทดสอบการท่องเที่ยวในช่วงการแพร่ระบาดของ COVID-19 ที่ทางจังหวัดได้ดำเนินการฉีดวัคซีนให้คนท้องที่ทุกคน จากนั้นจึงดำเนินการเปิดเกาะภูเก็ตให้นักท่องเที่ยวสามารถเดินทางเข้ามาเที่ยวในจังหวัดได้หากได้รับวัคซีนเป็นที่เรียบร้อย โดยจะต้องปฏิบัติตามกฎของโครงการนี้อย่างเคร่งครัดเอง
ก็อาจเรียกได้ว่าเป็นการทดสอบ Regulatory Sandbox ของรัฐบาลในการทดลองเปิดพื้นที่การท่องเที่ยว เพราะจังหวัดภูเก็ตนั้นเป็นเกาะเดี่ยวที่ไม่ได้มีแผ่นดินติดกับจังหวัดอื่น ๆ ทำให้สามารถควบคุมการเข้า - ออกพื้นที่อย่างเคร่งครัดได้ (คาดว่าหากโครงการนี้สำเร็จลุล่วงไปได้ด้วยดีก็คงมีการขยายโครงการออกไปยังพื้นที่อื่น ๆ มากขึ้น แต่สุดท้ายก็ดูเหมือนจะไม่ประสบความสำเร็จอย่างที่หวังเอาไว้)
Sandbox กับวงการเกม
นอกเหนือไปจากการเป็นกระบะทรายให้เด็กเล่นฝึกทักษะและเป็นการทดสอบระบบซอฟต์แวร์ หรือโมเดลทางธุรกิจแล้ว Sandbox ก็ยังเป็นหนึ่งในประเภทของเกมด้วยเช่นกัน และถึงแม้ว่าชื่อของมันจะดูไม่ค่อยคุ้นหูเท่าไรนัก แต่ถ้าพูดรายชื่อเกมที่จัดเอาไว้ว่าเป็นเกมแนว Sandbox แล้วก็คาดว่าน่าจะเคยผ่านมือของหลาย ๆ คนแล้วอย่างแน่นอน ยกตัวอย่างเกมสุดคลาสสิกต่าง ๆ ก็เช่น
- เกม GTA
- เกม Garry's Mod
- เกม The Sims
- เกม Minecraft
- เกม Hitman
หรือแม้แต่ เกม Far Cry, RDR2 (Red Dead Redemtion 2) และ Animal Crossing เองก็จัดว่าเป็นเกมแนว Sandbox ด้วยเช่นกัน
ซึ่งความคล้ายกันของเกมเหล่านี้ที่ทำให้มันถูกจัดรวมกันว่าเป็นเกมแนว Sandbox ก็ได้แก่ การที่พวกมันเป็นเกมออนไลน์ที่เปิดพื้นที่ให้ผู้เล่นได้ใช้อิสระและจินตนาการในการเล่นได้อย่างเต็มที่ (คล้ายกับการปล่อยให้เด็ก ๆ ได้เล่นก่อกองทรายในกระบะทรายตามใจตัวเอง) ไม่ได้เป็นเกมที่บังคับให้ผู้เล่นต้องดำเนินเกมตามเส้นเรื่องอย่างเคร่งครัด หรือบางเกมอาจไม่มีเนื้อเรื่องหลักด้วยซ้ำ อีกทั้งยังเป็นเกมที่สามารถเล่นได้เรื่อย ๆ ตามความพึงพอใจของผู้เล่นแบบไม่รู้จบ
และไม่เพียงแต่ Sandbox จะเป็นแนวเกมที่ทำให้ผู้เล่นหลาย ๆ คนติดงอมแงมจนผลาญเวลาในแต่ละวันไปหลายชั่วโมงแล้วเท่านั้น มันยังเป็นชื่อของเกมบนระบบ Blockchain ที่ไม่เพียงแต่จะสนุกแล้ว ยังสามารถสร้างรายได้ให้กับผู้เล่นผ่านการขาย ASSET ภายในเกมได้อีกด้วย !?
โดยเกม The Sandbox นี้เป็นเกม 3 มิติที่มีลักษณะคล้ายคลึงกับเกมยอดนิยมอย่าง Minecraft ที่ทางบริษัท Ethereum เจ้าของสกุลเงิน ETH หนึ่งใน Cryptocurrencies ชื่อดังคู่แข่งกับ Bitcoin พัฒนาขึ้น
ซึ่งทาง Ethereum ก็ได้เปิดให้ผู้เล่นเกม Sandbox นี้สามารถที่จะใช้งาน VoxEdit เพื่อสร้างตัวละคร, สัตว์, เครื่องมือ หรือไอเทมและสิ่งของต่าง ๆ ภายในเกมเป็นของตนเองได้อย่างอิสระ (เรียกรวม ๆ ว่า ASSET) อีกทั้งยังมี Marketplace ที่เปิดให้ผู้เล่นซื้อ - ขาย ASSET ต่าง ๆ ภายในเกมด้วย สกุลเงิน NFT ผ่านมาตรฐาน ERC-721 จึงทำให้ผู้ใช้มั่นใจได้ว่า ASSET ที่ซื้อมานั้นจะมีความพิเศษ (Unique) กว่า ASSET อื่น ๆ และมีเราเป็นเจ้าของแต่เพียงผู้เดียว
และเนื่องจากว่า SAND (สกุลเงินภายในเกม The Sandbox) ที่สามารถนำเอาไปซื้อ LANDS (ที่ดินภายในเกม) และ ASSET (ไอเทมหรือสิ่งของและตัวละครในเกมที่ผู้ใช้คนอื่น ๆ จำหน่าย) นั้นสามารถแลกเปลี่ยนกลับมาเป็น ETH ผ่าน ERC-20 ได้ จึงทำให้ผู้เล่นสามารถที่จะสร้างรายได้จากการขายไอเทม (ASSET) ในเกมได้
สรุปแล้ว Sandbox มีประโยชน์อะไร ?
อย่างที่ได้ระบุไปข้างต้นว่า Sandbox นี้สามารถทดสอบใช้งานระบบใหม่ ๆ ได้โดยไม่ส่งผลกระทบต่อระบบอื่น ๆ ภายนอก มันจึงช่วยให้ผู้พัฒนาสามารถระบุและดำเนินการแก้ไขข้อผิดพลาดเหล่านั้น รวมทั้งช่วยในการประเมินผลจากการทดลองใช้งานจริงและปรับปรุงระบบต่าง ๆ ให้มีความเสถียรมากยิ่งขึ้นก่อนนำเอามาใช้งานจริง (หรือยุบโปรเจคทิ้งหากผลลัพท์ออกมาไม่ดี) นอกจากนี้ การทดสอบระบบภายใน Sandbox ยังช่วยป้องกันการรั่วไหลของข้อมูลออกไปภายนอกได้ดีกว่าการทดสอบระบบร่วมอีกด้วย
ส่วนสำหรับคนทั่วไปแล้วนั้น ถึงแม้ว่า Sandbox จะไม่ได้มีประโยชน์โดยตรงกับเรามากเท่าไรนัก แต่การที่ผู้พัฒนาทำการทดสอบระบบผ่าน Sandbox ก็ช่วยให้เราสามารถใช้งานระบบต่าง ๆ ได้อย่างเสถียรและปลอดภัยมากยิ่งขึ้นได้นั่นเอง