| With the fast development of mobile communications technology and the increasing popularity of smart phones, a variety of value-added services for mobile phones become the focus of attention. The instant messaging service for personal computer, as one of the most successful applications in the Internet, have been extended from the traditional Internet applications to the mobile communications market, so it covers mobile terminal. Instant messaging software for smart phone terminal has become the most growth potential business in the network convergence's business, which have been concerned by more and more people.Symbian OS has the most market share in smart phone operating systems, and its excellent performance, flexible support for application development and the enrich rich library support are unmatched, compared with other smartphone operating symtems. As an key protocol for the next-generation network, SIP allow users to have direct communications capabilities in consultation and attributes with the terminal, being simple, has good scalability and easy integration with other services , those give SIP the advantages relative to H.323 protocol. The mobile instant messaging topic based on SIP and Symbian OS is given in this background.In this paper, we research Symbian OS and Symbian OS software development technology, study and expand SIP, and present a method that we make use of an extension of SIP message body to send instant messages. Through a detailed analysis and reasearch of the system, we decide to adopt the MVC pattern to design the system. The following work has been done:1. According to the general functions and features of instant messaging client, we take full account of the smart phone equipments' limitations and constraints, and design the client system in detailed.2. Through the analyzing the function needs of the system, we decide to use the MVC model as the system architecture, and the system is divided into five parts, including UI, IM-Engine, DB-Engine, SIP-Engine and the Message-Queue Engine. In order to facilitate the reuse of software, the DLL (dynamic link library) ie developed in IM-Engine, DB-Engine, SIP-Engine and the Message-Queue Engine parts.3. For smart phones, this kind of resource-constrained device, we give some solutions about a number of key issues in the development process, such as exception management, memory management and the use of active objects for the asynchronous requested operation. In addition, in the Message-Queue Engine, we use message queue and buffer handling of data sources to improve the software's performance in the smart phone device.4. We design and implement each part of the system in detailed. In order to improve the efficiency of development and to enhance software reusability and maintainability, the design model will be used in the development process. For example, in the IM-Engine and the SIP-Engine the status design patterns have been used to achieve the conversion between the different states, and the observer patterns have also been used between communications of the different components etc. All of the parts will be introduced in detailed in this paper.5. Network testing environment will be deployed, and functional testing of the system will also be conducted. |