A. Performance Evaluation
The SAMD algorithm was implemented using JAVA andwere linked with databases using JDBC (Java
DatabaseConnectivity). The commercial synchronization solution, which is vender-independent of server-side
database and hasmiddle-tier architecture, was used in order to compare SAMD.Because the properties of the
commercial synchronizationsolution and SAMD are similar, this comparison is reasonable.As for the message
digest, JCE (Java CryptographyExtension) [10] was used.For performance evaluation, the commercial RDBMS
andmobile database were installed on one machine to eliminatethe network effect factors. First, 5000 randomly
generatedrows were inserted into RDBMS, sent throughsynchronization and the same 5000 rows were inserted
intomobile database. Then, we inserted 100 rows into RDBMS,and then inserted another 100 rows into mobile
database.Afterwards, 100 rows were deleted from mobile database andanother 100 rows modified. The modified and
deleted datawere programmed to be equally spaced among the 5000 rows.In this condition, performance was
evaluated by comparingthe synchronization time of SAMD and the commercialsynchronization solution. We
evaluated synchronization timeten times using different data in the sameconditions andcalculated the average. As
shown in TABLE III, the performance evaluation result indicates that SAMD is fasterthan the commercial
synchronization solution by an averageof 0.64 seconds.
For the commercial synchronization solution, asynchronization SQL or a JAVA script must be written [11].This is a
very cumbersome and inconvenient process thatrequires a substantial amount of time to become familiar
with.Furthermore, some cases in TABLE I are not supported.Therefore, our evaluation could not be performed for
all caseslisted in TABLE I but only for the four cases mentioned above.The commercial synchronization solution
requires thatadditional data table, procedures and triggers be created forsynchronizing with a server-side database
that is not a samevender of the commercial synchronization solution [11]. Thereare no such requirements for the
SAMD algorithm. Whereas thevender of the commercial synchronization solution and themobile database must be
the same, but SAMD mandates norestrictions regarding the types of the server-side databases orthe mobile
databases. Therefore, there is an advantage in termsof having a wide use property in addition to performance.
However; SAMD maintains a separate message digest table, which is a disadvantage from the perspective of
storageefficiency. However, since large scale storage is relativelyinexpensive and scalable, this is not a major issue.
SAMDonly offers implementation of the essential elements forsynchronization and not supports various other
aspectsrequired for a commercial product. In addition, it lackssufficient generality to be applicable in an actual
workingenvironment. Therefore, it may not be completely appropriateto compare SAMD with a commercial
product. Under thecircumstances, however, SAMD does not fall far behind thecommercial synchronization solution
and there are theadvantages explained above including user friendliness,simple synchronization and complete
vender independence.
B. Quality Evaluation
A SAMD algorithm was designed to maintain the objectiveof algorithm as mentioned in part A of Section
III. Thementioned objectives are problems that existing commercialsynchronization products have, so if these
objectives are notachieved, the wide use property for application ofsynchronization algorithm would not be fulfilled.
The widelyused technologies for mobile database synchronization aretimestamp & snapshot technique, using staging
table in middletier,integrated RDBMS which use message and before-imagetechnique. The commercial
synchronization solutions which usethese technologies were compared with SAMD on the basis ofmentioned
algorithm objectives. TABLE? Represents algorithm designing objectives and maintaining or not as toobjectives of
each technologies/SAMD.