Processes and Work Flows
-
Business processes
- ภาพรวมของ Process
- > Process เป็นลำดับของ step มาเรียงกัน โดยมี event มา trigger ให้เกิด process ต่างๆ
- > มีการแปลง input ที่เข้ามา โดยผลลัพธ์ของ Process จะได้ output ออกมา
- Business Process
- > Business Process : เน้นกลุ่มของงานค่างๆ ที่นำมาจัดกลุ่มตาม logic เพื่อที่จะได้ผลลัพธ์ทางธุรกิจตามที่ออกแบบไว้
- > มี view ในแนวนอนในองค์กรที่จะมอง process เป็น activity ที่ขึ้นต่อกันให้ได้ผลลัพธ์ออกมาตามต้องการ
- > กำหนดว่าต้องการได้ผลลัพธ์เป็นอย่างไร, ความสัมพันธ์ระหว่างกิจกรรมต่างๆ กับ resource อื่น จะถูกำหนดไว้อย่างละเอียด
- Characteristic of Process
- > มีการกำหนดเงื่อนไขที่จะมา trigger ในแต่ละ instance ใหม่ๆ และมีการนิยาม output เมื่อ process สิ้นสุด
- > Process อาจจะมีการปฏิสัมพันธ์กันทั้งทางการและไม่ทางการระหว่างผู้ที่เกี่ยวข้อง
- > Process ใช้เวลาไม่เท่ากัน สามารถเปลี่ยนแปลงได้
- > decision point ประกอบด้วยกิจกรรมเกิดต่อกันอย่างอัตโนมัติซึ่งกิจกรรมในแต่ละขั้นตอนจะมีความซับซ้อน
- > ภายใน process จะต้องมีการตัดสินใจเลือก เช่น เลือกเส้นทางในการทำงานต่อ, แบ่งงาน
- > Process ประกอยด้วย application หลายอันประกอบกันมากๆ และข้ามองค์กร
- > สามารถแสดง diagram โดยธรรมชาติขึ้นกับข้อมูลที่มีการเปลี่ยนแปลงและปกติใช้เวลานานในการทำงาน
-
Work Flows
- Process-Oriented workflow
- > ถูกเอาไปใช้สำหรับโปรเซสที่ทำงานอัตโนมัติที่ไม่ค่อยมีการเปลี่ยนแปลง
- > สามารถแสดงให้เห็นลักษณะของ business rule, decision point, business rules,parallel and sequential work route เช่น โปรเซสในการจัดการ order หรือการยืมเงิน
- > บางประเภทอาจจะมีสมบัติ transactional properties ซึ่งส่วนใหญ่ใช้เวลานาน
- Web Service and Business Process
- > ด้วยลักษณะตามธรรมชาติของ Web Service ที่ไม่ขึ้นกับ platform จึงง่ายที่จะผสมกันของ service ซึ่ง service ต่างๆก็มาจากหลายองค์กร ในที่สุดเมื่อ composition service เสร็จจะถูกเสนอออกมาเป็น High-level service ให้กับ client อีกที
- > Composite service (related processes) : มีการรวบรวบ service ทั้งที่พัฒนาใหม่และมีอยู่เดิม
- > นิยามของ Composite service : ต้องมีการประสานงานกันของ flow control ของข้อมูลระหว่าง composite service
- Syndicated Web Service

1. ลูกค้าเช็คราคา
2. ลูกค้าสั่งสินค้า
3. supplier เช็คไปยังธนาคาร
4. supplier ยืนยันการสั่งสินค้า
5. supplier สร้าง shipping ไปยัง 3rd party
6. supplier ยืนยันกับลูกค้า
7. ลูกค้าส่ง payment ไปยังธนาคาร
8. ธนาคารส่งใบเสร็จมาให้
-
Service composition meta-model
- Flow Model

-> Flow Model ถูกใช้สำหรับบอกเกี่ยวกับปฏิสัมพันธ์กันของ service
-> Flow Model จะอธิบายว่า
1. อธิบายว่าแต่ละ activity มารวมกันยังไง
2. ลำดับแต่ละ activity ที่จะถูก execute โดยใช้ลูกศร
3. มี decision point ในการตัดสินใจ
4. มีการส่งผ่าน data แต่ละขั้นตอน
- Transition Conditions
->
decision point ขึ้นกับ transition condition ซึ่งเป็นเงื่อนไขที่เป็นจุดเปลี่ยน

- Service Composition : Process flow as a Web Service

-> แปลงหน้า transition condition และมีการเพิ่มเติม
-> ประกอบด้วยหลายๆ activities,flow,decision
-> มีการเชื่อมโยงกันกับองค์กรอื่น
-> Client เรียกใช้ Operation ผ่าน Interface
-
Web services orchestration and choreography
- WS Orchestration

-> Orchestration เป็นแนวคิดที่ว่าด้วยการจัดลำดับการทำงานของแต่ละงานในกระบวณการตามสถานการณ์ต่างๆ ที่ต้องการ และสนับสนุนความสามารถในการทำงานระหว่างกันของ application ทำให้สามารถสร้างกระบวณการทางธุรกิจที่มีขนาดใหญ่ได้
-> อธิบายว่าวิธีการของ web service ปฏิสัมพันธ์กับ web service อื่นโดยมองในระดับ message, มองว่าหนึ่งคนเป็นคนควบคุม
-> ประโยชน์ คือ เมื่อต้องการกระทำกระบวณการแบบใหม่ ไม่จำเป็นต้องสร้างงานใหม่ขึ้นมา แต่ใช้วิธีการจัดการกับ work flow ให้เป็นลำดับแบบใหม่เท่านั้นเอง
- WS Choreography

-> Choreography คือ กระบวณการร่วมมือกันขององค์กร ที่มีการติดต่อและการทำงานระหว่างกัน โดยที่ไม่มีองค์กรใดเป็นเจ้าของ Environment ที่เกิดขึ้น
-> มีลักษณะเป็นการแลกเปลี่ยน message กัน, มีกฏ ข้อตกลงของธุรกิจหลาย process ซึ่งทำให้ service ที่แตกต่างกันสามารถร่วมมือกันได้
-> จะต้องติดตาม sequence ของ message และอธิบายมุมมองของทุกๆ party ร่วมกัน

-
The Business Process Execution Language
- Business Process Execution Language
-> BPEL เป็นภาษาที่ใช้ในการสร้าง service ขึ้นมาในการ modeling
-> Model อะไรบ้าง
1. การทำงานร่วมกันระหว่างองค์กรโดยใช้ element partnerlink
2. ลำดับขั้นตอนของโปรเซส
3. แยก abstract definition จาก concrete binding
4. รองรับ fault, error และแก้ไข
5. รองรับการ compose หลาย service เข้าด้วยกัน
6. รองรับ context ผ่าน <scope>
7. มีการจัดการการแตก หรือรวมโปรโซสโดยใช้ <pick>,<receive>
- BPEL Structure
1. message flow : การไหลของ message , กิจกรรมที่เกิดขึ้น
2. control flow : ส่วนที่เอา activity มาจัดเรียงกัน
3. data flow : ประกาศ data โดยใช้ <variable> กับ state ของโปรเซส
4. process orchestration : ส่วนที่มีการคุยกับ web service ของ partner
5. fault and exception handing : มี element <compensationHandles> จะดูว่ามีการชดเชยการทำไม่สำเร็จ และมี element <eventHandler> ใช้จัดการ event เมื่อเกิดพร้อมกัน
- BPEL Abstract processes
-> พูดถึงการแลกเปลี่ยนข้อมูลของ web service ไม่รวมถึงรายละเอียดภายในของโปรเซส
-> ใช้ model public message interaction : ดูการคุยกันระหว่าง web service โดยไม่ดู logic ภายใน
- BPEL Executable processes
-> การแลกเปลี่ยนข้อมูลของ web service รวมถึงรายละเอียดภายในของโปรเซส จึงทำให้สามารถ execute ได้
- Message Flow
-> อธิบายการรับส่ง message เพื่อให้ดูว่า Process สามารถคุยกับ web service อื่นได้
-> ใช้ basic activities : Invoke(กระตุ้นคนอื่น), Receive(รอคนอื่น), Reply(หลัง receive ส่งผลกลับไป)
-> service อื่นๆ จะเรียกว่า partner ซึ่งก็คือ web service ที่ไป invoke หรือเป็น client ที่มา Invoke กับ web service เรา
-> match กับ <portType> ของ WSDL
->จะคุยกับ partnerอื่นโดยใช้ <partnerLink> ซึ่งเป็นโปรเซสเฉพาะเจาะจงที่บอกว่า partner ที่ link ปลายทาง link ได้
- Synchronous and Asynchronous Communication
-> Synchronous : requester ส่ง Invoke input mesage ไปยัง provider ซึ่ง requester จะต้องรอจนกว่าจะได้ reply message จาก provider, มี operation ไม่ซับซ้อน
-> Asynchronous : Requester จะไม่ถูก block หรือต้องรอ reply message จาก provider , ใช้กับ operation ที่ใช้เวลานานและซับซ้อน
- Control Flow
-> Basic activities : การปฏิสัมพันธ์ที่ง่ายไม่ได้บอกลำดับและการเปลี่ยนแปลงข้อมูลในแต่ละขั้นตอน
->Structured activities : อธิบายวิธีที่ business process โดยเอา basic activity มาประกอบเป็นโครงสร้าง
1. อธิบายลำดับของการ run ของ activity
2. ถ้าเป็น parallel จะใช้ <flow>
3. ถ้ามีการแตก,แยกทางเลือกใช้ <sequence>
4. ถ้าเป็น loop ใช้ <while>
5. เลือกหลายทางเลือกใช้ <non-dertermistic choice>
- Data Flow
-> state ของ business process ประกอบด้วย content ของ message ที่แลกเปลี่ยนกัน data ที่อยู่ใน business logic , ตัวที่สร้าง message ที่ส่งไปให้ partner
-> ใช้ <variable> เป็นตัวเก็บข้อมูลของ state โดย BPEL จะให้ variable จะเก็บ message ที่เกี่ยวกับ flow
-> data <variable> จะเก็บ business context ซึ่งเป็นส่วนสำคัญสำหรับ correct execution
-> ใช้ <assign> ในการ copy message ระหว่าง variable
- Process Orchestration
-> เป็นการเอาหลายๆ web service มารวมกันโดยใช้ <partnerlink> ในการสร้าง peer-to-peer partner relationship โดยมีการกำหนดบทบาทและ abstract interface ให้แต่ละ partner
-> ใช้ <partnerlink> เป็นตัวกำหนด message และ portType รวมไปถึงใช้ในการอธิบายความสัมพันธ์ระหว่าง partner โดยประกาศเป็น role ว่า partner นี้ role ไหน และประกาศ portType ด้วย
Popularity: 1% [?]
Related posts:
- WS-ReliableMessaging
- Universal Description, Discovery and Integration : UDDI
- Web Service Description Language : WSDL
- Simple Object Access Protocol : SOAP
- Web Services Basics



ShareThis

