Chia H. Ong
1. Introduction
1. Appointment center
- Doctor shall be able to view and validate appointments.
- Patient shall be able to view available appointment time and
make appointment for consultation.
2. Online consultation
- Doctor and patient shall be able to login and chat online.
- Consultation time shall be logged for billing purposes.
3. Health information
- Doctor shall be able to enter patients health information and
attach reports.
- Doctor shall be able to restrict the access of sensitive
information from patients view.
- Patient shall be able to view his own health information
assigned by the doctor.
4. Health alert
- System shall be able to send email to Doctor upon
appointment request made by patient, and vise versa.
- System shall be able to send email to remind patients of
prescription reordering.
5. Refill prescriptions
- Doctor shall be able to enter the reordering period of
medicine.
- Patient shall be able to track their medicine dosage and order
the medicine online.
- Patient shall be able to choose home delivery or pick up the
medicine from selected pharmacy.
View Appointment
Make appointment
Online Consultation
Access to Own
Health Information
Restrict Access to
Health Information
Patient
Receive Alert
Reorder Medicine
Send Alert
Enter Medicine
Reordering Period
Locate Healthcare
Location
410
Physician
411
1.1.1.4 Enable
alert service via
self-service portal
Increase the
efficiency of
alert service
1.1.1.5 Enable
refill
prescriptions
service via
self-service portal
Increase the
number of
patients using
prescriptions
service
1.1.1.6 Enable
healthcare center
locator service via
self-service portal
Provide
convenience of
locating
healthcare
center
Number of alerts
sent within
certain period of
time.
Number of
re-order service
through online
channel.
1.1.1.2 Enable
appointment
schedule via
self-service portal
1.1.1.3 Enable
consultation
service via
self-service portal
Key
Performance
Indicators
Increase
efficiency of
healthcare
services.
Increase number
of patients using
healthcare
services
Metrics
Services
Increase number
of patients using
healthcare
services
Number of
accounts opened
in the portal to
make use of the
healthcare
services.
- Open account
- Close account
- Get user
profile
- Update user
profile
Increase number
of patients using
healthcare
services
Number of
healthcare
services through
various channels.
Increase the
efficiency of
appointment
center
Number of
appointments
made online
within certain
period of time.
- Update report
status
- Get report
status
- Upload report
analysis
- View health
report
- View
diagnosis
analysis
- Send question
- Order health
report
- Get health
history
- Create
appointment
- View
appointment
- Update
appointment
- Check doctor
schedule
- Cancel
appointment
- Create
consultation
session
- Join
consultation
session
- Save
consultation
content
- Exit
consultation
session
Number of
locator services
through online
channel.
- Alert reminder
services
- Send alert
- Create
automatic
re-ordering
- Update
re-ordering
occurrence
- Select
payment type
- Select delivery
method
- View re-order
information
- Enter search
location
- Search
location with
available
doctors
- Select search
radius
Increase the
efficiency of
consultation
service
Number of
consultations
made through
online channel.
Functional Areas
User profile
Contact and event
history
Health reporting
Report activities
Appointment activities
Online consultation
Consultation content
history
Alert management
Alert tracking history
Prescription
management
Order event history
Location management
Subsystems
User management
Report management
Appointment
management
Content management
Alert setup
Medicine Reordering
412
Process decomposition
1. Get User
2. Maintain User
1. Get User
1.1. Search User
1.2. Retrieve User Info
1.3. Retrieve User Type
2. Maintain User
2.1 Create User
2.2 Update User
2.3 Delete User
2.4 Change Address
2.5 Change Contact Info
2.6 Assign Doctor
<<Subsystem>>
User Management
Service component
User Management
Service component
Password Management
Functional component
User Profile
Functional component
User Type
Service component
Physician Patient Assignment
Functional component
Patient Record
Functional component
Health Center
Technical component
Login Engine
Technical component
Rule Engine
414
Services Defined
Manage Report
Verify Patient Info
1.2
Retrieve Report
1.3
2
2.1
2.2
2.3
2.4
2.5
3
3.1
Upload Attachment
Save Report
Update Report
Verify Doctor Info
3.2
3.3
4
4.1
Get Report
Save Report
Delete Report
Verify Doctor Info
5
5.1
Get Report
Get Report Summary
Poor
Average
Excellent
U
GetUCareUserByUserName_Password
GetUCareUserRecordbyUserID
GetPatientRecordByPatientID
GetPrescriptionListByPatientRecordID
U
U
U
U
AddPatientRecord
GetPhysicianByPhysicianID
GetPatientListByPhysicianID
GetUCareUserRecordbyUserID
GetPatientRecordByPatientID
(Local service)
UpdatePatientRecord
U
U
U
GetUCareUserByUserName_Password
GetPhysicianByPhysicianID
GetPatientRecordByPatientID
UpdatePatientRecord
U
U
GetUCareUserByUserName_Password
GetPhysicianByPhysicianID
GetPatientRecordByPatientID
GetPrescriptionListByPatientRecordID
U
Total Count
comp
Count all
where:
Count p = Count Entry of Poor, P = 1,
Count a = Count Entry of Average, A = 2,
Count e = Count Entry of Excellent, E = 3,
Count all = Total Count of Entry
4. Summary
SOA based system can be designed and implemented in
many ways. SOMA provides a good guidance in designing a
415
5. Conclusions
SOA offers a huge set of benefits by providing loose
coupling, platform neutrality, standards based implementation,
rigid contracts for version independence etc [11]. Nowadays,
many companies already adopt SOA in their applications. The
decision of whether to develop application with or without
SOA really relies on the usage and requirements of the system.
It is always advisable to adopt SOA framework if they need to
interact with various types of services.
We have demonstrated the way of building a SOA based
healthcare application using IBM SOMA method. SOMA has
been designed and developed from hundreds of projects around
the world in multiple industries. The life cycle of a SOMA
project uses a fractal approach, where the application of
method tasks to self-similar scope, meaning tasks are done in a
similar way in larger or smaller boundary scopes. In SOMA
method, we identify the main activities in a broader scope
during the initial stage, and further elaborate and refine the
scopes in the later stage. This also fits well with the actual
software development environment where requirements
change incrementally throughout the development cycle.
As a conclusion, SOMA benefits in providing guidance to
development of SOA-based solutions.
References
[1] Brown, A., & Adams, A. (2007). The ethical challenges of
ubiquitous healthcare. International Review of Information Ethics
(Vol. 8), Article,
http://www.i-r-i-e.net/inhalt/008/008_9.pdf
[2] Microsoft. Connected Health Framework Architecture and Design
Blueprint, A Stable Foundation for Knowledge Driven Health.
(October 2006). Retrieved October 13, 2008,
http://www.microsoft.com/industry/healthcare/businessvalue/
chframework.mspx
[3] Erl, T. (2007). SOA Principles of Service Design (1st ed.). Prentice
Hall.
[4] Arsanjani, A., & Ghosh. S., & Allam. A., & Abdollah. T., &
Ganapathy. S., & Holley. K. SOMA: A method for developing
416