Course Description
-
Course Name
Software Engineering
-
Host University
University of Roehampton
-
Location
London, England
-
Area of Study
Computer Science
-
Language Level
Taught In English
Hours & Credits
-
Overview
Software Engineering explores the modern methods, tools, and culture of the software development industry. The module focuses on students forming agile teams that work together to deliver a software product using iterative methods. The module begins by examining software lifecycle models, focusing on agile and forming of Scrum teams. The methods are continued with exploration of lean software development, DevOps, and Kanban. The module requires students to deliver software using modern tools, such as an Integrated Development Environment (IDE) such as Visual Studio or IntelliJ, containerisation tools such as Docker, and cloud delivery platforms such as Google Cloud Engine, Amazon Web Services, and Azure. These tools provide a technology stack from which students will deliver their software solution, using appropriate requirements analysis via UML and user stories, and testing methods built into a continuous integration tool. Software Engineering is completed with an examination of ethical and professional issues of software engineering, including legal and security considerations.
Software Engineering blends the tools, methods, and cultural ideals of modern software engineering to deliver a cohesive experience aimed at emulating how a modern software development team works. Although the tools are necessary to allow students to gain experience in delivering software, the core learning is in team-working methods and managing how to deliver a project. The technology is interchangeable based on different tool preferences.
Software Engineering builds on the cooperative technique of pair-programming used throughout the Software Development theme. Software Engineering introduces team-working practices to the students, which are used in the second module of the Software Engineering theme: Data Engineering. Software Engineering also continues the tools learning from the Software Development theme, expanding what an IDE can do, and exploring how cloud-based solutions are delivered. The idea of a technology stack is continued into the Data Engineering module.
Course Disclaimer
Courses and course hours of instruction are subject to change.
Eligibility for courses may be subject to a placement exam and/or pre-requisites.
Some courses may require additional fees.
Credits earned vary according to the policies of the students' home institutions. According to ISA policy and possible visa requirements, students must maintain full-time enrollment status, as determined by their home institutions, for the duration of the program.
Please reference fall and spring course lists as not all courses are taught during both semesters.
Please note that some courses with locals have recommended prerequisite courses. It is the student's responsibility to consult any recommended prerequisites prior to enrolling in their course.