{'fraction_non_alphanumeric': 0.01008827238335435, 'fraction_numerical': 0.0, 'mean_word_length': 5.107692307692307, '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}}
What should graduating software engineers be able to do?

This paper is concerned with trying to characterise the skills that students should develop during the course of a degree programme in software engineering. It is based on a generic framework that has been developed within the UK to describe the abilities that engineering students should possess on graduation, and the paper discusses how this framework could be applied to software engineering graduates at the levels of both bachelor's and masters degrees. The discussion covers the kinds of systems that graduates should be capable of developing, the process model within which this development can be described as taking place, and the levels of ability that could be expected for each of the activities within this process model.