Öztürk, F.Sarılı, E.Sözer, HasanAktemur, Tankut Barış2016-02-152016-02-152014978-3-319-09970-503029743http://hdl.handle.net/10679/2245https://doi.org/10.1007/978-3-319-09970-5_26Due to copyright restrictions, the access to the full text of this article is only available via subscription.The decomposition of software architecture into modular units is driven by both functional and quality concerns. Dependability and security are among quality concerns that require a software to be decomposed into separate units isolated from each other. However, it appears that this decomposition is usually not aligned with the decomposition based on functional concerns. As a result, introducing module isolation forced by quality attributes, while preserving the existing decomposition, is not trivial and requires a substantial refactoring effort. In this work, we introduce an approach and a toolset to predict this effort prior to refactoring activities. As such, a selection can be made among potential decomposition alternatives based on quantitative estimations. These estimations are obtained from scalable analysis of module dependencies based on a graph database and reusable query templates. We discuss our experiences and evaluate our approach on a code base used in a commercial Digital TV and Set-top Box software.engrestrictedAccessEffort estimation for architectural refactoring to introduce module isolationbookPart862730030700034508300002610.1007/978-3-319-09970-5_26Software architectureReverse engineeringRefactoringModule isolationEffort estimationDependabilitySecurity2-s2.0-84958549687