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 โอเปอเรช่ันของคลาส เม่อื สรา้ งซีเควนสไ์ ดอะแกรมของการเช่ารถยนต์
   26   27   28   29   30   31   32   33   34   35   36