Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction The design, development and maintenance of concurrent software are difficult tasks. Truly effective support methodologies have yet to be developed.

Similar presentations


Presentation on theme: "Introduction The design, development and maintenance of concurrent software are difficult tasks. Truly effective support methodologies have yet to be developed."— Presentation transcript:

1 Introduction The design, development and maintenance of concurrent software are difficult tasks. Truly effective support methodologies have yet to be developed. One plausible reason for the lack of such methodologies is the dearth of knowledge about human cognitive processes in this domain. We propose to develop such cognitive models, with the goal of informing the development of accessible and effective methodologies to support users in these tasks. Background /Related Work Researchers[1-7] have explored the mental models of and strategies adopted by expert programmers. However, no task-specific cognitive process has yet been built in this domain. One the other hand, numerous methods and tools have been proposed to assist with the tasks associated with the engineering concurrent programs. However, none of these methods or tools have been shown to improve the associated human cognitive process, nor have they received wide acceptance. Approach We propose to systematically construct cognitive process models of specific engineering tasks both with and without use of a supplementary tool. In this way, we can model human cognition and performance in this domain, and study the effects of tool usage on the cognitive process. Based on the data we collect from the initial study, we will propose a cognitive model. Subsequent studies will refine and parameterize that model, which should reveal the hard cognitive operations inherent in the study task. During the final stage, we will apply the model to a related task and propose supporting tools for reducing the difficulty of such tasks. Contributions We will develop and apply a cognitive process model of the software engineering of concurrent systems. References 1. D.C. Littman, J. Pinto, S. Letovsky, and E. Soloway, “Mental models and software maintenance”, In Empirical Studies of Programmers, pp. 80-98, 1986 2. S. Letovsky, “Cognitive processes in program comprehension”, In Empirical Studies of Programmers, pp.58-79, 1986 3. A. von Mayrhauser and A.M. Vans, “From code understanding needs to reverse engineering tool capabilities”, In Proceedings of CASE’93, pp.230-239, 1993 4. I. Vessey, “Expertise in debugging computer programs: A process analysis”, International Journal of Man-Machine Studies, pp.459-494, vol23, 1985 5. E. Soloway and K. Ehrlich, “Empirical studies of programming knowledge”, IEEE Transactions on Software Engineering, pp. 595-609, SE-10(5), September 1984 6. Ruven Brooks, “Towards a theory of the comprehension of computer programs”, International Journal of Man-Machine Studies, pp. 543-554, vol. 18, 1983 7. N. Pennington, “Stimulus structures and mental representations in expert comprehension of computer programs”, Cognitive Psychology, pp. 295-341, vol19, 1987 Acknowledgments Dr. Eileen Kraemer The Concurrency Group: Zhe Zhao (George) & Yiping Wang Model A represents the user’s cognitive model in the absence of the tool; Model B represents the user’s cognitive model in the presence of the tool. Here, we compare the two cognitive models and evaluate the usability of the tool based on the differences observed. Model A again represents the user’s cognitive model in the absence of the tool and Model B a cognitive model in the presence of the tool. Here, we analyze Model A and propose an improved Model B, which informs the specification of a tool that aids users in achieving this improved cognitive model. Discussion We will conduct an initial think-aloud study to explore how users’ cognitive procedures are affected by the usage of supporting tools in concurrent software engineering tasks. The initial study will inform our choice of modeling methodology, which ranges from qualitative, attribute-based models through more rigorous, quantitative models such as ACT-R. Toward a cognitive process model of software engineering for concurrent systems Zhen Li Computer Science Department The University of Georgia zhen@cs.uga.edu


Download ppt "Introduction The design, development and maintenance of concurrent software are difficult tasks. Truly effective support methodologies have yet to be developed."

Similar presentations


Ads by Google