ผู้ใช้:Werapsp/ทดลองเขียน


BPMN แก้

ย่อมาจาก Business Process Model and Notation เป็นมาตรฐานสัญลักษณ์และการวาดรูปแสดงแบบจำลองกระบวนการทางธุรกิจ (Business Process Model) เป็นแผนภาพที่ช่วยอธิบาย กระบวนการทำงาน เพื่อให้คนทั่วไปที่ไม่ใช่แค่นักคอมพิวเตอร์ หรือคนที่เรียนรู้ด้านไอทีมาโดยเฉพาะเข้าใจได้ง่าย เพื่อให้ผู้อ่านเห็นแล้วเข้าใจได้ง่ายโดยไม่ต้องอธิบายเพิ่มเติม นักพัฒนาและออกแบบโปรแกรมต้องเคยประสบปัญหา การคุยกับ ลูกค้าหรือ User ให้ความเข้าใจตรงกัน เดิมมี Diagram ต่างๆ หลายแบบที่ช่วยในการอธิบายกระบวนการทำงาน เช่น   Activity Diagram ,Class Diagram แต่ user ก็ยังไม่เข้าใจ เนื่องจาก เป็นมุมมองที่ดูยาก ซึ่งไดอแกรมเฉพาะเหมาะสำหรับการคุยกันเองในมุมมองของนักพัฒนามากกว่า ในมุมมองของโปรแกรมเมอร์ อาจเป็นเรื่องง่ายไม่ยุ่งยาก

แต่ในมุมมองของผู้ใช้ ไดอแกรมพวกนี้เป็นเรื่องยาก สำหรับผู้ใช้ที่บางคนที่ไม่เชียวชาญเรี่องการใช้งานคอมพิวเตอร์ จากปัญหาการสื่อสารดังกล่าว นักพัฒนาก็ได้พยายามหาวิธีการแก้ปัญหา โดยใช้การ Present หรือ GUI อธิบายแทนว่าโปรแกรมทำงานยังไง มีอะไรบ้าง แต่ผู้ใช้ก็ยัง งง เพราะยังไม่ได้ใช้งานจริง ๆ ดังนั้น นักพัฒนาจึงต้องหาวิธีการที่จะสื่อสารกับ user ให้เข้าใจตรงกันได้ง่าย ๆ ไม่ยุ่งยาก ไม่ต้องยึดหลัก UML มากนัก การทำความเข้าใจให้ตรงกัน

BPMN จึงมาเพื่อการจัดการกระบวนการของงาน โดยสามารถเริ่มต้นจากการเขียนแผนภาพ แล้วแปลงแผนภาพเป็นภาษาที่ทำงานได้ด้วยระบบคอมพิวเตอร์   เฉพาะอย่างยิ่งการพัฒนา BPMN .ให้ความสำคัญกับคนทั่วไปซึ่งไม่ใช่นักไอที แต่เป็นผู้ทำงาน ผู้รู้จักงานขององค์กร หรือผู้ที่เกี่ยวข้อง   สามารถที่จะเข้าใจแผนภาพได้ เขียนแผนภาพได้

รูปทรงที่ใช้ในแผนภาพ แก้

  • Events คือ เหตุการณ์ที่เกิดขึ้นซึ่งเมื่อมีเหตุการณ์แล้วจะ trigger ให้เกิดอะไรตามมาได้ เช่น Start event หรือ End event เป็นต้น และเราสามารถมี Intermediate event ได้ เช่น เมื่อระบบดำเนินมาถึงจุดนี้จะมีเหตุการณ์โยนข้อความ (Throw Message) ออกไปจาก Flow เดิม หรือ อาจจะเป็น Timer event ที่มีการรอเวลา (Delay) เป็นต้น
  • Activites คือ กิจกรรมที่กำหนดให้ระบบทำ ถ้ากิจกรรมใหญ่มากๆ เราสามารถสร้างให้เป็นกิจกรรมย่อยๆ ลงไปอีกได้เช่นกัน กิจกรรมที่ว่านี้จะมองให้เป็น Task (single unit of work) หรือ Sub-process หรือ Transaction (ต้องทำให้ครบทั้งหมด) หรือทำการ Call ไปที่อื่นแล้วค่อยกลับมา
  • Gateways คือ เป็นสัญลักษณ์ที่กำกับจุhดเชื่อมโยงของ Flow (เส้นลูกศร) หลายๆ เส้น เมื่อเส้น flow เหล่านี้มาบรรจบกัน ทำให้เกิดการตัดสินใจต่อว่าจะต้องทำแบบคู่ขนาน (Parallel) หรือ เลือกทำได้ทางเดียว (Exclusive) หรือ ทำแบบทุกทางเท่าที่จะทำได้ (Inclusive) เป็นต้น
  • Sequence Flow คือ เส้นทางที่กำหนดทิศของ Flow ของงานต่อไปที่ต้องทำ (ทิศทางลำดับถัดไป) คล้าย Control Flow

Message Flow คือ เส้นประที่กำหนดทิศของข้อความที่ส่งเข้าไปเป็น Input หรือส่งออกมาเป็น Output

Events สิ่งที่ทำให้เกิดกิจกรรม(Activities) ขึ้นมา โดยมีทั้งหมด 3 แบบ ได้แก่ Start, Intermidate, End -o Start – อะไรที่ทำให้เกิด Event

-o Intermidate – มีอะไรมาขัดจังหวะ

-o End

-o Trigger อื่นๆ เช่น Message, Timer เป็นต้น

Activites กิจกรรมที่เกิดขึ้น โดยประกอบไปด้วย Task หรือ Sub Process ตั้งแต่ 1 อันขึ้นไป -o Task – งานที่ไม่สามารถแตกย่อยได้อีก

-o Sub Process – งานที่แจกออกเป็น Activite ย่อยๆ ได้ เช่น Sub Process ตรวจสอบวงเงินกู้ ซึ่งสามารถแตกออกได้เป็น Task ย่อยๆ อีกหลาย Task

-o Transaction

-o Call Activity

Gateways เป็นเหมือน IF-ELSE ใช้เป็นตัวควบคุมการไหลของงานไป Activities ที่วางไว้ -o Exclusive Gateway

-o Gateway Based on events

-o Parallel Gateway

-o Inclusive Gateway

-o Complex Gateway

Sequence Flow

แนวทางการเขียน BPMN เปรียบเทียบ BPMN กับ Flowchart [1] แก้

  1. https://www.mindphp.com/%E0%B8%84%E0%B8%B9%E0%B9%88%E0%B8%A1%E0%B8%B7%E0%B8%AD/73-%E0%B8%84%E0%B8%B7%E0%B8%AD%E0%B8%AD%E0%B8%B0%E0%B9%84%E0%B8%A3/3345-bpmn-business-process-model-and-notation-%E0%B8%84%E0%B8%B7%E0%B8%AD%E0%B8%AD%E0%B8%B0%E0%B9%84%E0%B8%A3.html?fbclid=IwAR1vWM-eZrMf6E74taBzgN08jpHsduGCEYZMBn3R6gJldcdrXxlLNwKUlQU

Agile Process แก้