{'fraction_non_alphanumeric': 0.014652014652014652, 'fraction_numerical': 0.0, 'mean_word_length': 5.072222222222222, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
A Process Pattern Language for Agile Methods

Agile methods have become a hot-spot in contemporary research and practice on software engineering. There are numerous successful and classic cases for applying agile methods. However, software processes must adapt to the characteristics of projects, people and organizations. Since each software project is unique, we can hardly define a series of universal and repeatable processes for all agile projects. A pattern is a general solution to a common problem or issue, one from which a specific solution may be derived. This paper introduces concept of pattern into software process and organizes experience proved to be effective in agile methods as a group of patterns. Based on this group of process patterns, we propose a process pattern language PPL for agile methods. Any agile project can find a series of process patterns from PPL according to its characteristics, and generate an appropriate process by following instructions from these patterns. We also give an example of applying this pattern language to generate software processes.