코드 리팩토링 기법의 전력 효율성 분석
Analysis of Energy Efficiency for Code Refactoring Techniques
0
조회
0
다운로드
2
인용
0
참고문헌
키워드
초록
코드 리팩토링은 소프트웨어의 수명을 연장하기 위한 목적을 가지고, 유지보수성을 증진하는데 초점이 있다. 그러나 최근 소프트웨어의유용성이 높아지고 활용 범위가 방대해지면서, 성능 및 신뢰성 등의 다양한 품질 속성을 코드 리팩토링을 통해 향상시키고자 하는 노력이있었다. 최근 스마트 폰과 같은 모바일 기기에서 저전력 소프트웨어의 중요성이 강조됨에 따라, 전력 효율성을 보장하는 코드 리팩토링 기법들도 필요하게 되었다. 본 연구에서는 코드 리팩토링이 소모 전력의 절감 효과를 가져 올 수 있는지를 확인하고자 하였다. 즉 기존에 제시되었던 코드 리팩토링 기법들이 소모 전력에 대한 충분한 고려가 이루어지지 못했기 때문에 코드의 유지보수성은 향상시키지만, 전력 효율성이 감소하는 결과를 초래할 수 있다는 것이다. 따라서 본 연구에서는 M. Fowler가 개발한 코드 리팩토링 기법들을 대상으로 전력 효율성을 분석한다. 제시된 연구 결과를 통해 개발자들은 어떠한 리팩토링 기법이 전력 효율성을 제공하는지 판단할 수 있으며, 이를 통해 유지보수성이 높은 전력 효율적인 소프트웨어를 개발할 수 있을 것이다.
Abstract
Code refactoring focuses on enhancing the maintainability of software to extend its lifetime. However as software applications werevaried and the range of its usage becomes broaden, there are some efforts to improve software qualities like performance or reliabilityas well as maintainability using code refactoring techniques. Recently, as low-energy software has become one of critical issues inmobile environment, developing energy efficient software through code refactoring becomes an important one. Therefore this paper hasits goal to investigate whether the existing refactoring techniques can support energy efficient software generation or not. That is tosay, the existing code refactoring techniques can cause the minus of energy efficiency because they did not considered the energyconsumption in their refactoring process. This paper experiments and analyzes to check whether the M. Fowler’s code refactoringtechniques can support the energy efficient software generation or not. Our research result can give to software developer someinformations about energy-efficient refactoring techniques, and can support the development of software that has high maintainabilityand good energy efficiency.
참고문헌 (22)
- 홍장의, "임베디드 소프트웨어의 설계모델로부터 에너지 효율을 향상시키기 위한 태스크 도출", 정보처리학회논문지D, 18(1), pp.45~56 (2011), 한국정보처리학회
- H.Jun, "Modelling and Analysis of Power Consumption for Component-Based Embedded Software", Proc. of EUC Workshop, pp.795~804 (2006)
- E. Senn, "SoftExplorer: Estimating and Optimizing the Power and Energy Consumption of a C Program for DSP Application", EURASIP Jounal on Applied Signal Processing, 16, pp.2641~2654 (2005)
- 김두환, "임베디드 소프트웨어의 소모전력 분석을 위한 에너지 컴포넌트 라이브러리", 정보처리학회논문지D, 16(6), pp.871~880 (2009), 한국정보처리학회
- Kim, Jong-Phil, "Estimating power consumption of mobile embedded software based on behavioral model", Consumer Electronics (ICCE), 2010 Digest of Technical Papers International Conference on. IEEE (2010)
- Höpfner, "Energy Awareness Needs a Rethinking in Software Development", ICSOFT, (2) (2011)
- 권예진, "성능기반 리팩토링 기법 연구: 무브 메소드 영역 추출 및 식별", 정보과학회논문지 : 소프트웨어 및 응용, 40(10), pp.567~574 (2013), 한국정보과학회
- Jae-Jin Park, "An Approach to improve software safety by Code refactoring", Proc. of Korea Computer Congress (2013)
- Jelschen, Jan, "Towards Applying Reengineering Services to Energy-Efficient Applications", Software Maintenance and Reengineering (CSMR), 2012 16th European Conference on. IEEE (2012)
- Vetro, Antonio, "Definition, Implementation and Validation of Energy Code Smells: an Exploratory Study on an Embedded System", ENERGY 2013, The Third International Conference on Smart Grids, Green Communications and IT Energy-aware Technologies (2013)
- Fowler, Martin, "Refactoring: improving the design of existing code" (1999), Addison-Wesley Professional
- Gottschalk, Marion, "Removing Energy Code Smells with Reengineering Services", GI-Jahrestagung, ~ (2012)
- Marion, Gottschalk, "Energy-Efficient Code by Refac- toring", 15. Workshop Software-Reengineering (2013)
- Wellisson G, "Evaluation of the impact of code refactoring on embedded software efficiency", I Workshop de Sistemas Embarcados (2010)
- Oyedepo, Sunday Olayinka, "Efficient energy utilization as a tool for sustainable development in Nigeria", International Journal of Energy and Environmental Engineering, 3(1), pp.1~12 (2012)
- Marc Rosen, "MA: Towards energy sustainability: a quest of global proportion", Forum of Public Policy online: A Journal of the Oxford Round Table (2008)
- Z. Herczeg, "Eergy simulation of embedded XScale systems with XEEMU", Journal of Embedded Computing, pp.209~219 (2009)
- Steigerwald, B., "Writing Energy-Efficient Software", Energy Aware Computing, Intel Corporation, ~ (2011)
- Bunse, Christian, "Exploring the energy consumption of data sorting algorithms in embedded and mobile environments", Mobile Data Management: Systems, Services and Middleware, 2009. MDM'09. Tenth International Conference on. IEEE (2009)
- Van Rysselberghe, "Detecting move operations in versioning information", Software Maintenance and Reengineering, 2006. CSMR 2006. Proceedings of the 10th European Conference on. IEEE (2006)
- "FB36, Huffman Data Compression (C++ recipe)"[URL]
- "Goron350, Encryption and Decryption Program in C++ using a class"[URL]
