KF7012 - Implementation of Object Oriented Designs

APPLY NOW BOOK AN OPEN DAY Add to My Courses Register your interest / Course PDF

What will I learn on this module?

In this module you will enhance your Software Engineering skills using an object oriented methods to develop applications. The module has a strong focus on current professional best practice. You will learn about programming design patterns which can be applied to the Presentation, Domain and Data Access layers of an application and technologies such as Object Relational Mapping that allow the domain layer to remain object orientated while storage uses a relational model. In the module you will also learn about Microsoft C# and .Net development, the design and implementation of client-server applications, the use of the Encryption framework within .Net and testing strategies.

The module will cover the following topics:

1. Familiarisation with .Net development and the C# Language
2. Abstract Data type, Immutable objects and Encapsulation
3. Presentation Design Patterns (e.g., Supervising Controller and Passive View)
4. Design Principles (e.g., Open-Closed, Dependency Inversion, Single Responsibility etc.)
5. Creational Design Patterns and their Implementation
6. Behavioural Design Patterns and their Implementation
7. Structural Design Patterns and their Implementation
8. Data Access (ADO level 1 and LEVEL 2)
9. Object Relational Mapping
10. Testing using unit testing frameworks and Mock objects
11. Threading
12. Client-server applications
13. Encryption

How will I learn on this module?

Lectorals will be used to cover relevant theories, with examples to help illustrate them, and provide opportunities for practical work. Lectorals are designed to be a form of interactive learning where you have the opportunity to immediately complete practical work to explore and expand upon the techniques and technologies covered, and to ask questions and receive feedback on your work. This approach is intended to equip you with the necessary practical and theoretical knowledge to work as a skilled software engineer.

Outside class contact time, you are expected to engage in independent learning by reading additional material from both books and relevant professional development sources. This will help you to deepen your knowledge and understanding of the techniques covered in class.

How will I be supported academically on this module?

The module team will guide and support you in the lectoral sessions. You will be required to conduct interactive activities based on the lecturers’ guidance. The module team will prepare diverse examples to support you in learning complex programming techniques. Advanced topics such as encryption and object relational mapping will be coved in depth allowing to you develop your knowledge and skills. The module team will work closely with you in the practical work to provide further detailed guidance on the subjects covered.

You can also request appointments with the module teaching team outside of scheduled class time to ask questions and seek advice.

What will I be expected to read on this module?

All modules at Northumbria include a range of reading materials that students are expected to engage with. The reading list for this module can be found at: http://readinglists.northumbria.ac.uk
(Reading List service online guide for academic staff this containing contact details for the Reading List team – http://library.northumbria.ac.uk/readinglists)

What will I be expected to achieve?

Knowledge & Understanding:
1. Demonstrate in-depth knowledge and understanding of current best practice in the design and development of Object Orientated systems

Intellectual / Professional skills & abilities:
2. Design a system using advanced object orientated principles and methods, such as Behavioural, Creational and Structural design patterns, ensuring a high level of quality and data security
3. Implement and test Object Orientated programmes using advanced techniques, considering quality and data security
4. Critically evaluate the effectiveness of implemented Object Orientated applications

Personal Values Attributes (Global / Cultural awareness, Ethics, Curiosity) (PVA):
5. Demonstrate a professional understanding of the importance of software quality in the development of applications.

How will I be assessed?

Summative assessment
The module will be assessed by a two assignments.

For the first assignment (worth 60% of the final marks) you will work in a group to design, document, implement and test an Object Orientated System. This will assess MLOs 2 and 3.

For the second assignment (worth 40% of the final marks) you will write an individual report critically evaluating the work created for the group assignment, considering its effectiveness, best practice and software quality. This will assess MLOs 1, 4 and 5.

You will be provided with written, electronic, feedback for each of the summative assessments.

Formative assessment and feedback
The practical exercises provide opportunities for formative assessment, helping you and your tutors to assess your progress. You will receive guidance and ongoing feedback on your work and progress verbally in the lectorals.

You will also have the opportunity to discuss your progress and the needs of the summative assessment informally in the lectorals.

Pre-requisite(s)

N/A

Co-requisite(s)

N/A

Module abstract

n this module you will enhance your Software Engineering skills using an object oriented methods to develop applications. The module has a strong focus on current professional best practice. You will learn about programming design patterns which can be applied to the Presentation, Domain and Data Access layers of an application and technologies such as Object Relational Mapping that allow the domain layer to remain object orientated while storage uses a relational model. In the module you will also learn about Microsoft C# and .Net development, the design and implementation of client-server applications, the use of the Encryption framework within .Net and testing strategies. You will be assessed by a two assignments. For the first you will work in a group to design, document, implement and test an Object Orientated System. Then for the second you will write an individual report critically evaluating the work.

What will I learn on this module?

In this module you will enhance your Software Engineering skills using an object oriented methods to develop applications. The module has a strong focus on current professional best practice. You will learn about programming design patterns which can be applied to the Presentation, Domain and Data Access layers of an application and technologies such as Object Relational Mapping that allow the domain layer to remain object orientated while storage uses a relational model. In the module you will also learn about Microsoft C# and .Net development, the design and implementation of client-server applications, the use of the Encryption framework within .Net and testing strategies.

The module will cover the following topics:

1. Familiarisation with .Net development and the C# Language
2. Abstract Data type, Immutable objects and Encapsulation
3. Presentation Design Patterns (e.g., Supervising Controller and Passive View)
4. Design Principles (e.g., Open-Closed, Dependency Inversion, Single Responsibility etc.)
5. Creational Design Patterns and their Implementation
6. Behavioural Design Patterns and their Implementation
7. Structural Design Patterns and their Implementation
8. Data Access (ADO level 1 and LEVEL 2)
9. Object Relational Mapping
10. Testing using unit testing frameworks and Mock objects
11. Threading
12. Client-server applications
13. Encryption

Course info

UCAS Code G408

Credits 20

Level of Study Undergraduate

Mode of Study 4 years full-time or 5 years with a placement (sandwich)/study abroad

Department Computer and Information Sciences

Location City Campus, Northumbria University

City Newcastle

Start September 2019 or September 2020

Current, Relevant and Inspiring

We continuously review and improve course content in consultation with our students and employers. To make sure we can inform you of any changes to your course register for updates on the course page.

Your Learning Experience find out about our distinctive approach at 
www.northumbria.ac.uk/exp

Admissions Terms and Conditions - northumbria.ac.uk/terms
Fees and Funding - northumbria.ac.uk/fees
Admissions Policy - northumbria.ac.uk/adpolicy
Admissions Complaints Policy - northumbria.ac.uk/complaints