Page 30 - วิศวกรรมซอฟต์แวร์
P. 30
15-20 วิศวกรรมซอฟต์แวร์
Car Rental Users
- RentalID: int 0..* create - UserID: int
- CarID: int 0..* assigned to - DateTaken: string
- Type: string 1 - TimeTaken: string 1 - Username: string
- GPSID: string - DateReturn: string - Password: string
- Brand: string - TimeReturn: string - Role: char
- RegisteredPlate: string - Flags: char - Email: string
- Status: char
1 0..*
create Client
book - ClientID: int
1
1 - SecurityID: string
Bill - Name: string
- BillingID: int - Lastname: string
- Data: string - Cellphone: string
- Category: string
- ExtraFee: long issue CreditCardPayment
- RentalFee: long - bankCode: string
- NetPayment: long - backName: string
ภาพท่ี 15.6 คลาสไดอะแกรมของซอฟตแ์ วรร์ ะบบเช่ารถยนต์ขั้นต้น
3. แผนผังล�ำดบั เหตุการณ์
โดยปกติแล้วทีมงานพัฒนาซอฟต์แวร์จะต้องจัดท�ำแผนผังล�ำดับเหตุการณ์ (sequence diagram) หรือ
ซีเควนซ์ไดอะแกรมให้กับยูสเคสทุก ๆ ยูสเคส ซึ่งเป็นความสามารถหลัก ๆ ของซอฟต์แวร์ และใช้เป็นพิมพ์เขียว
สำ� หรับการพัฒนาซอฟตแ์ วร์ ส�ำหรับกรณีศึกษานี้จะยกตัวอย่างเฉพาะซีเควนซ์ไดอะแกรมของการเช่ารถ ซึง่ ตอบสนอง
ต่อยูสเคสหลักของซอฟต์แวร์ จากภาพเม่ือผู้ใช้งานในกรณีนี้คือลูกค้าหรือพนักงานท่ีผ่านการพิสูจน์ตัวจริง และการ
ก�ำหนดสิทธ์ิกับระบบแล้ว จะสามารถเลือกรถยนต์ท่ีมียังไม่ได้มีสถานะถูกจองหรือเช่าอยู่ จากนั้นจะสามารถด�ำเนิน
การจอง หรือท�ำรายการเช่ารถยนต์ ในกรณีที่ผู้ใช้งานน้ันเป็นลูกค้าจะต้องรอการอนุมัติการเช่าจากพนักงานก่อน
หากเปน็ การทำ� รายการของพนกั งานสำ� หรบั ลกู คา้ วอรค์ อนิ จะสามารถอนมุ ตั กิ ารเชา่ เมอื่ การเชา่ ในครง้ั นน้ั ผา่ นการอนมุ ตั ิ
ลูกค้าจะเช็คอินเพ่ือรับรถและเริ่มการเช่ารถ เมื่อลูกค้าน�ำรถมาคืนจะมีการตรวจสอบการเช่า และการค�ำนวณค่าใช้จ่าย
เพ่ิมเติม (ถ้ามี) และกระบวนการจัดการช�ำระเงิน กับลูกค้าต่อไป ซีเควนซ์ไดอะแกรมของการเช่ารถยนต์ผ่านเว็บแสดง
ไว้ในภาพท่ี 15.7 ซ่ึงผลกระทบดังกล่าวจะท�ำให้มีข้อมูลท่ีถูกจัดเก็บเปล่ียนแปลงไป ในที่น้ีจะแสดงเฉพาะคลาส
rental และคลาส car จะเห็นว่ามีคลาสท่ีโอเปเรชั่นเพิ่มขึ้นดังแสดงในภาพท่ี 15.7