This module introduces the fundamental Computer Science concepts that are needed to develop effective software artefacts that can meet basic functional requirements of a given problem. It introduces the main steps in the process of developing such applications, from requirements analyses through to their implementation and testing. The module also includes the theoretical mathematical concepts that allow students to produce code to meet stated requirements.