Digital computer technologies operate with distinct steps, and data is stored within as separate bits. This method of finite operation is known as ‘discrete’, and the division of mathematics that describes computer science concepts such as software development, programming languages, and cryptography is known as ‘discrete mathematics’. This branch of mathematics is a major part of computer science courses and ultimately aids in the development of logical thinking and reasoning that lies at the core of all digital technology.
This unit introduces students to the discrete mathematical principles and theory that underpin software engineering. Through a series of case studies, scenarios and tasked-based assessments students will explore set theory and functions within a variety of scenarios; perform analysis using graph theory; apply Boolean algebra to applicable scenarios; and finally explore additional concepts within abstract algebra.
Among the topics included in this unit are: set theory and functions, Eulerian and Hamiltonian graphs, binary problems, Boolean equations, Algebraic structures and group theory.
On successful completion of this unit students will be able to gain confidence with the relevant discrete mathematics needed to successfully understand software engineering concepts. As a result they will develop skills such as communication literacy, critical thinking, analysis, reasoning and interpretation, which are crucial for gaining employment and developing academic competence.
Learning Outcomes
By the end of this unit students will be able to:
LO1. Examine set theory and functions applicable to software engineering.
LO2. Analyse mathematical structures of objects using graph theory.
LO3 Investigate solutions to problem situations using the application of Boolean algebra.
LO4. Explore applicable concepts within abstract algebra.