Recent developments in curriculum and assessment at senior cycle have focused on the embedding of key skills within learning outcomes. This is accompanied by a different approach to assessment in which students can generate responses that reveal the depth of their understanding. The embedding of key skills requires careful consideration of the balance between knowledge and skills in the curriculum and in learning, and of finding appropriate ways of assessing them.
The key skills of information processing; being personally effective; communicating; critical and creative thinking and working with others, and the learning outcomes associated with them, comprise the NCCA Key Skills Framework. The Key Skills Framework was developed to provide a common, unified approach for embedding key skills across all future Leaving Certificate specifications. These skills are identified as being important for all students to achieve to the best of their ability, both during their time in school and in the future, and to fully participate in society, in family and community life, the world of work and lifelong learning. Computer science develops these skills in the following ways:
Learning in computer science takes place in an information-intensive environment; it promotes independent research activities in which students are required to access a wide variety of external materials to tackle questions. Tasks in computer science address selection, evaluation and recording of information; as students engage in problem solving, they make decisions and judgments based on data and qualitative and quantitative information. In this information-intensive environment, students develop an appreciation of the differences between information and knowledge and the roles that both play in making decisions and judgements. Programming teaches respect for accuracy and attention to detail and provides a platform to manipulate and process abstract forms of information. The consequence of a lack of precision is that the program fails or produces inaccurate or inconsistent results for different inputs. Similarly, the idea of breaking down a problem into sub-problems that can be solved separately takes a very concrete form in computer science, in which information-systems can be accessed through carefully-defined interfaces.
Design, modelling, and programming require careful analysis of patterns and relationships, which develops skills of higher-order reasoning and problem solving. Part of computational thinking is the ability to identify, analyse and deconstruct problems, explore options and alternatives, and hence solve problems. Hypothesising, making predictions, examining evidence, and reaching conclusions underpins the core of all the activities that students will undertake as part of computer science. As they develop these skills, students reflect critically on the forms of thinking and values that shape their own perceptions, opinions and knowledge. This develops the metacognitive dimension of knowledge which is essential in promoting good habits of mind. In computer science, students are designers and creators of technology rather than merely users of technology. Students must be creative and expressive to design artefacts that solve specific problems.
Strong communication skills are developed in collaborative project work. Students use technology to communicate both face-to-face and through digital media. Although literacy skills are not targeted directly, they enable full participation in the learning experience. Internet research and the use of external sources require and build analysis and interpretation skills. Students will read a wide range of information sources. As part of the course students will be required to express and share their opinions through dialogue, discussion and argument. This encourages engaging in dialogue, listening attentively and eliciting opinions, views and emotions. They will also learn to provide technical information in ways that are relevant to and easily understood by people with diverse levels of technical knowledge and understanding. There is an opportunity to develop communication skills further as students compose and present using a variety of media.
Leaving Certificate Computer Science is underpinned by collaboration and working with others. In their project work, students gain appreciation of the dynamics of groups and the social skills needed to engage in collaborative work. Computer science contributes to an appreciation that working collectively can help motivation, release energy and capitalise on all the talents in a group. One of the crucial factors in working with others is to identify, evaluate and achieve collective goals. Students learn to negotiate and resolve conflicts as they discuss their different strategies and achieve consensus.
Self-awareness and persistence in the face of challenges enable students to grow and to develop. In computer science, students work on uncertain problems and learn to persist through ambiguity and face the risk of failure. As they work through challenges and potential failure they build persistence and resilience which serves them in all areas of their lives. There is no right way to answer a problem or set up a problem-solving strategy; as students build confidence in their self-direction they develop tenacity and rigour. Through developing the skill of being personally effective, students develop strategies for problem solving and for learning in general.