Page 31 - วิศวกรรมซอฟต์แวร์
P. 31
กรณีตัวอย่างโครงการพัฒนาซอฟต์แวร์เช่ารถยนต์ 15-21
Authenticated User [Client] Rental Car Staff
1: Issue Rental request
1.1: List available car
1.2.1.2: Get request result 1.2: Get Rental information
1.2.1: Approve rental request
1.2.1.1: Update car status
ภาพท่ี 15.7 ซีเควนซ์ไดอะแกรมของการทำ� รายการเชา่ รถออนไลน์
คณะท�ำงานพัฒนาซอฟต์แวร์เลือกใช้แนวทางการพัฒนาแบบอไจล์ (agile) ซ่ึงมีหลักในการพัฒนาซอฟต์แวร์
ให้ต่อเนื่องและสามารถตอบสนองต่อความเปลี่ยนแปลงท่ีเกิดข้ึนได้ จึงมีการนัดประชุมลูกค้าเพ่ือตรวจสอบความ
ครบถ้วนสมบูรณ์ของความต้องการระบบ ดังนั้น เมื่อด�ำเนินการออกแบบและวิเคราะห์ระบบซอฟต์แวร์เรียบร้อย
ฐานข้อมูลและยูสเซอร์อินเทอร์เฟสจะถูกออกแบบขึ้นอย่างรวดเร็วเพ่ือใช้เป็นข้อมูลในการหาข้อสรุปและเก็บความ
ต้องการของผู้จ้างผลิตซอฟต์แวร์ที่อาจเปลี่ยนแปลงไปดังท่ีได้กล่าวแล้ว จะเห็นว่าความต้องการของผู้ใช้งานมีความ
เปล่ียนแปลงคือมีความต้องการให้ผู้เช่ารถยนต์สามารถช�ำระค่าใช้จ่ายผ่านบัตรเครดิตได้ และให้มีการบันทึกข้อมูล
บัตรเครดิตที่ใช้ช�ำระจึงมีการเปล่ียนแปลงเกิดขึ้นกับคลาสไดอะแกรมดังแสดงในภาพที่ 15.8
Rental Car
- RentalID: int - CarID: int
- DateTaken: string - Type: string
- TimeTaken: string - GPSID: string
- TimeTaken2: string - Brand: string
- DateReturn: string - RegisteredPlate: string
- TimeReturn: string - Status: char
- Flags: char
+ ListAvailableCar()
+ IssueRentalRequest() + UpdateCarStatus()
+ ApproveRentalRequest()
ภาพท่ี 15.8 โอเปอเรช่ันของคลาส เม่อื สรา้ งซีเควนสไ์ ดอะแกรมของการเช่ารถยนต์