Using an Automatic Collection Method to Identify Patterns during Design Activity, accepted at JCKBSE 2014.

Jonatan Hernandez, Hironori Washizaki, and Yoshiaki Fukazawa, “Using an Automatic Collection Method to Identify Patterns during Design Activity,” Proceedings of 11TH Joint Conference on Knowledge-Based Software Engineering (JCKBSE 2014), 17-20, September, Volgograd, Russia (to appear) (JCKBSE2014_216.pdf)

Although design is an extremely important activity in software development, it is subjective because it depends on the designers’ knowledge and skills. Every designer has her or his own strategies to solve design problems. Herein we model the design process as an ordered sequence of logical actions of “Create”, “Delete”, and “Modify” applied to the elements of a UML class diagram, and propose an automatic approach to collect information about the design process to elucidate design strategies. The strategies considered are top-down, bottom-up, breadthfirst,
depth-first, and opportunistic. By mining the ordered sequences of actions for frequent patterns and analyzing the position and distribution of the actions in the sequence, we obtained two types of relationships in the design process: micro-patterns and macro-patterns. Then we evaluated our approach with two case studies. The first one, which occurred over a short time frame with seven subjects, identified the strategies used, while the second, which involved three subjects over a long period, revealed that there is not a universal strategy, but a combination of strategies.