Professional Documents
Culture Documents
Case Analysis Final
Case Analysis Final
2013300151
2013300018
Case Analysis 2
Medical Appointments System
Section A
A1.
Patient
information,
Appointment
details, Check-in 0
details, Appointment
Cancellation MEDICAL details
PATIENT details APPOINTMENTS DOCTOR
SYSTEM
Booked Appointment
Appointment outcomes
Details,
Appointment
outcomes
b) Top level dataflow diagram of the Medical Appointments System
Unknown Patient 1
Number Patient Number
CONFIRMATION PATIENT RECORDS
PROCESS Unregistered
Patient Number
Unregistered Patient
Number
Name, Date of Birth,
Address, Contact 2
number Patient Information
REGISTRATION
PROCESS
Registered Registered Patient Number
Patient Number
Patient Information
Booking 3
details
Appointment APPOINTMENT RECORDS
MAKE
details
APPOINTMENT
PATIENT
Booked Available time slots
appointment
Booked appointment details
4
Registered Patient Number
CHECK-IN
PROCESS
Appointment
outcomes Checked-in Patient Information
5
Checked-in Appointment Outcome, Details of
Patient
DOCTOR APPOINTMENT prescription
Information
PROCESS
Appointment
Outcome, Checked-in Patient Information
Details of
prescription 6 Checked-out Patient
Information
APPOINTMENT RECORDS
DEREGISTER
PROCESS
In a waterfall model, each phase must be completed before the next phase can
begin and there is no overlapping in the phases as shown in the figure below. It illustrates
that software development process in a linear sequential flow which means that any
phase in the development process begins only if the previous phase is complete.
We would recommend to use the iterative or incremental model because not only
that the model generates working software quickly and early during the software life cycle,
easier to test and debug during a smaller iteration, and easier to manage risk because
risky pieces are identified and handled during iteration but this model is more flexible and
customer can respond to each built or increment. Moreover, the requirements of the
complete system are clearly defined and understood based on the given. The biggest
advantage to doing system development iteratively is that we’ll avoid getting into long
system development cycles where work can drag on indefinitely without user feedback.
In developing a Medical Appointment System, the center can already start to use the
system when the system for recording patients’ name and doctors’ name is finished.
A3.
a) General criteria used to decide which OTS software applications are suitable
1. Does the package meet our current requirements: How much configuration /
customization would be required and how easy would this be to do? Would the software
require us to make changes to our existing business processes?
2. Does it meet our future requirements: Will the package meet requirements that we
can anticipate having in the future?
3. Implementability: What platform does the package require? Will we be able to integrate
it with our existing systems?
4. Support: What is available in terms of training? Consulting? Documentation?
Community? How stable is the supplier?
5. Cost: How much will it cost to implement (license, hosting, customization), maintain,
upgrade, modify?
6. Deliverability: Will customization be done through APIs (good) or will it need to be done
by modifying the source code (bad)? How difficult is it to test the package (especially in
an automated fashion)?
7. Supplier – The supplier is one of the most important thing to consider when buying the
package. How stable is the supplier when it comes to supplying the software?
8. Manageability- It is also needed to consider if the OTS software could be easily handled
and used by the user in managing its business aspects.
9. Success - One route to mitigating the perceived risk in OTS software is to choose a
package based on its historical and current success, as measured by the financial
success of the software package's producer and the size of the associated network.
10. Standardization - Standardization can be achieved at various levels and in many forms
in packaged software. it is important to choose the type that is right for the particular
organization, according to its available resources and constraints
b) Other options
Open-source software (OSS) can be an alternative. It is a computer software with its source
code made available with a license in which the copyright holder provides the rights to study,
change, and distribute the software to anyone and for any purpose. Open-source software may
be developed in a collaborative public manner. According to scientists who studied it, open-
source software is a prominent example of open collaboration. The term is often written without
a hyphen as "open source software".
Section B
B4.
a) Normalized table
2. Only the subclasses are implemented as tables. The attributes of the superclass are
kept in the subclass tables. This works if the superclass is abstract.
3. All the classes are implemented as separate tables. To retrieve the data for a subclass,
both its own table and the table of its superclass must be accessed.
B6.
a) Brief explanation of ‘object interaction and collaboration’ in object-oriented systems
Object-oriented design is a design strategy where system designers think in terms of
‘things’ instead of operations or functions. Rather than a program being designed as a set of
functions that interchange data through their parameters and through a shared memory (global
variables), an object-oriented program is made up of interacting objects. Objects maintain their
own local state and define operations on that state information. They hide information about the
representation of the state and hence limit access to it.
b) Sequence diagram for the use case ‘Check in’ in the Medical Appointments system
c) State machine/chart for the class Appointment in the Medical Appointments system
Arrange
Arranged
Check in
Checked in
Complete
Completed
Archive