ºÚ¹Ï³ÔÁÏÍø

Internal

CS1SE20 - Software Engineering: Fundamentals and Professional Development

ºÚ¹Ï³ÔÁÏÍø

CS1SE20-Software Engineering: Fundamentals and Professional Development

Module Provider: Computer Science
Number of credits: 20 [10 ECTS credits]
Level:4
Terms in which taught: Autumn / Spring term module
Pre-requisites:
Non-modular pre-requisites:
Co-requisites:
Modules excluded:
Current from: 2021/2

Module Convenor: Dr Muntasir Al-Asfoor
Email: m.al-asfoor@reading.ac.uk

Type of module:

Summary module description:

This module introduces students to the concepts, practice and management of software engineering and the professional development to support it.. It addresses the lifecycle activities associated with developing software as part of a system as well as the management activities required to ensure that the software is developed on time, within budget and is fit for purpose. The module also incorporates case studies and examples to show the application of the concepts and principles to real-world systems.



A learning approach is adopted which reflects software engineering theory and practice. Students are given course material to read/view prior to the lectures, and are required to produce a number of assessments in teams.


Aims:

This module will provide an understanding of the concepts, practice and management of software engineering and how it relates to the wider context of systems engineering.



This module also encourages students to develop a set of professional skills, such as problem solving, end-user awareness, organisation and time management, creativity, self-reflection, software design and development, technical report writing, team working, initiative and self-motivation, action planning and decision making, effective use of commercial (and non-commercial) software, personal development planning, commercial awareness, appreciation of multiple perspectives and values of diversity.


Assessable learning outcomes:


  • By the end of the module, it is expected that the student will be able to:

  • Describe how software engineering fits within the wider context of systems engineering;

  • Articulate the business and ethical drivers for promoting quality products and practices;

  • Describe the software life cycle and the activities associated with each phase of it (feasibility, requirements, design, implementation, testing, handover, maintenance, evolution and decommissioning);

  • Describe the essential concepts of project planning, risk analysis, configuration management and testing;

  • Distinguish the difference between plan-based and agile-based approaches to software development;

  • Appreciate the importance of software engineering to real-world projects;

  • Apply software lifecycle activities and project management concepts to a given specification (linked to the assignment);

  • App ly software engineering principles to their learning approaches;

  • Work with others in a group project and understanding a team approach to projects;

  • Explain why planning is important in their own work;

  • Appreciating the need for back-ups and contingency plans;

  • Demonstrate innovative and creative thinking;

  • Demonstrate importance of communication and documentation;

  • Critically evaluate technical matters, a nd team and individual performance.


Additional outcomes:

The module also aims to encourage the development of the following skills:




  • Questioning and clarifying problem specifications.


Outline content:

The module draws on the IEEE’s articulation of knowledge on the topic, as presented in the Software Engineering Book of Knowledge v3 (SWEBOK).



Introduction:




  • Introduction to the module, Learning as an engineering process;

  • Introduction to software engineering and assignments.



Foundations:



Introduction to Engineering, Mathematical and C omputing foundations of Software Engineering;




  • ÌýResearch skills, report writing, referencing, time management, reflection and retrospectives



Quality drivers:




  • Software Engineering Economics, Professional Practice and