Feature-Based Software Customization: Preliminary Analysis, Formalization, and Methods

Yufei Jiang, Can Zhang, Dinghao Wu, Peng Liu

Research output: Chapter in Book/Report/Conference proceedingConference contribution

29 Scopus citations

Abstract

Modern software engineering practice allows us tobuild more complex software than ever before. However, onthe other hand, it causes some negative consequences such asbloatware and feature creep which have been observed in manysoftware evolution and iteration lifecycle. In this paper, we proposean approach to customizing Java bytecode by applying staticdataflow analysis and enhanced programming slicing technique. This approach allows developers to customize Java programsbased on various users' requirements or remove unnecessaryfeatures from tangled code in legacy projects. We evaluate ourapproach by conducting case studies on removing cross cuttingfeatures from real world Java programs. The results show thatour approach has the potential for practical use. Additionally, we find out that, by increasing the diversity of the software, ourapproach can help achieve moving target defense.

Original languageEnglish (US)
Title of host publicationProceedings - 17th IEEE International Symposium on High Assurance Systems Engineering, HASE 2016
EditorsRadu Babiceanu, Helene Waeselynck, Jie Xu, Raymond A. Paul, Bojan Cukic
PublisherIEEE Computer Society
Pages122-131
Number of pages10
ISBN (Electronic)9781467399128
DOIs
StatePublished - Mar 1 2016
Event17th IEEE International Symposium on High Assurance Systems Engineering, HASE 2016 - Orlando, United States
Duration: Jan 7 2016Jan 9 2016

Publication series

NameProceedings of IEEE International Symposium on High Assurance Systems Engineering
Volume2016-March
ISSN (Print)1530-2059

Other

Other17th IEEE International Symposium on High Assurance Systems Engineering, HASE 2016
Country/TerritoryUnited States
CityOrlando
Period1/7/161/9/16

All Science Journal Classification (ASJC) codes

  • Software
  • Safety, Risk, Reliability and Quality

Cite this