Documente Academic
Documente Profesional
Documente Cultură
This work is subjected to copyright. All rights are reserved whether the whole or part of the material is
concerned, specifically the rights of translation, reprinting, re-use of illusions, recitation, broadcasting,
reproduction on microfilms or in any other way, and storage in data banks. Duplication of this publication of
parts thereof is permitted only under the provision of the copyright law 1965, in its current version, and
permission of use must always be obtained from UBICC Publishers. Violations are liable to prosecution under
the copy right law.
© UBICC Journal
Printed in South Korea
Typesetting: Camera-ready by author, data conversation by UBICC Publishing Services, South Korea
UBICC Publishers
2
Guest Editor’s Biography
Dr. Al-Dahoud, is a associated professor at Al-Zaytoonah University, Amman, Jordan.
He took his PhD from La Sabianza1/Italy and Kiev Polytechnic/Ukraine, on 1996.
He worked at Al-Zaytoonah University since 1996 until now. He worked as visiting professor in many
universities in Jordan and Middle East, as supervisor of master and PhD degrees in computer science. He
established the ICIT since 2003 and he is the program chair of ICIT until now. He was the Vice President of the
IT committee in the ministry of youth/Jordan, 2005, 2006. Al-Dahoud was the General Chair of (ICITST-2008),
June 23–28, 2008, Dublin, Ireland (www.icitst.org).
He has directed and led many projects sponsored by NUFFIC/Netherlands:
- The Tailor-made Training 2007 and On-Line Learning & Learning in an Integrated Virtual Environment" 2008.
His hobby is conference organization, so he participates in the following conferences as general chair, program
chair, session’s organizer or in the publicity committee:
- ICITs, ICITST, ICITNS, DepCos, ICTA, ACITs, IMCL, WSEAS, and AICCSA
Journals Activities: Al-Dahoud worked as Editor in Chief or guest editor or in the Editorial board of the
following Journals:
Journal of Digital Information Management, IAJIT, Journal of Computer Science, Int. J. Internet Technology and
Secured Transactions, and UBICC.
He published many books and journal papers, and participated as speaker in many conferences worldwide.
UBICC Journal
Volume 4, Number 3, July 2009
4
Special Issue on ICIT 2009 Conference - Applied Computing
Tufan AYTAÇ
The Ministry of National Education, Ankara, TURKEY
taytac1@yahoo.com
ABSTRACT
The usage of b-learning approach on in-service education activities in Turkish education system are
getting more and more important these days. Generally, traditional education and computer based
education applications are used on in-service education activities. Blended learning (b-learning)
combines online learning with face-to-face learning. The goal of blended learning is to provide the most
efficient and effective learning experience by combining learning environments. The purpose of this
research is to find out the effect of b-learning approach on developing administrators’ leadership skills.
To identify what the school administrators’ educational needs and to know their existing leadership
skills, needs assessment questionnaire was applied to 72 school administrators who were selected from
33 primary schools in 11 region of Ankara capital city. According to the descriptive statistical analysis
results of questionnaire, in-service training programme was prepared for the development of school
administrators’ leadership skills. The school administrators were separated into three groups as
computer based learning (CBL) (25 participants), blended learning (BL) (23 participants) and
traditional learning (TL) (24 participant) groups. These groups were trained separately with these three
different learning environments by using the in-service training programme. According to the results of
pre-test, post test and achievements score means, it was observed that BL groups’ score is the highest
when compared to TL and CBL groups. As a result of this research, in terms of achievements and
effectiveness, b-learning was found to be the most effective learning environment when compared to the
others. Both learners and tutors findings strongly suggest that blended learning is available alternative
delivery method for inservice education activities.1
1
This research project article has been supported by The Scientific and Technological Research Council of Turkey (TÜBİTAK) (SOBAG 1001
Programme).
Blended Learning practices provide project based learning course materials. While such uses may be unique and
opportunities for active learning and interaction among engaging, they are not exactly novel [13].
learners and especially provides as a way to meet the
educational needs of the learners. Blended learning programs
may include several forms of learning tools, such as real-time
virtual/collaboration software, self-paced web-based courses,
electronic performance support systems (EPSS) embedded
within the learning-task environment, and knowledge
management systems. Blended learning contains various
event-based activities, including face-to-face learning, e-
learning, and self-paced learning activities. Blended learning
often occurs as a mixture of traditional instructor-led training,
synchronous online training, asynchronous self-paced study,
and structured task based training from a teacher or mentor.
The aim of blended learning is to combine the best of
classroom face-to-face learning experiences with the best of
online learning experiences. Overall, blended learning refers
to the integration (or the so-called blending) of e-learning Figure 2: A Blend of Learning Theories
tools and techniques with traditional face-to-face teaching
delivery methods. The two important factors here are the time By applying learning theories of Keller, Gagné, Bloom,
spent on online activities and the amount of technology Merrill, Clark and Gery, (see Figure 2) five key ingredients
utilized, see Concept of Blended Learning figure 1 below: emerge as important elements of a blended learning process
[3,4,6,7,8,9,10,11,12,15,16,19]. (see Figure 2):
1. Live Events: Synchronous, instructor-led learning events
in which all learners participate at the same time, such as in a
live “virtual classroom.”
2. Self-Paced Learning: Learning experiences that the
learner completes individually, at his own speed and on his
own time, such as interactive, Internet-based or CD-ROM
training.
3. Collaboration: Environments in which learners
communicate with others, for example, e-mail, threaded
discussions or online chat.
4. Assessment: A measure of learners’ knowledge. Pre-
assessments can come before live or self-paced events, to
determine prior knowledge, and post-assessments can occur
following live or self-paced learning events, to measure
learning transfer.
Fig. 1: Concept of Blended Learning 5. Performance Support Materials: On-the-job reference
materials that enhance learning retention and transfer,
If two or more of these learning environments which are including PDA downloads, and printable references,
stated above are used to teach an educational objective, it can summaries, and job aids.
be said that blended learning is realized. However blended
learning has more meaning than showing a web page during 2 PURPOSE
a lesson in the classroom and using information immediately
The purpose of this research is to find out the effects of
in the web page to explain the lesson. Blended learning is a
b-learning approach on developing school administrators’
learning of environment which combines environments of
leadership skills.
face to face learning and web-based distance learning.
We observed that b-Learning opportunities for teaching - Blended learning takes time for both the instructor and
objectives make learning entertaining, funny, lasting and learner to adapt to this relatively new concept in delivering
economics as an effective way. In this sense, according to us instruction.
trainers should use b-Learning environment for the Especially, it can be concluded that all the in-service
integration of ICT effectively in learning and teaching. training should be taught more effectively by using b-
Last year, the Turkish Ministry of National Education In- Learning approach. The technological leadership role of the
service Training Department implemented more than 700 in- school administrations is very important for the success of b-
service training courses. The usage of b-Learning Learning approach.
methodology especially in these in-service trainings will The feature of blended learning models has a vital
enrich and support the learning-teaching process of those in- importance for applying individual learning and active
service training. More projects about the usage of b-Learning learning. According to some authors “a blend is integrated
in-service training should be supported and performed. strategy to delivering on promises about learning and
Particularly, the initiatives of the Turkish Ministry of performance [17].
National Education for improving schools information In sum, both learners and tutors findings strongly suggest
technologies and internet infrastructure, distributing that blended learning is available alternative delivery method
authoring software to the teachers, developing education for courses. In supporting blended learning, especially in-
portal and its content, moodle and similar learning service education courses remains both a national leader in
management system software should be used for supporting b- the effective use of technology for teaching and learning, and
learning usage in-service training. School administrators a pioneer in identifying the right mix of face-to-face and
state that b-learning approaches will be used more effectively online communication practices that will enhance learning
in the class. All school administrators’ comments regarding effectiveness [19]. The result of this research backs up all of
the blended course were positive. these. To develop the technological leadership of school
administrators, b-learning approaches should be used
It is cited as below that the positives of the blended learning effectively. Blended learning offers opportunities for both in-
course activities which are used at this research; service school administrators, in-service teachers and their
- Improvement in the quantity and/or quality of the learners.
communications among the school administrators in
discussion board or online groups and face to face activities in
the classroom. REFERENCES
- Good cooperative learning activities
- Blended learning were more effective than classroom [1] Aytaç, T. Eğitimde Bilişim Teknolojileri. Asil Yayın
alone. Higher learner value and impact; the effectiveness Dağıtım, pp. 48-53 (2006).
greater than for nonblended approaches. Learners like b- [2] Aytaç, T. The Influence of B-Learning Model on
learning appraoches. Developing Leadership Skills of Education
- Accessibility to b-learning content and activities rapidly Administrators Research Education Programme, pp.
(every time, everywhere) 48-53. (2006).
- Improved relationships between tutors and students
[3] Singh, H. “Building Effective Blended Learning
- The immediate feedback that could be given school
Programs”, Educational Technology, Vol. 43, Number
administrators
- Flexibility in scheduling and timetabling of course work. 6, pp. 51-54, November – December, (2003).
- An increase of the time actually spent on face-to-face in [4] Oliver, M. ve Trigwell, K. ‘‘Can ‘Blended Learning’ Be
classroom Redeemed?. E-Learning, Vol.2. Number 1, pp. 17,
- Cost effectiveness for both the accrediting learning (2005).
institution and the learner [5] Büyüköztürk, Ş. Sosyal Bilimler İçin Veri Analizi El
The increased cost, reduced training time, and the ability to Kitabı. İstatistik, Araştırma deseni SPSS
easily update training materials offer additional compelling Uygulamaları ve Yorum, 8. Baskı, PegemA Yayıncılık,
reasons for educators to embrace blended learning [22]. Pp: 40-53, Ankara, (2007).
At the research there are some problems according to school [6] Bonk, C. J.; Olson, T. M.; Wisher, R. A. and Orvis, K. L.
administrators opinions cited as below: Learning from Focus Groups: An Examination of
- Some technical web, internet problems access to moddle Blended Learning’’, Journal of Distance Education.
platform. Vol. 17, No 3. pp. 100. (2002).
- The failure of online Power Point presentation of lecture [7] Marsh, J. How to Design Effective Blended Learning.
material to meet some school administrators’ expectations. www.brandon-hall.com. Erişim tarihi: 15 February 2009.
- Some school administrations lack of enthusiasm being in a
blended learning course. [8] Orhan, F. Altınışık, S. A. and Kablan, Z. “Karma
- Limited knowledge in the use of technology. Öğrenme (Blended Learning) Ortamına Dayalı Bir
Uygulama: Yıldız Teknik Üniversitesi Örneği”, IV. [20] Thorne, K. Blended Learning: How to Integrate
Uluslararası Eğitim Teknolojileri Sempozyumu, 24-26 Online and Traditional Learning. United States, Kogan
Kasım 2004, Sakarya, Vol: 1, pp.646-651, (2004). Page, (2004).
[21] Rovai, Alfred P. and Jordan, Hope M. "Blended Learning
[9] Dracup, Mary. "Role Play in Blended Learning: A Case
with Traditional and Fully Online Graduate Courses."
Study Exploring the Impact of Story and Other Elements,
International Review of Research in Open and
Australasian Journal of Educational Technology,
Distance Learning. 2004. Retrieved Sept 27, from
24(3), pp.294-310, (2008).
http://www.irrodl.org/content/v5.2/rovaijordan.html.
[10] Cooper, G. and Heinze, A. "Centralization of (2008)
Assessment: meeting the challenges of Multi-year Team [22] G. Thorsteinsson and T. Page. “Blended Learning
Projects in Information Systems Education." Journal of Approach to Improve, In-Servıce Teacher Education In
Information Systems Education, 18, 3, pp.345 – 356, Europe Through The Fıste Comenıus 2.1. Project” Ict in
(2007). Education: Reflections and Perspectives, Bucharest,
June 14-16, (2007).
[11] Heinze, A. Lecturer in Information Systems,
http://www.aheinze.me.uk/Blended_Learning_Higher_E
ducation.html, Erişim tarihi: 15 February 2009.
[12] Langley, Amanda. “Experiential Learning, E-Learning
and Social Learning: The EES Approach to Developing
Blended Learning” The Fourth Education in a
Changing Environment Conference Book, Edited by
Eamon O’Doherty, İnforming Science Press, pp.171-172,
(2007).
[13] Bonk, C. J. & Graham, C. R. (Eds.). “Future Directions
of Blended Learning In Higher Education and
Workplace Learning Settings” Handbook of blended
learning: Global Perspectives, local designs. San
Francisco, CA: Pfeiffer Publishing. (2004).
[14] Carman, Jared M. Blended Learning Design: Five Key
Ingredients, Director, Product Development
KnowledgeNet, October 2002 www.brandon-hall.com.
Erişim tarihi: 15 February 2009.
[15] Derntl M. Motschnig-Pitrik, Renate. A Layered
Blended Learning Systems Structure, Proceedings of I-
KNOW ’04 Graz, Austria, June 30 - July 2, (2004).
[16] Bañadosa, Emerita. Blended-learning Pedagogical
Model for Teaching and Learning EFL Successfully
Through an Online Interactive Multimedia Environment,
CALICO Journal, Vol. 23, No. 3, p-p 533-550, (2006).
[17] Rosset, A., Douglis, F. &Frazee, R. V. Strategies for
building blended learning. Learning Circuits.
Retrieved August 13, 2007, from
http://www.learningcircuits.org/2003/jul2003/rossett.htm
.
[18] Brandl, K. (2005). Are you ready to moodle?. Language,
Learning & Technology, Vol. 9, No. 2, pp. 16-23, May
(2005).
[19] Blended Learning Pilot Project, Final Report for 2003-
2004 and 2004-2005 Rochester Institute of Technology.
(2004). Blended Learning Pilot Project: Final Report
for the Academic Year 2003 – 2004. Retrieved Feb 5,
,fromhttp://distancelearning.rit.edu/blended/Files/Blende
dPilotFinalReport2003_04.pdf. (2009).
ABSTRACT
Integrated software is very important for the university to manage day-to-day operations. This integrated software is
going through evolution process when changes are requested by the users and finally the new versions are created.
Software version management is the process of identifying and keeping track of different versions of software.
Complexity level of this process would become complicated should software was distributed in many places. This
paper presents a temporal-based software version management model. The model is purposely implemented for
managing software versions in Information Technology Centre, Universiti Darul Iman Malaysia. Temporal elements
such as valid time and transaction time are the main attributes considered, to be inserted into the software version
management database. By having these two attributes, it would help the people involved in software process to
organize data and perform monitoring activities with more efficient.
4. THE SOFTWARE VERSION MANAGEMENT The current approach maintains only the concept
ISSUES IN ITC-UDM of current view version of which an existing
version will be overwritten by a new incoming
There are three divisions have been formed at ITC- version during the process of an update.
UDM. These divisions and their function are as
follows: Based on the mentioned problems, we strongly
believe that the development of temporal-based
Infrastructure and Application Systems (AIS) – software version management tool for ITC-UDM
to develop and maintain the university software; could gain the following benefits:
maintain the university computer networking;
Technical and Services (TS) – to support the To support project and software managers in
maintenance of information technology planning, managing and evaluating version
hardware, training, multimedia services and help management.
desk. Assigning timestamps (absolute and relative) to
Administration and Procurement (AP) - to each transaction will provide transaction-time
manage the daily operation of ITC-UDM such as database functionality, meaning to retain all
administration, procurement etc. previously current database state and making
them available for time-based queries.
Each division is headed by a division leader and To increase the effectiveness and efficiency of
supported by several information technology officers, the collaborative software version management
assistant information technology officers and process.
technicians. All the university software modules are
developed and maintained by AIS Division. Figure 1 5. THE MODEL
depicts the main software modules managed by the
ITC-UDM. There are over thousands source code Version control is one of the main tasks in software
files are produced by the division. Therefore, it is not configuration management. For any software version
easy for the division to manage all those artefacts. would have its own valid time. The collection of
software versions should be organized into systematic
Academic Module way for the purpose of retrieval efficiency and to
University Software Module
organization of temporal elements that involved in S = {A1, A2, A3, …, An, tt, avt-from, avt-until, rvt-
software version management. If we have a software from, rvt-until}
with a set of version signed as, V = {v1, v2, v3, …, vn}
then the model is: where, Ai = attribute name of a version, tt P and,
avt-from, avt-until, rvt-from and rvt-until T.
TEMPORAL(vi V) (tt avt rvt)
Table 2 exhibits the temporal-based version-
where, record management for representing KEWNET’s
avt = [avt-from, avt-until], software version history. For example, KEWNET
rvt = [rvt-from, rvt-until], Ver. 1.1 has been updated three times. For the first
rvt-from = {{opi OPERATORs} {eventi time, the version has been recorded on tt3 with
EVENTs}} and, absolute valid time is from avf2 to avu3 and relative
rvt-until = {{opi OPERATORs} {eventi valid time is from rvf2 to rvu3. For the second
EVENTs}}. updated, on tt4, absolute valid time is from avf2 to
avu4 and relative valid time is from rvf2 to rvu4. The
Thus, if the software that has a set of feature attributes version has another change request and therefore the
Ai then a complete scheme for a temporal-based in version would have a new absolute valid time from
software version management can be signed as: avf2 to avu5 and relative valid time from rvf2 to rvu5.
This transaction is recorded on tt5.
Table 1: The definitions of temporal operator base on time point and time interval
Transaction time
Software
version
Valid time
Absolute Relative
5.2 The Temporal-Based Version Management During the register version process the software
Functionality manager needs to record the foundations information
To carry out experiments validating the model of the software version. Attributes that needed to be
proposed, a client-server prototype has been key-in by software manager can be signed as, Av =
developed. The prototype has three main modules: {version code, date release, version description,
register version, update the version valid time and origin version code, version id}. Figure 3 illustrates
queries. the screen sample used to register the basic
information of the software version.
On completion of new software version Any changes of a software version valid time,
registration, then the software manager needs to software manager needs to update by using this form.
update its valid time and this can be done by using the The tool also allows the user to make a query to the
module update the version valid time, illustrated in database. The users can browse the version valid time
Figure 4. The attributes for this module formed as AT and status for any registered software as shown in
= {version code, transaction date, description, date Figure 5. Meanwhile, Figure 6 shows the output form
start, date end, time start, time end, update by, of query for all histories of valid time and status for a
position}. Attribute transaction date is the current software version.
date and will be auto-generated by the server.
[3] G. M. Clemm. “Replacing Version Control With [13] A. Lie. “Change Oriented Versioning in a
Job Control”, ACM – Proc. 2nd Intl. Workshop Software Engineering Database”, ACM – Proc.
On Software Configuration Management, 1989, 2nd Intl. Workshop on Software Configuration
162 – 169. Management. 1989, 56 – 65.
[4] D. Gao, C. S. Jensen, R. T. Snodgrass and M. D. [14] H. Mary. “Beyond Version Control”, Software
Soo, “Join Operations in Temporal Databases”, Magazine. 16, 1996, 45 – 47.
ABSTRACT
Forensic analysis of the Windows NT File System (NTFS) could provide useful
information leading towards malware detection and presentation of digital
evidence for the court of law. Since NTFS records every event of the system,
forensic tools are required to process an enormous amount of information related
to user / kernel environment, buffer overflows, trace conditions, network stack, etc.
This has led to imperfect forensic tools that are practical for implementation and
hence become popular, but are not comprehensive and effective. Many existing
techniques have failed to identify malicious code in hidden data of the NTFS disk
image. This research discusses the analysis technique we have adopted to
successfully detect maliciousness in hidden data, by investigating the NTFS boot
sector. We have conducted experimental studies with some of the existing popular
forensics tools and have identified their limitations. Further, through our proposed
three-stage forensic analysis process, our experimental investigation attempts to
unearth the vulnerabilities of NTFS disk image and the weaknesses of the current
forensic techniques.
for this empirical study. Since each utility does to detect a keyword or phrase from the disk image.
some specific functionality, a collection of such tools
were necessary to perform a comprehensive set of 2.3 Stage 3 - Analysis of NTFS File System
functionalities. Hence, the following forensic In the final stage of the experimental study, we
utilities / tools were adopted to conduct the analyzed the data obtained from the NTFS disk
experimental investigation in this research work: image that contributed towards meaningful
i) Disk imaging utilities such as dd [11] or conclusions of the forensic investigation. We
dcfldd V1.3.4-1 [12] for obtaining sector- adopted a collection of tools such as the Sleuth Kit
by-sector mirror image of the disk; (TSK), Autopsy Forensic by Brian Carrier and
ii) Evidence collection using utilities such as NTFSINFO v1.0 from Microsoft Sysinternals by
Hexedit [13], Frhed 1.4.0[14] and Strings Mark Russinovich to perform different aspects of the
V2.41[15] to introspect the binary code of NTFS file system analysis.
the NTFS disk image;
iii) NTFS disk analysis using software tools 3 FORENSIC INVESTIGATION STEPS
such as The Sleuth KIT (TSK) 3.01[16] and
Autopsy [17] and NTFSINFO v1.0 [18] to Many aspects must be taken into consideration
explore and extract intruded data as well as when conducting a computer forensic investigation.
hidden data for performing forensic analysis. There are different approaches adopted by an
investigator while examining a crime scene. From
For the experimental investigation of the the literature, we find five steps adopted, such as,
effectiveness of the above tools, we created test data Policy and procedure development, Evidence
on a Pentium (R) Core (TM) 2 Due CPU, 2.19 GHz, assessment, Evidence acquisition, Evidence
2.98 of RAM with Windows XP professional that examination, and documenting and reporting [26]. In
adopts the NTFS file system partition. In this pilot our proposed approach for the digital forensic
empirical study, we focused on the boot sector of the investigation, we adopted the following nine steps as
NTFS disk image. We adopted the following three shown in Figure 1:
stages to perform digital forensic analysis in a
comprehensive manner: Step 1: Policy and Procedure Development – In this
Stage 1: Hard disk data acquisition, step, suitable tools that are needed in the digital
Stage 2: Evidence searching and scene are determined as part of administrative
Stage 3: Analysis of NTFS file system. considerations. All aspects of policy and procedure
development are considered to determine the mission
2.1 Stage 1 - Hard Disk Data Acquisition statement, skills and knowledge, funding, personal
As the first stage in forensic analysis, we used requirement, evidence handling and support from
the dcfldd developed by Nicholas Harbour and dd management.
utility from George Garner to acquire the NTFS disk
Step 2: Hard Disk Acquisition – This step involves
image from the digital electronic storage device.
forensic duplication that could be achieved by
This utility was selected for investigation since it
obtaining NTFS image of the original disk using DD
provides simple and flexible acquisition tools. The
tool command. This step is for obtaining sector-by-
main advantage of using these tools is that we could
sector mirror image of the disk and the output of the
extract the data in or between partitions to a separate
image file is created as Image.dd.
file for more analysis. In addition, this utility
provides built-in MD5 hashing features. Some of its Step 3: Check the Data Integrity – This step ensures
salient features allow the analyst to calculate, save, the integrity of data acquired through reporting of a
and verify the MD5 hash values. In digital forensic hash function. We used MD5 tool to guarantee the
analysis, using hashing technique is important to integrity of the original media and the resulting
ensure data integrity and to identify which values of image file.
data have been maliciously changed as well as to
explore known data objects [19]. Step 4: Extract MFT in the Boot Sector – In this step,
the MFT is extracted from the boot sector. We
analyzed the MFT using WinHex hexeditor tool and
2.2 Stage 2 - Evidence searching
checked number of sectors allocated to the NTFS file
The next stage involved searching for evidences
system using NTFSINO.
with respect to system tampering. An evidence of
intrusion could be gained by looking for some Step 5: Extract $Boot file and Backup boot sector –
known signatures, timestamps as well as even In this step, the $Boot file is extracted to investigate
searching for hidden data [20]. In this stage, we used hidden data. We analyzed the hidden data in the
the Strings command by Mark Russinovich, Frhed $Boot metadata file system using WinHex, TSK and
hexeditor tool by Rihan Kibria and WinHex Autopsy tools.
hexeditor tool by X-Ways Software Technology AG
Step 6: Compare Boot sector and Backup – A
comparison of the original and backup boot sectors is 4 BOOT SECTOR ANALYSIS OF NTFS
performed in this step. We obtained another 2
Images from the original Image using DD tool. The 4.1 NTFS Disk Image
output generated resulted in two image files named, As mentioned in the previous section, the first
backupbootsector.dd and bootsector.dd. We analyzed step to be adopted by a digital forensic investigator is
the two image file named backupbootsector.dd and to acquire a duplicate copy of the NTFS disk image
bootsector.dd using WinHex hex-editor tool, TSK before beginning the analysis. This is to ensure that
and Autopsy tools. the data on the original devices have not been
changed during the analysis. Therefore, it is required
Step 7: Check the Data Integrity – In this step the
to isolate the original infected computer from the
integrity of data is verified again for test of
disk image in order to extract the evidence that could
congruence. We adopted the hashing technique
be found on the electronic storage devices. By
using MD5 tool for the two created image files to
conducting investigations on the disk image, we
check the data integrity.
could unearth any hidden intrusions since the image
Step 8: Extract the ASCII and UNICODE –This step captures the invisible information as well [21]. The
involves extracting the advantages of analyzing disk images are that the
ASCII and UNICODE characters from the binary investigators can: a) preserve the digital crime-scene,
files in the disk image. We used the Strings b) obtain the information in slack space, c) access
command tool and keyword search for matching text unallocated space, free space, and used space, d)
or hexadecimal values recorded on the disk. Through recover file fragments, hidden or deleted files and
keyword search, we could find even files that directories, e) view the partition structure and f) get
contain specific words. date-stamp and ownership of files and folders [3, 22].
Step 9: Physical Presentation – In this final step, all
4.2 Master File Table
the findings from the forensic investigation are
To investigate how intrusions result in data
documented. It involves presenting the digital hiding, data deletion and other obfuscations, it is
evidence through documentation and reporting essential to understand the physical characteristics of
procedures.
the Microsoft NTFS file system. Master File Table
(MFT) is the core of NTFS since it contains details
of every file and folder on the volume and allocates
two sectors for every MFT entry [23]. Hence, a good
knowledge of the MFT layout structure also
facilitates the disk recovery process. Each MFT entry
has a fixed size which is 1 KB (at byte offset 64 in
the boot sector one could identify the MFT record
size). We provide the MFT layout and represent the
plan of the NTFS file system using Figure 2. The
main purpose of NTFS is to facilitate reading and
writing of the file attributes and the MFT enables a
forensic analyst to examine in some detail the
structure and working of the NTFS volume.
Therefore, it’s important to understand how the
attributes are stored in the MFT entry.
The key feature to note is that MFT entry within
the MFT contains attributes that can have any format
and any size. Further, as shown in Figure 2, every
attribute contains an entry header which is allocated
in the first 42 bytes of a file record, and it contains an
attribute header and attribute content. The attribute
header is used to identify the size, name and the flag
value. The attribute content can reside in the MFT
followed by the attribute header if the size is less
than 700 bytes (known as a resident attribute),
otherwise it will store the attribute content in an
external cluster called cluster run (known as a non-
resident attribute). This is because; the MFT entry is
1KB in size and hence cannot fit anything that
Figure 1: Forensic investigation steps occupies more than 700 bytes.
Table 2: Results of $Boot Analysis We found that hidden data in the $Boot data
structure could not be detected directly by the
MFT Entry Header Values: existing tools used in this study and manual
Entry: 7 Sequence: 7 inspections were required alongside these forensic
$LogFile Sequence Number: 0 tools. Hence, through the analysis conducted with
Allocated File various existing utilities and tools, we arrived at the
Links: 1 following results:
$STANDARD_INFORMATION Attribute Values: i) Since NTFS stores all events that take place
Flags: Hidden, System on a computer system, there is a huge amount
Owner ID: 0 of data analysis required while scanning the
Created: Mon Feb 09 12:09:06 2009 entire NTFS disk image for forensic purposes.
File Modified: Mon Feb 09 12:09:06 2009 In this empirical study, by merely focusing
MFT Modified: Mon Feb 09 12:09:06 2009 on the hidden data of the $Boot file, we have
Accessed: Mon Feb 09 12:09:06 2009 shown that a variety of tools and utilities had
to be adopted along with manual inspections.
$FILE_NAME Attribute Values: Hence, it takes an enormous amount of time
Flags: Hidden, System to analyze the data derived with such tools.
Name: $Boot ii) The existing forensic tools are not
Parent MFT Entry: 5 Sequence: 5 comprehensive and effective in identifying
Allocated Size: 8192 Actual Size: 8192 the recent computer threats. Not all computer
Created: Mon Feb 09 12:09:06 2009 infections are detected by forensic tools,
File Modified: Mon Feb 09 12:09:06 2009 especially intrusions that are in the form of
MFT Modified: Mon Feb 09 12:09:06 2009 hidden data in the $Boot file go unchecked.
Accessed: Mon Feb 09 12:09:06 2009
iii) It was mandatory to perform manual
Attributes: investigations alongside the existing tools. By
Type: $STANDARD_INFORMATION (16-0) adopting a manual introspection of the $Boot
Name: N/A Resident size: 48 file using the three-stage approach of i) hard
Type: $FILE_NAME (48-2) Name: N/A Resident disk acquisition, ii) evidence searching and
size: 76 iii) analysis of the NTFS file system, we
Type: $SECURITY_DESCRIPTOR (80-3) could successfully identify hidden data in the
Name: N/A Resident size: 116 $Boot file.
Type: $DATA (128-1) Name: $Data Non- iv) Intelligent search techniques could be adopted
Resident size: 8192 to extract the ASCII and UNICODE
01 characters from binary files in the disk image
on either the full file system image or just the
Analysis of the $Boot data structure of the NTFS unallocated space, which could speed-up the
file system will identify any hidden data. The process of identifying hidden data.
analyzer should start by making a comparison
between the boot sector and the backup boot sector. v) One of the main reasons for having varying
The image with the boot sector and backup boot tools is that Microsoft has different versions
sector are supposed to be identical; otherwise there is of the NTFS file system to be catered for.
some data hidden in the $Boot data structure. One While Windows XP and Windows Server
method is to check the integrity of the backup boot 2003 use the same NTFS version, Windows
sector and the boot sector by calculating the MD5 for Vista uses the NTFS 3.1 version [7]. The new
both of them. A difference in checksum indicates NTFS 3.1 has changed the on-disk structure.
that there is some hidden data. We performed this For example, the location of the volume boot
comparison by adopting the following commands on record is at physical sector 2,048. Most of the
the $Boot image file and the backup boot image: existing tools do not work with all the
different versions of NTFS file system, and
dd if=image.dd bs=512 count=1 skip=61949 hence a comprehensive tool is warranted to
of=c:\backupbootsector.dd –md5sum –verifymd5 – cope with these changes.
Byte
Size Description Value Action / Result
Range
If bootable, jump. If non-bootable,
0 -- 2 3 Jump to boot code 9458411
used to store error message
3 -- 10 8 OEM Name – System ID NTFS
11 -- 12 2 Bytes per sector: 512
13 -- 13 1 Sectors per cluster 8
14 -- 15 2 Reserved sectors 0 Unused – Possible Infection
16 -- 20 5 Unused 0 Unused – Possible Infection
21 -- 21 1 Media descriptor 0
22 -- 23 2 Unused 0 Unused – Possible Infection
24 -- 25 2 Sectors per track 63 No Check – Possible Infection
26 -- 27 2 Number of heads 255 No Check – Possible Infection
28 -- 31 4 Unused 32 No Check – Possible Infection
32 -- 35 4 Unused 0 Unused – Possible Infection
36 -- 39 4 Drive type check 80 00 00 00 For USB thumb drive
Number of sectors in file
40 -- 47 8 0.47264 GB
system (volume)
Starting cluster address of
48 -- 55 8 4*8=32
$MFT
Starting cluster address of MFT
56 -- 63 8 619,49
Mirror $DATA attribute
64 -- 64 1 Size of record - MFT entry 210=1024
65 -- 67 3 Unused 0 Unused – Possible Infection
68 -- 68 1 Size of index record 01h
69 -- 71 3 Unused 0 Unused – Possible Infection
72 -- 79 8 Serial number C87C8h
80 -- 83 4 Unused 0 Unused – Possible Infection
84 -- 509 426 Boot code ~
510 --511 2 Boot signature 0xAA55
Victor V. Toporkov
Computer Science Department, Moscow Power Engineering Institute,
ul. Krasnokazarmennaya 14, Moscow, 111250 Russia
ToporkovVV@mpei.ru
ABSTRACT
This paper presents an integrated approach for scheduling in distributed computing
with strategies as sets of job supporting schedules generated by a critical works
method. The strategies are implemented using a combination of job-flow and
application-level techniques of scheduling within virtual organizations of Grid.
Applications are regarded as compound jobs with a complex structure containing
several tasks co-allocated to processor nodes. The choice of the specific schedule
depends on the load level of the resource dynamics and is formed as a resource
request, which is sent to a local batch-job management system. We propose
scheduling framework and compare diverse types of scheduling strategies using
simulation studies.
processor node nj of the type j, of relative volumes The processor node load level LLj is the ratio of
Vij of computations on a processor (CPU) of the the total time of usage of the node of the type j to
type j, etc. (Table 1). the job run time. Schedules in Fig. 2, b and Fig. 2, c
It is to mention, such estimations are also are related to strategies S2 and S3.
necessary in several methods of priority scheduling
including backfilling in Maui cluster scheduler. 2.2 Critical Works Method
Strategies are generated with a critical works
P2 D3 P4 G1 method [20].
D1
D4
D7 The gist of the method is a multiphase procedure.
The first step of any phase is scheduling of a critical
P1 D5 P6 work – the longest (in terms of estimated execution
P3 P5
D2 D8
time Tij for task Pi) chain of unassigned tasks
D6 along with the best combination of available
G2
P2 P4 resources. The second step is resolving collisions
cased by conflicts between tasks of different critical
works competing for the same resource.
P1 P6 (a)
D12 D36 D78 Nodes
n1 P1 P2 P4 LL1=0.35
P3 P5 G3 n2 P5 LL2=0.10
n3 P3 LL3=0.15
n4 P6 LL4=0.50
D12 D36 D78
Nodes CF=41
P1 P6
P23 P45 n1 P1 P2 P6 LL1=0.35
n2
Figure 1: Examples of job graphs. n3 P3 P4
LL2=0
LL3=0.65
n4 P5 LL4=0.50
Figure 2 shows fragments of strategies of types Nodes CF=37
tasks P4 and P5 to occupy processor node n4. This The conflicts between competing tasks are
collision is further resolved by the allocation of P4 resolved through unused processors, which, being
to the processor node n3 and P5 to the node n4. used as resources, are accompanied with a minimum
Such reallocations can be based on virtual value of the penalty cost function that is equal to the
organization economics – in order to take higher sum of Vij/Tij (see Table 1) for competing tasks.
performance processor node, user should “pay” It is required to construct a strategy that is
more. Cost-functions can be used in economical conditionally minimal in terms of the cost function
models [14] of resource distribution in virtual CF for the upper and lower boundaries of the
organizations. It is worth noting that full costing in maximum range for the duration Tij of the
CF is not calculated in real money, but in some execution of each task Pi (see Table 1). It is a
conventional units (quotas), for example like in modification of the strategy S1 with fine-grain
corporate non-commercial virtual organizations. The computations, active data replication policy, and the
essential point is different – user should pay best- and worst execution time estimations.
additional cost in order to use more powerful The strategy with a conditional minimum with
resource or to start the task faster. The choice of a respect to CF is shown in Table 2 by schedules 1, 2,
specific schedule from the strategy depends on the and 3 (Ai is allocation of task Pi, i = 1, …, 6) and
state and load level of processor nodes, and data the scheduling diagrams are demonstrated in Fig. 2,
storage policies. a.
The strategies that are conditionally maximal with
2.3 Examples of Scheduling Strategies respect to criteria LL1, LL2, LL3, and LL4 are given
Let us assume that we need to construct a in Table 2 by the cases 4-7; 8, 9; 10, 11; and 12-14,
conditionally optimal strategy of the distribution of respectively. Since there are no conditional branches
processors according to the main scheme of the in the job graph (see Fig. 1), LLj is the ratio of the
critical works method from [20] for a job represented total time of usage of a processor of type j to the
by the information graph G1 (see Fig. 1). Prior walltime WT of the job completion.
estimates for the duration Tij of processing tasks The Pareto-optimal strategy involves all
P1, …, P6 and relative computing volumes Vij for schedules in Table 2. The schedules 2, 5, and 13
four types of processors are shown in Table 1, where have resolved collisions between tasks P4 and P5.
i = 1, …, 6; j = 1, …, 4. The number of processors Let us assume that the load of processors is such
of each type is equal to 1. The duration of all data that the tasks P1, P2, and P3 can be assigned with
exchanges D1, …, D8 is equal to one unit of time. no more than three units of time on the first and third
The walltime is given to be WT = 20. The criterion of processors (see Table 2). The metascheduler runs
resource-use efficiency is a cost function CF. We through the set of supporting schedules and chooses a
take a prior estimate for the duration Tij that is the concrete variant of resource distribution that depends
nearest to the limit time Ti for the execution of task on the actual load of processor nodes.
Pi on a processor of type j, which determines the
type j of the processor used.
Then, the metascheduler should choose the are presented in Table 3 by the schedules 1-4, 5-12,
schedules 1, 2, 4, 5, 12, and 13 as possible variants 13-17, 18-25, and 26-33, respectively. The Pareto-
of resource distribution. However, the concrete optimal strategy does not include the schedules 2, 5,
schedule should be formulated as a resource request 12, 14, 16, 17, 22, and 30.
and implemented by the system of batch processing Let us consider the generation of a strategy for
subject to the state of all four processors and possible the job represented structurally by the graph G3 in
runtimes of tasks P4, P5, and P6 (see Table 2). Fig. 1 and by summing of the values of the
Suppose that we need to generate a Pareto- parameters given in Table 1 for tasks P2, P3 and P4,
optimal strategy for the job graph G2 (see Fig. 1) in P5.
the whole range of the duration Ti of each task Pi, As a result of the resource distribution for the
while the step of change is taken to be no less than model G3, the tasks P1, P23, P45, and P6 turn out
the lower boundary of the range for the most to be assigned to one and the same processor of the
performance processor. first type. Consequently, the costs of data exchanges
The Pareto relation is generated by the vector of D12, D36, and D78 can be excluded. Because there
criteria CF, LL1, … , LL4. The remaining initial can be no conflicts in this case between processing
conditions are the same as in the previous example. tasks (see Fig. 1), the scheduling obtained before the
The strategies that are conditionally optimal with exclusion of exchange procedures can be revised.
respect to the criteria CF, LL1, LL2, LL3, and LL4
The results of distribution of processors are schedule it runs the developed mechanisms that
presented in Table 4 (A23, A45 are allocations, optimize the whole job-flow (two jobs in this
and T23, T45 are run times for tasks P23 and example). In that case the metascheduler will still
P45). Schedules 1-6 in Table 4 correspond to the try to find an optimal schedule for each single job
strategy that is conditionally minimal with respect as described above and, at the same time, it will try
to CF with LL1 = 1. Consequently, there is no sense to find the most optimal job assignment so that the
in generating conditionally maximal schedules with average load of CPUs will be maximized on a job-
respect to criteria LL1, …, LL4. flow scale.
For example, traditional First-Come-First-Serve One to mention is Maui cluster scheduler, where
(FCFS) strategy leads to idle standing of the backfilling algorithm is implemented. Remote Grid
resources. Another strategy, which involves job resource reservation mechanism is also supported in
ranking according to the specific properties, such as GARA, Ursala and Silver projects [16]. Here, only
computational complexity, for example Least- one variant of the final schedule is built and it can
Work-First (LWF), leads to a severe resource become irrelevant because of changes in the local
fragmentation and often makes it impossible to job-queue, transporting delays etc. The strategy is
execute some jobs due to the absence of free some kind of preparation of possible activities in
resources. In distributed environments these effects distributed computing based on supporting
can lead to unpredictable job execution time and schedules (see Fig. 2, Tables 2, 3 and 4) and
thereby to unsatisfactory quality of service. reactions to the events connected with resource
assignment and advance reservations [15, 16]. The
more factors considered as formalized criteria are
taken into account in strategy generation, the more
complete is the strategy in the sense of coverage of
possible events [18, 19]. The choice of the
supporting schedule [20] depends on the utilization
state of processor nodes, data storage and relocation
policies specific to the environment, structure of the
jobs themselves and user estimations of completion
time and resource requirements.
It is important to mention that users can submit
jobs without information about the task execution
order as required by existing schedulers like Maui
cluster scheduler were only queues are supported.
Implemented mechanisms of our approach support
a complex structure for the job, which is
represented as a directed graph, so user should only
provide data dependencies between tasks (i.e. the
structure of the job). The metascheduler will
generate the schedules to satisfy their needs by
Figure 4: Consequential scheduling.
providing optimal plans for jobs (application-level
scheduling) and the needs for the resource owners
In order to avoid it many projects have
by optimizing the defined characteristics of the job-
components that make schedules, which are
flow for the distributed system (job-flow
supported by preliminary resource reservation
scheduling).
mechanisms [15, 16].
3 METASCHEDULING FRAMEWORK
strategies should be conducted by the and resource owner’s needs as well as virtual
metascheduler, an intermediary link between the job organization policy of resource assignment should
flow and the system of batch processing. be taken into account. The scheduling strategy is
formed on a basis of formalized efficiency criteria,
Job-flows which sufficiently allow reflecting economical
i j k principles [14] of resource allocation by using
relevant cost functions and solving the load balance
Metascheduler
problem for heterogeneous processor nodes. The
strategy is built by using methods of dynamic
Job manager Job manager
programming [20] in a way that allows optimizing
for strategy Sk for strategies Si, Sj scheduling and resource allocation for a set of tasks,
comprising the compound job. In contrast to
previous works, we consider the scheduling strategy
Computer nodes
Job manager
for strategy Si Computer nodes as a set of admissible supporting schedules (see
Fig. 2, Tables 2 and 3). The choice of the specific
variant depends on the load level of the resource
Computer node domains dynamics and is formed as a resource query, which
is sent to a local batch-job processing system.
Figure 6: Components of metascheduling One of the important features of our approach is
framework. resource state forecasting for timely updates of the
strategies. It allows implementing mechanisms of
The advantages of hierarchically organized adaptive job-flow reallocation between processor
resources managers are obvious, e.g., the nodes and domains, and also means that there is no
hierarchical job-queue-control model is used in the more fixed task assignment on a particular
GrADS metascheduler [13] and X-Com system [2]. processor node. While one part of the job can be
Hierarchy of intermediate servers allows decreasing sent for execution, the other tasks, comprising the
idle time for the processor nodes, which can be job, can migrate to the other processor nodes
inflicted by transport delays or by unavailability of according to the updated co-allocation strategy. The
the managing server while it is dealing with the similar schedule correction procedure is also
other processor nodes. Tree-view manager structure supported in the GrADS project [13], where
in the network environment of distributed multistage job control procedure is implemented:
computing allows avoiding deadlocks when making initial schedule, its correction during the job
accessing resources. Another important aspect of execution, metascheduling for a set of applications.
computing in heterogeneous environments is that Downside of this approach is the fact, that it is
processor nodes with the similar architecture, based on the creation of a single schedule, so the
contents, administrating policy are grouped together metascheduler stops working when no additional
under the job manager control. resources are available and job-queue is then set to
Users submit jobs to the metascheduler (see Fig. waiting mode. The possibility of strategy updates
6) which distributes job-flows between processor allows user, being integrated into economical
node domains according to the selected scheduling conditions of virtual organization, to affect job start
and resource co-allocation strategy Si, Sj or Sk. It time by changing resource usage costs. In fact it
does not mean, that these flows cannot “intersect” means that the job-flow dispatching strategy is
each other on nodes. The special reallocation modified according to new priorities and this
mechanism is provided. It is executed on the higher- provides competitive functioning and dynamic job-
level manager or on the metascheduler-level. Job flow balance in virtual organization with
managers are supporting and updating strategies inseparable resources.
based on cooperation with local managers and
simulation approach for job execution on processor 4 SIMULATIONS STUDIES AND
nodes. Innovation of our approach consists in RESULTS
mechanisms of dynamic job-flow environment
reallocation based on scheduling strategies. The 4.1 Simulation System
nature of distributed computational environments We have implemented an original simulation
itself demands the development of multicriteria and environment (Fig. 7) of the metascheduling
multifactor strategies [17, 18] of coordinated framework (see Fig. 6) to evaluate efficiency
scheduling and resource allocation. indices of different scheduling and co-allocation
The dynamic configuration of the environment, strategies. In contrast to well-known Grid
large number of resource reallocation events, user’s simulation systems such as ChicSim [12] or
OptorSim [23], our simulator MetaSim generates
multicriteria strategies as a number of supporting more computational expenses than MS1 especially
schedules for metascheduler reactions to the events for simulation studies of integrated job-flow and
connected with resource assignment and advance application-level scheduling.
reservations. Therefore, in some experiments with integrated
Strategies for more than 12000 jobs with a fixed scheduling we compared strategies MS1, S2, and
completion time were studied. Every task of a job S3.
had randomized completion time estimations,
computation volumes, data transfer times and 4.3 Application-Level Scheduling Study
volumes. These parameters for various tasks had We have conducted the statistical research of the
difference which was equal to 2, ..., 3. Processor critical works method for application-level
nodes were selected in accordance to their relative scheduling with above-mentioned types of strategies
performance. For the first group of “fast” nodes the S1, S2, S3. The main goal of the research was to
relative performance was equal to 0.66, …, 1, for estimate a forecast possibility for making
the second and the third groups 0.33, …, 0.66 and application-level schedules with the critical works
0.33 (“slow” nodes) respectively. A number of method without taking into account independent job
nodes was conformed to a job structure, i.e. a task flows. For 12000 randomly generated jobs there
parallelism degree, and was varied from 20 to 30. were 38% admissible solutions for S1 strategy,
37% for S2, and 33% for S3 (Fig. 8). This result is
4.2 Types of Strategies obvious: application-level schedules implemented
We have studied the strategies of the following by the critical works method were constructed for
types: available resources non-assigned to other
S1 – with fine-grain computations and independent jobs.
active data replication policy; Along with it there is a conflict distribution for
S2 – with fine-grain computations and a the processor nodes that have different performance
remote data access; (“fast” are 2-3 times faster, than “slow” ones): 32%
S3 – with coarse-grain computations and for “fast” ones, 68% for “slow” ones in S1, 56%
static data storage; and 44% in S2, 74% and 26% for S3 (Fig. 9). This
MS1 – with fine-grain computations, may be explained as follows. The higher is the task
active data replication policy, and the best- and state of distribution in the environment with active
worst execution time estimations (a modification of data transfer policy, the lower is the probability of
the strategy S1). collision between tasks on a specific resource.
The strategy MS1 is less complete than the In order to implement the effective scheduling
strategy S1 or S2 in the sense of coverage of events and resource allocation policy in the virtual
in distributed environment (see Tables 2 and 3). organization we should coordinate application and
However the important point is the generation of a job-flow levels of the scheduling.
strategy by efficient and economic computational
procedures of the metascheduler. The type S1 has
S1 S1
S2
S2
S3
S3
Figure 8: Percentage of admissible application-level Figure 9: Percentage of collisions for “fast”
schedules. processor nodes in application-level scheduling.
selected processor nodes as well as modification scenarios, e.g., in our experiments we use FCFS
MS1, when best- and worst-case execution time management policy in local batch-job management
estimations were taken, is shown in Figures 11 and systems. Afore-cited research results of strategy
12. characteristics were obtained by simulation of global
Relative job Relative task job-flow in a virtual organization. Inseparability
completion cost execution time condition for the resources requires additional
1 1 advanced research and simulation approach of local
job passing and local processor nodes load level
forecasting methods development. Different job-
0.5 0.5
queue management models and scheduling
algorithms (FCFS modifications, LWF, backfilling,
gang scheduling, etc.) can be used here. Along with it
0 0
MS1 S2 S3
local administering rules can be implemented.
One of the most important aspects here is that
Сost Execution time advance reservations have impact on the quality of
Figure 11: Job completion cost and task execution service. Some of the researches (particularly the one
time in strategies MS1, S2, and S3. in Argonne National Laboratory) show, that
preliminary reservation nearly always increases
Lowest-cost strategies are the “slowest” ones like queue waiting time. Backfilling decreases this time.
S3 (see Fig. 11); they are most persistent in the term With the use of FCFS strategy waiting time is shorter
of time-to-live as well (see Fig. 12). than with the use of LWF. On the other hand,
estimation error for starting time forecast is bigger
Relative Start time deviation/ with FCFS than with LWF. Backfilling that is
time-to-live job run time
implemented in Maui cluster scheduler includes
1 1 advanced resource reservation mechanism and
guarantees resource allocation. It leads to the
0.5 0.5
difference increase between the desired reservation
time and actual job starting time when the local
request flow is growing. Some of the quality aspects
0 0
and job-flow load balance problem are associated
MS1 S2 S3 with dynamic priority changes, when virtual
organization user changes execution cost for a
Time-to-live Deviation specific resource.
Figure 12: Time-to-live and start deviation time in All of these problems require further research.
strategies MS1, S2, and S3.
ACKNOWLEDGEMENT. This work was
The strategies of the type S3 try to monopolize supported by the Russian Foundation for Basic
processor resources with the highest performance and Research (grant no. 09-01-00095) and by the State
to minimize data exchanges. Withal, less persistent Analytical Program “The higher school scientific
are the “fastest”, most expensive and most accurate potential development” (project no. 2.1.2/6718).
strategies like S2. Less accurate strategies like MS1
(see Fig. 12) provide longer task completion time, 6 REFERENCES
than more accurate ones like S2 (Fig. 11), which
include more possible events, associated with [1] I. Foster, C. Kesselman, and S. Tuecke: The
processor node load level dynamics. Anatomy of the Grid: Enabling Scalable
Virtual Organizations, Int. J. of High
5 CONCLUSIONS AND FUTURE WORK Performance Computing Applications, Vol. 15,
No. 3, pp. 200 – 222 (2001)
The related works in scheduling problems are [2] V.V. Voevodin: The Solution of Large
devoted to either job scheduling problems or Problems in Distributed Computational Media,
application-level scheduling. The gist of the Automation and Remote Control, Vol. 68, No.
approach described is that the resultant dispatching 5, pp. 32 – 45 (2007)
strategies are based on the integration of job-flows [3] D. Thain, T. Tannenbaum, and M. Livny:
and application-level techniques. It allows increasing Distributed Computing in Practice: the Condor
the quality of service for the jobs and distributed Experience, Concurrency and Computation:
environment resource usage efficiency. Practice and Experience, Vol. 17, No. 2-4, pp.
Our results are promising, but we have bear in 323 - 356 (2004)
mind that they are based on simplified computation
[4] A. Roy and M. Livny: Condor and Preemptive future trends, Kluwer Academic Publishers, pp.
Resume Scheduling, In: J. Nabrzyski, J.M. 73 – 98 (2003)
Schopf, and J.Weglarz (eds.): Grid resource [14] R. Buyya, D. Abramson, J. Giddy et al.:
management. State of the art and future trends, Economic Models for Resource Management
Kluwer Academic Publishers, pp. 135 – 144 and Scheduling in Grid Computing, J. of
(2003) Concurrency and Computation: Practice and
[5] V.V. Krzhizhanovskaya and V. Korkhov: Experience, Vol. 14, No. 5, pp. 1507 – 1542
Dynamic Load Balancing of Black-Box (2002)
Applications with a Resource Selection [15] K. Aida and H. Casanova: Scheduling Mixed-
Mechanism on Heterogeneous Resources of parallel Applications with Advance
Grid, In: 9th International Conference on Reservations, In: 17th IEEE International
Parallel Computing Technologies, Springer, Symposium on High-Performance Distributed
Heidelberg, LNCS, Vol. 4671, pp. 245 – 260 Computing, IEEE Press, New York, pp. 65 –
(2007) 74 (2008)
[6] F. Berman: High-performance Schedulers, In: [16] D.B. Jackson: GRID Scheduling with
I. Foster and C. Kesselman (eds.): The Grid: Maui/Silver, In: J. Nabrzyski, J.M. Schopf, and
Blueprint for a New Computing Infrastructure, J.Weglarz (eds.): Grid resource management.
Morgan Kaufmann, San Francisco, pp. 279 – State of the art and future trends, Kluwer
309 (1999) Academic Publishers, pp. 161 – 170 (2003)
[7] Y. Yang, K. Raadt, and H. Casanova: [17] K. Kurowski, J. Nabrzyski, A. Oleksiak, and J.
Multiround Algorithms for Scheduling Weglarz: Multicriteria Aspects of Grid
Divisible Loads, IEEE Transactions on Parallel Resource Management, In: J. Nabrzyski, J.M.
and Distributed Systems, Vol. 16, No. 8, pp. Schopf, and J.Weglarz (eds.): Grid resource
1092 – 1102 (2005) management. State of the art and future trends,
[8] A. Natrajan, M.A. Humphrey, and A.S. Kluwer Academic Publishers, pp. 271 – 293
Grimshaw: Grid Resource Management in (2003)
Legion,” In: J. Nabrzyski, J.M. Schopf, and [18] V. Toporkov: Multicriteria Scheduling
J.Weglarz (eds.): Grid resource management. Strategies in Scalable Computing Systems, In:
State of the art and future trends, Kluwer 9th International Conference on Parallel
Academic Publishers, pp.145 – 160 (2003) Computing Technologies, Springer,
[9] J. Beiriger, W. Johnson, H. Bivens et al.: Heidelberg, LNCS, Vol. 4671, pp. 313 – 317
Constructing the ASCI Grid, In: 9th IEEE (2007)
Symposium on High Performance Distributed [19] V.V. Toporkov and A.S. Tselishchev: Safety
Computing, IEEE Press, New York, pp. 193 – Strategies of Scheduling and Resource Co-
200 (2000) allocation in Distributed Computing, In: 3rd
[10] J. Frey, I. Foster, M. Livny et al.: Condor-G: a International Conference on Dependability of
Computation Management Agent for Multi- Computer Systems, IEEE CS Press, pp. 152 –
institutional Grids, In: 10th International 159 (2008)
Symposium on High-Performance Distributed [20] V.V. Toporkov: Supporting Schedules of
Computing, IEEE Press, New York, pp. 55 – Resource Co-Allocation for Distributed
66 (2001) Computing in Scalable Systems, Programming
[11] D. Abramson, J. Giddy, and L. Kotler: High and Computer Software, Vol. 34, No. 3, pp.
Performance Parametric Modeling with 160 – 172 (2008)
Nimrod/G: Killer Application for the Global [21] M. Tang, B.S. Lee, X. Tang, et al.: The Impact
Grid?, In: International Parallel and Distributed of Data Replication on Job Scheduling
Processing Symposium, IEEE Press, New Performance in the Data Grid, Future
York, pp. 520 – 528 (2000) Generation Computing Systems, Vol. 22, No.
[12] K. Ranganathan and I. Foster: Decoupling 3, pp. 254 – 268 (2006)
Computation and Data Scheduling in [22] N.N. Dang, S.B. Lim, and C.K. Yeo:
Distributed Data-intensive Applications, In: Combination of Replication and Scheduling in
11th IEEE International Symposium on High Data Grids, Int. J. of Computer Science and
Performance Distributed Computing, IEEE Network Security, Vol. 7, No. 3, pp. 304 – 308
Press, New York, pp. 376 – 381 (2002) (2007)
[13] H. Dail, O. Sievert, F. Berman et al.: [23] W.H. Bell, D. G. Cameron, L. Capozza et al.:
Scheduling in the Grid Application OptorSim – A Grid Simulator for Studying
Development Software project, In: J. Dynamic Data Replication Strategies, Int. J. of
Nabrzyski, J.M. Schopf, and J.Weglarz (eds.): High Performance Computing Applications,
Grid resource management. State of the art and Vol. 17, No. 4, pp. 403 – 416 (2003)
(d) There are elements R id and idR associated a vector [28] iff x = x ◦ 1. The second way is via
to every relation R ∈ B. R id behaves as a monotypes [2]: a relation a is a monotype iff a ≤ id.
right identity and idR as a left identity for The set of monotypes {a | a ∈ B∨R }, for a given R,
B∨R . is a complete Boolean lattice. We denote by a∼ the
monotype complement of a.
(e) The Schröder rule P ◦Q ≤ R ⇔ P ^ ◦−R ≤ The domain and codomain of a relation R can be
−Q ⇔ −R ◦ Q^ ≤ −P holds whenever one characterized by the vectors R ◦ 1 and R^ ◦ 1, re-
of the three expressions is defined. spectively [15, 28]. They can also be characterized
(f) 1 ◦ R ◦ 1 = 1 iff R 6= 0 (Tarski rule). by the corresponding monotypes. In this paper, we
take the last approach. In what follows we formally
If R^ ∈ B∨R , then R is said to be homogeneous. If define these operators and give some of their prop-
all R ∈ A have the same type, the operations are all erties.
total and A itself is said to be homogeneous.
(3) Definition. The domain and codomain opera-
For simplicity, the universal, zero, and identity ele- tors of a relation R, denoted respectively by R< and
ments are all denoted by 1, 0, id, respectively. An- R> , are the monotypes defined by the equations
other operation that occurs in this article is the re-
(a) R< = id ∧ R ◦ 1,
flexive transitive closure R∗ . It satisfies the well-
known laws (b) R> = id ∧ 1 ◦ R.
_
R∗ = Ri and R∗ = id ∨ R ◦ R∗ = id ∨ R∗ ◦ R, These operators can also be characterized by Galois
i≥0 connections(see [2, 2]). For each relation R and each
monotype a,
where R0 = id and Ri+1 = R ◦ Ri . From Definition
1, the usual rules of the calculus of relations can be R< ≤ a ⇔ R ≤ a ◦ 1,
derived (see, e.g., [8, 10, 28]). R> ≤ a ⇔ R ≤ 1 ◦ a.
The notion of Galois connections is very important
in what follows, there are many definitions of Galois The domain and codomain operators are linked by
connections [?]. We choose the following the equation R> = R^ < , as is easily checked.
one [2]. (4) Definition. Let R be a relation and a be a
(2) Definition. Let (S, ≤S ) and (S 0 , ≤S 0 ) be two monotype. The monotype right residual and mono-
preordered sets. A pair (f, g) of functions, where f : type left residual of a by R (called factors in [5]) are
S → S 0 and g : S 0 → S, forms a Galois connections defined respectively by
iff the following formula holds for all x ∈ S and y ∈ (a) a/•R := ((1 ◦ a)/R)> ,
S0.
f (x) ≤S 0 y ⇔ x ≤S g(y). (b) R\•a := (R\(a 2 1))< .
The function f is called the lower adjoint and g
An alternative characterization of residuals can
the upper adjoint.
also be given by means of a Galois connection as
follows [1]:
2 Monotypes and Related Op- b ≤ a/•R ⇔ (b 2 R)> ≤ a,
b ≤ R\•a ⇔ (R ◦ b)< ≤ a.
erators
We have to use exhaustively the complement of
In the calculus of relations, there are two ways for the domain of a relation R, i.e the monotype a such
viewing sets as relations; each of them has its own that a = R< ∼ . To avoid the notation R< ∼ , we adopt
advantages. The first is via vectors: a relation x is the Notation
(b) A relation R is said to be progressively finite (7) Definition. We say that a relation Q refines a
[28] iff I(R) = id. relation R [23], denoted by Q v R, iff R< ◦ Q ≤
R and R< ≤ Q< .
The description of I(R) by the formulation a/•R = a
shows that I(R) exists, since (a | a ≤ id : a/•R) is (8) Proposition. Let Q and R be relations, then
monotonic in the first argument and because the set
of monotypes is a complete lattice, it follows from the (a) The greatest lower (wrt v) of Q and R is,
fixed point theorem of Knaster and Tarski that this Q t R = Q< ◦ R< ◦ (Q ∨ R),
function has a least fixed point. Progressive finite- If Q< = R< then we have t and ∨ coincide
ness of a relation R is the same as well-foundedness i.e Q t R = Q ∨ R.
(b) If Q and R satisfy the condition Q< ∧ R< = (a) S(R) = I(P ) ◦ [(P ∨ Q)< /•P ∗ ] ◦ P ∗ ◦ Q., with
(Q ∧ R)< , their least upper bound is Q u R = the restriction
Q ∧ R ∨ Q≺ ◦ R ∨ R≺ ◦ Q, otherwise, the least
upper bound does not exist. If Q< ∧ R< = 0 (b) P < ∧ Q< = 0
then we have u and ∧ coincide i.e Q u R =
Our goal is to show that the operational semantics
Q ∧ R.
a is equal to the denotational one which is given as
For the proofs see [9, 14]. the greatest fixed point of the semantic function Q ∨
P 2 X in the demonic semilattice. In other words,
(9) Definition. The demonic composition of rela- we have to prove the next equation:
tions Q and R [5] is Q 2 R = (R< /•Q) ◦ Q ◦ R. F
(a) S(R) = {X|X v Q ∨ P 2 X};
In what follows we present some properties of 2 .
(10) Theorem. by taking P := t 2 B and Q := t∼ , one gets the
demonic semantics we have assigned to while loops
(a) (P 2 Q) 2 R = P 2 (Q 2 R), in previous papers [14, 35]. Other similar definitions
of while loops can be found in [19, 25, 29].
(b) R total ⇒ Q 2 R = Q ◦ R,
Let us introduce the following abbreviations:
(c) Q function ⇒ Q 2 R = Q ◦ R.
(12) Abbreviation. Let P , Q and X be relations
See [5, 6, 7, 14, 35]. subject to the restriction P < ∧ Q< = 0 (b) and x
Monotypes have very simple and convenient prop- a monotype. The Abbreviations wd , wa , w< , a and l
erties. Some of them are presented in the following are defined as follows:
proposition. wd (X) := Q ∨ P 2 X,
a := (P ∨ Q)< /•P ∗ ,
(11) Proposition. Let a and b be monotypes. We wa (X) := Q ∨ P ◦ X,
have l := I(P ).
(a) a = a^ = a2 , w< (x) := Q< ∨ (P 2 x)< = Q ∨ (P 2 x)<
immediately sees why it is impossible to reach L by how the universal relationL arises as the greatest
joining anything to z (which is a point and hence is lower bound n≥0 S ^n 2 z of this set of points. Note
an immediate predecessor of Ø), since this can only that, whereas there is a unique solution to a, there
lead to z or to Ø. are infinitelyF
many solutionsSto 4 (equivalently, to a),
Let us now go ‘fully demonic’ and ask what is a for example n≥k S n (= n≥k S n ), for any k.
solution to ztS ^ 2 X v X. By the discussion above, For the upward approach, consider
this is equivalent to Ø v X, which has a unique
solution, X = Ø. This raises the question whether z ^ t X 2 S v X.
it is possible to find some fully demonic inequation Here also there are infinitely many solutions to this
similar to (a), whose solution is X = L. Because L is inequation; in particular, any vector v, including
in the middle of the demonic semilattice, there are in Ø and L, is a solution to 4. Because (BL , v) is
fact two possibilities: either approach L from above only a join semilattice, it is not at all obvious that
or from below. the least fixed point of h(X) := z ^ t X 2 S ex-
For the approach from above, consider the inequa- ists. It does, however, since the following deriva-
tion tion shows that n≥0 z ^ 2 S n (=
F F
h n ^
(z ),
n≥0
0 ^ ^
X v z u S ^ 2 X. where h (z ) = z ) is a fixed point of h and hence
is obviously the least solution of 4: Because z ^
Using Theorem 10(c), we have z u S ^ 2 X = and S are mappings, property 10(c) implies that
z u S ^ X, since S ^ is deterministic (axiom a(b)). z ^ 2 S n = z ^ S n , for any n ≥ 0. But z ^ S n is
From a, z ⊆ S ^ L; this implies z ⊆ S ^ XL and also a mapping (it is the inverse of the point S ^n z)
S ^ X ⊆ z, so that, by definition of u, and hence is total,Ffrom which, by Proposition 8(a)
^2 n ^ n
F
z u S ^ X = z ∩ S ^ X ∪ z ∩ S ^ XL ∪ z ∩ S ^ X = and equation a, z
S n≥0 ^n S = n≥0 z S =
^ n ^
S
z ∪ S ^ X. n≥0 z S = ( n≥0 S z)˘ = L = L. This
This means that 4 reduces to means that L is the least upper bound of the set
of mappings {z ^ 2 S n |n ≥ 0}. Again, a look at
(a) X v z ∪ S ^ X. [31] gives some intuition to understand this result,
after recalling that mappings are minimal elements
By definition of refinement (7), this implies that
in (BL , v) (though not all mappings have the form
z ∪ S ^ XL ⊆ XL; this is a variant of (a), thus
z ^ 2 S n ).
having XL = L as only solution. This means that
Thus, building L from below using the set of map-
any solution to 4 must be a total relation. But L
pings {z ^ 2 S n |n ≥ 0} is symmetric to building it
is total and in fact is the largest (by v) total rela-
from above using the set of points {S ^n 2 z|n ≥ 0}.
tion. It is also a solution toF4 (since by axiom a(d),
z ∪ S ^ L = L) so that L = {X|X v z u S ^ 2 X};
that is, L is the greatest fixed point in (BL , v) of 5 Conclusion
f (X) := z u S ^ 2 X. Now consider n≥0 S
^n 2
z,
^n
where S is a n-fold demonic composition defined We presented a theorem that can be also used to find
by S ^0 = I and S ^n+1 = S ^ 2 S ^n . By axiom the fixed points of functions of the form f (X) :=
a(b), S ^ is deterministic, so that, by 10(c) and asso- Q ∨ P 2 X (no restriction on the domains of P and
ciativity of demonic composition, conS n 2 z = S ^n z. Q). This theorem can be applied also to the program
Hence, verification and construction (as in the precedent ex-
It is easy to show that for any n ≥ 0, S ^n z is ample). Half of this theorem (the ⇐ direction) is
a point (it is the n-th successor of zero) and that also proved by Sekerinski (the main iteration theo-
m 6= n ⇒ S ^m z 6= S ^n z. Hence, in (BL , v), rem [29]) in a predicative programming set-up. Our
{S ^n z|n ≥ 0} (i.e. {S ^n 2 z|n ≥ 0}) is the set of theorem is more general because there is no restric-
immediate predecessors of Ø; looking at [31] shows tion on the domains of the relations P and Q.
The approach to demonic input-output relation [6] Berghammer, R.: Relational Specification of
presented here is not the only possible one. In Data Types and Programs. Technical report
[19, 20, 21], the infinite looping has been treated by 9109, Fakultät für Informatik, Universität der
adding to the state space a fictitious state ⊥ to de- Bundeswehr München, Germany, Sept. 1991.
note nontermination. In [8, 18, 22, 26], the demonic
input-output relation is given as a pair (relation,set). [7] Berghammer, R. and Schmidt, G.: Relational
The relation describes the input-output behavior of Specifications. In C. Rauszer, editor, Algebraic
the program, whereas the set component represents Logic, 28 of Banach Center Publications. Polish
the domain of guaranteed termination. Academy of Sciences, 1993.
We note that the preponderant formalism em-
ployed until now for the description of demonic [8] Berghammer, R. and Zierer, H.: Relational Al-
input-output relation is the wp-calculus. For more gebraic Semantics of Deterministic and Nonde-
details see [3, 4, 17]. terministic Programs. Theoretical Comput. Sci.,
43, 123–147 (1986).
[15] Desharnais, J., Jaoua, A., Mili, F., Boudriga, [28] Schmidt, G. and Ströhlein, T.: Relations and
N. and Mili, A.: A Relational Division Oper- Graphs. EATCS Monographs in Computer Sci-
ator: The Conjugate Kernel. Theoretical Com- ence. Springer-Verlag, Berlin, 1993.
put. Sci., 114, 247–272 (1993).
[29] Sekerinski, E.: A Calculus for Predicative Pro-
[16] Dilworth, R. P.: Non-commutative Residuated gramming. In R. S. Bird, C. C. Morgan, and
Lattices. Trans. Amer. Math. Sci., 46, 426–444 J. C. P. Woodcock, editors, Second Interna-
(1939). tional Conference on the Mathematics of Pro-
gram Construction, volume 669 of Lecture Notes
[17] E. W. Dijkstra. : A Discipline of Programming.
in Comput. Sci. Springer-Verlag, 1993.
Prentice-Hall, Englewood Cliffs, N.J., 1976.
[18] H. Doornbos. : A relational model of programs [30] Tarski, A.: On the calculus of relations. J.
without the restriction to Egli-Milner monotone Symb. Log. 6, 3, 1941, 73–89.
constructs. IFIP Transactions, A-56:363–382. [31] F. Tchier.: Sémantiques relationnelles
North-Holland, 1994. démoniaques et vérification de boucles non
[19] C. A. R. Hoare and J. He. : The weakest déterministes. Theses of doctorat, Département
prespecification. Fundamenta Informaticae IX, de Mathématiques et de statistique, Université
1986, Part I: 51–84, 1986. Laval, Canada, 1996.
[20] C. A. R. Hoare and J. He. : The weakest [32] F. Tchier.: Demonic semantics by mono-
prespecification. Fundamenta Informaticae IX, types. International Arab conference on In-
1986, Part II: 217–252, 1986. formation Technology (Acit2002),University of
Qatar, Qatar, 16-19 December 2002.
[21] C. A. R. Hoare and al. : Laws of programming.
Communications of the ACM, 30:672–686, 1986. [33] F. Tchier.: Demonic relational semantics of
compound diagrams. In: Jules Desharnais,
[22] R. D. Maddux. : Relation-algebraic semantics. Marc Frappier and Wendy MacCaull, editors.
Theoretical Computer Science, 160:1–85, 1996. Relational Methods in computer Science: The
[23] Mili, A., Desharnais, J. and Mili, F.: Relational Québec seminar, pages 117-140, Methods Pub-
Heuristics for the Design of Deterministic Pro- lishers 2002.
grams. Acta Inf., 24(3), 239–276 (1987). [34] F. Tchier.: While loop d demonic relational
[24] Mills, H. D., Basili, V. R., Gannon, J. D. and semantics monotype/residual style. 2003 In-
Hamlet,R. G.: Principles of Computer Pro- ternational Conference on Software Engineer-
gramming. A Mathematical Approach. Allyn ing Research and Practice (SERP03), Las Ve-
and Bacon, Inc., 1987. gas, Nevada, USA, 23-26, June 2003.
[25] Nguyen, T. T.: A Relational Model of Demonic [35] F. Tchier.: Demonic Semantics: using mono-
Nondeterministic Programs. Int. J. Founda- types and residuals. IJMMS 2004:3 (2004) 135-
tions Comput. Sci., 2(2), 101–131 (1991). 160. (International Journal of Mathematics and
Mathematical Sciences)
[26] D. L. Parnas. A Generalized Control Structure
and its Formal Definition. Communications of [36] M. Walicki and S. Medal.: Algebraic approches
the ACM, 26:572–581, 1983 to nondeterminism: An overview. ACM compu-
tong Surveys,29(1), 1997, 30-81.
[27] Schmidt, G.: Programs as Partial Graphs I:
Flow Equivalence and Correctness. Theoretical [37] L.Xu, M. Takeichi and H. Iwasaki.: Rela-
Comput. Sci., 15, 1–25 (1981). tional semantics for locally nondeterministic
Paul Doyle, Mark Deegan, David Markey, Rose Tinabo, Bossi Masamila, David Tracey
School of Computing, Dublin Institute of Technology, Ireland
WiSAR Lab, Letterkenny Institute of Technology
{paul.doyle, mark.deegan, david.markey}@dit.ie,{rose.tinabo, bossi.masamila}@student.dit.ie
david.tracey@lyit.ie
ABSTRACT
Thin Client technology boasts an impressive range of financial, technical and
administrative benefits. Combined with virtualisation technology, higher
bandwidth availability and cheaper high performance processors, many believe
that Thin Clients have come of age. But despite a growing body of literature
documenting successful Thin Client deployments there remains an undercurrent
of concern regarding user acceptance of this technology and a belief that greater
efforts are required to understand how to integrate Thin Clients into existing,
predominantly PC-based, deployments. It would be more accurate to state that
the challenge facing the acceptance of Thin Clients is a combination of
architectural design and integration strategy rather than a purely technical issue.
Careful selection of services to be offered over Thin Clients is essential to their
acceptance. Through an evolution of three case studies the user acceptance issues
were reviewed and resolved resulting in a 92% acceptance rate of the final Thin
Client deployment. No significant bias was evident in our comparison of user
attitudes towards desktop services delivered over PCs and Thin Clients.
the hype of Thin Clients and the reality of their The challenge faced by Thin Client technology is
deployment. to deliver on these lower costs and mobility, while
continuing to provide a similarly rich GUI user
2 THIN CLIENT EVOLUTION experience to that provided by the desktop machine
(a challenge helped by improved bandwidth, but
The history of Thin Clients is marked by a latency is still often a limiting factor [4]) and the
number of overly optimistic predictions that it was flexibility with regard to applications they have on
about to become the dominant model of desktop their desktop. Typically, current Thin Client systems
computing. In spite of this there have been a number have an application on a server (generally Windows
of marked developments in this history along with or Linux) which encodes the data to be rendered into
those of desktop computing in general which are a remote display protocol. This encoded data is sent
worth reviewing to set the context for examining the over a network to a Thin Client application running
user acceptance of this technology. Thin Clients have on a PC or a dedicated Thin Client device to be
established a role in desktop computing although not decoded and displayed. The Thin Client will send
quite the dominant one initially predicted. These user input such as keystrokes to the application on
developments have usually been driven by increases the server. The key point is that the Thin Client does
in processing power (and reductions in the processor not run the code for the user's application, but only
costs) in line with Moore's law, but the the code required to support the remote display
improvements in bandwidth and storage capacity are protocol.
having an increasing effect on desktop computing While the term Thin Client was not used for
and on Thin Client computing [2] driving the move dumb terminals attached to mainframes in the 1970's,
towards more powerful lower cost desktops but also the mainframe model shared many of the attributes
the possibilities of server virtualisation and Thin of Thin Client computing. It was centralised, the
Client computing with the ability to run Thin Clients mainframe ran the software application and held the
over WANs. data (or was attached to the data storage) and the
The first wave of computing was one where terminal could be shared by users as it did not retain
centralised mainframe computers provided the personal data or applications, but displayed content
computing power as a shared resource which users on the screen as sent to it by the mainframe. From a
accessed using dumb terminals which provided basic desktop point of view, the 1980's were dominated by
text based input and output and then limited graphics the introduction and adoption of the Personal
as they became graphics terminals. These Computer.
mainframes were expensive to purchase and were Other users requiring higher performance and
administered by specialists in managed environments graphics used Unix Workstations from companies
and mostly used for specific tasks such as like Apollo and Sun Microsystems. The X Window
performing scientific calculations and running highly System [5] was used on many Workstations and X
specialised bespoke payroll systems. terminals were developed as a display and input
The next wave was that of personal computing, terminal and provided a lower cost alternative to a
whereby users administered their own systems which Unix Workstation, with the X terminal connecting to
provided a platform for their personal applications, a central machine running an X display manager. As
such as games, word-processor, mail and personal such, they shared some of the characteristics of a
data. Since then the personal computer has Thin Client system, although the X terminal ran an X
undergone a number of significant changes, but the Server making it more complicated than Thin Client
one of most interest was the nature of the interface devices.
provided to the user which has grown into a rich The 1990's saw the introduction of several remote
Graphical User Interface where the Personal display protocols, such as Citrix's ICA [6]
Computer became a gateway to the Internet with the Microsoft's RDP [7] and AT&T's VNC [8] for Unix
Web browser evolving into a platform for delivery of that took advantage of the increasing bandwidth
rich media content, such as audio and video. available on a LAN to provide a remote desktop to
This move from a mainframe centralised users.
computing model to a PC distributed one resulted in Terminal Services was introduced as part of
a number of cost issues related to administration. Windows NT4.0 in 1996 and it offered support for
This issue was of particular concern for corporate the Remote Desktop Protocol (RDP) allowing access
organizations, in relation to licensing, data security, to Windows applications running on the Server,
maintenance and system upgrades. For these cost giving users access to a desktop on the Server using
reasons and the potential for greater mobility for an RDP client on their PC. RDP is now offered on a
users, the use of Thin Clients is often put forward as range of Windows platforms [9]. Wyse and vendors
a way to reduce costs using the centralised model of such as Ncomputing launched terminals, which
the Thin Client architecture. This also offers lower didn't run the Windows operating system, but
purchase costs and reduces the consumption of accessed Windows applications on a Windows
energy [3]. Server using RDP, which is probably still the
dominant role of dedicated hardware Thin Clients. bidding. The relationship is the inverse of the
Similarly VNC is available on many Linux and Unix mainframe era: the people get the air conditioning
distributions and is commonly used to provide now, and the nice floors, and the computers live out
remote access to a user's desktop. These remote in cyberspace and sit there waiting eagerly to do
display protocols face increasing demands for more something for us”. [16]
desktop functionality and richer media content, with
ongoing work required in how, where and when 3 THE CASE FOR THIN CLIENTS
display updates are encoded, compressed or cached
[10]. Newer remote display protocols such as THINC There are many stated benefits for Thin Clients
have been designed with the aim of improving these all of which are well documented [17][18]. While
capabilities [11]. there is no single definitive list, potential system
In 1999, Sun Microsystems took the Thin Client designers may have different aims when considering
model further with the SunRay, which was a simple Thin Clients, these benefits should be clearly
network appliance, using its own remote display understood prior to embarking on any deployment
protocol called ALP. Unlike some of the other Thin and are discussed below.
Clients which ran their own operating system,
SunRay emphasized its completely stateless nature 3.1 Reduced cost of software maintenance
[12]. This stateless nature meant that no session The administrative cost benefit of the Thin
information or data was held or even cached (not Client model, according to Jern [19] is based on the
even fonts) on the appliance itself and enabled its simple observation that there are fewer desktop
session mobility feature, whereby a smart card was images to manage. With the combination of
used to identify a user with a session so that with the virtualisation environments and Windows Terminal
smartcard the user could login from any SunRay Service (WTS) systems it would not be uncommon
connected to the session's server and receive the for twenty five or more desktop environments to be
desktop as it was previously. supported from a single installation and
Many of these existing players have since configuration. This reduces the number of upgrades
focused on improving their remote desktop protocols and customizations required for desktop images in
and support for multimedia or creating new hardware computer laboratories where the aim is to provide a
platforms. There have also been some newer arrivals consistent service from all systems. Kissler and Hoyt
like Pano Logic and Teradici who have developed [20] remind us that the “creative use of Thin Client
specific client hardware to create “zero” clients, with technology can decrease both management
supporting server virtualisation to render the remote complexity and IT staff time.” In particular they
display protocols. Also, there are a number of chose Thin Client technology to reduce the
managed virtual desktops hosted in a data centre now complexity of managing a large number of kiosks
being offered. and quick-access stations in their new thirty three
One of the drivers behind Thin Client million dollar library. They have also deployed Thin
Technology, particularly when combined with a Client devices in a range of other roles throughout
dedicated hardware device, is to reduce the cost of Valparaiso University in Indiana. Golick [21] on the
the client by reducing the processing requirement to other hand suggests that the potential benefits of a
that of simply rendering content, but a second driver Thin Client approach include the lower mean time to
(and arguably more important one) is to gain a level repair (MTTR) and lower distribution costs. It is
of universality by simplifying the variations in the interesting to note that he does suggest that the
client side environment. This has been met in a potential cost savings for hardware are a myth, but
number of new ways using Virtual Machine players that administration savings still make a compelling
and USB memory in Microsoft's research project case for using Thin Client technology.
“Desktop on a Keychain” (DOK) [13] and also the
Moka5 product [14], allowing the mobility (and 3.2 Enhanced Security
security) benefits attributed to Thin Clients. This can Speer and Angelucci [22] suggest that security
be enhanced with the use of network storage to cache concerns should be a major factor in the decision to
session information [15]. adopt Thin Client systems and this becomes more
It can be seen that Thin Clients have evolved apparent when referencing the Gartner Thin Client
along with other desktop computing approaches, classification model. The Thin Client approach
often driven by the same factors of increasing ensures that data is stored and controlled at the data-
processing power, storage capacity and bandwidth. centre hosting the Thin Client devices. It is easy to
However, newer trends that are emerging with regard argue that the user can retain the mobility of laptops
to virtualisation, internet and browser technologies, but with enhanced security and the data is not
together with local storage, present new challenges mobile, just the access point. The argument is even
and opportunities for Thin Client technology to win easier to make when we consider recent high-profile
user acceptance. As Weiser said in 1999 in this new cases of the theft of unencrypted laptops containing
era, “hundreds or thousands of computers do our sensitive medical or financial records. The freedom
conferred on users of corporate desktop and laptop 1) 5.4 million kWh reduction,
PCs undermines the corporation’s obligations in 2) 2,800 tonnes of CO2 saved annually
relation to data privacy and security. Steps taken to 3) Servers reduced by a factor of 20
protect sensitive data on user devices are often too 4) IT budget cut by a fifth
little and too late. Strassmann [23] states that the
most frequent use of a personal computer is for Indeed there are many deployments focused on
accessing web applications and states that the Thin obtaining energy savings through the use of Thin
Client model demonstrates significantly lower Clients. In a case study where SunRay systems were
security risks for the corporation. Five security introduced into Sparkasse a public German Bank,
justifications for adopting the Thin Client model Bruno-Britz [25] reports that the savings in
were proposed. electricity costs alone were enormous. The
University of Oxford has deployed SunRay Thin
1) Zombie Prevention Client devices in their libraries citing the cooler and
2) Theft Dodging quieter operation as factors in their decision. These
3) File Management devices, having no local hard disk and no fan operate
4) Software Control at a lower temperature and more quietly than
5) Personal Use Limitations traditional PCs. This characteristic has
environmental implications from noise, cooling and
Strassmann concedes that Thin Clients are not power consumption perspectives.
necessarily best for every enterprise and every class
of user, but for enterprises with a large number of 3.5 Summary of Benefits
stationary “non-power” users, “Thin Clients may In summary, we can extract the benefits
present the best option in terms of security, cost observed within literature and case studies as
effectiveness and ease of management.” follows:
network infrastructure the arguments focused against incomplete and flawed technology. In the case of
Thin Clients based on requiring an offline mode of Thin Clients, it should be accepted that there are
usage are less relevant. The move from Fat Client to tradeoffs to be made. One of the appealing aspects of
Thin Client is however often resisted as individuals the Fat client is its ability to be highly flexible which
find themselves uncomfortable with the lack of facilitates extensive customization. However not
choice provided when the transition is made, as every user will require that flexibility and
observed by Wong et al.[29]. customization. Thin Clients are not going to be a
silver bullet addressing all users needs all of the
time.
All three case studies were evaluated under the
following headings in order to allow a direct
comparison between each. These criteria were
selected to ensure that there was a balance between
the user acceptance of the technology and the
technical success of each deployment.
4 CASE STUDIES
4.1.1 Design Given that the nature of the service did not
A single laboratory was identified for deploying significantly change over the course of the three
the SunRay systems and all PC in that lab were years that the system was in place with the exception
replaced with SunRay 150 devices. A private of semester activity in line with student presence in
network interconnect was built which ensured that all the institute, it is clear that there was low utilization
data sent from the clients traversed a private network of the service. The graph shows raw data plotted,
to the SunRay server. The initial design of this case where login events were less than 10 per day.
study is shown in Figure 2 and it allowed students
within this new Thin Client lab access to the latest
version of Solaris using a full screen graphical
environment as opposed to an SSH command-line 14
Unix shell which was the traditional method still 12
used from existing computing laboratories. A new
10
authentication system was introduced based on
remained in place throughout both case studies. This is defined as the degree to which there is a
The devices in this lab are now 8 years old and perception of how others will view or judge them
are fulfilling the same role today as they did based on their use of the system. Clearly by
when first installed. isolating the devices and having it associated
4) The Thin Client lab is a low power consumption with specialized courses, there was no social
environment due to the inherent energy efficiency imperative to use the labs. Unix as a desktop was
of the Thin Client hardware over existing PCs. relatively uncommon in the School at the time of
This can provide up to 95% energy savings when the case study and there would have been a
compared to traditional PCs [24]. moderate to strong elitist view of those who were
technical enough to use the systems.
4.1.3 Analysis
d) Facilitating Conditions
There has been extensive research in the area of
This is defined as the degree to which an
user acceptance of technology, but perhaps the most
individual believes in the support for a system. At
relevant work in this area is the Unified Theory of
first glance this does not appear to be a
Acceptance and Use of Technology (UTAUT) [1]
significant factor considering that the services
which identifies four primary constructs or factors;
were created by the support team and there was
considerable vested interest in seeing it succeed.
a) Performance Expectancy
However additional questions asked by the
b) Effort Expectancy
UTAUT include the issue of compatibility with
c) Social Influence
systems primarily used by the individual.
d) Facilitating Conditions
Each of the UTAUT factors can be considered
While there are additional factors such as
significant for Case Study 1. Many of the issues
Gender, Age and Experience, within the student
raised hang on the fundamental issue that the new
populations these are for the most part reasonably
services offered on the Thin Client were different to
consistent and will be ignored. It should be stressed
existing services and for all practical purposes seen
that although the UTAUT was developed for an
as incompatible with the majority of systems
industry based environment it is easily adapted for
available to students elsewhere. The fact that the
our purposes. It was felt that this model serves as a
technology itself may have worked flawlessly, and
relevant reference point when discussing the
may have delivered reduced costs was irrelevant as
performance of the case studies.
the service remained under utilized. Given that the
Clearly Case Study 1 failed to gain acceptance
reason for this lack of acceptance was potentially
despite belief that it would in fact be highly
inherent in the implementation of services and not
successful at its inception. We review the case study
due to failings in the technology itself it was clear
under the four UTAUT headings to identify the
that a second case study was required which would
source of the user rejection of the Thin Clients.
address the issue of service.
a) Performance Expectancy
This factor is concerned with the degree to which
the technology will assist in enhancing a users
own performance. Clearly however the services
provided an advantage to those students who
wished to use Unix systems. Since the majority
of courses are based on the Windows operating
system it would be reasonable to assume that
there was no perceived advantage in using a
system which was not 100% compatible with the
productivity applications used as part of the
majority of courses.
b) Effort Expectancy
This factor is concerned with the degree of ease
associated with the use of the system. One of the
clear outcomes of Case Study 1 was that students
rejected the Unix systems as it was seen to be a
highly complex system, requiring additional
authentication beyond what was currently used in
traditional laboratories. Figure 4: Case Study 2
c) Social Influence
using the new WTS and virtualisation services. modules being taught using these new services
were still required go through a new login/access
8 process which was not well documented. For
Case Study 1
Hours per day
differences at different time periods during the year. locations. It was essential that the Thin Clients were
The timing and method used to announce the not to be identifiable by students if at all possible,
changes was critical to the increase in acceptance. and to co-locate them with existing PC systems. To
The announcement of the systems as a PC upgrade ensure that all devices behaved in a consistent
removed some of the barriers which existed for users manner to PCs they must boot and present the same
who did not feel comfortable with a Unix login screen as would be expected on a PC in the
environment but failed to attract a majority of the same location. To achieve this all Thin Client
students. devices with the exception of the SunRay systems
used a Preboot Execution Environment (PXE) [32]
80 boot process to connect to a Linux Terminal Server
70 Project server (LTSP). The server redirected the user
PC Lab 1
60 session to the correct WTS using rdesktop where the
user was presented with a Windows login screen
50 identical to those on adjacent PC systems.
Login Events per Day
4.3.1 Design
Unlike the previous case studies the aim was to
insert Thin Clients into the existing environment as
invisibly as possible. This meant that existing
authentication processes were to be maintained.
There were two different authentication processes in
place which needed to be support, Novell Client for
the Business faculty and Active Directory for the
Library. In both cases a WTS system was built which
joined to the respective domains. Applications were
installed on the Thin Client in order to mirror those
Figure 8: Case Study 3
that were present on existing PCs in the chosen
0 75%
17 Apr 24 Apr 1 May 8 May 15 May 70%
65%
Figure 9: User Login Event Comparison
60%
4.3.3 Results PC-Fat SunRay PXE HP TC Dell TC
Use of the Thin Clients was recorded using login Client Boot PC
scripts on the Windows Terminal Servers which
recorded login and logout events. As expected the All Applications Browsers
use of the Library systems exceed the use of the
laboratories but both were in line with typical use Figure 10: User satisfaction rating of desktop performance
patterns expected for each location. What was
immediately obvious was that each location had a The issue of overall performance was broken
higher utilization than the previous two case studies down by the device used which was identified using
but comparable with the PC labs shown in Figure 9. the colour coded scheme described earlier. Figure 10
One of the difficulties with the comparison however below represents the average rating of satisfaction
is that the final case study was performed at a reported by users broken down by device and
different point in the teaching semester and use of primary application in use. Since over 50% of
the systems declined as students prepared for responses identified “Browsing” as the primary
examinations. Lab 1 was a “quiet lab” located reason for using the machine there are two
60%
78%
50%
76% 40%
74% PC SunRay PXE HP Dell
72% Boot
70%
68% Figure 13: Storage Satisfaction Rating
66%
By making the Thin Clients as invisible as
PC SunRay PXE HP DELL possible and comparing satisfaction and user access
Boot to the existing PC systems it was clear that for the
majority of users there was no apparent change to the
Figure 11: Combined rating of desktop performance services provided. Integrating into the existing
authentication process was an essential feature of this
4.3.5 Analysis case study as was the presenting of a single
This final case study while shorter in length than
authentication process at the WTS login screen.
the other case studies demonstrated significant
Efforts were also made to ensure that the
progress in user acceptance. As part of the survey
applications installed on the WTS were configured to
users were asked if they would consider reusing the
look and feel the same as those on the standard PC.
system and as can be seen in Figure 12 there was
As with the previous case studies it is useful to
significant support for the systems.
review the case study in relation to the UTUAT.
The small number of responses representing
those who did not wish to reuse the system cited
a) Performance Expectancy
USB performance as the primary cause of their
With the exception of increasing the number of
dissatisfaction. This was identified early in the
desktops in the Library, the primary deployment
testing of the Thin Clients that all systems performed
mainly replaced existing systems, so users were
noticeably slower than the PC systems in this
not provided with any reminders that they were
respect. Questions regarding the primary storage
using a different system. In effect there was no
method used by students were added to the survey as
new decision or evaluation by the user to address
was a satisfaction rating. From the results in Figure
the questions which were relevant in the previous
13 it is clear that while the PC systems did perform
case studies.
better when users primarily used USB storage, the
b) Effort Expectancy
satisfaction in storage performance for all other
The reuse of the existing login/access procedure
options were comparable. The HP satisfaction rate
which was well known and part of the normal
had a low survey response rate and hence was not
process for students using existing PC systems
considered significant in our analysis given the small
again allowed for this factor to become mainly
number of data points.
irrelevant. Usernames, passwords, applications
NO, 8% and system behaviour were identical to those on
the PCs.
c) Social Influence
Without perceiving a difference in service, social
influence as a factor was also eliminated. Only
the SunRay systems had different keyboards and
YES,
screens, and as these screens were of higher
92%
resolution than existing PCs they were if
anything seen as a more popular system.
d) Facilitating Conditions
Unlike the previous case studies support for the
Figure 12: User Response "Would you use this system facility was more complex. Different levels of
again" expertise and engagement were required. Thin
Clients were now part of a larger support case study. These three case studies provide data
structure where many individuals were not core centric analysis of user acceptance and identify the
members of the technical team who built the evolving designs of our deployments. To gain
systems. However given that only three support acceptance of Thin Clients within an educational
calls were raised during the case study there was institute our case studies identified these key factors.
little pressure on this factor either. The calls
raised were not in fact directly related to the Thin 1) Locate the Thin Clients among the existing PC
Client devices, but rather the network and the systems, do not separate them or isolate them.
virtual environments used to host the centralised 2) Ensure that the login process and credentials
servers. users are identical to the existing PC systems.
3) Ensure that the storage options are identical to the
5 CRITICAL ANALYSIS existing PC systems
4) Focus on providing exactly the same services that
The UTUAT provides a useful reference point in already exist as opposed to focusing on out new
understanding some of the factors affecting services.
acceptance of the Thin Clients. In the first case study
the primary barrier to acceptance was the By ensuring we ran a blind test on the user
incompatibility of the new system with the existing population where Thin Clients co-existed with PC
system. Students were not motivated to use the new systems, and where the services offered were
system as there were few advantages to doing so and indistinguishable by the user, we were able to show a
considerable effort in learning how to use it. The user satisfaction rating of 92%. No significant bias
second case study while more successful still failed was evident in our comparison of user attitudes of
to gain acceptance despite the expansion of services desktop services delivered over PCs and Thin
offered being comparable with existing Windows Clients.
services. The session mobility and access from
anywhere feature, while useful did not overcome the 7 FUTURE WORK
resistance of users to migrate to the Thin Clients.
Thin Clients still required separate credentials and Additional case studies are planned which will
the login process was still different to the PC focus on acceptance of Thin Clients within the
systems. The third and final case study was designed academic staff population and will evaluate the
to provide the same existing services as the PC only relevance of some of the proposed core technological
using a centralised server and Thin Client model. No advantages within that environment such as session
new services for the user were provided. The primary mobility, Desktop as a Service, and dynamic lab
aim was to have the systems indistinguishable from reconfiguration and remote access using WAN and
the existing installation of PCs, effectively running a not just LAN environments.
blind test for user acceptance. Once the users
accepted the new systems, further machines could be 8 REFERENCES
deployed quickly and cheaply. The total cost of
[1] V. Venkatesh, M.G. Morris, G.B. Davis, and F.D.
ownership and centralised support savings
Davis, “User acceptance of information
demonstrated in the first two case studies were just
technology: Toward a unified view,” Mis
as relevant in the third case study. Quarterly, 2003, pp. 425-478.
[2] J.D. Northcutt, “CYB Newslog - Toward Virtual
6 CONCLUSION Computing Environments.”
[3] D. Tynan, “Think thin,” InfoWorld, Jul. 2005.
There is considerable literature in support of Thin [4] S.J. Yang, J. Nieh, M. Selsky, and N. Tiwari,
Client technology, and while there may be debate “The Performance of Remote Display
regarding the finer points of its advantages the issue Mechanisms for Thin-Client Computing,” IN
has been and continues to be one of acceptance. PROCEEDINGS OF THE 2002 USENIX
Acceptance for Thin Clients as a technology is often ANNUAL TECHNICAL CONFERENCE,
confused with the non technical issues arising from 2002.
the deployment. The UTUAT helps distinguish [5] T. Richardson, F. Bennett, G. Mapp, and A.
between technical and non-technical issues and as Hopper, “Teleporting in an X window system
shown within our case studies, the way in which the environment,” IEEE Personal
technology was presented to the user had a higher Communications Magazine, vol. 1, 1994, pp.
impact on acceptance than had the technology itself. 6-13.
This point is highlighted by the fact that the Thin [6] Citrix Systems, “Citrix MetaFrame 1.8
Client devices which were not widely used in first Backgrounder,” Jun. 1998.
case study were integrated seamlessly into the third
[7] Microsoft Corporation, “Remote Desktop [21] J. Golick, “Network computing in the new thin-
Protocol: Basic Connectivity and Graphics client age,” netWorker, vol. 3, 1999, pp. 30-
Remoting Specification,” Technical White 40.
Paper, Redmond, 2000. [22] S.C. Speer and D. Angelucci, “Extending the
[8] T. Richardson, Q. Stafford-Fraser, K. Wood, and Reach of the Thin Client.,” Computers in
A. Hopper, “Virtual network computing,” Libraries, vol. 21, 2001, pp. 46 - .
Internet Computing, IEEE, vol. 2, 1998, pp. [23] P.A. Strassmann, “5 SECURE REASONS FOR
33-38. THIN CLIENTS.,” Baseline, 2008, p. 27.
[9] Microsoft Corporation, “Microsoft Windows NT [24] G.A. Plan, “An inefficient truth,” PC World,
Server 4.0, Terminal Server Edition: An 2007.
Architectural Overview,” Jun. 1998. [25] M. Bruno-Britz, “Bank Sheds Pounds.,” Bank
[10] J. Nieh, S.J. Yang, and N. Novik, “A Systems & Technology, vol. 42, 2005, p. 39.
comparison of thin-client computing [26] “Sun Ray White Papers,”
architectures,” Network Computing http://www.sun.com/sunray/whitepapers.xml.
Laboratory, Columbia University, Technical [27] B.K. Schmidt, M.S. Lam, and J.D. Northcutt,
Report CUCS-022-00, 2000. “The interactive performance of SLIM: a
[11] R.A. Baratto, L.N. Kim, and J. Nieh, “Thinc: A stateless, thin-client architecture,” Charleston,
virtual display architecture for thin-client South Carolina, United States: ACM, 1999,
computing,” Proceedings of the twentieth pp. 32-47.
ACM symposium on Operating systems [28] S. Potter and J. Nieh, “Reducing downtime due
principles, ACM New York, NY, USA, 2005, to system maintenance and upgrades,” San
pp. 277-290. Diego, CA: USENIX Association, 2005, pp. 6-
[12] B.K. Schmidt, M.S. Lam, and J.D. Northcutt, 6.
“The interactive performance of SLIM: a [29] I. Wong-Bushby, R. Egan, and C. Isaacson, “A
stateless, thin-client architecture,” Proceedings Case Study in SOA and Re-architecture at
of the seventeenth ACM symposium on Company ABC,” 2006, p. 179b.
Operating systems principles, Charleston, [30] G. Reynolds and M. Gleeson, “Towards the
South Carolina, United States: ACM, 1999, Deployment of Flexible and Efficient Learning
pp. 32-47. Tools: The Thin Client,” The Proceedings of
[13] M. Annamalai, A. Birrell, D. Fetterly, and T. the 4th China-Europe International
Wobber, Implementing Portable Desktops: A Symposium on Software. China (Guanzhou).
New Option and Comparisons, Microsoft Sun Yat-Sen University. (2008).
Corporation, 2006. [31] “rdesktop: A Remote Desktop Protocol client.”
[14] “MokaFive, Virtual Desktops,” [32] B. Childers, “PXE: not just for server networks
http://www.mokafive.com/. anymore!,” Linux J., vol. 2009, 2009, p. 1.
[15] R. Chandra, N. Zeldovich, C. Sapuntzakis, and [33] R. Likert, “A Technique for the Measurement of
M.S. Lam, “The Collective: A cache-based Attitudes,” Archives of Psychology, vol. 140,
system management architecture,” 1932, pp. 1–55.
Proceedings of the 2nd USENIX Symposium
on Networked Systems Design and
Implementation (NSDI’05).
[16] M. Weiser, “How computers will be used
differently in the next twenty years,” Security
and Privacy, 1999. Proceedings of the 1999
IEEE Symposium on, 1999, pp. 234-235.
[17] M. Jern, “"Thin" vs. "fat" visualization clients,”
Proceedings of the working conference on
Advanced visual interfaces, L'Aquila, Italy:
ACM, 1998, pp. 270-273.
[18] S. Kissler and O. Hoyt, “Using thin client
technology to reduce complexity and cost,”
Proceedings of the 33rd annual ACM
SIGUCCS conference on User services, ACM
New York, NY, USA, 2005, pp. 138-140.
[19] M. Jern, “"Thin" vs. "fat" visualization clients,”
L'Aquila, Italy: ACM, 1998, pp. 270-273.
[20] S. Kissler and O. Hoyt, “Using thin client
technology to reduce complexity and cost,”
New York, NY, USA: ACM, 2005, pp. 138–
140.
AN INTERACTIVE COMPOSITION OF
WORKFLOW APPLICATIONS BASED ON UML
ACTIVITY DIAGRAM
ABSTRACT
In today's distributed applications, semi automatic and semantic composition of
workflows from Grid services is becoming an important challenge. We focus in
this paper on how to model and compose interactively workflow applications from
Grid services without considering lower level description of the Grid environment.
To reach this objective, we propose a Model-Driven Approach for developing such
applications based on semantic and syntactic descriptions of services available on
the Grid and abstract description provided by UML activity diagram language as
well. As there are particular needs for modeling composed workflows interactively
from Grid services, we propose to extend the UML activity diagram notation.
These extensions deal with additional information allowing an interactive and semi
automatic composition of workflows. In addition this specific domain language
contains appropriate data to describe matched Grid services that are useful for the
execution of the obtained workflows.
activity diagrams of UML [25]. The provided model the number of available services is in increase with
forms the Platform Independent Model (PIM) of the the existence of several forms and manners to
proposed MDA approach. This model is more compose such services.
understandable for the user than an XML [35] based Based on domain ontology description, we lead
workflow description languages like BPEL4WS [15] the user through to the composition process. Also,
which represent the Platform Specific Model (PSM). we provide for this user a graphical interface based
This paper is organized as follows. Section 2 on a domain specific UML language for automatic
presents the related work. Section 3 introduces the grid service composition. This UML profile [5] is
different components of the composition system; based on stereotypes, tagged values and workflow
section 4 specifies our proposed UML profile, patterns [5] that we propose to ensure the automatic
composition patterns and different steps of the composition. In the field of Grid services
interactive composition process. Finally, section 5 composition the most related work is the work
concludes the paper and proposes areas for further presented by Gubala et al in [8, 17, 18]. In this work,
research. the authors have developed a tool for semi automatic
and assisted composition of scientific Grid
2 RELATED WORK application workflows. The tool uses domain specific
knowledge and employs several levels of workflow
Many works were carried out in the field of abstractness in order to provide a comprehensive
Grid and Web services composition, such as works representation of the workflow for the user and to
presented in [8, 17, 18, 19, 20, 28, 29, 30]. In [28] lead him in the process of possible solution
authors were interested in the semi automatic construction, dynamic refinement and execution. The
composition of web services and proposed a originality of our contribution is that firstly we save
validation approach based on the semantic the effort of the user from the dynamic refinement
descriptions of services and on a logic based and execution as we propose a Model Driven
language to describe and validate the resulting Approach which separates the specific model from
composite Web services. However, the resulting the independent model.
composed web service is not clear for user who is Secondly, we use UML activity diagrams to
not familiar with logic based languages. In our deliver the functionality in a more natural way for
contribution, we propose a solution not only to the human user. The use of UML activity diagrams
compose workflows from available Grid services, in the description of workflow application is argued
but also to provide graphical and comprehensive in several works such as works presented in [1, 10,
models of the resulting workflows. In the same 12, 27]. Thus, the advantage of UML activity
framework, authors in [29] proposed a composition diagrams is that they provide an effective visual
approach of Web services based on Symbolic notation and facilitate the analysis of workflows
Transition Systems (STS). They developed a sound composition.
and complete logical approach for identifying the In our approach, we propose an UML profile for
existence of available composition. They have composing systematically a workflow application
emphasized upon the abstract representation of the from Grid services [5].
composition request (the goal of the composition)
and the representation of the resulting composite 3 THE INTERACTIVE WORKFLOW
Web service. For the representation, authors have COMPOSITION SYSTEM
used UML state machine diagrams [25] which are
suitable only to describe a sequence of component The system allows an interactive and semantic
services without addressing the other forms of composition of workflows from Grid services. As
matching services in a workflow such as parallel shown in figure 1, the system is composed of three
branches or and-branches. On the other hand, UML components: a Grid Services workflows composer,
activity diagrams that we use in our modelling an ontological Grid Services registry and a
approach support all kind of workflow composition workflows execution system also we call it activity
patterns [10] such as parallelism, split and fork. The machine.
authors in [19, 20, 30] have proposed a Model
Driven Approach for composing manually Web 3.1 The Grid services workflow composer
services. They were based on UML activity diagrams This system is composed of three components:
to describe the composite Web service and on UML the composition tool, the transformation tool and the
class diagrams to describe each available Web verification tool.
Service. The user depicts the suitable Web service
and matches it in the workflow representing the 3.1.1 The composition tool
composite Web service using UML activity It provides a graphical interface in the form of
diagrams. This approach would have been better if UML activity diagrams editor allowing to the user an
the composition were automatically elaborated, since interactive, systematic and semantic workflow
Composition [6]. This composition is based on the translates the activity diagram into a Hyper-Graph
composition process which will be detailed in (HG). This HG will be translated as well by the
section 4.3. In the Grid registry, services are transformation tool into a NuSMV format file
described in an ontological form with statements according to a relative semantic. The details of
regarding the service operation's inputs, outputs, these semantics may not be relevant to the topic for
pre-conditions and effects (the IOPE set) [26]. which the paper is submitted. However these details
Through these notions, the composition system is could be made available.
able to match different grid service’s operations
into a workflow following a reverse traversal 3.1.3 The verification tool
approach. Thus, and by associating the required Checking errors in design models like UML
data with the produced output, the composer activity diagrams is essential since correcting an
constructs a data flow between Grid service’s error while the system is alive and running is
operations using our workflow composition usually very costly [21]. Consequently, workflow
patterns and UML profile[5]. The composer may activity diagram models should be spotted and
also use a specific notion of effect that may bind corrected as early as possible [6].
two operations together with non-data dependency. Several techniques are used in the field of
If the Grid registry fails to find the right operation, behavioural design verification such as theorem
the composition process stops. Otherwise, the proving and model checking [11]. The latter is the
composition process will stop when all workflow most useful because it is fully automatic and gives
dependencies are resolved. feedback in case of detected errors. It verifies
The request is sent to the Ontological Grid whether some given finite state machine satisfies
Registry in the form of SPARQL query [34]. This some given property specified in temporal logic [9].
language provides a higher-level access to the For activity diagrams, symbolic model checking
ontology transcribed knowledge for the automatic has proven to be an efficient verification technique
discovery and semantic matching of services. [11]. Thus, our verification tool is based on
Therefore, once the workflow model is built, it NuSMV symbolic model checker [9] that supports
should be validated and verified to ensure its strong fairness property which is necessary to be
reliability before being executed and reused as sub- verified in a workflow model to obtain realistic
workflow. results. With the model checker, arbitrary
propositional requirements can be checked against
3.1.2 The transformation tool the input model. If a requirement fails to hold, an
To support the verification and the execution of error trace is returned by the model checker. The
workflow models described in UML activity transformation tool translates systematically the
diagrams (UML-AD), the transformation tool error trace into an activity diagram trace by high-
Effects binding two operations are presented with essential in the systematic building of workflow
control flows [5]. applications from Grid services. The use of these
The name of an activity in the diagram patterns depends on the number of the depicted
represents the name of the Grid service's operation. Grid Service's operations and their inputs and
This name must be specified as a Grid service could outputs [5]. These operations are results of the
have more than one operation often called interface semantic research elaborated by the ontological
which are specified in its relative WSDL file [32]. Grid services registry. This research is invoked by a
There are two different types of activities: yet- request given by the composition system in order to
unresolved activities and established activities of complete an unresolved activity in the workflow.
the composed workflow. The former represent the The Grid service registry provides zero, one or
need for a Grid Service's operation to be inserted in more operations producing the intended output.
order to complete the workflow. However, the latter Operations are depicted to be inserted in the
represent abstract operations that are already workflow interactively with the user.
included into the workflow.
As there are two different activity types in a 4.2.1 Sequence Pattern
Grid service workflow model, an activity needs to When the Grid registry provides one Grid
be typed and specified. To fulfil this, we propose to service's operation that is able to produce the
use the DSL modelling element invoke to required result or the user selects one operation
stereotype an established activity which is used to from the provided operation set; the composition
invoke an external Grid service's operation and yet- system uses the sequence pattern to insert the
unresolved to stereotype activities which are not yet operation in the workflow. In this case and as is
resolved. Object nodes of an established activity are illustrated by the figure 3, a single abstract
data stereotyped. Unknown input and output for a operation or activity (e.g. GridService1Operation1)
yet-unresolved activity are unknown stereotyped. will be inserted in the workflow model described by
In our UML profile, an object node could be the UML-AD language. This operation may also
relatedto a final node as composed workflow of require some data for itself (e.g.
Grid application should always deliver a result. GridService1Operation1Input) and thus it may
introduce a new unresolved dependency (e.g. the
4.2 UML-AD composition patterns yet-unresolved stereotyped activity). So, we use a
We identify, in this section, how UML activity follow-up method to build a simple pipeline-type
diagrams support some of basic Grid service sequential workflow: a sequence pattern.
composition patterns [5]. These patterns are
Figure 2: Meta-model of Grid service workflow composition specific UML activity diagram language
A Sequence pattern is composed with sequential to object node representing the required input which
activities which are related with control flow (non both of them flow to a merge construct.
data operations dependency) or object flow (data Semantically, several services instances are
operation dependency). invoked in parallel threads and the merge will only
wait for the first flow to finish. We distinguish, in
Figure 5, two different Grid service's operations,
GridService1Operation1 and GridService2Operation1
providing the same output data DataOutput.
Step 2: The composition system analyses the desired Step 5: For each input of inserted operation, the
output and sends a SPARQL query to request the system defines one unresolved dependency as a
ontologies of the Grid registry describing the workflow activity which is not yet established. This
available Grid services. The composer requests the activity depends on some Grid service’s operation.
Grid registry for a Grid service’s operation having For each unresolved dependency the composer asks
the specified result as output. the user if it wants to continue the composition
process or not. If the response is positive the
Step 3: If the required operation is not found and all composer re-executes the process from the step 2 to
unknown results are resolved then the composition resolve the current unresolved dependency.
process stops.
Figure 7: Scenario of the interactive composition of Grid service workflows based on UML activity diagrams
5 Illustration of the interactive workflow the composer system is able to match different
composition operations into a workflow following a reverse
traversal approach. Thus, and by associating the
In the following, we illustrate the composition required data with the produced output, the composer
process through the example of the domain of the constructs a data flow between operation using
city traffic pollution analysis. This application, as workflow patterns and our UML profile [5]. The
presented in [23], targets the computation of traffic composer may also use a specific notion of effect
air pollutant emission in an urban area. that may bind two operations together with non-data
Step 1: Figure 8 shows an example of initial dependency. In [10], five basic control patterns were
workflow that represents a composition request for defined to be supported by all workflow languages
the results of the pollutant emission due to the city and workflow products. These patterns are Sequence
traffic. The desired result, PollutionEmission, is pattern, Parallel split pattern, Synchronization
described by the rectangle representing the object pattern, Exclusive Choice and Simple Merge
node in the relative activity diagram. patterns. Figure 10 represents the example of city
traffic analysis Workflow after the full composition
activity. It involves several Grid service operations,
sequence branches, parallel split branches, simple
merge branches and a loop [5]. The loop is involved
in the workflow diagram as the application iterates in
order to analyze the possible traffic. The Figure
shows also how UML activity diagrams support the
five basic patterns in the composition specific
domain of Grid services workflows [5]. In the
Figure 8: Initial workflow as a composition request example, some of object node or input data, such as
VehiculeType and StartZonzId, are given by the user
Step 2: Figure 9 represents the workflow of the of the application; they do not have an operation
computation of traffic air pollution analysis after one provider. This illustrates the interaction between our
step of composition. The service’s operation, composition system and the user.
delivering the PollutionEmission result, is
AirPollutionEmissionCalculator. This operation is
the result of the composer query asked to the
ontological Grid registry. The operation requires two
inputs TrafficFlowFile and PathsLenght-File, thus
it infers two unresolved dependencies in the activity
diagram modelling the composed workflow.
[4] Y. Bendaly Hlaoui, L. Jemni Ben Ayed: A [13] I. Foster, D.Berry, A.Djaoui, A.Grimshaw,
MDA approach for semi automatic grid services B.Horn, H.Kishimoto, F.Maciel, A.Savy,
workflows composition, In Proc. Of the IEEE F.Siebenlist, R.Subramaniam, J.Treadwell,
international conference on Industrial J.Von Reich: The Open Grid Services
Engineering and engineering Managment, Architecture, Version 1.0. (2004).
IEEM’08, p.1433-1437 (2008).
[14] I. Foster, C. Kesselman: Grid Services for
[5] Y. Bendaly Hlaoui, L. Jemni Ben Ayed: Patterns Distributed System Integration, Journal of IEEE
for Modeling and Composing Workflows from Computer, Vol. 35, No. 6, pp. 37-46 (2004).
Grid Services, In. Proc. Of the 11th International
Conference on Enterprise Information Systems, [15] T. Gardner: UML modelling of automated
ICEIS'2009, Milan, Italy, LNBIP, Springer- Business Processes with a Mapping to
Verlag, Vol. 24, pp. 615-626 (2009). BPEL4WS, In. Proc. Of the European
Conference on Object Oriented Programming
[6] Y. Bendaly Hlaoui, L. Jemni Ben Ayed: An (2003).
[23] M. Masetti, S. Bianchi, G. Viano: Application of [34]W3C: SPARQL Query Language for RDF,
K-Wf Grid technology to Coordinated Traffic report , 2008.
Management. http://grid02.softeco.it/site/project-
info.html [35] M. J. Young: XML Step by Step, Microsoft
Press, ISBN: 2-84082-812-X (2001).
[24] Model Driven Architecture (MDA). Document
nomber omrsc/2001-07-01 (2001)
Gilbert Ahamer, Adrijana Car, Robert Marschallinger, Gudrun Wallentin, Fritz Zobl
Institute for Geographic Information Science at the Austrian Academy of Sciences
ÖAW/GIScience, Schillerstraße 30, A-5020 Salzburg, Austria
gilbert.ahamer@oeaw.ac.at, adrijana.car@oeaw.ac.at, robert.marschallinger@oeaw.ac.at,
gudrun.wallentin@oeaw.ac.at, fritz.zobl@oeaw.ac.at
ABSTRACT
“Perspectives” are seen as the basic element of realities. We propose different
methods to “map” time, sspace, economic levels and other perceptions of
reality. IT allows views on new worlds. These worlds arise by applying new
perspectives to known reality. IT helps to organise the complexity of the
resulting views.
events advantages
matter perspectives
Figure 1: The “primordial soup” of living, before
the advent of (social) organisms: uncoordinated sense
perspectives, uncoordinated world views. x
y
0.3 In order to share one’s own conception with z
space themes time = t
others, “writing” was invented. Similarly, complex
structures, such as landscapes, are “mapped”. To Figure 2: Fundamental dimensions, along which to
map means to write structures. coordinate individual world views when reflecting.
1 2
what cannot be split any further (Greek) životné prostredie (Slovak): living environment
2. TIME CAN BE
1. an attribute of space (a very simple
historic GISystem)
2. an independent entity (Einstein’s physics)
3. the source of space (cosmology).
In terms of GIS item 2.1 is expressed as “t is one of
the components of geo-data” i (Fig. 3).
harmonised
x world views!
y
z
space themes time = t
5
Figure 6: All data representations require models. Figure 7: Harmonising world views: GIS reunites
world views by relating everything to its location.
4. HOW TO WRITE SPACE?
The big picture shows us various examples: Different sciences may have considerably different
1. as a container of any fact and any process outlooks on reality (Fig. 8). A humble attitude of
(geography and GIS) recognising facts5 instead of believing in the
2. as result of human action (landscape theories one’s own discipline offers can empower
planning) people to survive even in the midst of other
3. as evolving construct (architecture). scientific specialties: Galileo’s (1632) spirit: give
priority to observation, not to theories!
Examples span space as This is the essential advantage of geography as a
• received and prefabricated versus science: geographers describe realities, just as they
• final product of one’s actions, namely: appear. Such a model-free concept of science has
1. spaces as the key notion for one’s own promoted the usefulness of GIS tools to people
science: everything that can be geo- independent of personal convictions, scientific
referenced means GIS models or theories.
2. space as the product of human activity objects seen by economists
3. expanding space into state space: the
entirety of possible situations is
represented by the space of all “state
vectors” which is suitable only if
procedures are smooth.
harmonised
world views!
The main thesis here is: the “effects of time” are x
structurally similar in many scientific disciplines, y
and they often imply “changes in structures” too. z
space themes time = t
Information Technology (IT) is already providing
Figure 8: Different but again internally harmonised
scientific tools to visualise such structures.
world views: explain facts from another angle.
5 6
datum (Latin): what is given (unquestionable) This GCDB is described in Ahamer (2001)
time t GDP/cap
Figure 18: Structural shift of percentages of
various fuels in all nations’ energy demand 1961-
91. Data source: GCDB (Ahamer, 2001).
20th cent.
ones
mani- Thermo- Systems Social Symbolically speaking: similar to Google Earth
fold dynamics analysis learning which allows one to view the same landscape from
gaming, IIS different angles, a future tool would help to
navigate the world concepts, the world views and
9.6 A suitable peaceful “common effort14” for a the world perspectives of the global population.
peaceful future of humankind would involve IT can reorganise extremely large data volumes (if
developing tools and visual aids in order to technological growth rates continue) and could
understand the opinions of other citizens of the eventually share these according to the viewpoint of
globe. the viewer.
The future is dialogue.
Such a step of generalisation would lead from
Or else there will be no future. “Geographic Information Science” to
“Interperspective Information Science”, implying
14
(jihad in Arabic) also means: common effort the change of angles of perception according to
of a society one’s own discipline.
REFERENCES
Ahamer, G. (2001), A Structured Basket of Models
for Global Change. In: Environmental
Information Systems in Industry and Public
Administration (EnvIS). ed. by C. Rautenstrauch
and S. Patig, Idea Group Publishing, Hershey,
101-136, http://www. oeaw-
giscience.org/ProjectFactSheets/Project
FactSheet_GlobalChange.pdf.
Ahamer, G., Wahliss, W. (2008), Baseline
Scenarios for the Water Framework Directive.
Ljubljana, WFD Twinning Project in Slovenia,
http://www.oeaw-giscience.org/ProjectFact
Sheets/ProjectFactSheet_EU_SDI.pdf.
Andrienko, N., Andrienko G. (2006), Exploratory
Spatial Analysis, Springer
Brunner, F.K., Zobl, F., Gassner, G. (2003), On the
Capability of GPS for Landslide Monitoring.
Felsbau 2/2003, 51-54.
de Chardin, T. (1950), La condition humaine [Der
Mensch im Kosmos]. Beck, Stuttgart.
Dodge, M., McDerby, M., Turner, M. (eds.) (2008)
Geographic Visualisation, Wiley
Dykes, J., A. MacEachren, et al. (2005). Exploring
Geovisualization. Oxford, Elsevier.
Galileo, G. (1632), Dialogo sopra i due massimi
sistemi del mondo, tolemaico, e copernicano.
Fiorenza.
GIScience, (2008), Connecting Real and Virtual
Worlds. Poster at AGIT’08, http://www.oeaw-
giscience.org/index.php?option=com_content&ta
sk=blogcategory&id=43&Itemid=29.
Gore, A. (1998). Vision of Digital Earth,
http://www.isde5.org/al_gore_speech.htm.
Kraak (2009), Minard’s map.
www.itc.nl/personal/kraak/1812/3dnap.swf
Longley, P.A. et al. (2001) Geographic
Information. Science and Systems, Wiley
MacEachren, A. M., M. Gahegan, et al. (2004).
Geovisualization for Knowledge Construction
and Decision Support. IEEE Computer Graphics
& Applications 2004 (1/2): 13-17.
Marschallinger, R. (2009), Analysis and Integration
of Geo-Data. http://www.oeaw-giscience.org/.
Peuquet, D. J. (2002). Representations of Space and
Time. New York, The Guilford Press.
Wallentin, G. (2009), Ecology & GIS.
Spatiotemporal modelling of reforestation
processes. See http://www.oeaw-
giscience.org/images/stories/Downloads/pecha%
20kucha%20technoz%20day.pdf
Zobl, F. (2009), Mapping, Modelling and
Visualisation of georelevant processes.
http://www.oeaw-giscience.org/.
i
GIScience goes way beyond this view of time and
space (considering time as function) because it al-
lows for much more complex queries and analyses.
simplifying IT consulting
Conference
Management
support
UbiCC Journal
Conference Consulting
4 Nichols Rd, Nesconset, NY
+1-347-4149239 ph
+1-212-901-6990 fax
www.ubicc.org
Technology at work for you
CONNECTING YOUR CONFERENCE TO THE TECHNOLOGY RESOURCES YOU NEED
Network with your peers and enhance your career. links to conference websites, and special issue with A B O U T US
Whether looking for your industry's hottest topics, the UbiCC for technical program, registration and The papers of original research
latest research breakthroughs and innovations, short additional information. and innovatory applications from all
parts of the world are welcome.
courses on changing technologies, or vendor exhibits Conferences offer a unique opportunity for developing
The papers for publication in
of new commercial products and services, UbiCC has a wide range of professional relationships. Expert UBICC are selected through
it covered. panels, presentations, key note speeches, exhibits rigorous peer reviews to ensure
originality, appropriateness,
Find the conferences that meet your needs with the and social events all provide an opportunity to interact
significance, and readability.
UbiCC Conference Search, where you can search by with the leaders and innovators in your field of interest.
I T S U P P O RT S O L U T I ON S
• JOURNAL MANAGEMENT SYSTEM your conference needs A TOTAL END TO END SOLUTION.
SCOPE
• PAPER REGISTRATION SYSTEM The Journal aims to provide an
environment in which ideas and
• CONFLICT RESOLUTOR P R E SE N T AN D P UB L ISH A P P LI C A TIO N M A NA GE M E N T research can be presented,