production
Skip to Content

Online Computing Science 2017-2018

CS1026: WEB APPLICATION DEVELOPMENT (DISTANCE LEARNING)

15 credits

Level 1

First Sub Session

This course will introduce you to programming and software development for the Web using the object-oriented scripting language Ruby. It will teach you how to develop software that underpins database-driven interactive Web and cloud applications, and give you a broad knowledge of the basics needed for professional software development such as testing and version control. The course uses examples based on real world applications. You will also learn a limited range of core theoretical concepts such as structured programming, variable declaration, conditional statements, iterative constructs, object-oriented programming and meta-programming.

CS1524: WEB APPLICATION DEVELOPMENT (DISTANCE LEARNING)

15 credits

Level 1

Second Sub Session

This course will introduce you to programming and software development for the Web using the object-oriented scripting language Ruby. It will teach you how to develop software that underpins database-driven interactive Web and cloud applications, and give you a broad knowledge of the basics needed for professional software development such as testing and version control. The course uses examples based on real world applications. You will also learn a limited range of core theoretical concepts such as structured programming, variable declaration, conditional statements, iterative constructs, object-oriented programming and meta-programming.

CS1527: OBJECT ORIENTED PROGRAMMING

15 credits

Level 1

Second Sub Session

This course builds on the basic programming knowledge already acquired in the first half-session and gears students up for going on to a career involving programming. It serves as a bridge between the basic introductory programming, and the full fledged software engineering that students will undertake in their level 3 software engineering project.


The emphasis here is on “quality programming in the small”, through various mini projects.




CS2014: ADVANCED WEB APPLICATION DEVELOPMENT (DISTANCE LEARNING)

15 credits

Level 2

First Sub Session

This course builds on the previous course so that you can build more complex database driven web applications using a suitable framework to guide you. This also continues to round out your computing science craftsmanship skills with more emphasis on learning appropriate practices such as version source control, testing and group collaboration, so that you can build good habits, which will help your further during your degree.

CS2514: ADVANCED WEB APPLICATION DEVELOPMENT

15 credits

Level 2

Second Sub Session

This course builds on the previous course so that you can build more complex database driven web applications using a suitable framework to guide you. This also continues to round out your computing science craftsmanship skills with more emphasis on learning appropriate practices such as version source control, testing and group collaboration, so that you can build good habits, which will help your further during your degree.

CS5071: SYSTEMS ANALYSIS AND DESIGN

15 credits

Level 5

First Sub Session

This course will be of interest to anyone who wishes to learn about the processes associated with modern systems analysis and design. In the course you will develop a critical understanding of how to analyse and evaluate systems, and to design and specify corresponding functionalities in a succinct and official way. The course will introduce you to the tools and techniques used by business and system analysts/designers and cover the fundamental issues associated with software engineering and project management.





CS5098: DATABASE SYSTEMS AND BIG DATA

15 credits

Level 5

First Sub Session

This course will be of interest to anyone who wishes to learn to design and query databases. The course aims to teach the material using case studies from real-world applications. You will develop a critical understanding of the principal theories, principles and concepts, such as modelling techniques used in the design, administration and security of database systems. You will also learn core theoretical concepts such as relational algebra, file organisation and indexing. At the end of this course you will be able to design and build Web and cloud-based databases and have a critical understanding of how database-driven applications operate.





CS50AH: INFORMATION SECURITY

15 credits

Level 5

First Sub Session

This course provides a comprehensive introduction to techniques for engineering secure information systems. Identity theft and fraudulent scams are some examples where computer systems have been utilised and compromised, and information exploited in ways not intended or authorized. In addition to developing critical knowledge of the theories, principles and concepts associated with information security and systems, this course will enhance your understanding of core topics such as access control, usability and psychology, security policy, ethical hacking, and cryptography. Students study how users and organisations must become better prepared to best exploit emerging technologies and issues arising.

CS551C: ENTERPRISE COMPUTING AND BUSINESS

15 credits

Level 5

Second Sub Session

This course provides insight into the business reasons for large software systems such as loyalty card systems, backend systems integrating firms and their suppliers and larges systems that integrate payroll, finance and operational parts of a business. You also learn the entrepreneurial aspects of business during the practical sessions where you explore and develop your own business application idea using service design and lean startup approaches centred around customer development, which you will find useful in any future work.



CS551D: FUNDAMENTALS OF SOFTWARE PROJECT MANAGEMENT

15 credits

Level 5

Second Sub Session

​Software Project Management skills are fundamental in current software-centric industrial development projects, whether these focus on purchasing and customising an off-the-shelf application or on developing a complete system from scratch. However, computer science courses and programmes typically teach specific technical skills that tend to leave out SWPM principles and the practice. This course thus addresses such shortcomings, providing students with much project management skills for the software sector that are highly sought in the job marlet for CS graduates and post-grads.

CS5586: HUMAN COMPUTER INTERACTION

15 credits

Level 5

Second Sub Session

This course looks at why a computer system that interacts with human beings needs to be usable. It covers a set of techniques that allow usability to be taken into account when a system is designed and implemented, and also a set of techniques to assess whether usability has been achieved. Weekly practical sessions allow students to practice these techniques. The assessed coursework (which is normally carried out by groups of students) gives an opportunity to go through the design process for a concrete computer system, with a particular focus on ensuring usability.

CS5974: PROJECT IN INFORMATION TECHNOLOGY

60 credits

Level 5

First Sub Session

The Project in Information Technology is a  group project where you will  work with a number of fellow students to build an application for an external client.  In order to do this successfully you will follow practices that produce successful projects, which will be introduced to you during the first week of the project, and continued during the rest of the summer.

Past teams have worked with Survival International, Grampian Fire and Rescue, the Small Isles, local volunteer groups, and an Edinburgh film company.




Compatibility Mode

We have detected that you are have compatibility mode enabled or are using an old version of Internet Explorer. You either need to switch off compatibility mode for this site or upgrade your browser.