Module Database Search



MODULE DESCRIPTOR
Module Title
Object Oriented Software Development
Reference EN3543 Version 8
Created March 2023 SCQF Level SCQF 9
Approved December 2009 SCQF Points 15
Amended August 2023 ECTS Points 7.5

Aims of Module
To provide the student with the skills and knowledge necessary to manage software projects and to develop software systems using an object-oriented approach.

Learning Outcomes for Module
On completion of this module, students are expected to be able to:
1 Implement software which utilises appropriate control structures in Python software and adheres to the principles of object-oriented programming design.
2 Implement software which uses an appropriately designed data structure with an accessible graphical user interface as a front-end.

Indicative Module Content
Programming structure and control. Conditionals, loops. Simple data structures. Functions and recursion. File handling, Exception handling. Modules and packages. Using the standard library. Object-oriented Design: objects, object classes, inheritance. Design representation, UML. Object-oriented Programming: classes, attributes and methods. Initialisers and destructors. Overriding, superclasses, polymorphism. Software Development for graphical user interfaces: Class frameworks, user interface design, widgets, event handling. Designing GUIs for accessibility and inclusion. Rapid Application development for GUIs. Data Structures: lists, linked lists, queues, stacks, dictionaries, sets.

Module Delivery
The module is taught using a structured programme of lectures, tutorials, laboratories and student-centred learning.

Indicative Student Workload Full Time Part Time
Contact Hours 40 40
Non-Contact Hours 110 110
Placement/Work-Based Learning Experience [Notional] Hours N/A N/A
TOTAL 150 150
Actual Placement hours for professional, statutory or regulatory body    

ASSESSMENT PLAN
If a major/minor model is used and box is ticked, % weightings below are indicative only.
Component 1
Type: Coursework Weighting: 40% Outcomes Assessed: 1
Description: Individual project
Component 2
Type: Coursework Weighting: 60% Outcomes Assessed: 2
Description: Individual project

MODULE PERFORMANCE DESCRIPTOR
Explanatory Text
The module has 2 components and to gain an overall pass a minimum D grade must be achieved in each component. The component weighting is as follows: C1 (x axis) is worth 40% and C2 (y axis) is worth 60%.
Coursework:
Coursework: A B C D E F NS
A A A B B E E
B B B B C E E
C B C C C E E
D C C D D E E
E E E E E E F
F E E E F F F
NS Non-submission of work by published deadline or non-attendance for examination

Module Requirements
Prerequisites for Module EN2542 Microprocessor Based Systems or equivalent.
Corequisites for module None.
Precluded Modules None.

INDICATIVE BIBLIOGRAPHY
1 SUMMERFIELD, M., 2010. Programming in Python 3. 2nd ed. Addison Wesley.
2 KALB, I., 2018, Learn to Program with Python 3, Apress
3 SUNDRES, J., 2020, Introduction to Scientific Programming with Python, Springer Open
4 NAGAR, S., 2017, Introduction to Python for Engineers and Scientists, Apress
5 DONALDSON, T., 2013, Python: Visual QuickStart Guide, 3rd Ed, Peachpit Press
6 SHOVIC, J.C., 2021, Python All-In-One For Dummies, 2nd ed. For Dummies


Robert Gordon University, Garthdee House, Aberdeen, AB10 7QB, Scotland, UK: a Scottish charity, registration No. SC013781