skip to main content
10.1145/2089155.2089171acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
research-article

Categorization of concerns: a categorical program comprehension model

Published: 24 October 2011 Publication History

Abstract

Program comprehension models lack associations with the paradigm of separation of concerns. We present a holistic program comprehension model based on categorization studies of psychology. A comparison of research about categorization and separation of concerns is used to develop the model. The cognition in this model is influenced by the context wherein a programmer investigates the code. The comprehension process starts with some ad-hoc concerns that are about to be refined by following an investigation strategy and a vertical process study. Through this study, the concerns refinement may imply an update on the knowledge and the adoption of a new behavior for the investigation strategy. Our model can serve as a starting point for further investigations.

References

[1]
T. M. Shaft and I. Vessey. The Relevance of Application Domain Knowledge: The Case of Computer Program Comprehension, Information Systems Research, pp. 286--299, 1995.
[2]
R. Brooks, Towards a theory of the comprehension of computer programs, International Journal of Man-Machine Studies vol. 18, pp. 543--554, 1983.
[3]
M. E. Crosby, J. Scholtz, S. Wiedenbeck, The roles beacons play in comprehension for novice and expert programmers. In Proceedings of the 14th Workshop of the Psychology of Programming Interest Group. 2002.
[4]
C. Aschwanden and M. Crosby. Code scanning patterns in program comprehension. In Proceedings of the 39th Hawaii International Conference on System Sciences, 2006.
[5]
M.-A. Storey, Theories, Methods and Tools in Program Comprehension: Past, Present, and Future. 13th IWPC, pp.181--191, 2005.
[6]
E. Soloway, K. Ehrlich. Empirical Studies of Programming Knowledge. IEEE Transactions on Software Engineering, 10(5), pp. 595--609, 1984.
[7]
B. Shneiderman, R. Mayer. Syntactic/Semantic Interactions in Programmer Behavior: A Model and Experimental Results. International Journal of Parallel Programming, 8(3), 1979.
[8]
S. Letovsky. Cognitive Processes in Program Comprehension. In Empirical Studies of Programmers, pp. 58--79. Intellect Books, 1986.
[9]
N. Pennington. Comprehension Strategies in Programming. In Empirical Studies of Programmers: Second Workshop, pp. 100--113, 1987.
[10]
D. C. Littman, J. Pinto, S. Letovsky, E. Soloway. Mental Models and Software Maintenance. In Empirical Studies of Programmers: First Workshop, pp. 80--98, 1986.
[11]
F. Detienne, Software Design - Cognitive Aspects, Springer-Verlag London, 2002.
[12]
V. Rajlich, N. Wilde. The role of concepts in program comprehension. In International Workshop on Program Comprehension, 2002.
[13]
B. Cleary, C. Exton, Assisting Concept Assignment Using Probabilistic Classification and Cognitive Mapping. In Proceedings of the 2nd International Workshop on Supporting Knowledge Collaboration in Software Development, 2006.
[14]
B. Cleary, C. Exton. Assisting Concept Location in Software Comprehension, 19th Annual Workshop of the Psychology of Programming Interest Group, 2007.
[15]
P. Tarr, H. Ossher, W. Harrison, S. M. Sutton, Jr. N degrees of separation: Multidimensional separation of concerns. In Proceedings of the 21st International Conference on Software Engineering, pp. 107--119. 1999.
[16]
H. Ossher, P. Tarr. Multi-dimensional separation of concerns and the hyperspace approach. In Proceedings of the Symposium on Software Architectures and Component Technology: The State of the Art in Software Development. Kluwer, 2001.
[17]
R. E. Filman, T. Elrad, S. Clarke, M. Aksit. Aspect-Oriented Software Development Addison-Wesley Professional; 1 edition,. 2004.
[18]
J. A. Bloch, A Metadata Facility for the Java Programming Language, 2004.
[19]
G. Kiczales, E. Hilsdale, et. al. An Overview of AspectJ. European Conference on Object-Oriented Programming, pp. 327--355. 2001.
[20]
J. D. Smith, M. J. Murray, J. P. Minda, J. P. Straight talk about linear separability. Journal of Experimental Psychology: Learning, Memory, & Cognition, 23, pp. 659--680. 1997.
[21]
E. W. Dijkstra. A Personal Perspective. On the role of scientific thought, Selected Writings on Computing, Springer-Verlag. 1982.
[22]
E. Rosch, C. B. Mervis. Family resemblances: Studies in the internal structure of categories. Cognitive Psychology, 7, 573--605. 1975
[23]
M. Fowler, Patterns of enterprise application architecture, Addison-Wesley, 2003.
[24]
S. M. Sutton Jr., P. Tarr. Aspect-oriented design needs concern modeling, Workshop on Aspect-Oriented Design 1st International Conference on Aspect-Oriented Software Development, 2002.
[25]
A. von Mayrhauser, A. M. Vans. Program Comprehension During Software Maintenance and Evolution. Computer, 28(8), pp.44--55, 1995.
[26]
R. Brooks. Using a Behavioral Theory of Program Comprehension in Software Engineering. Proceedings of the 3rd international conference on Software engineering, pp. 196--201, 1978.
[27]
N. Pennington. Stimulus structures and mental representations in expert comprehension of computer programs. Cognitive Psychology, 19, pp. 295--341, 1987.
[28]
B. P. Lientz, E. B. Swanson. Software Maintenance Management. Addison-Wesley, 1980.
[29]
W. L. Hursch, C. V. Lopes. Separation of Concerns. Technical report by the College of Computer Science, Northeastern University, Boston, 1995.
[30]
B. Landau, Will the real grandmother please stand up?, The psychological reality of dual meaning representations. Journal of Psycholinguistic Research, 11, 1982.
[31]
G. Kiczales, M. Mezini : Separation of concerns with procedures, annotations, advice and pointcuts. In Proceedings of 19th European Conference on Object-Oriented Programming, 2005.
[32]
L. W. Barsalou, Ad hoc categories. Memory & Cognition, 11, pp. 211--217, 1983.
[33]
J. S. Bruner, J. Goodnow, G. Austin, A study of thinking. Wiley, New York. 1956.
[34]
M. McCloskey, S. Glucksberg. Natural categories: Well-defined or fuzzy sets?, Memory & Cognition, 6,pp. 462--472. 1978.
[35]
E. E. Smith, D. L. Medin. Categories and concepts. Cambridge, MA.: Harvard University Press. 1981.
[36]
D. L. Medin, E. J. Heit. Categorization. In D. Rumelhart and B. Martin Handbook of cognition and perception. San Diego. Academic Press. 1999.
[37]
Steven A. Sloman, Categorical Inference Is Not a Tree: The Myth of Inheritance Hierarchies, Cognitive Psychology 35, 1--33 (1998).
[38]
G. L. Murphy, The Big Book of Concepts, MIT Press, 2002.
[39]
D. Klein, G. Murphy, Paper has been my ruin: conceptual relations of polysemous senses, Journal of Memory and Language, Vol. 47, No. 4, pp. 548--570, 2002.
[40]
R. Johnson, Expert one-on-one J2EE design and development, Wrox 2003.
[41]
S. P. Nguyen, G. L. Murphy, An apple is more than a fruit: Cross-classification in children's concepts. Child Development, 74, 2003.
[42]
S. Nguyen. Cross-classification and category representation in children's concepts. Developmental Psychology, 43, pp. 719--731, 2007.
[43]
L. W. Barsalou, Ad hoc categories, Memory and cognition 11, pp. 211--227. 1983.
[44]
B. H. Ross, G. L. Murphy, Food for Thought: Cross-Classification and Category Organization in a Complex Real-World Domain, Cognitive Psychology 38, pp. 495--553. 1999.
[45]
T. Yamauchi, A. B. Markman, Inference Using Categories, Journal of Experimental Psychology: Learning, Memory, and Cognition, Vol. 26, No. 3, pp. 776--795, 2000.
[46]
M. F. Verde, G. L. Murphy, B. H. Ross, Influence of multiple categories on the prediction of unknown properties, Memory & Cognition, 33 (3), pp. 479--487, 2005.
[47]
D. L. Medin, E. B. Lynch, K. O. Solomon. Are there kinds of concepts? Annual Review Psychology, 51, pp.121 - 147. 2000.
[48]
D. Ratiu, F. Deissenboeck, How Programs Represent Reality (and how they don't), Proceedings of the 13th Working Conference on Reverse Engineering, IEEE, 2006.
[49]
M. P. O'Brien, Software Comprehension - A Review & Research Direction, Department of Computer Science & Information Systems University of Limerick, Ireland, Technical Report, 2003.
[50]
C. B. Mervis, M. A. Crisafi. Order of acquisition of subordinate-, basic-, and superodinate-level categories. Child Development, 53, pp. 258--266. 1982.
[51]
M. P. Robillard, W. Coelho, G. C. Murphy, How Effective Developers Investigate Source Code: An Exploratory Study, IEEE Transactions on Software Engineering vol. 30, No. 12, 2004.
[52]
S. M. Sutton, Jr, I. Rouvellou. Modelling of software concerns in Cosmos. Proceedings of the 1st international conference on Aspect-oriented software development. 2002.
[53]
S. M. Sutton, Jr, I. Rouvellou. Concern Space Modeling in Cosmos. OOPSLA Poster Session, 2001.
[54]
S. M. Sutton Jr. Early stage concern modeling, Early Aspects Workshop, Held with AOSD, 2002.
[55]
W. Chung, W. Harrison, V. Kruskal et al. Working with Implicit Concerns in the Concern Manipulation Environment, AOSD '05 Workshop on Linking Aspect Technology and Evolution. 2005.
[56]
A. S. Kaplan, G. L. Murphy, Category Learning With Minimal Prior Knowledge, Journal of ExlXaimental Psychology: Leraning, Memory, and Cognition, vol. 26, No. 4, pp. 829--846, 2000.
[57]
G. C. Murphy, M. Kersten, L. Findlater. How Are Java Software Developers Using the Eclipse IDE? IEEE Software, vol. 24, No. 4, 2006.
[58]
M. Kersten. Focusing knowledge work with task context. PHD thesis, University of British Columbia, Canada. 2007.
[59]
L. R. Brooks, G. R. Norman, S. W. Allen. Role of specific similarity in a medical diagnostic task. Journal of Experimental Psychology: General, 120, pp. 278--287. 1991.
[60]
T. Frey, M. Gelhausen. Strawberries are nuts. CHASE '11 4th international workshop on Cooperative and human aspects of software engineering. page 49. ACM. 2011.
[61]
E. Gamma, R. Helm, R. E. Johnson, J. Vlissides. Design Patterns. Elements of Reusable Object-Oriented Software, Addison-Wesley; 1st ed., 1994.
[62]
E. E. Smith, D. N. Osherson, L. J. Rips, M. Keane. Combining prototypes: A selective modification model. Cognitive Science, 12, pp. 485--527. 1988.
[63]
G. L. Murphy. Comprehending complex concepts. Cognitive Science, 12, pp. 529--562. 1988.
[64]
S. L. Armstrong, L. R. Gleitman, H. Gleitman, What some concepts might not be, Cognition, Vol. 13, No. 3., pp. 263--308, 1983.
[65]
T. Frey, M. Gelhausen, H. Sorgatz and V. Köppen. On the Role of Human Thought - Towards A Categorial Concern Comprehension. In Proceedings of the Workshop on Free Composition (FREECO-Onward!). ACM. 2011.

Cited By

View all
  • (2023)How They Relate and Leave: Understanding Atoms of Confusion in Open-Source Java Projects2023 IEEE 23rd International Working Conference on Source Code Analysis and Manipulation (SCAM)10.1109/SCAM59687.2023.00022(119-130)Online publication date: 2-Oct-2023
  • (2015)I know what you did last summerProceedings of the 2015 IEEE 23rd International Conference on Program Comprehension10.5555/2820282.2820289(25-35)Online publication date: 16-May-2015
  • (2015)A computational approach towards visual object recognition at taxonomic levels of conceptsComputational Intelligence and Neuroscience10.1155/2015/9054212015(72-72)Online publication date: 1-Jan-2015
  • Show More Cited By

Index Terms

  1. Categorization of concerns: a categorical program comprehension model

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    PLATEAU '11: Proceedings of the 3rd ACM SIGPLAN workshop on Evaluation and usability of programming languages and tools
    October 2011
    90 pages
    ISBN:9781450310246
    DOI:10.1145/2089155
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 24 October 2011

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. categorization
    2. program comprehension
    3. separation of concerns

    Qualifiers

    • Research-article

    Conference

    SPLASH '11
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 5 of 8 submissions, 63%

    Upcoming Conference

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)4
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 20 Jan 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)How They Relate and Leave: Understanding Atoms of Confusion in Open-Source Java Projects2023 IEEE 23rd International Working Conference on Source Code Analysis and Manipulation (SCAM)10.1109/SCAM59687.2023.00022(119-130)Online publication date: 2-Oct-2023
    • (2015)I know what you did last summerProceedings of the 2015 IEEE 23rd International Conference on Program Comprehension10.5555/2820282.2820289(25-35)Online publication date: 16-May-2015
    • (2015)A computational approach towards visual object recognition at taxonomic levels of conceptsComputational Intelligence and Neuroscience10.1155/2015/9054212015(72-72)Online publication date: 1-Jan-2015
    • (2015)I Know What You Did Last Summer - An Investigation of How Developers Spend Their TimeProceedings of the 2015 IEEE 23rd International Conference on Program Comprehension10.1109/ICPC.2015.12(25-35)Online publication date: 18-May-2015
    • (2014)Visual and Verbal StorytellingComputational Solutions for Knowledge, Art, and Entertainment10.4018/978-1-4666-4627-8.ch022(429-455)Online publication date: 2014
    • (2014)Towards Self-Adaptive IDEsProceedings of the 2014 IEEE International Conference on Software Maintenance and Evolution10.1109/ICSME.2014.121Online publication date: 29-Sep-2014

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media