A statistical analysis approach to predict user's changing requirements for software service evolution
Abstract Evolution is inevitable for almost all software, and may be driven by users’ continuous requests for changes and improvement, the enablement of technology development, among other factors. The evolution of software services can be seen as the evolution of system-user interactions. The capability to accurately and efficiently observe users’ volatile requirements is critical to making timely system improvements to adapt to rapidly changing environments. In this paper, we propose a methodology that employs Conditional Random Fields (CRF) as a means to provide quantitative exploration of system-user interactions that often lead to the discovery of users’ potential needs and requirements. By analyzing users' run-time behavioral patterns, domain experts can make prompt predictions on how users’ intentions shift, and timely propose system improvements or remedies to help address emerging needs. Our ultimate research goal is to speed up software service evolution to a great extent with automated tools, knowing that the challenge can be undoubtedly steep. The evolution of an online research library service is used to illustrate and evaluate the proposed approach in detail.