หนึ่งในโปรเจกต์ที่มีความท้าทายมาก คือการเชื่อมต่อระบบ Legacy ที่พัฒนาด้วย PowerBuilder ให้สามารถใช้งานร่วมกับระบบสมัยใหม่ ที่เปิด Service ผ่าน REST API และ SOAP
ระบบเดิมถูกออกแบบมาหลายสิบปี และไม่ได้รองรับ JSON หรือ HTTP Client แบบที่ Framework สมัยใหม่รองรับในปัจจุบัน
ปัญหาที่พบ
ปัญหาหลักที่พบมีหลายส่วน เช่น
- PowerBuilder รองรับ REST API ได้จำกัด
- JSON Response มีขนาดใหญ่เกินตัวแปร String ที่ระบบเดิมรองรับ
- การ Parse JSON ซับซ้อน เนื่องจากไม่มี Library สมัยใหม่
- ระบบเดิมต้องรองรับทั้ง SOAP และ REST พร้อมกัน
แนวทางการแก้ปัญหา
วิธีที่ใช้ คือการออกแบบ Layer กลาง สำหรับจัดการ API Communication และแบ่ง JSON Response ออกเป็นหลายส่วน เพื่อให้ PowerBuilder สามารถอ่านข้อมูลได้
จากนั้นจึงนำข้อมูลแต่ละส่วน มารวมและ Parse ตามโครงสร้างที่ต้องการ
ผลลัพธ์ที่ได้
- ระบบ PowerBuilder สามารถเรียก REST API ได้สำเร็จ
- รองรับการทำงานร่วมกับระบบใหม่
- ลดข้อจำกัดของ Legacy System เดิม
- สามารถเพิ่ม แก้ไข ลบ และแสดงข้อมูล ผ่าน API ได้ตามต้องการ
บทสรุป
แม้ว่า PowerBuilder จะเป็นเทคโนโลยีรุ่นเก่า แต่หากออกแบบ Architecture ให้เหมาะสม ก็ยังสามารถเชื่อมต่อกับระบบสมัยใหม่ได้ และช่วยยืดอายุการใช้งานของระบบเดิม โดยไม่จำเป็นต้อง Rewrite ทั้งระบบทันที