Produce a class diagram to model the system structure you propose for your potential solution. Decouple as much as possible with Boundary, Control and Entity classes.

Case Study: HastingsDental Care House

Hastings council has built a new Central Dental Care House in the city and they want to create a new digital information management system instead of the old one, where data recording, searching and updating is mostly done manually using Microsoft Word processing package. The director now feels that a fully computerised system is needed as it would give better support to their operations and better services to their customers.  It is expected that staff will use the new system to support and record the tasks they carry out including booking, deleting, updateing appointments, managing, and organising the use of business resources, logistics and facitilities.

The new system should allow staff and patients to use it easily and efficiently. Customers who want to book appointments for themselves or their family members have two options: calling by phone or making online booking, however, they need to be registered by admin first. Hastings Dental Care House (HDCH) is open Monday to Friday and can accommodate up to 44 patients per day except Friday – only 22 patients.

HDCH centre is proud of their new built centre, which is quite comfortable, equipped with modern facilities, and provides high quality of services including free transportation for elderly and disabled patients. However, other customers can use the center transportation facitilty but they need to pay for that.

The new system will keep track of the number of bookings that have been made on each day. Appointments bookings via phone should be recorded in the new system immidiately. A booking can only be confirmed if there is available slot. So, when a patient requests appointment by phone or make appointment online, if the booking is successful, the system records it and send a confirmation either by sms messages or via email. Any confirmation message should include all relevant information such as day, time and date, any special arrangements e.g. pickup and dropoff is needed.

If the customer is a new one, their name and contact details should be taken and recorded in the system, along with other relevant details such as gender, age, medical notes and any other relevant notes.  For repeat bookings, any of these details can be updated as necessary, including changning patient regular doctor. To complete any booking and before sending any confirmation, a £10 deposit for each appointment will be automatically taken/deducted form the patients account/balance. Patient can always cancel the appointment 24 hours before the appointment date/time, and the £10 will be fully refunded to patient.

Admins and customers will be able to review the bookings history and  payments already made. However, customers can view their current balance as well, whereas doctors can see treatment history. The director thinks that, it would be helpful if the new system alerts the customer automatically, when their balance is lower than £10.

Appointment bookings are eventually cancelled if the rest of payment is not received on the day/time of the appointment. Also, if a patient is late (30 minutes) for an appointment, the system would cancel it and should notify the admin and patient automatically.Moreover, the system will produce a warning for first time patient absence/late, and £25 fine second time this happens, and should notify the patient of this.

There are currently 6 doctors available in HDCH, 2 administration, 2 drivers, receiption staff and a manager.  All of these staff work full-time except the drivers who are working as freelance, but they should be able to view their tasks in the system as well, but after they login first.

The administration staff deal with the scheduling and booking of appointments, along with enquiries, in addition, they should be able to appoint alternative doctors for patients in case the regular doctor is absent. It should also be possible to report on all of the bookings to admins at any one point, together with all of the cancellations taking place. The manager should be able to organize the logistics and equipment of the surgery and should be able to update the system with all available tools and devices required to treat patients. Only doctors will be able to view the patient history treatments. Also, they should be able to cancel or allocate appointments to other colleagues as well.

Using the provided case study, develop a solution from a software architect’s perspective that includes the following:

  • Produce a use case diagram to model the functional requirements from the scenario narrative.
    • Showing actors and the use cases they perform.
    • Use inheritance where necessary of both use cases and actors.
    • Use of <<includes>>and <<extends>> where necessary.
    • Use house style model to document one primary use case.
  • Produce a class diagram to model the system structure you propose for your potential solution. Decouple as much as possible with Boundary, Control and Entity classes. Consider a design pattern for this (In your commentary, justify the use of the chosen design pattern, on the other hand, if you do not use it, justify why). This should include:
    • Detailed classes with all key variables/attributes and datatypes with access modifiers (private, public or protected) clearly shown in adherence to encapsulation principal of OOP and multiplicities of the relationships.
    • Procedures or functions with (parameters and their datatypes shown) as well as return type for the class functions. (see diagram below)
    • Use of class relationships (e.g. dependency association, aggregation, composition and inheritance).
    • Consider the use of design patterns in your proposed solution.

An example of a detailed class diagram

  • Produce a sequence diagram to model functional requirements from the scenario narrative for one primary use case.
    • Showing actors and interacting objects.
    • Messages (Methods) calls between objects with parameters and return types were necessary.

Use of alternatives and loops where necessary

© 2020 All Rights Reserved. | Disclaimer: for assistance purposes only. These custom papers should be used with proper reference.