Service-oriented architecture

Service-oriented architecture (SOA) คือ การสร้างและพัฒนา ซอฟต์แวร์โดยใช้แนวคิดของ โครงสร้างของธุรกิจสมัยใหม่ ซึ่งมาจากแนวคิดที่ได้รับอิทธิพลมาจาก แนวคิดแบบ "รูปแบบ เป็นผลมาจาก การใช้งาน" (form follows function)

SOA คือ ชุดของซอฟต์แวร์หนึ่ง ๆ ที่ถูกออกแบบให้มีลักษณะที่ยืดหยุ่นต่อการใช้งานโดยจะปฏิบัติหน้าที่อยู่ระหว่างเฟส ของการพัฒนาระบบ (systems development) กับ การควบรวมการประมวลผล (integration in computing) ระบบใด ๆ ที่ถูกออกแบบบนพื้นฐานของ SOA นั้น จะประกอบไปด้วยชุดของการปฏิบัติงานที่ทำหน้าที่เป็นตัวควบรวมการให้บริการ ซึ่งสามารถถูกนำมาใช้ได้กับระบบต่าง ๆ ที่หลากหลาย หรือ ระบบที่ถูกแบ่งแยกออกตาม หน่วยงานองค์กร หรือ ธุรกิจที่แตกต่างกัน

SOA ยังเป็นผู้จัดหาการให้บริการต่าง ๆ ให้กับผู้บริโภค เช่น web-based applications ที่ให้บริการในรูปแบบของ SOA-based services ตัวอย่างเช่น หน่วยงาน หรือ แผนกต่าง ๆ ที่ถูกแบ่งแยกภายในองค์กร สามารถนำ SOA service มาประยุกต์ใช้ร่วมกัน โดยระบบจะควบรวมการปฏิบัติแม้แต่ภาษาในการพัฒนาโปรแกรมที่แตกต่างกันแต่ละแผนก ดังนั้น หน่วยงานย่อยต่าง ๆ จึงถูกเรียกว่า Client จะได้รับผลประโยชน์ในการใช้งานและเข้าถึงระบบได้อย่างสะดวก และ เป็นที่เข้าใจง่ายยิ่งขึ้น
ดังนั้น XML จึงเข้ามามีบทบาท เป็นตัวทำหน้าที่เป็น interface ให้กับ ระบบ SOA service
SOA ทำหน้าที่ รวบรวม แอปพลิเคชันต่าง ๆ ที่ถูกพัฒนาในภาษาที่ต่างกัน ที่อยู่ภายในองค์กรเดียวกัน ด้วยวิธีการ Web-based environment และสามารถนำมาประยุกต์ใช้งานได้กับแพลทฟอร์มที่หลากหลายด้วย

ในการติดต่อระหว่างหน่วยงาน แทนที่จะใช้ API ในระบบ SOA ออกแบบหน้าจอ interface ที่ทำงานด้วย Protocols และ functionality
ประเด็นสำคัญคือ การใช้งานของระบบ SOA นั้นจะร้องขอ "loose coupling of services" ด้วย Operating systems และ เทคโนโลยีอื่นที่สนับสนุนการปฏิบัติงานของแอปพลิเคชันเหล่านั้น
SOA แบ่งฟังก์ชันออกเป็นหน่วยหรือ units หรือ การให้บริการ service อย่างชัดเจน ซึ่งผู้พัฒนาสามารถเข้าถึงได้ทางเครือข่ายในกรณีที่อนุญาตให้ผู้ใช้ สามารถใช้งานในการเพิ่มเติม หรือ นำข้อมูลกลับมาใช้ในแอปพลิเคชันนั้น ๆ

การให้บริการและการสื่อสารกันระหว่างผู้ใช้ ด้วยวิธีการส่งต่อข้อมูลในลักษณะที่ถูกกำหนด และสามารถใช้งานร่วมกันได้ ในลักษณะความร่วมมือในกิจกรรมการให้บริการหนึ่ง ๆ หรือมากกว่าก็ได้

SOA เห็นได้อย่างชัดเจนในรูปแบบหนึ่งของการทำงานในลักษณะ distributed computing และ modular programming ที่มีลักษณะเช่นเดียวกันกับ mashups, SaaS และ Cloud Computing เหล่านี้เป็น ลูกหลาน ที่เกิดจากแนวคิดของ SOA

หมวดหมู่:ระบบสารสนเทศ
หมวดหมู่:เว็บเซอร์วิซ