Formal Specification and Software Implementation
You must create a UML model of the software architecture of an application according to the specification provided in Problem Description. The model requires creating of one package diagram for the logical design of the software architecture, at least one component diagram for the physical implementation of one subsystem and a deployment diagram of the entire system, including the hardware, the software and the communication infrastructure.
2. Problem description
Online Travel Agency (OTA) is a travel agency operating in the UK. It is a virtual travel agency that enables prospective clients to search for flights and accommodation via the Internet. Users can check availability of seats on flights, available destinations, prices of flights, prices of accommodation as well as book flights and/or accommodation etc. For the purpose of this coursework, only OTA staff can access all the data and amend it when necessary.
Prospective clients can browse the list of available flights and accommodation based on, for example, flight destination, flight price, accommodation location, accommodation price, accommodation type etc. Prospective clients can also register with the agency online by providing their personal details (e.g. name, address, e-mail address, gender, date of birth, credit card number, places of their interest, etc.). Once a registration is accepted, the person becomes an OTA client and then he/she will be able to place a booking. Clients are not able to cancel booking and amend existing booking online, but contact an OTA staff to do it for them. Flight searches should facilitate any special conditions, e.g. destination, class, price, departure time etc. Accommodation searches should facilitate special conditions like size, type, price, location etc. When a suitable flight or accommodation is found based on the clients' search criteria, a booking can be made. In order to finalise the booking, the client’s account will be debited for the amount representing the total cost of the booking. The booking confirmation (including the booking reference) is sent to them via e-mail.
Information held for clients, flight, accommodation, bookings and children
Clients are described with, at least, the following data attributes: client number, name, contact details, date of birth, credit card number, gender, diet, child number1, child number2.
Flights are described with the following data attributes: flight number, route details, days on which service is offered, number of seats of each class available, kind of aircraft, local departure time, length of flight, price for each class available.
Accommodation is described with, at least, the following data attributes: accommodation number, location, address, accommodation type (e.g. hotel, B&B), capacity, classification (i.e. number of stars), whether any of the following are available: swimming pool, Internet access, gym.
Bookings are described with, at least, the following data attributes: booking number, client number, flight number, accommodation number, person number2, person number3.
Child child number, client number, name, date of birth, gender, diet.