Skip to main content


CSC8014 : Software Development Advanced Techniques

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


To give students experience of the advanced features of Java programming. The module will extend knowledge of java, introduce design patterns and a range of algorithms and data structures.

Outline Of Syllabus

Design patterns and good practice.
Common data structures and manipulation of collections of objects. Inheritance, polymorphism and abstraction.
Interface and encapsulation.

Teaching Methods

Teaching Activities
Category Activity Number Length Student Hours Comment
Scheduled Learning And Teaching ActivitiesLecture221:0022:00Lectures in person if available. Replaced by online recordings if needed.
Guided Independent StudyDirected research and reading221:0022:00Lecture follow-up
Scheduled Learning And Teaching ActivitiesPractical81:008:004 weeks practicals: PiP if available, else online.
Guided Independent StudyProject work241:0024:00Programming coursework
Guided Independent StudyIndependent study124:0024: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.

Assessment Methods

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

Other Assessment
Description Semester When Set Percentage Comment
Practical/lab report2M100Programming coursework (24 hrs)
Formative Assessments
Description Semester When Set Comment
Written exercise1MTutorial Exercises
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.

Reading Lists