การวิเคราะห์เชิงออบเจกต์ Actor Use Case Diagram Sequence Diagram ATM Machine Systems

การวิเคราะห์เชิงออบเจกต์ 

1.จาก Use Case Diagram ของระบบธนาคารแห่งหนึ่ง

1.1 มี Actor ทั้งหมดกี่ Actor และอะไรบ้าง
มี  Actor ทั้งหมด 3  Actor คือ
1.ลูกค้า ที่ใช้บริการระบบ ATM ของธนาคาร โดยที่สามารถทำกิจกรรมต่างๆได้ดังนี้
- สามารถตรวจสอบยอดเงินคงเหลือในบัญชี ที่ผูกกับบัตร ATM ได้ว่ามียอดเงินคงเหลือเท่าไหร่
-สามารถทำการฝากเงินสดเข้าบัญชี โดยใช้เครื่องฝากเงินอัตโนมัติได้
-สามารถทำการถอนเงินสดผ่านเครื่องถอนเงินอัตโนมัติ หรือ ตู้ ATM ได้
-สามารถทำการโอนเงินไปยังบัญชีอื่นๆทั้งธนาคารเดียวกันและต่างธนาคารได้ โดยผ่านระบบตู้ ATM
2.เจ้าหน้าที่ดูแลระบบ ATM โดยมีกิจกรรมที่เกี่ยวข้องกับระบบตู้ ATM ดังนี้
-ทำการดูแลบำรุงรักษาระบบ ATM ธนาคาร
-ทำการซ่อมระบบ ATM ธนาคารหากเกิดอาการเสียหรือขัดข้อง
3.ธนาคาร
-มีหน้าที่ตรวจสอบยอดเงินคงเหลือและปรับยอดเงินคงเหลือในบัญชีในระบบของธนาคารเมื่อมีการทำธุรกรรมผ่านระบบ ATM
-ทำหน้าที่ปรับยอดเงินในบัญชีในระบบของธนาคารเมื่อลูกค้าทำการฝากเงินเข้ามาในบัญชีผ่านระบบ ATM
-ทำหน้าที่ปรับยอดเงินในบัญชีในระบบของธนาคารเมื่อลูกค้าทำการถอนเงินสดออกจากบัญชีผ่านระบบ ATM
-ทำหน้าที่โอนเงินผ่านบัญชีในระบบของธนาคารเมื่อลูกค้าทำการโอนเงินผ่านบัญชีไปยังบัญชีอื่นๆผ่านระบบ ATM รวมถึงการคิดค่าธรรมเนียมในกรณีที่มีค่าธรรมเนียมการโอนเกิดขึ้นด้วย

1.2 มี Use Case ทั้งหมดกี่ Use Case และแต่ละ Use Case ทำหน้าที่อะไร
มีทั้งหมด 6 Use Case แต่ละ Use Case มีหน้าที่ดังนี้
1.ตรวจสอบยอดเงินคงเหลือ
                มีหน้าที่จัดการการปรับยอดเงินคงเหลือในบัญชีเมื่อมีการทำกิจกรรม ฝาก ถอน โอนเงิน ผ่านระบบ ATM ซึ่งจะทำการส่งข้อมูลไปยังธนาคารเพื่อปรับตัวเลขให้เป็นปัจจุบันจากนั้นจึงส่งข้อมูลดังกล่าวกลับมาแสดงผลที่ตู้ ATM เพื่อให้ลูกค้ารับทราบยอดเงินคงเหลือในบัญชี
2.ฝากเงิน
                มีหน้าที่รับการฝากเงินผ่านระบบ ATM โดย เมื่อรับเงินผ่านระบบ ATM แล้วจะส่งข้อมูลไปยังธนาคารเพื่อทำการปรับยอดเงินในบัญชีต่อไป
3.ถอนเงินสด
                มีหน้าที่เป็นระบบถอนเงินสดผ่านระบบ ATM โดยการใช้บัตร ATM หรือรูปแบบอื่นๆเช่น หมายเลขโทรศัพท์ โดย เมื่อลูกค้าทำการถอนเงินสดผ่านระบบ ATM และระบบ ATM ทำการตรวจสอบเกี่ยวกับความถูกต้องของบัตร ATM  ความปลอดภัยของรหัสผ่าน และยอดเงินคงเหลือในบัญชีว่าพอกับที่ลูกค้าต้องการ โดยการเช็คข้อมูลกับทางธนาคาร จากนั้นระบบ ATM จะทำการ จ่ายเงินสดออกมาให้แก่ลูกค้า พร้อมสลิปใบเสร็จและจะส่งข้อมูลกลับไปยังธนาคารว่าดำเนินการสำเร็จเพื่อทำการปรับยอดเงินคงเหลือในบัญชีต่อไป แต่หากระบบ ATM ตรวจสอบแล้วว่า ไม่สมบูรณ์ เช่นรหัสผ่านผิด  หรือยอดเงินไม่เพียงพอ ก็จะแจ้งทางลูกค้าผ่านทางหน้าจอ และหากมีการดำเนินการเกินกว่าจำนวนครั้งที่กำหนดก็จะต้องมีการดำเนินการด้านความปลอดภัยอื่นๆเช่นการยึดบัตร ATM เป็นต้น
4.โอนเงิน
                มีหน้าที่ดำเนินการโอนเงินที่มีอยู่ในบัญชี ไปยัง บัญชีอื่น หรือบัญชีบุคคลอื่น หรือบัญชีต่างธนาคาร โดยเมื่อลูกค้าทำการโอนเงินผ่านระบบ ATM และระบบ ATM ทำการตรวจสอบเกี่ยวกับความถูกต้องของบัตร ATM  ความปลอดภัยของรหัสผ่าน ความถูกต้องของบัญชีปลายทางและยอดเงินคงเหลือในบัญชีว่าพอกับที่ลูกค้าต้องการโอน โดยการเช็คข้อมูลกับทางธนาคาร จากนั้นระบบ ATM จะทำการโอนเงินไปยังบัญชีปลายทางตามความต้องการของลูกค้า พร้อมทั้งออกสลิปใบเสร็จและจะส่งข้อมูลกลับไปยังธนาคารว่าดำเนินการสำเร็จเพื่อทำการปรับยอดเงินคงเหลือในบัญชีต่อไป แต่หากการโอนเงินผ่านระบบ ATM ตรวจสอบแล้วว่า ไม่สมบูรณ์ เช่นรหัสผ่านผิด  เลขบัญชีหรือประเภทบัญชีปลายทางหรือยอดเงินในบัญชีผู้โอนไม่เพียงพอ ก็จะแจ้งทางลูกค้าผ่านทางหน้าจอ และหากมีการดำเนินการเกินกว่าจำนวนครั้งที่กำหนดก็จะต้องมีการดำเนินการด้านความปลอดภัยอื่นๆเช่นกัน
5.บำรุงรักษาระบบ
                เป็นหน้าที่ของเจ้าหน้าที่ดูแลระบบ ATM ซึ่งต้องดำเนินการบำรุงรักษาระบบ ATM เช่น การตรวจเช็คระบบ ATM ตามรอบระยะเวลา การอัพเกรดระบบเช่นซอร์ฟแวร์ การทดสอบระบบ โดยการทำการบำรุงรักษาระบบต้องแจ้งให้ทางธนาคารรับทราบเพราะเกี่ยวข้องกับระบบรักษาความปลอดภัยของระบบ ATM ด้วย
6.ซ่อม
            เป็นการซ่อมแซมระบบ ATM ของธนาคารในกรณีที่เกิดปัญหาขึ้น เช่นไม่จ่ายเงินทั้งที่ทำรายการอย่างถูกต้อง ระบบโปรแกรมหน้าเครื่อง ขัดข้อง เครื่องไม่ทำงาน ไม่จ่ายใบเสร็จ ทำรายการไม่ได้ หรืออื่นๆที่ไม่ใช่การทำงานตามปกติ โดยต้องมีการทำงานร่วมกับทางธนาคารโดยต้องแจ้งให้ทางธนาคารรับทราบเพราะเกี่ยวข้องกับระบบรักษาความปลอดภัยของระบบ ATM ด้วย

2  แผนภาพ Sequence Diagram ใช้สำหรับแสดงอะไร ตัวอย่างแผนภาพ Sequence Diagram
2.1 Sequence Diagram เป็นแผนภาพที่แสดงให้เห็นถึงการปฏิสัมพันธ์ (Interaction)ระหว่างอ็อบเจ็กต์ของคลาส โดยเฉพาะการส่ง message ระหว่างอ็อบเจ็กต์ตามลำดับของเวลา(Sequence) ที่เกิดเหตุการณ์ขึ้นจากน้อยไปมาก โดยจะมีสัญลักษณ์แสดงให้เห็นลำดับของการส่งmessage ตามเวลาส่งอย่างชัดเจน แสดงลักษณะของ Sequence Diagram ดังรูปที่ 1

                 จากตัวอย่าง Sequence Diagram ในรูปที่ 1 เป็นการแสดงให้เห็นการส่ง messageระหว่างอ็อบเจ็กต์  “Order”, “Customer”  และ “Product” โดย Actor  “Officer”  ต้องการทราบรายละเอียดรายการซื้อสินค้า จึงส่ง message  “getOrderInfo( )”  เข้าสู่ระบบมายังอ็อบเจ็กต์  “Order”  จากนั้นอ็อบเจ็กต์  “Order”   ส่ง message  “getCustInfo( )”  ไปที่อ็อบเจ็กต์“Customer” เพื่อขอรายละเอียดลูกค้า พร้อมกับส่ง message  “getProductInfo( )”  ไปที่อ็อบเจ็กต์ “Product”  เพื่อขอรายละเอียดสินค้า แล้วนำมาคำนวณหาราคาสินค้าที่สั่งซื้อทั้งหมด  (calcGtotal( ))  และแสดงผลทางจอภาพต่อ  Actor “Officer”
                  จากรูปที่ 1 จะเห็นคุณลักษณะของ Sequence Diagram ได้อย่างชัดเจนว่า เป็นแผนภาพที่สามารถแสดงให้เห็นถึงการปฏิสัมพันธ์ระหว่างอ็อบเจ็กต์ของคลาสตามลาดับของเวลาเป็นสำคัญทำให้ทราบว่า message ใดเกิดก่อน message ใดเกิดหลัง
สัญลักษณ์ใน Sequence Diagram
          จากรูปที่ 1 แสดงลักษณะของ Sequence Diagram โดยทั่วไป ซึ่งประกอบไปด้วยสัญลักษณ์ต่างๆ ดังนี้
ตารางที่ 1 สัญลักษณ์ภายใน Sequence Diagram

เป็นแผนภาพที่แสดงให้เห็นถึงการปฏิสัมพันธ์ระหว่าง Object ณ เวลาต่างๆระกอบด้วย
·        Class/Object
·        เส้นเพื่อใช้แสดงลำดับเวลา
·        เส้นเพื่อแสดงกิจกรรมที่เกิดขึ้นจาก Object/Class

ใช้สี่เหลี่ยมแทน Class/Object ภายในกรอบสี่เหลี่ยมมีชื่อของ
·        Object/Class ประกอบอยู่ในรูปแบบ {Object}:Class
·        กิจกรรมที่เกิดขึ้นแทนด้วยลูกศรแนวนอนจาก Class/Object หนึ่งไปยังอีก
Class/Object ตัวต่อไป ระบุชื่อกิจกรรมในรูปแบบ {[Conditional]}
Operation
·        ชื่อของกิจกรรมต้องเป็น Operation ที่อยู่ใน Class/Object ที่ลูกศรชี้ไป
·        องค์ประกอบของ Object
Object name
·      บอกชื่อของออบเจ็กต์
·      ออบเจ็กต์ที่อยู่ทางซ้ายมือจะทำงานก่อนออบเจ็กต์ที่อยู่ทางขวามือ
 Lifeline
·        เส้นประที่ลากในแนวดิ่งจากออบเจ็กต์
·Activation
·        สี่เหลี่ยมเล็กๆ ที่อยู่บนเส้น lifeline
·        แทนการทำงานต่างๆ ของออบเจ็กต์ของ activation นั้นต้องกระทำ
·        ความยาวของรูปที่ใช้แทน activation เป็นตัวที่บอกถึงระยะเวลาของการทำงานของออบเจ็กต์
การส่งเมสเสจระหว่างออบเจ็กต์
สัญลักษณ์ที่ใช้แทนเมสเสจทั้งสามแบบ

Synchronous
·        เป็นการส่งเมสเสจหรือติดต่อแบบรอคอยคำตอบ หรือการตอบกลับก่อนที่จะ
ทำงานอื่นๆ ต่อไป
Asynchronous
·        เป็นการส่งเมสเสจหรือติดต่อแบบไม่รอคอยคำตอบ
·        ไม่มีการหยุดทำงานของผู้ส่ง ผู้ส่งสามารถทำงานต่อได้
Return
·        เป็นเมสเสจที่เกิดขึ้นในกรณีที่ต้นทางเริ่มการติดต่อแล้วปลายทางต้องมีการติดต่อกลับด้วย
·        การส่งเมสเสจจะเขียนข้อความกำกับไว้ด้วย
·        ถ้าหากเป็นเมสเสจเงื่อนไข จะเขียนเงื่อนไขไว้ในวงเล็บก้ามปู [ ] โดยเมส
เสจจะถูกส่งก็ต่อเมื่อเงื่อนไขนั้นเป็นจริง
2.2 ตัวอย่าง Sequence Diagram ATM Machine Systems

 Sequence ATM System
1.ลูกค้าทำการเสียบบัตร ATM เข้าไปในตู้ ATM
2.ตู้ ATM ถามรหัสผ่านลูกค้าที่หน้าจอเครื่อง ATM
3.ลูกค้าทำการป้อนรหัสผ่านของบัตร ATM
4.ตู้ ATM ทำการส่งรหัสผ่านของบัตร ATM ที่ได้จากลูกค้า ไปตรวจสอบกับบัญชีทางธนาคาร
5.หากรหัสผ่านถูกต้องทางระบบของธนาคารจะส่งคำตอบกลับมาที่ตู้ ATM ว่ารหัสผ่านถูกต้อง
6.ทางตู้ ATM จะแสดงผลหน้าเครื่องเพื่อให้ลูกค้าเลือกทำรายการว่า จะโอน ฝาก หรือถอนเงินจากบัญชี
7.ลูกค้าเลือกทำรายการที่ต้องการ
8.ตู้ ATM จะแสดงผลให้ ลูกค้า ระบุจำนวนเงินที่ต้องการทำรายการ
9.ลูกค้าระบุจำนวนเงินที่ต้องการทำรายการ
10.ตู้ ATM ทำการส่งข้อมูลการทำรายการไปยังธนาคารเพื่อขอดำเนินการทำตามรายการ
11.ธนาคารดำเนินการตรวจเช็จทำตามรายการที่ร้องขอ โดยดำเนินการในระบบ รวมถึงการปรับยอดเงินในบัญชีตามจริง
12.ระบบการตรวจสอบบัญชีและดำเนินการตรวจเช็คความถูกต้องของบัญชีถูกต้องก็จะกลับมาที่ระบบธนาคาร
13.ธนาคารแจ้งกลับมาที่ตู้ ATM ว่าดำเนินการทางธนาคารเรียบร้อยแล้ว
14.ตู้ ATM จะแจ้งลูกค้าผ่านทางหน้าจอของเครื่อง ATM ว่าดำเนินการตามรายการเรียบร้อยแล้ว
15.ตู้ ATM จะแจ้งลูกค้าผ่านทางหน้าจอของเครื่อง ATM ว่าดำเนินการตามรายการเรียบร้อยแล้วหากเป็นการถอนเงินสดจะให้ลูกค้าหยิบเงินออกจากเครื่อง
16.ลูกค้าหยิบเงินออกจากเครื่อง
17.ตู้ ATM จะถามลูกค้าว่าต้องการทำรายการอื่นๆเพิ่มเติมหรือไม่
18.ลูกค้ากดเลือกคำตอบที่ต้องการ หากเลือกทำรายการอื่นๆก็จะไปที่การดำเนินการนั้นๆ แต่หากไม่ต้องการก็จะเป็นการสิ้นสุดการทำรายการ
19.หากสิ้นสุดการทำรายการเครื่องจะปริ้นใบเสร็จหรือสลิปการทำรายการ ออกมาให้ลูกค้าพร้อมทั้งคืนบัตร ATM คืนให้แก่ลูกค้า

                เป็นการจบสิ้นกระบวนการดำเนินการผ่านระบบ ATM

ไม่มีความคิดเห็น:

แสดงความคิดเห็น