Skip to main content


CSC8012 : Software Development Techniques and Tools

  • Offered for Year: 2022/23
  • Module Leader(s): Dr Konrad Dabrowski
  • Owning School: Computing
  • Teaching Location: Newcastle City Campus
Semester 1 Credit Value: 10
ECTS Credits: 5.0


To provide a grounding in object-oriented design and implementation in the context of the Java programming language. The module will extend the knowledge of Java, introduce the concepts of inheritance, exception handling and a selection of algorithms.

Outline Of Syllabus

Advanced object-oriented programming concepts: inheritance and polymorphism.
Exceptions and exception handling in Java.
Type variables; generic classes and methods.
Simple algorithms: searching, sorting.
Data structures: stacks and queues and their applications

Teaching Methods

Teaching Activities
Category Activity Number Length Student Hours Comment
Guided Independent StudyAssessment preparation and completion201:0020:00Lecture follow-up
Scheduled Learning And Teaching ActivitiesLecture102:0020:00Lectures (PIP)
Guided Independent StudyAssessment preparation and completion201:0020:00Revision for end of semester exam and exam duration
Scheduled Learning And Teaching ActivitiesPractical102:0020:00(PiP) There 2-hr practical sessions in the lab
Guided Independent StudyProject work101:0010:00Programming coursework
Guided Independent StudyIndependent study101:0010:00Background reading
Teaching Rationale And Relationship

Lectures will be used to introduce the learning material and for demonstrating the key concepts by example. Students are expected to follow-up lectures within a few days by re-reading and annotating lecture notes to aid deep learning.
This is a very practical subject, and it is important that the learning materials are supported by hands-on opportunities provided by practical classes. Students are expected to spend time on coursework outside timetabled practical classes.
Students aiming for distinction marks are expected to widen their knowledge beyond the content of lecture notes through background reading.
Students should set aside sufficient time to revise for the end of semester exam.

Assessment Methods

The format of resits will be determined by the Board of Examiners

Description Length Semester When Set Percentage Comment
PC Examination601A40PC based examination with short coding questions
Other Assessment
Description Semester When Set Percentage Comment
Practical/lab report1M60Programming coursework (10 hrs)
Assessment Rationale And Relationship

Practice in writing programs and using development tools is the most effective way for students to learn software development. The coursework provides further practice in writing programs and using development tools. N.B. This module has both “Exam Assessment” and “Other Assessment” (e.g. coursework). If the total mark for either assessment falls below 40%, the maximum mark returned for the module will normally be 40%.

If an exam is not able to run under usual exam conditions, a take home online paper will be used.

Reading Lists