Solving Integration Problems using Patterns ภาค 1

Posted January 12, 2009 at Spring66
อยากเขียนเกี่ยวกับ Spring Integration แต่เค้าแนะนำให้ไปอ่าน Enterprise Integration Pattern ก่อนอ่านไปอ่านมาแปลเลยดีกว่าเอาไปภาคแรก Solving Integration Problems using Patterns บทนี้เราจะมาว่ากันถึงเรื่องการใช้ Integration Pattern เข้ามาช่วยแก้ปัญหาเรื่องการ Integration โดยวิธีการที่เราจะนำเสนอนั้นจะออกมาในรูปของการสร้างสถานการ์ณจำลองขึ้นมาก่อนและทำการออกแบบแนวทางการแก้ปัญหาที่เหมาะสมกับโจทย์ที่เราตั้งขึ้นมา โดยการใช้ pattern ต่างๆเข้ามาช่วยเหลือ โดยที่หลังจากจบบทนี้เราจะได้รู้จัก pattern ต่างๆมากพอสมควร The Need for Integration ก่อนอื่นมารู้จักคำว่า Enterprise กันก่อนโดยที่คำว่า Enterprise มักจะอ้างอิงถึงบริษัทที่มีระบบหรือแอพพลิเคชั่นหลักร้อยขึ้นไปโดยที่ระบบเหล่านั้นเป็นแบบร้อยพ่อพันแม่คือ สร้างเอง จ้างคนมาทำ แพคเกจ และอื่นๆอีกมากมาย นอกจากนี้ระบบปฏิบัติการก็มีทุกระบบในโลก ==” Integration Challenges ดังนั้นเราก็ทำใจไว้ได้เลยว่า Enterprise Integration เป็นเรื่องยากมากๆ เนื่องจากการทำ Enterprise Integration นั้นอย่างที่เรารู้ๆกันว่าเราต้องไปยุ่งวุ่นวายการแอพพลิเคชั่นที่ทำงานอยู่บนหลายแพลทฟอร์ม จะเห็นได้ว่าความท้าทายของการทำ integration นั้นคือมันจะครอบคลุมไปทั้งแง่ของธุรกิจและเทคโนโลยี เนื่องจาการทำ Enterprise Integration นั้นจะไม่ใช่เพียงการเชื่อมต่อระหว่างระบบหรือแอพพลิเคชั่นต่างๆเข้าด้วยกันแต่ยังต้องทำให้หน่วยธุรกิจและหน่วยงาน IT สามารถสื่อสารกันได้อย่างประสิทธิภาพมากอีกด้วย ดังนั้นจากความกว้างและหลากหลายในการทำ integration นั้นทำให้หลายๆครั้งที่การทำ [...]

Solving Integration Problems using Patterns ภาค2

Posted January 19, 2009 at Spring66
ภาคที่แล้วเกรื่นนำไว้ครับภาคนี้มาต่อในเรื่องของการทำ ว่านิยมทำแบบไหนกันบ้างในเรื่องของการทำ integration   เทคนิคการทำ Integration นั้นเบื้องต้นสามารถแบ่งได้ดังนี้ Information Portal   ในแง่ของการเข้าถึงข้อมูล ผู้ใช้ในองค์กรขนาดใหญ่ส่วนมากแล้ว ต้องทำงานหรือใช้ข้อมูลจากหลายๆระบบเพื่อให้บรรลุจุดหมายหรือตอบคำถามหนึ่งอย่างเช่น การตรวจสอบสถานะของออร์เดอร์จาก Mainframe หรือดึงข้อมูลลูกค้าออกมาจาก CRM เพื่อตอบคำถามลูกค้าผ่านระบบ Call  Centre ผ่านเวบ การทำงานแบบนี้ทำให้ผู้ใช้จำเป็นต้องเปิดโปรแกรมไว้อย่างต่ำสามตัวเพื่อทำงานหนึ่งงาน และต้อง login ค้างไว้ทั้งสามระบบ ปัญหานี้สามารถแก้ได้ด้วยการใช้ Information portal ซึ่งจะดึงข้อมูลจากระบบต่างมาไว้ที่หน้า portal เพียงที่เดียวโดยผู้ใช้สามารถทำงานที่ตัวเองรับผิดชอบอยู่ได้ โดยไม่ต้องเปิดระบบหลายๆระบบ  โดยปกติแล้วการแสดงผลในหน้าจอ portal จะถูกแสดงออกมาในรูปแบบของ หน้าต่าวย่อย โดยที่แต่ละหน้าต่างย่อยก็คือหนึ่งระบบและระบบเหล่านั้นสามารถสื่อสารข้อมูลถึงกันได้โดยตรงเช่น ในกรณีที่เลือก custerA ที่หน้าต่างย่อย A จะส่งผลให้หน้าต่างย่อย B ดึงรายละเอียด order ออกมาจาก mainframe ได้ทันดี Data Replication   ยังเป็นเรื่องของข้อมูลแต่เป็นข้อมูลที่หลายๆระบบจำเป็นต้องใช้ร่วมกัน ยกตัวอย่างเช่นข้อมูลทั้งหลายที่เกี่ยวกับลูกค้านั้นอาจมีหลายระบบที่ต้องใช้งานเช่น Customer Care (เอาไว้ใช้เก็บข้อมูลหลัก และเป็นเจ้าของข้อมูลต้นทาง), Accounting (เอาไว้คำนวณภาษี), Logistic (ส่งสินค้า), Billing (ส่งใบแจ้งหนี้) ดังนั้นแต่ละระบบเหล่านี้จะมีที่เก็บข้อมูลเป็นของตัวเองในส่วนของข้อมูลลูกค้า [...]