- Student Records
Programme & Unit Catalogues


CM10227: Principles of programming 1

Follow this link for further information on academic years Academic Year: 2015/6
Further information on owning departmentsOwning Department/School: Department of Computer Science
Further information on credits Credits: 12
Further information on unit levels Level: Certificate (FHEQ level 4)
Further information on teaching periods Period: Semester 1
Further information on unit assessment Assessment Summary: CW 50%, EX 50%
Further information on unit assessment Assessment Detail:
  • Assessment detail data for this unit is currently being updated as a change has been approved. Updated assessment information will be published here shortly.
Further information on supplementary assessment Supplementary Assessment: Like-for-like reassessment (where allowed by programme regulations)
Further information on requisites Requisites:
Further information on descriptions Description: Aims:
To introduce students to the development of computer software, including problem analysis, establishing requirements, designing, implementing and evaluating.
To provide practical skills at reading and writing programs and producing programs to solve real world problems.
To provide students with domain specific problem solving techniques.
To improve students' general problem-solving, project-management and time-management skills.
To make students feel confident about programming in the taught languages and about being able to learn different programming languages and programming paradigms.
To provide students with mechanisms to become independent learners who take control over their education rather than passively taking in information.

Learning Outcomes:
On completion of this unit, students will be able to:
1. Understand the basic procedural control statements and design, implement, test and evaluate programs using this paradigm.
2. Understand the basic concepts of object orientation and design, implement, test and evaluate programs in this paradigm.
3. Design, construct and evaluate simple data structures and algorithms.
4. Plan, implement and critique software projects.

Skills:
Use of IT (T/F,A), Problem Solving (T/F,A), Communication (T/F,A)

Content:
An introduction to a programming language such as Java or Python.
An introduction to program development environments such as eclipse.
Procedural Control: Introduction to procedural system development. Discussion of control structures: sequence, selection, iteration and recursion.
Objects: Introduction to object-oriented system development. Introduction of objects and classes, inheritance and polymorphism. Comparison of procedural and object programming.
Introductions to scope and extent, abstract data types. Design methods for such systems.
Systems engineering and design methods, such as Object/Class diagrams, UML, iterative software development, code reuse and software maintenance.
Testing and debugging: unit testing, tracing by hand, print statements, etc.
Data Organisation: Basic data structures: lists, stacks and queues. Basic search and sorting algorithms for these data structures. Files and streams. Data handling.
Further information on programme availabilityProgramme availability:

CM10227 is a Designated Essential Unit on the following programmes:

Department of Computer Science
  • USCM-AFB06 : BSc(Hons) Computer Science (Year 1)
  • USCM-AAB07 : BSc(Hons) Computer Science with Study year abroad (Year 1)
  • USCM-AKB07 : BSc(Hons) Computer Science with Year long work placement (Year 1)
  • USCM-AFM01 : MComp(Hons) Computer Science (Year 1)
  • USCM-AAM02 : MComp(Hons) Computer Science with Study year abroad (Year 1)
  • USCM-AKM02 : MComp(Hons) Computer Science with Year long work placement (Year 1)
  • USCM-AFB20 : BSc(Hons) Computer Science and Mathematics (Year 1)
  • USCM-AAB20 : BSc(Hons) Computer Science and Mathematics with Study year abroad (Year 1)
  • USCM-AKB20 : BSc(Hons) Computer Science and Mathematics with Year long work placement (Year 1)
  • USCM-AFM14 : MComp(Hons) Computer Science and Mathematics (Year 1)
  • USCM-AAM14 : MComp(Hons) Computer Science and Mathematics with Study year abroad (Year 1)
  • USCM-AKM14 : MComp(Hons) Computer Science and Mathematics with Year long work placement (Year 1)
  • USCM-AFB09 : BSc(Hons) Computer Science with Business (Year 1)
  • USCM-AAB10 : BSc(Hons) Computer Science with Business with Study year abroad (Year 1)
  • USCM-AKB10 : BSc(Hons) Computer Science with Business with Year long work placement (Year 1)

Notes:
* This unit catalogue is applicable for the 2015/16 academic year only. Students continuing their studies into 2016/17 and beyond should not assume that this unit will be available in future years in the format displayed here for 2015/16.
* Programmes and units are subject to change at any time, in accordance with normal University procedures.
* Availability of units will be subject to constraints such as staff availability, minimum and maximum group sizes, and timetabling factors as well as a student's ability to meet any pre-requisite rules.