Module ICE-3101:
Software Engineering
Software Engineering 2024-25
ICE-3101
2024-25
School of Computer Science & Engineering
Module - Semester 2
20 credits
Module Organiser:
Josh Davies
Overview
Indicative content includes:
- Complementary views of the Software Development Lifecycle, such as Waterfall, Double-Diamond, Agile, SCRUM.
- Methods of generating and managing the, often complex, list of requirements for any sizable software engineering project.
- ‘Full-stack’ developers, specialist developers, DevOps, Operations, and their roles in developing and maintaining software systems.
- Source Code Management (SCM) concepts, objects, and processes. Comparing and contrasting the centralised and de-centralised models of SCM tools.
- Continuous Integration (CI) and Continuous Delivery (CD) forms of the development process and how these are supported by other parts of the lifecycle, other tools and processes.
- Traditional and semantic versions practices, demonstrating the strengths and weaknesses of each.
- Strong quality control in software engineering, the practice of managing quality records and the surrounding issues.
- Traditional application environments, enterprise environments, cloud environments and their impact on software engineering.
- Release strategies and processes and their consequences on quality, customers, and the product.
Assessment Strategy
-threshold -Equivalent to 40%.Uses key areas of theory or knowledge to meet the Learning Outcomes of the module. Is able to formulate an appropriate solution to accurately solve tasks and questions. Can identify individual aspects, but lacks an awareness of links between them and the wider contexts. Outputs can be understood, but lack structure and/or coherence.
-good -Equivalent to the range 60%-69%.Is able to analyse a task or problem to decide which aspects of theory and knowledge to apply. Solutions are of a workable quality, demonstrating understanding of underlying principles. Major themes can be linked appropriately but may not be able to extend this to individual aspects. Outputs are readily understood, with an appropriate structure but may lack sophistication.
-excellent -Equivalent to the range 70%+.Assemble critically evaluated, relevant areas of knowledge and theory to constuct professional-level solutions to tasks and questions presented. Is able to cross-link themes and aspects to draw considered conclusions. Presents outputs in a cohesive, accurate, and efficient manner.
Learning Outcomes
- Appreciate the core concepts of the Software Engineering discipline.
- Associate elements of the Software Development Lifecycle with the appropriate project management and software engineering theory.
- Describe different methods to create, categorise, and store software requirements.
- Evaluate and select appropriate release and delivery strategies according to project requirements.
- Understand the various objects, processes, and strategies involved in Source Control Management and their implementation in contemporary software products.
Assessment method
Exam (Centrally Scheduled)
Assessment type
Summative
Description
Unseen Examination
Weighting
50%
Assessment method
Coursework
Assessment type
Summative
Description
DevOps Planning Exercise
Weighting
20%
Assessment method
Essay
Assessment type
Summative
Description
Delivery Methodology Essay Exploration and discussion of software and project delivery methods, especially contrasting the traditional and agile methods.
Weighting
15%
Assessment method
Essay
Assessment type
Summative
Description
Source Code Management Essay Theoretical discussion of the features and processes within various SCM tools and processes.
Weighting
15%