Return to homepage Skip to navigation Skip to site search Skip to main content Skip to footer

Module Catalogue

SCQF Level: 09  

Module Code: CMP307

Credit Value: 20  

Year: 2017/8

Term: Term 1

School: School of Arts, Media and Games

Description

This module develops students’ understanding and experience in design/programming within a software engineering context.

Aims

The aim of this module is to provide the student with the ability to review, critically evaluate and apply software engineering practice in the development of object-oriented software solutions.

Learning Outcomes

By the end of this module the student should be able to:

1.  Explain, compare and contrast software development methodologies such as waterfall, agile and continuous delivery;

2.  Describe and apply Code construction concepts including coupling, cohesion, test-driven development and source control;

3.  Describe and apply design principles and design patterns;

4.  Explain and use Secure coding practices.

Indicative Content

1 Software engineering (SE):

What is SE? Application to development process; application to programming practices.

2 SE Development methodologies:

Agile development; Waterfall Model; Continuous delivery.

3 Source control:

Strategies; tools; git.

4 Code construction issues:

Design concepts: Coupling and Cohesion; test-driven development.

5 Unified Modelling Language (UML):

Use case diagrams; Sequence diagrams; Class diagrams; State-machine diagrams; Activity diagrams;

6 Patterns

Pattern catalogues; reviewing a pattern; strategy pattern; observer pattern and variants; pattern implementation.

7 Secure OO coding practices:

Identifying coding vulnerabilities; types of exploits; protection through good programming practice; use of assertions

8 Protecting against the user:

Full input verification & validation; handling passwords and encryption; avoiding information leakage via uncaught exceptions.

Statement on Teaching, Learning and Assessment

Delivery will be through a variety of mechanisms: • Lectures : lecturer-led; deliver knowledge. • Tutorials : lecturer-directed, student-led; discuss and/or apply knowledge to specific desk-based questions to reinforce or extend that knowledge. • Practicals : lecturer-directed, student-led; undertake specific computer-based experiments/activities to exemplify, explain and/or extend knowledge when applied to a problem context.

Teaching and Learning Work Loads

Total 200
Lecture 12
Tutorial/Seminar 12
Supervised Practical Activity 24
Unsupervised Practical Activity 24
Assessment 60
Independent 68

Back


Guidance notes:

Credit Value – The total value of SCQF credits for the module. 20 credits are the equivalent of 10 ECTS credits. A full-time student should normally register for 60 SCQF credits per semester.

Disclaimer: We make every effort to ensure that the information on our website is accurate but it is possible that some changes may occur prior to the academic year of entry. The modules listed in this catalogue are offered subject to availability during academic year 2017/18 , and may be subject to change for future years.

Top