← Teaching

Software Engineering Culture Y3, 20cr

Overview

This module considers the world of software engineering, reflecting on the history of software systems from the original isolated software running on single specialised computers to current systems with millions of users and thousands of interconnected parts. We examine how aspects of development, operations, security and maintenance have evolved practices to deliver the complex and ubiquitous computer solutions that we see today. On completing this module students should have a good understanding of contemporary issues in software engineering, how we got here, and what graduates might expect to experience and influence in their future careers in the software industry.

Learning Outcomes

  1. Compare and contrast cultures and approaches for collaborative distributed software development and operations.
  2. Analyse the requirements (development, security, operations) of software projects and evaluate the suitability of existing technologies for these requirements.
  3. Compare and contrast processes and tools available to software projects for collaboration, development, and operations.
  4. Evaluate the significance of individual and social psychological knowledge to software development cultures, approaches, processes and tools.
  5. Demonstrate the skills to communicate software engineering knowledge in industry-appropriate style.