การมี API นั้นมีทั้งข้อดีข้อเสีย เนื่องจากการพัฒนา API นั้นต้องใช้คน เวลา และงบประมาณอย่างมากในการจัดทำ ก่อนจะตัดสินใจเริ่มทำ API ลองมาดูข้อดีข้อเสีย เพื่อประเมินความจำเป็นในการใช้งาน API เพื่อให้การพัฒนาที่เกิดขึ้นคุ้มค่า และตอบสนองความต้องการขององค์กรได้อย่างเหมาะสมที่สุด
ข้อดีของ API
API ช่วยให้นักพัฒนาสามารถเข้าถึงการทำงานของโปรแกรมหรือบริการได้ง่ายและปลอดภัยมากขึ้น ตัวอย่างเช่น
การดึงข้อมูลจากฐานข้อมูลที่สามารถเข้ารหัสข้อมูล (Encrypt) ก่อนออกจากระบบฐานข้อมูล เพื่อให้เกิดความปลอดภัยระหว่างการแลกเปลี่ยนข้อมูล และมาถอดรหัสข้อมูล (Decrypt) ตอนที่ระบบเรียกใช้และมีสิทธิเข้าถึงข้อมูลนั้น
หรือการใช้บริการระบบที่ต้องการความปลอดภัยอย่างมากในการเข้าถึงข้อมูลอย่างเช่นการเชื่อมต่อกับ Payment gateway ที่หากข้อมูลรั่วไหลแม้แต่นิดเดียว จะส่งผลกระทบอย่างมากต่อองค์กร หากเราใช้การเชื่อมต่อโดย API จะเพิ่มความปลอดภัย เพิ่มความยืดหยุ่นในการกำหนดสิทธิ รวมถึงการบูรณาการ (Inetragtion) ร่วมกับกระบบที่อยู่ในปัจจุบันได้อย่างสะดวก รวดเร็ว
จากตัวอย่างข้างต้น เราจะสามารถแยกข้อดีของการใช้ API เป็นข้อ ๆ ได้ดังนี้
1. ความปลอดภัย (Secure)
การส่งข้อมูลระหว่างระบบด้วย API ทำให้นักพัฒนาไม่จำเป็นต้องแตะข้อมูลของแต่ละระบบ ทำให้นักพัฒนาของแต่ละระบบไม่จำเป็นต้องแก้ไค้ดเพื่อให้ 2 ระบบเข้าใจกัน ทำเพียงแค่เขียนโค้ดในการเรียกข้อมูลที่ต้องการมาผ่าน API ที่ผู้ให้ข้อมูลให้สิทธิในการเข้าถึง โดยข้อมูลที่ได้รับเรายังสามารถจำกัดสิทธ์ต่าง ๆ ในการเข้าถึงของผู้ใช้งานแต่ละคนได้อีกด้วย
2. การนำไปใช้ต่อ (Reuse)
การใช้ API นั้นเพิ่มโอกาสในการเชื่อมต่อระบบอย่างมาก เนื่องจากนักพัฒนาสามารถใช้ API ที่มีในการเชื่อมต่อกับระบบอื่น ๆ โปรแกรมอื่น ๆ หรือ แอปพลิเคชั่นอื่น ๆ ที่พัฒนาเพิ่มเติม หรือมีการพาร์ทเนอร์กับองค์กรอื่นได้อย่างง่ายดาย โดยไม่ต้องสร้างระบบการเชื่อมต่อใหม่ทุกครั้งที่มีการขยาย หรือการพัฒนาระบบ
3. ความเร็ว (Fast)
ปัจจุบันความเร็วเป็นสิ่งที่ผู้บริหารด้านเทคโนโลยี ไม่ว่าจะเป็น CTO หรือ CIO คำนึงเป็นอย่างมากในการพัฒนาระบบใหม่ ๆ การใช้ API ในการเชื่อมต่อข้อมูลระหว่างระบบต่าง ๆ ทำให้ลดเวลาในการพัฒนาอย่างมาก เนื่องจากหากเราพัฒนาตัว API ให้ดีตั้งแต่แรกการนำไปใช้ย่อมประหยัดเวลากว่าการเขียนโค้ดซ้ำ ๆ ซึ่งต้องมาทดสอบอีกว่าสามารถทำงานได้ตามฟังค์ชันที่ต้องการไหม และมีความปลอดภัยเพียงพอหรือเปล่า
4.ความสามารถในการขยายและปรับขนาด (Scale)
เมื่อระบบที่พัฒนามีคนต้องการใช้งานมากขึ้น ตัว API จะทำให้นักพัฒนาสามารถเพิ่มการเข้าถึง หรือเพิ่มสิทธิให้ระบบใหม่ ๆ ที่ขอเชื่อมต่อเข้ามาได้โดยง่าย ไม่ว่าจะเป็นการขอ API มาเพื่อเพิ่มการใช้งาน การจัดการ และสิทธิต่าง ๆ ที่เรียกเข้ามาพร้อม ๆ กันจากหลาย ๆ ระบบ ระบบที่ใช้ API ในการพัฒนานั้นสามารถเพิ่มขีดความสามารถในการเชื่อมต่อระบบได้ง่ายกว่าการพัฒนาใหม่ ทำให้ระบบนั้นสามารถขยายการใช้งานได้อย่างรวดเร็ว
5. โอกาสในการพัฒนานวัตกรรมใหม่ ๆ (Innovation)
ในปัจจุบันมีระบบหรือแพลตฟอร์มต่าง ๆ ที่ดำเนินการอยู่มากมาย โดยเฉพาะแพลตฟอร์มในอินเตอร์เน็ต หากองค์กรเห็นโอกาสในการเชื่อมต่อระหว่างระบบ หรือระหว่างแพลตฟอร์มเพื่อพัฒนาเป็น Solution ในการสอบสนองปัญหาลูกค้าเฉพาะกลุ่มก็สามารถทำได้โดยการพัฒนาโครงสร้างพื้นฐาน และใช้ API ในการดึงข้อมูลเข้ามาป้อนในนวัตกรรมตัวเองโดยไม่ต้องเสียเวลาในการพัฒนาระบบทั้งหมดด้วยตนเอง
ตัวอย่างเช่น
องค์กรเห็นว่าแผนก support ได้รับคำถามซ้ำ ๆ และส่วนมาเป็นข้อมูลที่องค์กรมีการจัดเก็บข้อมูลองค์กร ในลักษณะ knowledge management ที่มีระเบียบและโครงสร้างอยู่แล้ว แต่การพัฒนาระบบให้ฉลาดพอจะตอบลูกค้าได้ต้องพัฒนา NLP (Natural language processing) เองซึ่งต้องใช้ทั้งเวลา ทั้งคนที่มีความเชี่ยวชาญเฉพาะทาง ทั้งงบประมาณในการพัฒนาอย่างมาก
องค์กรอาจจะลองใช้ API ChatGPT มาเชื่อมต่อกับฐานข้อมูลของบริษัท เพื่อสร้างทีม virtual support ในการตอบลูกค้าได้อย่างรวดเร็ว ถูกต้อง และสามารถทำงานได้ 7/24 โดยไม่มีปัจจัยภายนอกมาเกี่ยวข้อง
ข้อเสียของ API
ถึงแม้ว่าการใช้ API ในการเชื่อมต่อจะช่วยให้การพัฒนาระบบใหม่ ๆ นั้น รวดเร็ว ปลอดภัย และสามารถสเกลได้อย่างรวดเร็ว การพัฒนา API อย่างไม่มีกลยุทธ์ในการเชื่อมต่อหรือการบูรณาการ (integration strategy) ที่ดีพอนั้นอาจจะส่งผลกระทบอย่างมากในการพัฒนาทั้งความล่าช้า ความไม่ปลอดภัย จนถึงไม่สามารถแลกเปลี่ยนข้อมูลระหว่างระบบได้
integration strategy คือ
กลยุทธ์ในการเชื่อมต่อ บูรณาการ ระหว่างหลายระบบเข้าด้วยกัน ส่วนใหญ่มักจะใช้ API เป็นหลักสำคัญในกลยุทธ์นี้ โดยต้องทำเป็นแผนหรือแนวทางในการพัฒนา ไม่ว่าจะเป็นระบบ แพลตฟอร์ม หรือแอปพลิเคชันที่ต้องการเชื่อมต่อกัน มีข้อกำหนดในการเข้าถึงข้อมูล การกำหนดและให้สิทธิผู้ใช้งานระดับต่าง ๆ ที่ต้องชัดเจนและไม่ทับซ้อนกัน รวมถึงการวางแผนการจัดการ ตรวจสอบ และการบำรุงรักษาอย่างสม่ำเสมอ เพื่อการเชื่อมต่อข้อมูลระหว่างระบบอย่างราบรื่น โดยไม่มีผลกระทบหรือมีผลกระทบต่อระบบอื่น ๆ ที่มาเชื่อมต่อน้อยที่สุด
กลยุทธ์ Integration นั้นจำเป็นต้องมีการอัพเดทและตรวจอย่างสม่ำเสมอ เพื่อดูว่าการเชื่อมต่อที่เคยวางแผนไว้นั้นตรงกับความต้องการที่เปลี่ยนแปลงขององค์กรหรือไม่”
ซึ่งหากเจาะรายละเอียดข้อเสียของ API สำหรับองค์กรที่ไม่ได้วางแผน integration strategy ให้ดีแล้ว ส่วนใหญ่จะเป็นดังนี้
1. ความเสี่ยงด้านความปลอดภัยทางไซเบอร์ (Cyber security risk)
หนึ่งในสิ่งสำคัญสำหรับการแลกเปลี่ยนข้อมูลระหว่างระบบคือความปลอดภัย หากองค์กรเลือกนักพัฒนาที่ไม่คุ้นเคย หรือขาดประสบการณ์ในการ Implement API แล้วจะมีโอกาสเกิดช่องว่างระหว่างการเชื่อมต่อ รวมถึง API ที่พัฒนาอาจจะไม่ได้รับการรักษาความปลอดภัยอย่างเหมาะสมในการป้องกันการโจมตีทางไซเบอร์ได้
2. การจัดการ API (API management)
หากองค์กรมี API จำนวนมากแล้วไม่มีการจัดการที่ดี API ที่สร้างมานั้นก็จะเสียเปล่า รวมถึงอาจจะถูกพัฒนาซ้ำเนื่องจากจำไม่ได้ว่าเคยพัฒนา API อะไรไปบ้าง API แต่ละตัวใช้ในการเชื่อมต่ออะไร ทำให้การ Implement API จะช่วยลดเวลา และสามารถเพิ่มการทำซ้ำของ API กลับกลายเป็นนักพัฒนายังต้องเขียนโค้ดซ้ำ ๆ และมี API ซ้ำ ๆ อยูในระบบ
นอกจากนั้นหากนักพัฒนาไม่มีความชำนาญด้าน API โดยเฉพาะ และไม่มีแผน Integration strategy แล้วการดูแลรักษา API (API maintanance) และพร้อมของโครงสร้างระบบที่วางไว้ (API Infrastructure) อาจจะมีปัญหาในการทำงานเป็นระยะ ทั้งปัญหาการเชื่อมต่อระหว่างระบบ ทั้งปัญหาความไม่เข้ากันของแต่ละระบบ ทั้งปัญหาระบบ API ล่มจากการเพิ่มขึ้นอย่างรวดเร็วของคำร้องขอเข้าถึงข้อมูลในช่วงเวลาสั้น ๆ
ดังนั้นหากองค์กรใดที่มีระบบอยู่แล้ว และต้องการพัฒนาระบบเพิ่มให้เหมาะกับการแข่งขันในปัจจุบันมากขึ้นจึงควรวาง Integration strategy ในการเชื่อมต่อ API ให้ดี เพื่อดึงข้อดีหรือประโยชน์ของการใช้ API ออกมาให้ได้มากที่สุด
บริษัท เอคซเทนด์ ไอที รีซอร์ส จำกัด มีนักพัฒนา API ที่มีความเชี่ยวชาญ มีประสบการณ์ในการ implement ให้กับองค์กรขนาดกลางและขนาดใหญ่จำนวนมากในอุตสาหกรรมธนาคาร (FSI) รีเทล (Retail) และ สุขภาพ (Health)
หากองค์กรท่านต้องการรับคำปรึกษาในการวาง implement strategy การวางโครงสร้าง การพัฒนา API รวมถึงการดูแลรักษา API สามารถติดต่อมาได้ที่
☎️: 02-693-1989
✉️: Sales@extend-it-resource.com
Comments