Module Information
Module Identifier
CSM2120
Module Title
The Object Oriented Programming Paradigm
Academic Year
2014/2015
Co-ordinator
Semester
Semester 1
Pre-Requisite
MSc students only
Other Staff
Course Delivery
Delivery Type | Delivery length / details |
---|---|
Lecture | 44 hours |
Practical | 40 hours |
Assessment
Assessment Type | Assessment length / details | Proportion |
---|---|---|
Semester Assessment | Programming projects (50 hours): 3 practical assignments involving analysis, design and a Java implementation of a solution to a problem. 20% each. | 60% |
Semester Assessment | Case study analysis. Essay discussing a different solution to a practical problem assigned above. (2000 words) | 40% |
Supplementary Assessment | Resubmission of failed/non-submitted coursework components or ones of equivalent value. | 100% |
Learning Outcomes
On successful completion of this module students should be able to:
1. Demonstrate an advanced understanding of Object Oriented analysis, design and implementation techniques
2. Evaluate problem spaces in order to appropriately apply Object-Oriented design patterns
3 Analyse Object-Oriented software solutions in a range of application areas and be able to critically evaluate their effectiveness.
Aims
This module is designed for students entering MSc (Software Engineering) , to improve familiarity with the object oriented programming paradigm.
Brief description
This module covers the Object-Oriented programming paradigm which has become ubiquitous in recent years.
This is an approach to Software Engineering that models a system as a group of interacting objects. Each object represents some entity of interest in the system being modeled, and is characterized by its class, its state (data elements), and its behavior.
This module covers Object-oriented analysis, software design and programming languages and contrasts this with other paradigms.
This is an approach to Software Engineering that models a system as a group of interacting objects. Each object represents some entity of interest in the system being modeled, and is characterized by its class, its state (data elements), and its behavior.
This module covers Object-oriented analysis, software design and programming languages and contrasts this with other paradigms.
Content
1. Introduction. What is the Object-Oriented paradigm? How does it apply in analysis, design and programming languages? History of the concept (2 lectures)
2. Object-Oriented Data modeling. UML notations. Case studies. (4 lectures)
3. Object Oriented languages (using Java as a specific example). Basic constructs. Case studies of working systems. Robustness and reliability (30 lectures)
4. Design patterns. History. Reuse. Software design patterns and frameworks. Case studies (8 lectures)
2. Object-Oriented Data modeling. UML notations. Case studies. (4 lectures)
3. Object Oriented languages (using Java as a specific example). Basic constructs. Case studies of working systems. Robustness and reliability (30 lectures)
4. Design patterns. History. Reuse. Software design patterns and frameworks. Case studies (8 lectures)
Module Skills
Skills Type | Skills details |
---|---|
Application of Number | The application of number is important in this area of information technology |
Communication | In case study analysis |
Improving own Learning and Performance | |
Information Technology | Information Technology is central to this module |
Personal Development and Career planning | Gives students a broader understanding of the field |
Problem solving | In all assessments |
Research skills | In case study analysis |
Subject Specific Skills | Subject-oriented analysis, design and programming skills |
Team work |
Reading List
General TextBooch, Grady. (2007.) Object-oriented analysis and design with applications /Grady Blooch...[et al.]. 3rd ed. Addison-Wesley Primo search Fowler, Martin (2004 (various p) UML distilled :a brief guide to the standard object modeling language /Martin Fowler. 3rd ed. Addison-Wesley Primo search Freeman, Eric (2004.) Head First design patterns /Eric Freeman, Elisabeth Freeman ; with Kathy Sierra and Burt Bates. O'Reilly Primo search Horton, Ivor. (c2011.) Ivor Horton's beginning Javaª, Java 7 edition /Ivor Horton. Alternatively, any book on beginning Java that includes Abstract Classes and Interfaces. Several options are available in the library. Java 7 ed. Wiley Primo search Smith, Jason McC. (c2012.) Elemental design patterns /Jason McC. Smith. Addison-Wesley Primo search
Notes
This module is at CQFW Level 7