ระบบจัดการและโครงสร้างพื้นฐาน

Montree Phormthong
SUFFIX.WORKS
Published in
2 min readDec 3, 2021

การพัฒนาผลิตภัณฑ์ดิจิตอลหรือ Digital Product เช่น เว็บไซต์, แอปพลิเคชัน นอกจากรูปลักษณ์การแสดงผลและประสบการณ์ใช้งาน (UI/UX) ซึ่งเป็นสิ่งที่ผู้ใช้งาน (User) ให้ความสำคัญเป็นอันดับแรกแล้ว เบื้องหลังนั้นต้องอาศัยระบบจัดการ (Back-end) และโครงสร้างพื้นฐาน (Hosting infrastructure) ที่ดีเพื่อให้กระบวนการทำงานทั้งหมดสมบูรณ์และ Seamless ทั้งในฝั่งผู้ใช้งาน (User) และฝั่งธุรกิจ (Business)

Back-end ที่ดีควรเป็นอย่างไร?

Digital Product อย่างเว็บไซต์หรือแอปพลิเคชันจำเป็นต้องมีระบบหลังบ้าน (Back-end) ที่ใช้งานง่าย มีเทคโนโลยีที่ทันสมัย และมีความปลอดภัย โดยเฉพาะเว็บไซต์รูปแบบ E-Commerce ที่สามารถซื้อการขายสินค้ายิ่งต้องให้ความสำคัญกับ Back-end ซึ่งจะช่วยสนับสนุนให้ทุกๆ การสั่งซื้อเป็นไปอย่างราบรื่นที่สุด ตั้งแต่การกดสินค้าลงตะกร้าไปจนถึงการจัดส่ง

องค์ประกอบของ Back-end มีหลายส่วนด้วยกันไม่ว่าจะเป็น ระบบจัดการเนื้อหา หรือ (CMS: Content Management System) และฐานข้อมูล (Database) ไปจนถึงตัวกลางในการเชื่อมต่อระบบ (API: Application Programming Interface) และโฮสติ้ง(Hosting)

ระบบการจัดการเนื้อหาหรือ CMS (Content Management System)

ปกติแล้วทีม Developer ของเราจะพัฒนาระบบอยู่ 2 รูปแบบคือ
1. การพัฒนาตามความต้องการของธุรกิจโดยเฉพาะ (Custom CMS)
2. การพัฒนาจากซอฟต์แวร์ที่อนุญาตให้ทำการแก้ไขได้ (Opensource CMS)
ซึ่งเราจะพิจารณาจากระยะเวลา ขอบเขตของงาน และการพัฒนาต่อในอนาคต เพื่อดูว่ารูปแบบไหนที่เหมาะสมกับลูกค้ามากที่สุด

Custom CMS
หากรูปแบบ Custom เหมาะกับลูกค้ามากกว่าทางทีมจะเลือกใช้เทคโนโลยีให้เหมาะสมกับงานๆ นั้น เช่น Node, PHP, Golang เป็นต้น โดยจุดเด่นในรูปแบบนี้คือ

  • ใช้งานง่าย เนื่องจากออกแบบการใช้งานจากความต้องการของธุรกิจ
  • มีความปลอดภัยมากกว่า และมีสแปมน้อยกว่า
  • สามารถวิเคราะห์ข้อมูลได้เฉพาะด้านตามประเภทธุรกิจ

Opensource CMS
กรณีที่เป็น Opensource CMS เช่น Wordpress ก็จะมีข้อดีเช่นกันคือ

  • มีการอัพเดทซอฟต์แวร์อยู่เสมอ
  • มีปลั๊กอินให้เลือกหลากหลาย
  • ใช้เวลาในการติดตั้งน้อย

โครงสร้างพื้นฐานสำหรับการพัฒนา Back-end

การจะทำให้ระบบการจัดการเนื้อหาหรือ CMS สมบูรณ์ได้นั้นต้องประกอบไปด้วยโครงสร้างพื้นฐานทั้ง Hosting รวมถึงการเชื่อมต่อกับ Service หรือ API ภายนอกต่างๆ
โดยหากพูดถึงการเลือก Hosting และ Server ที่จะส่งผลต่อเทคโนโลยีที่จะนำมาใช้ในการทำงาน ทางทีม Developer ของ SUFFIX มักจะเจอใน 2 รูปแบบ คือ

กรณีที่ลูกค้ามี Hosting เดิมเป็นของตัวเองอยู่แล้ว
จากประสบการณ์ของเราเมื่อเจอลูกค้าที่มี Hosting เดิมของตัวเอง ส่วนใหญ่จะเป็นในรูปแบบของ Shared Host ซึ่งเราต้องเลือกเทคโนโลยีที่เหมาะสมโดยใช้ PHP, JavaScript, CSS, HTML และ MySQL เป็นต้น

กรณีที่ลูกค้ายังไม่มี Hosting
หากลูกค้ายังไม่มี Hosting และต้องการให้เราแนะนำ ทางทีมจะเลือกใช้ Cloud Hosting เป็นหลัก ซึ่งทางทีมจะสามารถเลือกใช้เทคโนโลยีได้หลากหลายกว่า Shared Host เช่น Node, Golang, Vue, CSS, HTML, PHP, JavaScript และ MySQL เป็นต้น โดยจะขึ้นอยู่กับขอบเขตของงานและระยะเวลาในการพัฒนา

การเชื่อมต่อกับ Service ต่างๆ โดยใช้ตัวกลางในการเชื่อมต่อระบบ (API: Application Programming Interface)

อีกสิ่งที่สำคัญไม่แพ้กันในการสร้าง Digital Product ที่จะต้องมีอยู่เสมอก็คือ การเชื่อมต่อกับ Service ต่างๆ เพื่อให้การสามารถงานได้ครบถ้วนและตามจุดประสงค์ของผลิตภัณฑ์ดิจิตอลนั้นๆ โดยปกติแล้วเราจะเจอกับการเชื่อมต่อกับ Service ต่างๆ 2 รูปแบบด้วยกันนั่นก็คือ

Service ภายในของลูกค้า
บางองค์กรหรือบริษัทจะมีการพัฒนา Service ของตัวเองโดยทีม IT ภายใน ซึ่งเราจะมีหน้าที่ในการเชื่อมต่อข้อมูลสู่ Digital Product ซึ่งรูปแบบของการเชื่อมต่อข้อมูลจะเกิดจากการตกลงกันของทีม IT ของลูกค้ากับทีม SUFFIX

Service จากผู้ให้บริการภายนอก (Vendor)
นอกเหนือจาก Service ภายในของลูกค้าแล้ว โดยส่วนมากต้องมีการเชื่อมต่อกับ Service ที่เป็นของผู้ให้บริการจากภายนอก (Vendor) เช่น ระบบการชำระเงิน (Payment), ระบบขนส่ง (Shipping) เป็นต้น โดยกรณีที่เป็น Service รูปแบบนี้เราจะพิจารณาเลือกใช้จากเอกสารหรือคู่มือ (Manuals) ความปลอดภัย ราคา และชุมชนของผู้ใช้งาน (Community)

“แม้ว่าเทคโนโลยีจะมีการอัปเดตและเปลี่ยนแปลงอยู่ตลอดเวลา แต่การสร้างระบบจัดการและโครงสร้างพื้นฐานที่ดีจะช่วยให้ Digital Product ของธุรกิจคุณพร้อมให้บริการอย่างสมบูรณ์อยู่เสมอ”

--

--