Module ICL-2002:
Designing/Creating OO Programs

Module Facts

Run by School of Computer Science and Electronic Engineering

20 Credits or 10 ECTS Credits

Semester 1 & 2

Overall aims and purpose

This module will introduce learners to the object oriented approach to designing and creating computer programs. The learners will gain an understanding of the process of analysis and design using recognised methodologies (Unified Modelling Language) and creation of object oriented programs using a suitable programming language. The module will allow the students to develop a greater understanding of the process including a knowledgeable awareness of the primary concepts from initial design to the physical components of final solutions, culminating in a clearer comprehension of object orientation.

Course content

● An understanding of the various methods and techniques for program design.

● Interpreting a business scenario to design a specification and create a solution.

● Documenting user requirements and system constraints.

● An understanding of HCI principles for user interface design.

● Object Oriented Principles to include aggregation, inheritance and polymorphism.

● Using a suitable programming language to develop programs.

● User interface design and prototyping (forms and toolbox controls i.e. text boxes, labels, buttons, etc.)

● User interaction (input, events handlers, triggers, message boxes, responses, output, etc.)

● Variables (declaring, types, initialising and use) and Manipulation of data (operators and functions)

● Methods (creation, parameters, scope and use)

● Classes (creation, attributes, operations)

● Interaction with data through a server database (view, update, insert, delete)

● Use of suitable validation and error handling.

● Devising and using a valid test plan to test the final solution.

Assessment Criteria

good

All of the requirements completed satisfactorily with some to a high standard. A very good submission demonstrating an understanding of the fundamental object orientated structures used and their strengths and weaknesses. However, some areas are not fully explored affecting the potential success of the solution. At this level, students will make only a few errors in program design, syntax or functionality in the developed programs. Structure, layout and style will be good overall with the addition of clear annotations and comments. They will have demonstrated clear understanding through a range of design and program functionality. The overall solutions will be more than just basic and will show a degree of creativity and will have been tested thoroughly.

threshold

Most of the requirements completed satisfactorily. Some elements may show a measure of weakness. Adequate but not outstanding. At this level, students may make errors in the designs, syntax or functionality but will show a basic understanding of the underlying concepts. Structure, layout and style will be weak with little use of annotations or comments. The solutions will be basic and lack any depth or creativity but will cover the basic elements.

excellent

All of the requirements completed to a high standard. An excellent submission clearly evidencing analysis of the problem and will include independent research additional to taught materials. Clear evidence of the application of object oriented design theory throughout. Practical elements have been well presented and thought through with analysis of the problem and clear solutions developed showing a very good level of understanding issues which arise. At this level, students will make very few errors in design, syntax or functionality. Structure, layout and style will be excellent overall with the addition of elucidated comments. They will have demonstrated clear understanding through design and a range of program functionality and are likely to have shown further research by the breadth of the solutions submitted. The solutions will be well presented, in-depth and advanced. They will clearly demonstrate the students’ knowledge, creativity and flair and will have been tested extensively.

Learning outcomes

    1. Design an interactive program with a suitable graphical user interface (GUI).
    1. Design an object oriented solution to a given scenario.
    1. Develop a data driven object oriented program with GUI interface to include a server database as part of a developed solution.
    1. Devise and use a test plan to carry out unit (individual classes) and complete system testing.
    1. Develop and test an interactive program with a GUI using a suitable programming language.

Assessment Methods

Teaching and Learning Strategy

Hours
Lecture

60 of the 200 notional learning hours - 60 hours demonstrations, lectures and supported workshop.

60
Tutorial

140 of the 200 notional learning hours - 140 hours tutor directed student learning.

140

Transferable skills

  • Literacy - Proficiency in reading and writing through a variety of media
  • Numeracy - Proficiency in using numbers at appropriate levels of accuracy
  • Computer Literacy - Proficiency in using a varied range of computer software
  • Self-Management - Able to work unsupervised in an efficient, punctual and structured manner. To examine the outcomes of tasks and events, and judge levels of quality and importance
  • Critical analysis & Problem Solving - Able to deconstruct and analyse problems or complex situations. To find solutions to problems through analyses and exploration of all possibilities using appropriate methods, rescources and creativity.

Resources

Reading list

Anderson, T., 2004. C# In Easy Steps , Computer Step

Avalos R.L. and Aguirre, P.O., 2013. SQL SERVER & C# Connection (Beginners guide)

Barker J. and Palmer, G., 2014. Beginning C# Objects: From Concepts to Code . APress

Chonoles M.J. and Schardt J.A., 2003. UML 2 For Dummies , John Wiley & Sons

McLaughlin, B., Pollice, G. and West, D., 2006. Head First Object-Oriented Analysis and Design: A Brain Friendly Guide to OOA&D , O'Reilly Media

Roff, J.T., 2002. UML; A Beginner’s guide , McGraw-Hill Osborne

Sempf, B., Sphar, C. and Davis, S.R., 2013. C# 5.0 All-in-One For Dummies , John Wiley & Sons

Sharp, J., 2013. Microsoft Visual C# 2013 Step by Step , Microsoft Press

Websites

http://creately.com/blog/diagrams/uml-diagram-types-examples/

http://www.ibm.com/developerworks/rational/library/769.html

http://www.homeandlearn.co.uk/csharp/csharp.html

http://www.microsoftvirtualacademy.com/training-courses/c-fundamentals-for-absolute-beginners

Pre- and Co-requisite Modules

Courses including this module

Compulsory in courses: