Escolar Documentos
Profissional Documentos
Cultura Documentos
Dickson K.W. Chiu1, Benny W. C. Kwok1, Ray L. S. Wong1, S.C. Cheung2, Eleanna Kafeza3
1
Department of Computer Science and Engineering, The Chinese University of Hong Kong
2
Department of Computer Science, Hong Kong University of Science and Technology
3
Department of Marketing and Communications, Athens University of Economics and Business
email: dicksonchiu@ieee.org, { bennykok2000, digital_ray }@yahoo.com, scc@cs.ust.hk, kafeza@aueb.gr,
+
This work was supported by the Hong Kong Research Grant Council with an Earmarked Research Grant (HKUST 6170/03E).
AMS in a medical house-call system prototype. The rest of system, in which the concepts of alerts play an important
our paper is organized as follows. Section 2 discusses a role. Examples include: (a) finding a doctor for the patient;
motivating example drawn from a medical house-call ap- (b) confirming the doctor and patient on the house-call;
plication to demonstrate our approach throughout this pa- and (c) the exception handling procedure of the doctor’s
per. Section 3 describes our alert conceptual model that absence from a call, respectively. These motivate our gen-
consists of two parts, namely, the processes and the alerts. eralized alert conceptual design and algorithms.
In section 4, we present our architecture for an AMS and
the mechanisms for monitoring and routing the alerts. Sec-
tion 5 discusses some implementation details. We con- Payment
Administrative
Staff
Finish Consultation
Report Updated Status
corporation receives a call from a patient (either electroni- Report Absence of Doctor
cally or by phone), they will arrange a doctor to perform Handle Absence of Doctor
Figure 2. UML Activity Diagrams for (a) finding a doctor, (b) confirming doctor and patient, (c) absence of doctor, respectively
The call center is also a bottle neck part in the whole identify the need for event monitors, and describe some of
E-service process. It is difficult to receive too many re- the requirements of such monitors, such as, tracking medi-
quests at the same time manually. If it is automated as E- cal events, looking for clinically important situations, and
services, user can request house call via the Internet sending messages to the providers. Eisenstadt et al. [9]
through different devices. Besides through a browser on a further categorize messages as alerts, results, and replies.
PC, users may call through other mobile devices. On the The limitation of their approach is that they only focus on
other hand, patients with long-term sickness can also call alerts that can be handled by 2-way pagers. Ride et al. [20]
via pre-programmed devices with a simple interface (such argue that the problem of figuring out to whom the mes-
as just an electronic button). In the manual system, service sage should be sent is a difficult one. They only suggested
personnel can only receive alert message by phone or some ad hoc solutions, e.g., sending a message to whoever
pager. The new system allows them to receive from or has recently examined the patient electronic record. In
reply to the system via different channels, such as, Short summary, the study of alerts even in healthcare informat-
Message Service (SMS), email, fax, Personal Digital As- ics, which involves life critical application, is still prelimi-
sistance (PDA), I seek you (ICQ), etc. Costly and ineffi- nary. This also motivates us to conduct an in-depth study
cient manual calls and retry calls can be mostly eliminated on alerts for further applications in these areas.
and therefore this brings a great benefit to the medical
corporation.
Communication with medical partners and hospitals is 3. Alert Conceptual Model
a time-consuming process in the existing system. If their
systems are also computerized in such a way, they can
E-Service Application Logic
(J2EE/WFMS/…)
form a service grid with a common interface, streamlining
E-service provision among partners. In this paper, we shall Alerts (AMS)
concentrate on our new proposals of alert mechanisms,
while other details on inter-organizational process interop- Events / Exceptions (Web Services)
erations can be found in our earlier work [4][5][8].
Figure 3. The role of alerts in an information system
In the context of workflow management systems
(WFMS), we have recently proposed to separate user Figure 3 further clarifies the role of alerts in an infor-
alerts from user sessions with the WFMS to improve the mation system. Alerts capture urgency requirements of a
flexibility in our ME-ADOME system [2]. Online users task, as required by some E-service application logic
are alerted through ICQ, with the task summary and reply (which can be capture in any type of software implementa-
URL as the message content. If the user is not online or tions). An alert can either be (i) asynchronously received
does not reply within a pre-defined period, the WFMS will by external events or exceptions, typically incoming E-
send the alert by email. At the same time, another alert service requests, or (ii) synchronously generated by inter-
may be sent via SMS to the user’s mobile phone. What- nal E-service application logics. It should also be noted
ever the alert channel has been, the user need not connect that exceptions are subclasses of events [6]. However,
to WFMS on the same device, or even on the same plat- different from general events, alerts have much more spe-
form. For example, after receiving a SMS alert, the user cific attributes, in particular, urgency and service require-
may use his handset to connect to the WFMS via Wireless ments. Different from exceptions, they need not relate to
Application Protocol (WAP), or he/she may reply with an abnormal behaviors. Alerts received or generated have to
SMS message. Alternatively, the user may find a PC with be handled by the AMS by requesting services from either
Internet connection or use his/her PDA to connect to the (i) internal information systems, (ii) human service pro-
WFMS. To our knowledge, there has been no other vider, or (iii) external E-service providers. As such, the
WFMS employing this approach. So far, there has been AMS also handles inter-organizational interactions.
no detailed study on the linkage between alerts and work- As summarized in Figure 4, our alert conceptual
flows, neither in medical applications or e-services. model consists of two parts, the process and the alerts
Raghupathi et al. [21] point out that information tech- model. This is because besides an alert itself, we must also
nology (IT) is important to healthcare and the estimated IT consider the requirements of the tasks associated with the
expenditure on healthcare in 2002 is 21.6 billions in the alert. The process model describes a process that abstracts
United States. New healthcare applications supporting IT- the procedures of an organization. As an extension to ex-
based strategy are required for meeting competitive chal- isting process models such as [23], our process model ab-
lenges. Ammenwerth et al. [1] also report that one of the stracts information regarding roles and their schedules of
major issues that mobile technologies can help in hospitals persons or E-service providers possessing these roles. A
is communication and reachability management. Commu- preliminary version of our process model in the context of
nications that include the patient, the message sender, and WFMS is available in [6]. We further incorporate alerts
the urgency are useful. Hripcsak et al. [13] preliminarily and their routing in this paper.
Task 1 associate
1..* Alert
able for service. Besides identification information, an
alert has an urgency level and a response flag that indi-
0..* 1
1
require
cates whether it has to be acknowledged by a deadline.
The urgency of the alert U could be a function of time.
request Normally when not acknowledged, the AMS increases
Devices 1..n Role
alert urgency with time, as further explained in the next
1..* 1..*
section. Although traditionally alerts are small messages,
Capability
Profile
we generalize the concept of alert to include any addi-
* 1..* 0..1 tional information are urgent, important, or that can better
Schedule Service Provider Response
1..* 1 1 0..n
justify the request. For example, an audio file or an image
could describe the injured patient better than text. Note
that there can be one or more alerts associated to a com-
Figure 4. UML Class Diagram for alert concept module munication task. Association models the relationship be-
tween a task and a set of alerts, i.e., a task will trigger at
least one alert. Response is user reply of a alert sent by the
3.1. The Process Model AMS. If the alert message is set response flag to be true, it
In an organization, some of its tasks have to be per- means reply from the receiver of the alert is a must.
formed by another organization via E-services. We call After receiving an alert, the service provider has to
them communication tasks. Besides the task name and check it with its local policies and respond accordingly.
description, the requirements for performing each of them On the other hand, the AMS needs to deal with those alerts
has to be specified as well. We call such requirements that are not acknowledged by the deadline. From reported
service-provider roles. Communication tasks generate practice, we observe that as long as an alert is not ac-
alerts that are routed to matching service provider(s), knowledged, the service provider assigned to handle the
which can be human or electronic (E-service provider). alert may change. As a result, the AMS can revise the
This task has to be carried out by a service provider play- matching between the alert and the service provider. In
ing the required role that reflects the requestor’s require- addition, as the time passes without any acknowledge-
ment. Sometimes, an alert might need to be sent to several ment, the urgency of the alert should increase as well.
service providers (e.g., doctors, or medical partners) with Thus, this may in turn change the service provider to be
the similar capabilities. Thus, the three kinds of elements requested. In our model, we propose a flexible approach,
in a process of AMS, viz., Task, Capability Profile, and in which a strategy can be defined by the administrator.
Schedule, as illustrated as follows: Each service provider has either communicated to all
1. Task tuple definition: (Tid, Tdes, {Rid}) interested parties a list of the service descriptions that it
provides and/or it allows for a search on the provided web-
Tid Unique identifier of the task services for example where the alert description tries to
Tdes Task description match the existing services and/or has published the ser-
{Rid} Set of roles required to accomplish the task
vices though a broker. Thus, the four kinds of elements
concerning the alerts of AMS, viz., Alert, Association,
2. Capability Profile tuple definition: (Eid, {Rid}) Response and Service Providers, are illustrated as follows:
1. Alert tuple definition: (Aid, Asub, Act, {{Eid},{Rid}},
Eid Unique identifier of a service provider Urg, Rsp, Tdl)
{Rid} Set of roles that the service provider plays
3. Response tuple definition: (Eid, Aid, Rmsg, Tstp) by the Process Execution Module. The Outgoing Alert
Monitor subsystem is responsible for creating and submit-
Eid Receiver (Service Provider ID) ting the alerts by means of Web services requests to the
Aid Alert which the response belongs to corresponding service providers, and monitoring their re-
Rmsg Response message
sponses. The Outgoing Alert Monitor subsystem consists
Tstp Timestamp indicated the time when the alert was re-
ceived of three modules: the Urgencies Strategy Definition, the
Role Matching and the Urgencies Monitoring modules.
4. Service Provider tuple definition: (did, Ddi, {(Cdi,Pdi)},Q) The Urgencies Strategy Definition module specifies the
policies that will be followed if the alert is not acknowl-
did Identification information of the service provider
edged within the deadline. The Role Matching module is
Ddi Description information about the service pro- responsible for identifying the role to which the alert will
vider be forwarded. The Urgencies Monitoring module is re-
{(Cdi,Pdi)} Set of pairs: Cdi describes the service that the sponsible for applying the strategies defined at the urgen-
service provider offers, Pdi indicates the average cies strategy definition. In addition, the Process and Alert
response time Definition module supports a tool with which users may
Q Queue in which the set of alerts are waiting to be define the tasks and their associated alerts according to the
served by the corresponding service provider. AMS model. As for human users, they are communicated
with ICQ, SMS, and email too. As such, a hospital sup-
porting only manual record retrieval may still participate
4. Alert Management System in the integration. The alert can be routed to a clerk, who
input manually the required response to the requestor’s
In this section, we first present our system architecture Web service.
for a flexible AMS, which supports sophisticated alert
monitoring and routing. We then present an example ser- 4.2. The Service Provider Matching Module
vice provider matching algorithm. In subsection 4.3, we
deal with the problem of unacknowledged alerts with an
Input: alert requests
urgency strategy definition schema and raising urgencies. Output: (eid, did)
In subsection 4.4, we present our overall monitoring Service Provider Matching
framework for an AMS. Finally, we outline the Web Ser- For every alert (αid, Ǽ, Da, {Ri}, U, B, T )
// find the service provider that can play the required roles
vices definition required by the AMS. Compute the set SP={ (did , Ci): such that ∀(did, {Rj} ) {Ri}={Rj} and
∀ ( did, Ddi, {(Cdi,Pdi)},Q) Ci is the web service to play the roles }
4.1. AMS Architecture // if no such service provider exists, find another playing a superset of roles
If SP =∅ {
Increase urgency
Alert Management System (AMS) Upgrade alert (αid, Ǽ, Da, {Ri}, Urgency for service provider role substitu-
Counterparty
Counterparty
Outgoing Alerts
The Outgoing Alert Monitor tion, B, T )
Counterparty
Responses for Outgoing Alerts Role Matching exit
WebServer
Server Internet
Incoming Alert
}
Monitor
Web
Web Server Incoming
Incoming Alerts Alerts
Urgencies
Strategy
Response of Incoming Alerts
Responses for Incoming Alerts Definition Module // find the service provider that are available to receive the alert before its
AMS
AMS
AMS Web Services deadline
Server Process
Execution alerts Urgencies
Monitoring
Compute the set SPsub={ (did , Ci): (did , Ci): ∈ SP such that expected submis-
Module
sion time + average response time (Pi) <= deadline}
Process / Alert // if no such service provider exists, find another playing a superset of roles
ICQ, SMS, Email alerts Definition Module
to / from human users If Csub =∅ {
Increase urgency
Upgrade alert (αid, Ǽ, Da, {Ri}, Urgency for service provider role substitu-
Database
tion, B, T )
exit
}
Figure 5. Alert Management System architecture Select the first service provider of SPsub to submit the alert.
stricts the set of service providers that can receive the Table 2 shows an example urgencies strategy table.
alert. If the matching is successful, one service provider is Here, let us consider the association of alert 002 of Table 1
selected. In case no matching is available (i.e., there exists with this table. The default level for alert 002 is Urgent.
no service provider with the requested role that can meet When the priority increases to Very Urgent because there
the deadline), the algorithm upgrades the alert by expand- has been no response, the AMS creates another alert mes-
ing the roles whenever possible. After the matching, the sage to notify the service provider about the eminent dead-
active alerts table keeps all instantiated alerts and whether line. If still there is no response, the AMS tries another
the alert has been acknowledged or not. A typical entry of service provider with the same capabilities and the best
the active alerts table is shown as follows, where 2/5: response time. If this step also fails, the priority further
17:00 is the current time of the system, the alert has been increases to Very Critical, where all available service pro-
propagated, and there has been no response: viders with requested capabilities will receive the alert.
Table 1: Active Alerts Table
4.4. The Service Provider Monitoring Module
Active alerts table : Alert Resp.
The service provider monitoring module is responsible
((002, Hospital A, phone: 9745678, Doctor Y, ∅ for sending alert messages, receiving acknowledgments,
Urgent, Response, 2/5: 17:00) maintaining alert status, and logging information. For
every acknowledgment message received, the service pro-
vider monitoring module updates the status information of
4.3. The Urgencies Strategy Definition Module the associated alert. It tags that the alert has been “taken
The urgencies strategy definition module is a tool for care of”. If the alert message has been sent to several ser-
defining the policies according to which the urgencies of vice providers, the first one to acknowledge is assigned to
the alert will evolve. Moreover, this module is responsible the task and then reconfirmed. Other service providers will
for keeping and updating status information for the alerts. receive a cancellation message instead. Then for every
In our alert model, every alert is associated with an ur- alert of the active table with its deadline expired, the algo-
gency value and a deadline, while every service provider rithm checks the urgency strategy table, executes the as-
associates an average response time for every service that sociated action and updates the status information.
it provides.
During the specification phase, the administrator has to Increase urgency U [false]
specify the urgencies strategy tables. If an alert is not ac- Check if response [true]
knowledged, the AMS raises its urgency. An urgencies [response
received by deadline
strategy table defines the policies for every urgency in- required]
crease and the additional actions that should be taken. The Create Alert Submit Alert Log Alert
(αid,E,Da,{Rj},U,B,T) (αid,E,Da,{R j},U,B,T) (αid,E,Da,{Rj},U,B,T)
administrator may define different urgency strategy tables
for different types of alerts. For example, we could define
the urgency values from the ordered set {Low, Normal, Check if task performed
upon task due [true]
Urgent, Very Urgent, Critical, Very Critical} and a default Set urgency U to Urgent
urgency function as follows: Send Alert to notify
Administrator & Requestor
[false]
Urgent t ≤ T (default)
°Very Urgent T < t ≤ T + dt1 Figure 7. Control flow of the alerts in UML Activity Diagram
°
U 002 (t ) = ®
°Critical T + dt1 < t ≤ T + dt1 + dt2
°¯Very Critical T + dt1 + dt2 < t ≤ T + dt1 + dt2 + dt3 Figure 7 describes an overview of the flow control of
alerts. The “Create Alert” node implements the creation of
Table 2. Example urgencies strategy table the alert as well as the value assignment (i.e., the execu-
tion of the matching algorithm). The “Submit alert” node
Urgency002 Action
sends the alert to the matched service provider (including
Urgent default humans such as doctors or nurses) and updates the alert to
Very Urgent Submit a second alert to the same SP, notify- the active alerts table. The “Log Alert” node keeps the
ing about the approaching deadline logging information.
Critical Redirect the alert to another SP that has the The alert monitoring module is responsible for the
best response time
“Check if response received by deadline” node as well as
Very Critical Send the alert to several SPs and accept the
the “Increase urgency U” node that results in the re-
results of the one that response first
submission of an un-responded alert. The “Check if task
performed upon task due” node is deadline triggered, i.e.,
if the associated task is not performed within deadline
(e.g., the doctor does not notify his arrival to the patient’s is required for a complete system. The application logic is
location on time, or a patient record is not received within triggered by the Process Execution Module of the AMS to
deadline), then it generates another alert. In addition, an carry out timely appropriate actions in response to corre-
exception alert is send to the relevant administrator and sponding alert events. In addition, the application logic
the service requestor to notify this exception. As such, supports the Web front-end and other requests from medi-
additional manual or system assisted exception handling cal partners’ Web Service requests, such as process status
processes [7] can be carried out by both parties. enquiries. In particular, we filter and validate requests and
formulate them with alerts in our own format before feed-
4.5. Web Services Design for AMS ing into the AMS. After that, the AMS can manage the
alerts on its own, routing them to selected service provid-
In this subsection, we enlist a selection of Web Ser- ers (human or E-service providers) and monitoring the
vices for the AMS as follows. An alert to a service pro- actions. Only in the case of exceptions as defined by the
vider can be requested through the Web service re- administrators (e.g., services are not performed within
questAlert. The requestor includes parameters encapsula- deadline), new alerts are generated to the administrative
tion the requirements and description of the alert, together staff and the service requestors to trigger possible excep-
with optional specification of a deferred response channel tion handling procedures (which may be pre-programmed
(which defaults to a Web Service receiveDeferredRe- or system supported manual activities).
sponse, and may be email, SMS, etc., for human request-
ors). In response, the service provider will send an ac-
Patient Doctor Nurse/ Call Administrative
knowledgment to the requestor, indicating that the request Helper Center Staff
3XEOLF8'',
5HJLVWU\
is confirmed or denied, or the response will be deferred. Hospitals
Medical
Partners
Deferred responses and other exception alerts can be re- Desktop Laptop PDA Mobile
Web Services
Web / WAP Programmatic
turned through the requestor’s service receiveDeferredRe- Internet Access Access
Alert
sponse. Further, the requestor may cancel the alert after- XSLT Processor
Alert
Web Front-end
wards by calling the service cancelAlert.
:HE6HUYLFH6HUYHU
Service Name: requestAlert t
er XSLT
Al Style Sheets
• Input: AlertID, RequestorID, AlertMessage, Roles, Ur-
$OHUW Alert Input
$SSOLFDWLRQ
gency, ResponseRequired ( TRUE | FALSE ), Dead- 0DQDJHPHQW /RJLF
6\VWHP Triggered Action
line, Deferred Response Channel.
• Response: AlertID, ServiceProviderID, Ack (Con-
Medical House-Call
firmed | Denied | Deferred), ResponseMessage, Aler- System 'DWDEDVH
tReceiptTime
the eXtended Message Language (XML) messages re- required). The AMS monitors for the reception acknowl-
turned with Web Services can immediately be rendered edgement within a deadline, otherwise the AMS will raise
with XML Stylesheet Language (XSL) technologies for an exception to draw an administrator’s attention for man-
users on different platforms. For example, different Hy- ual follow-up. On the other hand, if the doctor does not
pertext Markup Language (HTML) outputs are generated acknowledge his arrival on time, the AMS will also raise
for Web browsers on desktop PCs and PDAs respectively, an exception. The administrator then calls the doctor’s
while WAP Markup Language (WML) outputs are gener- mobile phone to estimate if a replacement is required. If
ated for mobile phones [15]. Figure 9 illustrates a sample the doctor actively cancels the assignment, the AMS can
alert acknowledgement interface for a doctor through automatically look for another replacement doctor.
WAP on a mobile phone.
AMS evolves from the exception handling and user- WFMS) into their systems as software houses may de-
interface mechanisms of our ME-ADOME WFMS [2], by velop packages with our approach.
factoring out and extending such functions (in particular
urgency requirements). The physical execution of individ-
ual tasks is outside the scope of the AMS and is in capture 6. Conclusions
in the application logic of individual information systems
(as illustrated in Figure 8), which can well be a WFMS. The wide-spread of Internet connectivity and Web
Such an AMS is light-weight and highly coherent, but Services gradually changes the way in accessing and use
loosely coupled with other sub-systems, enabling it to be information. Organizations are shifting towards an inter-
plugged into any information system that needs such func- operation paradigm in which quality and timely services
tionalities. Besides routing alerts to external service pro- are essential. Awareness, accessibility, and responsiveness
viders, an AMS can as well route alerts to other AMSs of are the key relationships among organizations in society.
a large enterprise. As such, AMSs can be physically dis- In this paper, we looked into the problem efficiently
tributed within an enterprise and into required systems. conveying alerts to the right service provider at the right
They are orchestrated by Web Services technology to time using Web Services and mobile devices, for E-
work together seamlessly in the enterprise and even across service provision under urgency constraints. We have pro-
organization boundaries in partner E-service providers. posed a framework of an alert management system that
This architecture is highly scalable and interoperable. Fur- supports both human and E-service providers. This
ther, there are no practical limitations in the implementa- framework introduces a flexible alert conceptual model
tion platform for each of these systems as long as they that allows users to specify tasks, alerts, roles, and their
support Web Services and programmed to complied with inter-relations. We have also presented our AMS architec-
common call conventions. For example, existing Java-2 ture with an implementation outline with Web Services
Enterprise Edition (J2EE) enterprise applications can em- and described the alert monitoring and routing mecha-
ploy Sun Microsystems’ Web Service solutions while cur- nisms involved. The problem of finding the right service
rent Microsoft PC-based systems may be extended with provider to send an alert is non-trivial and application de-
the .NET framework [18]. For legacy systems, wrappers pendent, but our approach provides administrators with a
may be built around them to enable compatibility with guideline to systematically define strategies to address this
Web Services. As such, upgraded sub-systems can pro- problem. We have further proposed a matching algorithm
vide alert support through an AMS gradually for adequate based on our alert conceptual model that can be custom-
testing and streamlining the switch-over, which may oth- ized based on the application requirements. Moreover, we
erwise cause great impacts for major enterprise-wide sys- present an alert monitoring algorithm that monitors the
tems. alerts and raises their urgency accordingly while at the
In addition, Web Services serve as the middleware for same time executes the action that corresponds to the ac-
interactions among business partners for alert-driven E- cording urgency level. As such, an effective AMS can be
services in both directions. Similar gradual migration built and it can be reused by plugging into systems that
strategies are also possible. In order to further streamline require sophisticated alert support. We have demonstrated
interactions among enterprises, application layer semantics the applicability of the AMS in a medical house-call sys-
(such as content taxonomy and category definitions), pro- tem, which need to manage timely services from both hu-
tocols for interaction, and service-level standards are man professionals and E-service providers. With this ap-
called for. Trade unions and regulatory bodies may help in proach, E-service grids can gradually be built up among a
such standardizations. If so, content service grids [11] can group of E-service providers.
be formed for seamless and effective E-services enactment We are also implementing the AMS under our ME-
and monitoring can be realized. ADOME environment [6], aiming to strengthen the sup-
We further consider the applicability of our AMS im- port for alerts for general workflow and E-service man-
plementation framework to other industries is highly posi- agement. We are investigating in inter-relations among
tive and optimistic. This is because of the trend that or- alerts. In particular, we are looking into alerts due to fail-
ganizations are moving towards service-oriented opera- ure of commitments [3], their relation to contract en-
tions. For large enterprises, our operation model for AMS forcement, and in workflow based information integration.
based on the anticipated workflow is highly generic. We are also interested in further issues of adaptation for
Though some enterprises currently do not consider enter- mobile application [3], the impact of cancellations, and
taining alert-driven E-services from clients, they eventu- other possible exceptions. We are also interested in the
ally need to do so in order to increase their competitive- tradeoff between quality and cost, and service negotiation.
ness. For smaller enterprises, it is feasible to plug in such a
light-weighted AMS (as compared with a full-blown