Mobile Java Project




Title

A Study on Mobile Java Programming Environment for Efficient Resource Usage using Static Analysis (정적 분석을 이용한 모바일 자바 프로그램의 효율적인 자원 사용을 위한 환경 연구)


Principal Investigator

Prof. Byeong-Mo Chang chang@sookmyung.ac.kr


Period

2002.9 - 2005.8


Fund

KOSEF(Korea Science and Engineering Foundation) R01-2002-000-00363-0(2002)


Background

Recently, wireless Internet access through mobile phones and PDAs have become very pervasive and we have seen the evolution of wireless Internet environment with high assurance. This exponential increase of wireless Internet users demands more powerful but easy to use program languages for new computing environment. Motivated by these demands, Sun Microsystems introduces Java 2 Micro Editions (J2ME) programming languages for the small hand held mobile devices like cellular phones or PDAs. Unlike the previous desktop computing environment, there are many constraints in developing mobile Java programs such as packet size to transmit, clock speed of CPU, size of main memory, communication speeds, and etcetera. So, when a programmer develope a mobile application, he/she must consider resources in the target mobile devices.


Objective

The objective of this research project is to provide rich developing environment for mobile Java programs with efficient resource management. In order to provide this, we design and develop resource visualizer, optimizer, and test set generator using the results of static resource analysis of a mobile java source program or its class files.


Contents

In this research, we study on the static analysis of resource usages in mobile Java programs and develop a resource analyzer to figure the usage of memory, objects and exceptions out from a given J2ME program. Then the result from the resource analysis can be used to generate necessary test data and optimized class files. These analysis information and optimized process will be illustrated to programmer through our resource usage visualizer. With these tools, we provide, programmers can develop more assured and efficient mobile Java applications.