The IoT requires a new breed of software skills, with an emphasis on flexible, reactive, and highly networked
applications and services. This software runs on a diverse range of systems, is frequently connected to cloud
services, and may be capable of leveraging large data sets to deliver inferences and decision support in an informed
manner. The software is designed and implemented using agile techniques, with an emphasis on test driven development
and quality user experiences..
The Data Science strand will begin with the
fundamentals of relational databases used to store structured transactional business data. This data holds the basis
for reporting and descriptive analysis required to predict future events and to identify relationships in data. In the
third year the students will extend their knowledge to NoSQL (especially for managing unstructured data) databases and
data warehouses (supporting consistent views of a domain, and as a springboard for statistics and machine learning
analyses). In the IoT context the importance of dealing with large volumes of data in terms of storage and analytics
is great. The skills they learn will allow them to design and implement the appropriate data solution with a complete
understanding and knowledge of the available options. The students will learn about the trade-offs in terms of
consistency, availability and partitioning. In the fourth year students will learn and implement the skills of data
mining covering classification, prediction and clustering, applied to data that had been managed using methods and
technologies they have learned about in previous years.