Category Software Engineering

[BPMN] Service Task with REST-API (Get) Example

หลังจากงมๆมานานพอสมควรแล้วกับการใช้งาน Service Task กับ Web Service กับ Camunda BPMN Engine ครับ โดยสิ่งที่ผมใช้ คือ ตัว Camunda Connector ที่ช่วยให้เราสามารถ Config Web Service ได้ง่าย ไม่ต้องส่งงานให้ Delegate Code อย่าง BPMN Engine ของค่ายอื่นๆครับ สำหรับ NOTE: สำหรับเรื่อง Service Task ตัว Spec ของ BPMN ไม่ได้ระบุใน Spec ชัดเจน…

[BPMN] ลองคิดตัวอย่างของ Completion Condition กัน

Ref : http://resources.bizagi.com/docs/BPMNByExampleENG.pdf

พอดีช่วงนี้ได้ลองเล่น BPMN แล้ว ปัญหาที่สำคัญของ Spec ตัว BPMN เอง คือ ตัวอย่างน้อย และไม่ครอบคลุมตามคุณสมบัติที่ได้ระบุไว้ใน Spec ครับ อย่างที่ผมโคตรงง ตอนนี้ คือ Attribute ของ Multi-Instance ของ Task ครับ ลองมาคิดตัวอย่างกันดีกว่าครับ เดี๋ยวคิดออกอีกแล้วมาเขียนเพิ่มครับ

[BPMN] มาลองใช้ Timer Start Event กันครับ

จาก Blog ตอนที่แล้ว หลังจากไปตบตีกับ Timer Start Event  ที่ไม่สามารถ Deploy ได้มา 5 วัรเต็มๆ หลังจากแก้ปัญหาได้แล้ว คราวนี้มาลองดูตัวอย่างกันครับ หลายคนที่อ่าน Spec ของ BPMN เอาน่าจะงงกันครับ มาดูกระบวนการแบบง่ายๆกันก่อนครับ Note: กระบวนการที่ไม่ได้เป็นตัวอย่างของกระบวนการทางธุรกิจจริงๆนะครับ แค่เพียงทดสอบ Start Timer Event โดยมีส่วนประกอบ ดังนี้ รอที่ Job ทำงานครับ ต้องรอเวลา 2018-06-03 เวลาเที่ยงคืน ถ้าขี้เกียจก็เปลี่ยนเวลาเครื่องได้เลยครับ (ถ้าบน Windows ที่ยังไม่ Activate จะไม่สามารถย้อนเวลาได้ครับ) ดูผลลัพธ์ ดูที Console…

[BPMN] เมื่อ Timer Start Event ทำให้เกิดปัญหา duedate is null

หลังจากทำ Thesis มาเรื่อยๆ ผมได้มาลองใช้ Timer Start Event ของแบบจำลอง BPMN พอจะ Deploy เท่านั้นแหละ ? พระเจ้า !!!! ทำไมทำร้ายเด็กน้อยอย่างฉันเช่นนี้ ผมติดปัญหานี้มาประมาณ 2 สัปดาห์ครับ ระหว่างที่ทำก็ไล่ถาม Google ตรวจการกำหนด Config ไปเรื่อยๆ จนถึงเวลาแล้วทีผม ต้องเอา Stacktrace มาลองไล่ Code ของตัว BPMN Engine ใน GitHub ครับ ซึ่งพอไล่ๆไปแล้ว พบสาเหตุแล้ว มาลองดูผลลัพธ์กันครับ

[BPMN] เพิ่มเติมเกี่ยวกับ multiInstanceLoopCharacteristics

จาก Blog ที่แล้วที่ผมได้เขียนเกี่ยวกับตัวอย่างของ multiInstanceLoopCharacteristics โดยใช้ตัวอย่างเรื่อง กระบวนการของการขอเสนอรางวัลให้กับพนักงานดีเด่น ซึ่งลองเล่นไป เล่นมาแล้วพบปัญหา ดังนี้ สำหรับใน Blog นี้ ผมใช้วิธีแรกครับ แต่จะแทรก ตัวอย่างของ Listener เข้าไปด้วยครับ ลุยกันเลยครับ สำหรับภาพรวมของกระบวนการ (Process) เหมือนเดิมครับ แต่จะแก้ Coding และ Config ข้างในมากกว่าครับ มาเริ่มกันเลยครับ ใน Script Task “Setup Reviews” ผมแก้จากการใช้ List มาเป็น Dictionary ครับ โดยให้ มาที่พระเอกของแรกแล้วครับ ตรง Sub-Process “EvaluateProcess”…

[CUSE] เทอมที่ 3 แล้วนะ !!!!!

สำหรับเทอมนี้เป็นเทอมที่มีการเปลี่ยนแปลงเยอะครับ ทั้งการเปลี่ยนแผนการเรียนจาก แผน ข ไปเป็น แผน ก ครับ มาดูกันดีกว่า ว่าเทอมนี้ ผมได้ลองวิชาอะไรไปบ้าง Research Method วิชานี้ก็ตามชื่อวิชาเลยครับ บอกว่าแนวทางการทำวิจัยเป็นอย่างไร และวิจัยในสาย SE มีด้านไหนบ้าง มีจุดควรระวังอะไร ** ก่อนจะมีเรียนวิชานี้เป็นไปได้ควรมีหัวข้อ Master Project  หรือ Thesis ก่อนครับ ปีของผมดีอย่างนึง – เนื่องจากคนน้อย มันเลยออกแนวๆ Private Class และทุกคนได้มีเวลาประชุม หาจุดบอดของหัวข้อที่เพื่อน แต่ละคนทำครับ Enterprise Application Architecture(EAA) วิชานี้ สำหรับคนที่ต้องออกแบบระบบขนาดใหญ่ครับ…

[BPMN] ตัวอย่าง multiInstanceLoopCharacteristics

หลังจากโดนมรสุมงานไปจนวันหยุดเดือนเมษา หายวับไปกับรายงานแบงค์ชาติ DataSet เดือนนี้ ผมเริ่มมีเวลาว่างแล้วครับ โดยจาก Blog ตอนก่อนที่เขียนเกี่ยวกับ BPMN ไปในเรื่องของ Loop หรือ การทำซ้ำ ที่จะเน้นไปในตัวของ StandardLoopCharacteristics สำหรับใน Blog ตอนนี้เป็นตัวอย่างของ multiInstanceLoopCharacteristics ครับ ความแตกต่างระหว่าง StandardLoopCharacteristics  กับ multiInstanceLoopCharacteristics  ครับ มาดูตัวอย่างของ multiInstanceLoopCharacteristics กันดีกว่า อ่านผ่านๆมา หลายคนน่าจะงงครับ คราวนี้ลองมาดูตัวอย่างกันครับ โดยกระบวนการตัวอย่างที่ผมเขียนใน Blog เป็นกระบวนการของการขอเสนอรางวัลให้กับพนักงานดีเด่นครับ โดยผู้จัดการ(Manager) User Mary ต้องเสนอชื่อ เพื่อให้คณะกรรมการ(Reward Commitee) ซึ่งประกอบไปด้วย User Jame,…

[UML] ตัวอย่าง Deployment Diagram สำหรับการใส่ Load Balance / Firewall และ High-Availability Database

ลองมากำหนดโจทย์กันดีกว่า อยากสร้าง Deployment Diagram โดยของ wong wian เว็บหาของกินท่ี่ใหญ่ที่สุด ในยุค 4.0 นี้ โดยกำหนดว่า Client – มีทั้ง PC และ Mobile โดยเน้นให้เข้าระบบผ่าน Google Chrome ก่อนที่ Request เข้ามายังระบบต้องมี Firewall โดยในที่นี้กำหนดเป็น Hardware เพื่อกรอง Request จากผู้ที่ประสงค์ร้ายออกไปได้ Load Balance – เพื่อให้รองรับได้อย่างน้อย 100,000 Request (เครื่อง App Server สามารถรองรับได้…

[BPMN] สรุป Step การพัฒนา BPMN Application ด้วย Camunda BPMN Engine

หลังจากได้ลอง BPMN Engine ตัว Activiti ไป ช่วงมกราคม และลองตัว jBPM ไป แต่ไม่ค่อย Work เท่าไหร่ คราวนี้มาถึงคิวของ Camunda  บ้างแล้วครับ Camunda BPMN Engine คือ อะไร ขั้นตอนการพัฒนา BPMN Application บน Camunda ติดตั้งแบบจำลอง ทดสอบใช้งานครับ Note Reference

จะคุยกับลูกค้าแล้ว เราตกลงกันภายในแล้ว หรือยัง ?

สำหรับ Blog ตอนนี้ เป็น Blog ที่บ่นถึงปัญหาที่มักพบเจอในองค์กรที่รับพัฒนาซอฟต์แวร์ และก่อให้เกิดปัญหาจนเรียกว่า End Phase ปัญหาที่ 1 : ก่อนเริ่มต้นโครงการ ตกลงกันภายในแล้ว หรือยัง ? ตัวละครที่เกี่ยวข้อง – ทุกฝ่ายที่ช่วยให้ลูกค้า ตัดสินใจซื้อสินค้า และบริการจากเรา จุดประเด็น อย่าแถ ถ้าไม่รู้จริง หรือตกลงกันก่อน เคสนี้ผมโดนมากับตัวเลยครับ 555 ก่อนที่ทีม Technical เข้าไปคุยกับลูกค้า ฝ่ายที่ต้องไปคุยก่อน คือ ทีม Marketing / Business คุยก็ลูกค้าอย่างไร ไม่รู้ เนื้องานงอกเฉย พอทีม…