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 |