SOA ย่อมาจาก Service-Oriented Architecture เป็นรูปแบบการออกแบบ (Design Pattern) ที่สร้างขึ้นเพื่อสร้างระบบกระจาย (Distributed Systems) ที่มอบบริการ (Services) ให้กับหลายแอปพลิเคชันผ่านโปรโตคอล เป็นแนวคิด ไม่ผูกมัดกับภาษาโปรแกรมหรือแพลตฟอร์มใดๆ
เป็นสถาปัตยกรรมการออกแบบซอฟต์แวร์ที่คอมโพเนนต์แอปพลิเคชันให้บริการแก่คอมโพเนนต์อื่นๆ ผ่านโปรโตคอลการเชื่อมต่อ โดยทั่วไปผ่านเครือข่าย คุณสมบัติของ Service-orientation เป็นอิสระจากผลิตภัณฑ์ ผู้จัดจำหน่าย หรือเทคโนโลยีใดๆ
SOA ทำให้คอมโพเนนต์ซอฟต์แวร์บนเครือข่ายต่างๆ ทำงานร่วมกันได้ง่ายขึ้น Web Services ที่สร้างตามสถาปัตยกรรม SOA ทำให้ Web Services อิสระมากขึ้น สามารถแลกเปลี่ยนข้อมูลกัน และเนื่องจากหลักการพื้นฐานที่สร้างขึ้น ไม่ต้องการการโต้ตอบของมนุษย์ และไม่ต้องแก้ไขโค้ด ทำให้ Internet Services บนเครือข่ายเชื่อมต่อกันได้อย่างราบรื่น
ความสำคัญของ EAI
กระบวนการทางธุรกิจเกี่ยวข้องกับการโต้ตอบระหว่างหน่วยงานต่างๆ ในองค์กร ซึ่งแปลเป็นการทำให้กระบวนการทางธุรกิจเป็นอัตโนมัติที่ต้องการการโต้ตอบกับแอปพลิเคชันต่างๆ ในองค์กร
ความท้าทายหลักขององค์กร IT เมื่อบูรณาการแอปพลิเคชันเหล่านี้ เกี่ยวข้องกับการบูรณาการโดเมน, สถาปัตยกรรม และเทคโนโลยีที่ต่างกัน ความท้าทายเหล่านี้ทำให้จำเป็นต้องมีกลยุทธ์และสถาปัตยกรรม EAI ที่วางแผนไว้ดี
มี 2 รูปแบบหลักของ EAI: รูปแบบแรกบูรณาการแอปพลิเคชันภายในบริษัท (Intra-EAI) ตอบสนองความต้องการธุรกิจแรก รูปแบบที่สอง (Inter-EAI) เกี่ยวกับการบูรณาการ B2B ตอบสนองความต้องการธุรกิจที่สอง
กลยุทธ์สำหรับ EAI
Application Interface Integration - แอปพลิเคชันหนึ่งใช้ฟังก์ชันที่อยู่ในอีกแอปพลิเคชันหนึ่ง อนุญาตให้แบ่งปันคอมโพเนนต์แอปพลิเคชัน
Business Method Integration - แอปพลิเคชันหนึ่งใช้บริการทางธุรกิจที่ให้โดยอีกแอปพลิเคชันหนึ่ง
Presentation Integration - ให้มุมมองข้อมูลแบบรวม (Unified View) แก่ผู้ใช้ปลายทาง
B2B Integration - ให้การบูรณาการแอปพลิเคชันที่อยู่ในองค์กร 2 แห่งที่ต่างกัน
บทบาทของ SOA
กลยุทธ์ที่ดีที่สุดสำหรับ EAI คือ Business Method Integration ซึ่งอนุญาตให้แอปพลิเคชันหนึ่งใช้บริการทางธุรกิจจากอีกแอปพลิเคชัน ทำให้ B2B Integration ง่ายขึ้น ซึ่ง归结為การเลือกเทคโนโลยีสำหรับโปรโตคอลและการขนส่ง (Transport)
โปรโตคอลกำหนด "ภาษา" สำหรับการสื่อสาร และ Transport ขนส่งข้อความตามโปรโตคอลจากแอปพลิเคชันหนึ่งไปอีกอันหนึ่ง Service-Oriented Architecture (SOA) ทำหน้าที่เป็น Enabler (ตัวทำให้เป็นไปได้) สำหรับกลยุทธ์ Business Method Integration SOA เป็นผู้สนับสนุน Business-driven Application Architecture แทนที่จะเป็น Technology-driven Application Architecture โดยที่บริการทางธุรกิจสามารถแมป (Map) ไปยังคอมโพเนนต์เทคโนโลยีในแอปพลิเคชันได้อย่างง่ายดาย