{"created":"2023-06-20T13:20:48.582058+00:00","id":863,"links":{},"metadata":{"_buckets":{"deposit":"273ede1e-9212-4fcc-b69d-e53479af9fb2"},"_deposit":{"created_by":1,"id":"863","owners":[1],"pid":{"revision_id":0,"type":"depid","value":"863"},"status":"published"},"_oai":{"id":"oai:ir.soken.ac.jp:00000863","sets":["2:429:19"]},"author_link":["0","0","0"],"item_1_creator_2":{"attribute_name":"著者名","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"BANDITWATTANAWONG, Thepparit"}],"nameIdentifiers":[{}]}]},"item_1_creator_3":{"attribute_name":"フリガナ","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"ゼパリット, バンディトワッタナウォング"}],"nameIdentifiers":[{}]}]},"item_1_date_granted_11":{"attribute_name":"学位授与年月日","attribute_value_mlt":[{"subitem_dategranted":"2007-03-23"}]},"item_1_degree_grantor_5":{"attribute_name":"学位授与機関","attribute_value_mlt":[{"subitem_degreegrantor":[{"subitem_degreegrantor_name":"総合研究大学院大学"}]}]},"item_1_degree_name_6":{"attribute_name":"学位名","attribute_value_mlt":[{"subitem_degreename":"博士(情報学)"}]},"item_1_description_12":{"attribute_name":"要旨","attribute_value_mlt":[{"subitem_description":"In distributed object systems, object-oriented (OO) applications are repli-
cated from remote servers to client sites to improve performance, scala-
bility, and availability. This study focuses on fine-grained replications of
distributed OO applications. Unlike the traditional replication scheme by
which a self-contained application is replicated entirely at once, the fine
grained replication scheme enables partial and on-demand incremental
replications of self-contained applications.

Fine-grained replications can be classified into two categories based on
their deployment patterns: 1) replicating running applications for local
accesses and 2) downloading application programs from persistent repos-
itories for local executions. Based on the classification, the study has
proposed a pair of finegrained replication middlewares: one aims for the
fine-grained replications of remote runtime applications, and the other
aims for the partial and on-demand incremental downloadings of applica-
tion programs.
In addition, to exploit the fine-grained replications effectively requires a
proper means to figure out application portions as the units of replication.
The study has proposed object class clustering algorithms to support the
use of the latter middleware, while showing that object clustering, which
is used to support the former middleware, can be performed based on
programmer's application knowledge.
The details of the middlewares and the class clustering algorithms are
summarized individually as follows.

Fine-grained replication of runtime application: Replicating re-
mote application objects to user locality is a common technique to reduce
the effects of network problem. The traditional replication scheme is not
suitable for cooperative applications because only part of a shared appli-
cation rather than a whole application should be replicated. Furthermore,
the scheme is not appropriate for mobile computing devices due to their
common constraints of memory spaces. Both problems can be addressed
by using a finegrained replication scheme by which the portions of a self-
contained application can be replicated.
Since most object replication systems exploit the traditional replication
scheme, to fulfil fine-grained replication is an unexperienced task for sev-
eral application programmers. There exist few middlewares that support
runtime fine-grained replications of OO applications. All of them aim for
peer-to-peer applications in which objects that constitute a self-contained
application are decomposed and distributed among peers. Therefore,
peers that hold master copies of the application objects must always be
reachable by other peers to replicate the master copies. This is not suitable
for pervasive collaboration because the servant peers (e.g., mobile users)
can get disconnected arbitrarily or be unreachable due to network parti-
tioning. Instead, using dedicated servers to maintain the master copies of
applications is more appropriate. Unfortunately, no fine-grained. replica-
tion middleware is designed for a client-server model.

This dissertation presents SOOM, a Java-based middleware for perva-
sive client-server cooperative applications. SOOM provides fine-grained
replication capability for clients in wide-area networks or on the Internet
and allows clients in local area network to exploit a conventional remote
method invocation mechanism in coordination with the fine-grained repli-
cation. SOOM also supports fine-grained concurrent access control and
update synchronization. To realize the middleware, several challenge re-
search probleins have been identified and resolved.
An application for cooperative software modeling has been developed to
assure the practical applicability of SOOM and demonstrate the practi-
cality of finegrained replication scheme, finegrained consistency mainte
nance, and the coexistence of fine-grained replications and remote method
invocations in client-server environment. The quantitative properties of
SOOM were measured through the following empirical evaluations. First,
experiments in singleuser and multi-user environments based on different
consistency protocols indicated the practical throughputs of SOOM-based
application. Second, throughout accessing all member objects of a bench-
mark cluster showed that SOOM-based replication began to outperform
Java RMI when each object was accessed locally more than twice. Third,
an experiment using the varied numbers of client processors assured the
scalability of SOOM. Finally, an experiment on the memory space require
ment showed that SOOM could reduce the significant amount of client
memory space consumption as well as network bandwidth.

Fine-grained replication of application program: OO applications
have been distributed more and more over the Internet. Deploying an ap-
plication by retrieving the entire program from a remote repository such
as HTTP server often encounters extended delay due to network conges-
tion or large program size. Many times system resources, such as network
bandwidth and client memory space, are also wasted because users do
not utilize every component of the downloaded applications. Moreover,
downloading a whole program at once is usually impractical for mobile
computing devices due to their memory space constrains.
These problems can be addressed by decomposing a program into groups
of classes and data resources to be downloaded on demand.
This dissertation presents C2, a Java-based middleware by which a Java
application can be partially and on-demand incrementally deployed via
HTTP. The middleware also supports application caching and transpar-
ently automatic updating.
The launching delay of an experimented application was found to be re
duced by 83% from that of the traditional whole-at-once application de-
ployment scheme. Total program deployment and execution overhead was
22% less than that of Java Web Start.

Object class clustering approach: It is typical that only part of whole
program code is necessary for successfu1 execution. Decomposing an OO
program into clusters of closely relevant classes and data resources for
on-demand incremental loading optimizes the program start-up latency
and system resource consumption. The lack of systematic yet simple class
clustering approach prohibits this kind of optimization.
This dissertation presents a Java class clustering approach that is capa-
ble of improving both spatial locality and temporal affinity of the opti-
mized programs. The approach provides two clustering algorithms: initial
delay-centric and intermittent delay-centric ones, to achieve different re
quirements of optimizations.

Experimental results indicated that the algorithms were practically use-
ful to both interactive programs and non-interactive programs. Among
the tested Java programs, using the initial delay-centric algorithm and
the intermittent delay-centric algorithm improved initial program loading
latencies on average by 2.9 and 2.2 times respectively faster than the tra-
ditional wholeat-once program loading scheme. The intermittent delay-
centric algorithm reduced the number of intermittent delays to half of the
initial delay-centric algorithm. Both algorithms also led to the chances
to economize on system resources, such as memory spaces and network
bandwidths.
","subitem_description_type":"Other"}]},"item_1_description_18":{"attribute_name":"フォーマット","attribute_value_mlt":[{"subitem_description":"application/pdf","subitem_description_type":"Other"}]},"item_1_description_7":{"attribute_name":"学位記番号","attribute_value_mlt":[{"subitem_description":"総研大甲第1053号","subitem_description_type":"Other"}]},"item_1_select_14":{"attribute_name":"所蔵","attribute_value_mlt":[{"subitem_select_item":"有"}]},"item_1_select_8":{"attribute_name":"研究科","attribute_value_mlt":[{"subitem_select_item":"複合科学研究科"}]},"item_1_select_9":{"attribute_name":"専攻","attribute_value_mlt":[{"subitem_select_item":"17 情報学専攻"}]},"item_1_text_10":{"attribute_name":"学位授与年度","attribute_value_mlt":[{"subitem_text_value":"2006"}]},"item_creator":{"attribute_name":"著者","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"BANDITWATTANAWONG, Thepparit","creatorNameLang":"en"}],"nameIdentifiers":[{}]}]},"item_files":{"attribute_name":"ファイル情報","attribute_type":"file","attribute_value_mlt":[{"accessrole":"open_date","date":[{"dateType":"Available","dateValue":"2016-02-17"}],"displaytype":"simple","filename":"甲1053_要旨.pdf","filesize":[{"value":"337.1 kB"}],"format":"application/pdf","licensetype":"license_11","mimetype":"application/pdf","url":{"label":"要旨・審査要旨","url":"https://ir.soken.ac.jp/record/863/files/甲1053_要旨.pdf"},"version_id":"f5c50306-ffa6-45c3-ad54-7d337957dc99"},{"accessrole":"open_date","date":[{"dateType":"Available","dateValue":"2016-02-17"}],"displaytype":"simple","filename":"甲1053_本文.pdf","filesize":[{"value":"11.0 MB"}],"format":"application/pdf","licensetype":"license_11","mimetype":"application/pdf","url":{"label":"本文","url":"https://ir.soken.ac.jp/record/863/files/甲1053_本文.pdf"},"version_id":"4b26fe43-8d03-4f53-a082-f20b5571759c"}]},"item_language":{"attribute_name":"言語","attribute_value_mlt":[{"subitem_language":"eng"}]},"item_resource_type":{"attribute_name":"資源タイプ","attribute_value_mlt":[{"resourcetype":"thesis","resourceuri":"http://purl.org/coar/resource_type/c_46ec"}]},"item_title":"A study on Fine-grained Replications of Distributed Java Applications","item_titles":{"attribute_name":"タイトル","attribute_value_mlt":[{"subitem_title":"A study on Fine-grained Replications of Distributed Java Applications"},{"subitem_title":"A study on Fine-grained Replications of Distributed Java Applications","subitem_title_language":"en"}]},"item_type_id":"1","owner":"1","path":["19"],"pubdate":{"attribute_name":"公開日","attribute_value":"2010-02-22"},"publish_date":"2010-02-22","publish_status":"0","recid":"863","relation_version_is_last":true,"title":["A study on Fine-grained Replications of Distributed Java Applications"],"weko_creator_id":"1","weko_shared_id":-1},"updated":"2023-06-20T16:10:42.959591+00:00"}