+44 1792 513039
This module is a continuation of the module CS-110 Programming 1. In it, students will continue to enhance their skills in programming, as well as gain a basic understanding of algorithms and data structures.
Students will be introduced to the main professional issues associated with software engineering and computer science research. Students will also examine the main impacts of computing on society and social issues on the practice of computing, including legal and ethical concerns such as copyright and the data protection act. Issues of network security will be discussed. The course also includes communication skills, including the writing of a technical report and giving a formal presentation.
The aim of this module is to give an understanding of fundamental software engineering tools, testing and design methods that are used to create reliable software. A number of state-of-the-art development environments will be shown, with hands-on experimentation and use of test systems. Students will also be given a sound grasp of the use of these systems in the different professional software engineering processes used in the software industry. Innovative software engineering methods such as Extreme Programming will be introduced and learnt in hands-on laboratory work.
This module exposes the student to the major components of a practical software lifecycle through team-based practical software engineering. This module introduces students to prototyping, software design and implementation, and testing. Students are introduced to the issues and techniques of working in teams.
This module is about the technologies and markup languages that make various forms of data presentation possible. It will explore web-based presentation languages including HTML, XML and CSS, text presentation languages including LaTeX, and mathematical / graphical presentation through R. After studying this module, students will be able to build web sites, produce professional-quality reports and typeset and visualize mathematical formulae and data, using the appropriate graphs for the data. The students will also be able to produce a crawler / scraper that can pull data from websites automatically for analysis.