@sjbutler

Understanding concerns in software: insights gained from two case studies

, , and . Proc. 13th Int'l Workshop on Program Comprehension, page 23 - 32. IEEE, (2005)
DOI: 10.1109/WPC.2005.43

Abstract

Much of the complexity of software arises from the interactions between disparate concerns. Even in well-designed software, some concerns can not always be encapsulated in a module. Research on separation of concerns seeks to address this problem, but we lack an understanding of how programmers conceptualize the notion of a concern and then identify that concern in code. In this work, we have conducted two exploratory case studies to better understand these issues. The case studies involved programmers identifying concerns and associated code in existing, unfamiliar software: GNU's sort.c and the game Minesweeper. Based on our experiences with these two case studies, we have identified several types of concerns and have detailed a number of factors that impact programmer identification of concerns. Based on these insights, we have created two sets of guidelines: one to help programmers identify relevant concerns and another to help programmers identify code relating to concerns.

Links and resources

Tags

community

  • @sjbutler
  • @ericbouwers
  • @dblp
@sjbutler's tags highlighted