ABSTRACT
Software reuse is commonly achieved through extension mechanisms. Those mechanisms are practiced in software extension tasks. In these tasks, application developers retrieve code examples (step 1), acquire API documents (step 2), and adapt code examples (step 3). At step 2, they spend much time in manually searching API documents, confirming the valid API document version, and re-doing the searching work. At step 3, they spend much effort in frequently switching between web browsers and the local development environment, and rebuilding the development environment on different devices. To reduce the time and effort, a document link provision cloud, named dCloud, is provided in this work. dCloud reduces the time by only providing the document links and the link history. Such links are used to directly access the API documents of their valid version. dCloud reduces the effort by providing an online development environment which is accessed through web browsers. Furthermore, dCloud brings further advantages to application developers and makes a revolutionary impact on the development environment design.
- Amazon Elastic Compute Cloud (Amazon EC2), http://aws.amazon.com/ec2/. Accessed April 2013.Google Scholar
- IBM SmartCloud Foundation, http://www.ibm.com/cloud-computing/us/en/private-cloud.html. Accessed April 2013.Google Scholar
- Microsoft Private Cloud, http://www.microsoft.com/en-us/server-cloud/private-cloud/default.aspx. Accessed April 2013.Google Scholar
- VMware Private Cloud, http://www.vmware.com/solutions/cloud-computing/index.html. Accessed April 2013.Google Scholar
- ASUS CLOUD, http://www.asuscloud.com/. Accessed April 2013.Google Scholar
- iCloud, http://www.apple.com/icloud/. Accessed April 2013.Google Scholar
- G. Antoniol, B. Caprile, A. Potrich, and P. Tonella. Design-Code Traceability for Object-Oriented Systems. Annals of Software Engineering, 9(1-4):35--58, 2000. Google ScholarDigital Library
- S. Arsenault and K. Padegaonkar. Contributing Actions to the Eclipse Workbench, 2007. http://www.eclipse.org/articles/Article-action-contribution/index.html. Accessed April 2013.Google Scholar
- M. Bruch, T. Schäfer, and M. Mezini. FrUiT: IDE Support for Framework Understanding. In Proceedings of the 2006 OOPSLA Workshop on Eclipse Technology eXchange, pages 55--59, Oct. 2006. Google ScholarDigital Library
- M. D'Ambros, M. Lanza, and M. Lungu. Visualizing Co-Change Information with the Evolution Radar. IEEE Transactions on Software Engineering, 35(5):720--735, Sept./Oct. 2009. Google ScholarDigital Library
- A. De Lucia, F. Fasano, R. Oliveto, and G. Tortora. Recovering Traceability Links in Software Artifact Management Systems using Information Retrieval Methods. ACM Transactions on Software Engineering and Methodology, 16(4):13:1--13:48, Sept. 2007. Google ScholarDigital Library
- A. De Lucia, D. Penta, and R. Oliveto. Improving Source Code Lexicon via Traceability and Information Retrieval. IEEE Transactions on Software Engineering, 37(2):205--227, Mar./Apr. 2011. Google ScholarDigital Library
- U. Dekel and J. D. Herbsleb. Improving API Documentation Usability with Knowledge Pushing. In Proceedings of the 31st International Conference on Software Engineering, pages 320--330, May 2009. Google ScholarDigital Library
- Eclipse. The Eclipse Foundation. http://www.eclipse.org/. Accessed April 2013.Google Scholar
- H. Gall, K. Hajek, and M. Jazayeri. Detection of Logical Coupling Based on Product Release History. In Proceedings of the International Conference on Software Maintenance, pages 190--198, Nov. 1998. Google ScholarDigital Library
- H. Gall, M. Jazayeri, and J. Krajewski. CVS Release History Data for Detecting Logical Couplings. In Proceedings of the Sixth International Workshop on Principles of Software Evolution, pages 13--23, Sept. 2003. Google ScholarDigital Library
- R. Hoffmann, J. Fogarty, and D. S. Weld. Assieme: Finding and Leveraging Implicit References in a Web Search Interface for Programmers. In Proceedings of the 20th Annual ACM Symposium on User Interface Software and Technology, pages 13--22, Oct. 2007. Google ScholarDigital Library
- R. Holmes, R. J. Walker, and G. C. Murphy. Approximate Structural Context Matching: An Approach to Recommend Relevant Examples. IEEE Transactions on Software Engineering, 32(12):952--970, Dec. 2006. Google ScholarDigital Library
- M. Lormans and A. V. Deursen. Can LSI help Reconstructing Requirements Traceability in Design and Test? In Proceedings of the Conference on Software Maintenance and Reengineering, pages 45--54, Mar. 2006. Google ScholarDigital Library
- D. Mandelin, L. Xu, R. Bodík, and D. Kimelman. Jungloid Mining: Helping to Navigate the API Jungle. In Proceedings of the 2005 ACM SIGPLAN Conference on Programming Language Design and Implementation, pages 48--61, June 2005. Google ScholarDigital Library
- G. C. Murphy, D. Notkin, and K. J. Sullivan. Software Reflexion Models: Bridging the Gap between Design and Implementation. IEEE Transactions on Software Engineering, 27(4):364--380, Apr. 2001. Google ScholarDigital Library
- N. Sahavechaphan and K. Claypool. XSnippet: Mining for Sample Code. In Proceedings of the 2006 Conference on Object-Oriented Programming Systems, Languages, and Applications, pages 413--430, Oct. 2006. Google ScholarDigital Library
- R. Settimi, J. Cleland-Huang, O. B. Khadra, J. Mody, W. Lukasik, and C. DePalma. Supporting Software Evolution through Dynamically Retrieving Traces to UML Artifacts. In Proceedings of the Seventh International Workshop on Principles of Software Evolution, pages 49--54, Sept. 2004. Google ScholarDigital Library
- S. Thummalapenta and T. Xie. PARSEWeb: A Programmer Assistant for Reusing Open Source Code on the Web. In Proceedings of the 22nd International Conference on Automated Software Engineering, pages 204--213, Nov. 2007. Google ScholarDigital Library
- Y.-C. Wu, L. W. Mar, and H. C. Jiau. CoDocent: Support API Usage with Code Example and API Documentation. In International Conference on Software Engineering Advances, pages 135--140, Aug. 2010. Google ScholarDigital Library
- A. T. T. Ying, G. C. Murphy, R. Ng, and M. C. Chu-Carroll. Predicting Source Code Changes by Mining Change History. IEEE Transactions on Software Engineering, 30(9):574--586, Sept. 2004. Google ScholarDigital Library
- D.-F. Yu and H. C. Jiau. Providing Direct Document Links for Framework Extension Tasks. In International Conference on Advanced Computer Science and Information System, Nov. 2010.Google Scholar
- T. Zimmermann, P. Weissgerber, S. Diehl, and A. Zeller. Mining Version Histories to Guide Software Changes. IEEE Transactions on Software Engineering, 31(6):429--445, June 2005. Google ScholarDigital Library
Index Terms
- dCloud: a document link provision cloud for software extension tasks
Recommendations
SeaDoc: a self-adaptive document link provision system for framework extension tasks
It has been demonstrated that object-oriented frameworks can bring all kinds of advantages to application developers. To gain the advantages, application developers have to follow the framework-based development process. One step of the process is to ...
Enriching Documents with Examples: A Corpus Mining Approach
Software developers increasingly rely on information from the Web, such as documents or code examples on application programming interfaces (APIs), to facilitate their development processes. However, API documents often do not include enough information ...
Searching the library and asking the peers: learning to use Java APIs on demand
PPPJ '07: Proceedings of the 5th international symposium on Principles and practice of programming in JavaThe existence of large API libraries contributes significantly to the programming productivity and quality of Java programmers. The vast number of available library APIs, however, presents a learning challenge for Java programmers. Most Java programmers ...
Comments