วิศวกรรมซอฟต์แวร์เชิงบริการ SE540 Service-Oriented Software Engineering วิศวกรรมซอฟต์แวร์เชิงบริการ Asst.Prof..Dr..Surasak Mungsing surasak.mu@spu.ac.th http://www.spu.ac.th/teacher/surasak.mu
Course description การศึกษา วิเคราะห์ และออกแบบกระบวนการทางธุรกิจ (Business Modeling) เพื่อออกแบบและพัฒนา สถาปัตยกรรมซอฟต์แวร์เชิงบริการ เพื่อตอบสนองความ ต้องการและวัตถุประสงค์เชิงธุรกิจ การออกแบบ สถาปัตยกรรมซอฟต์แวร์เชิงบริการจะเน้นการออกแบบ และพัฒนาซอฟต์แวร์คอมโพเนนต์ (Software Component) ในรูปแบบของบริการ เช่น เว็บเซอร์วิส (Web Services) รวมถึงการใช้เซอร์วิสเพื่อให้ทำงานตาม วัตถุประสงค์เชิงธุรกิจได้อย่างถูกต้องและมีประสิทธิภาพ โดยแต่ละบริการนั้นจะมีหน้าที่ให้บริการฟังก์ชันซึ่งมี เป้าหมายและขอบเขตการทำงานที่ชัดเจนและสามารถนำ กลับมาใช้ใหม่ได้
Evaluation Mid-tern Exam 20 % Final Exam 30 % Term Paper & presentation 20 % Group project & presentation 20 % Participation 10 % Total 100 %
Introduction to Process Modeling
ชนิดของแบบจำลอง (Types of Models) แบบจำลองทางคณิตศาสตร์ (Mathematical Models) แบบจำลองที่เป็นถ้อยคำอธิบาย (Descriptive Models) แบบจำลองแผนภาพ (Graphical Models) chatuphon Phobun:Lecturer
chatuphon Phobun:Lecturer Types of Models Mathematical Models อยู่ในกลุ่มของสูตรคำนวณที่ใช้ อธิบายกฎเกณฑ์ทางเทคนิค โดยมักใช้กับงานด้าน วิทยาศาสตร์และวิศวกรรม หรืองานด้านการคำนวณ สัญลักษณ์ส่วนใหญ่มักนำเสนอรูปแบบของสูตรและฟังก์ชัน Descriptive Models อยู่ในรูปแบบของรหัสจำลอง (Pseudo Code) หรือประโยคโครงสร้างภาษาอังกฤษ (Structured English) โปรแกรมเมอร์มักใช้เพื่อออกแบบ โปรแกรม Graphical Models อยู่ในรูปแบบของไดอะแกรม จัดเป็น แบบจำลอที่มีประโยชน์ที่พัฒนาขึ้นโดยนักวิเคราะห์ระบบ สามารถเข้ใจถึงความสัมพันธ์ของสิ่งต่างๆที่อยู่ในระบบ chatuphon Phobun:Lecturer
แบบจำลองแผนภาพ (Graphical Models) แบบจำลองแผนภาพ หรือไดอะแกรม จัดเป็นแบบจำลองที่มีประโยชน์ ที่พัฒนาขึ้นโดยนักวิเคราะห์ระบบ สามารถเข้าใจถึงความสัมพันธ์ของสิ่งต่างๆ ที่อยู่ในระบบ chatuphon Phobun:Lecturer
แบบจำลองกระบวนการ (Process Model) อธิบายถึงกระบวนการทางธุรกิจ โดยแสดงให้เห็น ภาพรวมในระบบในลักษณะแผนภาพหรือไดอะแกรม หรือที่เรียกว่า การออกแบบกระบวนการทางธุรกิจใหม่ (Business Process Redesign:BPR) แบบจำลองเชิงโครงสร้าง (Structured Mode แบบจำลองเชิงวัตถุ (Object Model) Analysis Requirements Specification …………. …………. …………. Logical Model chatuphon Phobun:Lecturer
แผนภาพกระแสข้อมูล (Data Flow Diagram) แผนภาพกระแสข้อมูล เป็นแบบจำลองกระบวนการที่ นำมาใช้กับการวิเคราะห์และออกแบบระบบเชิง โครงสร้าง แสดงความสัมพันธ์ระหว่าง กระบวนการ(Process) กับ ข้อมูล(Data) โดยข้อมูลในแผนภาพจะทำให้ทราบถึง ข้อมูลมาจากไหน ข้อมูลไปที่ไหน ข้อมูลเก็บไว้ที่ใด เกิดเหตุการณ์ใดกับข้อมูลในระหว่างทาง chatuphon Phobun:Lecturer
ขั้นตอนการพัฒนาแผนภาพกระแสข้อมูล ขั้นตอนที่ 1: ศึกษารูปแบบการทำงานทางฟิสิคัลของ ระบบงานเดิม (Physical –DFD ของระบบงานเดิม) ขั้นตอนที่ 2: วิเคราะห์ให้ได้มาซึ่งแบบจำลองทางลอจิ คัลของระบบงานเดิม (Logical –DFD ของระบบงาน เดิม) ขั้นตอนที่ 3: นำLogical –DFD ที่ได้จากขั้นตอนที่ 2 มาเพิ่มความต้องการใหม่เข้าไป และปรับปรุงให้เป็น Logical –DFD ของระบบงานใหม่ ขั้นตอนที่ 4: พัฒนาระบบงานใหม่ในรูปแบบของ แบบจำลองฟิสิคัล(Physical –DFD ของระบบงานใหม่) chatuphon Phobun:Lecturer
มุมมองของผู้ใช้งานในกลุ่มต่างๆ ในการใช้ประโยชน์จากแผนภาพกระแสข้อมูล ลูกค้า / ผู้ใช้งาน ใช้ DFD เพื่อแสดงภาพรมของระบบ โปรแกรมเมอร์ ใช้ DFD เพื่อแสดงรายละเอียด และ ใช้ เป็นแนวทางในการพัฒนาโปรแกรม นักวิเคราะห์ระบบ ใช้ DFD เพื่อแสดงภาพรวมของ ระบบและ รายละเอียดของระบบ chatuphon Phobun:Lecturer
วัตถุประสงค์ของแผนภาพกระแสข้อมูล สรุปรวมข้อมูลทั้งหมดที่ได้จากการวิเคราะห์เป็นรูปแบบ ของการพัฒนาเชิงโครงสร้าง เป็นข้อตกลงร่วมกันระหว่างนักวิเคราะห์ระบบกับผู้ใช้งาน นำไปใช้ประโยชน์ต่อไปในขั้นตอนของการออกแบบ ระบบ ใช้อ้างอิง หรือเพื่อใช้สำหรับการปรับปรุง/พัฒนาต่อใน อนาคต ทราบที่มาและที่ไปของข้อมูลที่ไหลไปยังกระบวนการ ต่างๆ (Data and Processes) chatuphon Phobun:Lecturer
สัญลักษณ์ที่ใช้ในแผนภาพกระแสข้อมูล (Gane & Sarson) ความหมาย ตัวอย่าง 1 เช่ารถ Process ประมวลผล กระแสข้อมูล สัญญาเช่า Data Flow ตัวแทนข้อมูล สิ่งที่อยู่ภายนอกระบบ ลูกค้า External Entity แฟ้มข้อมูล Data Store ข้อมูลลูกค้า chatuphon Phobun:Lecturer
chatuphon Phobun:Lecturer Processes Processes :สัญลักษณ์แทนกิจกรรมที่เกิดขึ้นในระบบ หรือ กระบวนการที่ต้องทำในระบบ สัญลักษณ์โปรเซสต้องมีหมายเลขกำกับเสมอ เช่น 1,2,3 ตามลำดับ ชื่อที่ใช้กำกับโปรเซส ปกติใช้คำกริยาบอกการกระทำ เช่น ลงทะเบียน,เช่ารถ,ชำระเงิน จำนวนโปรเซสที่สูงสุดนั้น ควรอยู่ในช่วงระหว่าง 7 บวกลบด้วย 2 หมายถึง 5 ถึง 9 โปรเซส 1 คำนวณ เงินเดือนสุทธิ เงินเดือน,ภาษี ค่าประกันสังคม เงินเดือนสุทธิ chatuphon Phobun:Lecturer
chatuphon Phobun:Lecturer Data Flows กระแสข้อมูล แสดงถึงข้อมูลที่เคลื่อนไหวไปมาระหว่าง Process, Data Store และ External Entity แผนการเงิน D3 ข้อมูลอัตราภาษีและประกันสังคม 1 เงินเดือน,ภาษี ค่าประกันสังคม เงินเดือนสุทธิ,สลิป เงินเดือน คำนวณ เงินเดือนสุทธิ พนักงาน D1 ข้อมูลพนักงาน D2 ข้อมูลเงินเดือน chatuphon Phobun:Lecturer
chatuphon Phobun:Lecturer External Entities มีหน้าที่รับข้อมูล และส่งข้อมูลจาก Process มีหลายชื่อเรียก เช่น Source , Destination , External Agent , Boundary แทนข้อมูล บุคคล หน่วยงาน หรือระบบงาน เช่น ลูกค้า , ผู้จัดการ , พนักงาน นักศึกษา นักศึกษา External Entity ของนักศึกษา และสัญลักษณ์กาทำซ้ำ chatuphon Phobun:Lecturer
chatuphon Phobun:Lecturer Data Stores แหล่งที่ใช้จัดเก็บข้อมูล/ แฟ้มข้อมูล Data Store จะถูกใช้งานโดย Process และสามารถทำซ้ำได้ D1 data 1 1 Process 1 Input Output Input/Output chatuphon Phobun:Lecturer
กฎเกณฑ์/ขั้นตอนการเขียนแผนภาพกระแสข้อมูล วิเคราะห์ได้ว่าระบบต้องประกอบด้วย External Entities อะไรบ้าง ดำเนินการเขียนแผนภาพที่แสดงถึงภาพรวมของระบบ หรือ Context Diagram วิเคราะห์ข้อมูลในระบบว่า ควรมีข้อมูล (Data Store) อะไรบ้าง วิเคราะห์กระบวนการหรือ Process ว่าควรมี กระบวนการหลักๆ อะไรบ้าง โดยอาจทำเป็น Process Decomposition Diagram chatuphon Phobun:Lecturer
กฎเกณฑ์/ขั้นตอนการเขียนแผนภาพกระแสข้อมูล (2) ตัวอย่างแผนภาพกระแสข้อมูลที่ถูกต้อง chatuphon Phobun:Lecturer
กฎเกณฑ์/ขั้นตอนการเขียนแผนภาพกระแสข้อมูล (3) ตัวอย่างแผนภาพกระแสข้อมูลที่ไม่ถูกต้อง chatuphon Phobun:Lecturer
กฎเกณฑ์/ขั้นตอนการเขียนแผนภาพกระแสข้อมูล (4) Level 0 (Context) Sales Ledger System Level 1 (Top Level) 2 Receive Payments 3 Produce Statements 1 Receive Invoices 2.1 Record Payments 2.2 Validate Payments 2.3 Process Daily Analysis 2.4 Update Sales Level 2 Level 3 (not always needed) 2.4.1 2.4.2 2.4.3 chatuphon Phobun:Lecturer
กฎเกณฑ์/ขั้นตอนการเขียนแผนภาพกระแสข้อมูล (5) 5. ดำเนินการเขียนแผนภาพระดับที่ 1 และอาจมีระดับที่ 2 ใน กรณีที่เราต้องการขยายรายละเอียด แต่ระดับ 3 อาจไม่จำเป็น เสมอไป 6. ทำการตรวจสอบความสมดุล (Balancing) แก้ไขปรับปรุง (Redraw) 7. สร้างแผนภาพโดยใช้เครื่องมือช่วยวาด เช่น Visio,SmartDraw,CASE-Tools chatuphon Phobun:Lecturer
chatuphon Phobun:Lecturer แผนภาพกระแสข้อมูล ระบบการจัดการบุคลากร chatuphon Phobun:Lecturer
chatuphon Phobun:Lecturer Functional Decomposition แสดงหน้าที่การทำงานในระบบการจัดการบุคลากร chatuphon Phobun:Lecturer
chatuphon Phobun:Lecturer แผนภาพ Data Flow Diagram ระดับ Context Diagram (Level 0) ระบบการจัดการจัดการบุคลากร chatuphon Phobun:Lecturer
Introduction to Business Process Modeling
chatuphon Phobun:Lecturer BMP BMP สามารถถูกแปลความหมายออกไปได้หลาย ความหมายและยังสามารถเชื่อมโยงไปถึง กิจกรรมอื่น ๆ ได้อีกหลากหลายกิจกรรมที่มีส่วนในการสร้างสรรค์ คุณค่าให้กับลูกค้า เช่น Business Process Management Business Process Modeling Business Process Mapping Business Process Improvement ไม่ว่า M ตัวหลังจะเป็นอะไร แต่แนวคิดก็ ยังอยู่บน พื้นฐานของกระบวนการธุรกิจหรือ Business Process เสมอ Source: ดร.วิทยา สุหฤทดำรง chatuphon Phobun:Lecturer
Management Strategies Supply Chain Logistics Six Sigma ERP Balance Scorecard Knowledge Management etc. Source: ดร.วิทยา สุหฤทดำรง
Business Process Improvement (BPI) ผู้นำองค์กรส่วนมากจะยึด เอาแนวคิดในการจัดการประเภท Supply Chain, Logistics, Lean และ Six Sigma มาใช้จัดการในองค์กรเลย โดยมองข้ามความสำคัญของการจัดการกระบวนการธุรกิจไป Business Process Improvement ต้องมาจากสมการทางธุรกิจ (Business Equation) คือ คุณค่าของธุรกิจ (Business Values) จะต้องเท่ากับคุณค่าที่ลูกค้าต้องการ (Customer Values) เมื่อใดที่ คุณค่าทางธุรกิจที่เราสร้างไม่เท่ากับคุณค่าที่ลูกค้าต้องการ ธุรกิจก็ จะไม่เกิดขึ้น Source: ดร.วิทยา สุหฤทดำรง
BPI (contd.) โจทย์ให้กับการปรับปรุงกระบวนการธุรกิจคือ คุณค่าที่ลูกค้าต้องการ ซึ่งเปลี่ยนตามเวลาและคู่แข่งขันที่เข้ามาแย่งส่วน แบ่งการสร้าง คุณค่าให้กับลูกค้า คุณค่าที่นำเสนอต่อลูกค้าจึงต้องดีกว่า (Better) เร็วกว่า (Faster) และถูกกว่า (Cheaper) ผู้บริหารต้องตระหนักอยู่เสมอว่า การทำให้กระบวนการธุรกิจไปสู่จุด ที่องค์กรอยู่รอดในธุรกิจได้นั้น คือ การจัดการการเปลี่ยนแปลง (Change Management) โดยที่จะต้องเข้าใจถึงต้นกำเนิดแห่งการ เปลี่ยนแปลงว่ามาจากคุณค่าที่เปลี่ยนแปลงไปของความต้องการ ของลูกค้า และปลายทางของการเปลี่ยนแปลงอยู่ที่การ เปลี่ยนแปลงกระบวนการธุรกิจ Source: ดร.วิทยา สุหฤทดำรง