Computer Science

 

ECM2414 - Software Development (2012)

Back | Download as PDF
MODULE TITLESoftware Development CREDIT VALUE15
MODULE CODEECM2414 MODULE CONVENERProf Jonathan Fieldsend (Coordinator)
DURATION: TERM 1 2 3
DURATION: WEEKS
Number of Students Taking Module (anticipated) 28
DESCRIPTION - summary of the module content

This module will introduce you to methods for the rigorous testing and assessment of software, and prepare you for complex programming tasks in a specific object-oriented programming language, including advanced concepts and syntax, and the use of multiple programs in parallel.

Pre-requisite module: ECM1410

AIMS - intentions of the module

The module will introduce the student to intermediate and advanced constructs and concepts in the Java programming language, alongside the programming paradigms these relate to. This includes generic programming (and Java generics), concurrent programming (via Java threads), design patterns, data structures, networked programs and inner classes. Widespread tools in software development will also be covered, including version control, unit testing, and code coverage.

INTENDED LEARNING OUTCOMES (ILOs) (see assessment section below for how ILOs will be assessed)

Module Specific Skills and Knowledge:
1 use a software design and development method which incorporates both formal and informal techniques appropriately;
2 design and implement rigorous testing frameworks for software, and be aware of the inherent limitations of tests developed;
3 understand and deploy advanced object-oriented language concepts and techniques;
4 develop multi-program software systems.
Discipline Specific Skills and Knowledge:
5 follow the phases of software development;
6 recognise and evaluate different development practices, and judge their appropriateness for a specific development problem.
Personal and Key Transferable/ Employment Skills and  Knowledge:
7 analyse and break down a problem into constituent parts;
8 compare and contrast critically different potential solutions to a problem.

SYLLABUS PLAN - summary of the structure and academic content of the module

Software testing: V-model for software development, unit testing, code coverage, corner cases. Advanced (Java) software constructs: inner classes, anonymous classes, recursion, regular expressions, generics, collections, threads, reflection, sockets, remote method invocation. Software development tools and techniques: design patterns, profilers, sophisticated Integrated Development Environments.

LEARNING AND TEACHING
LEARNING ACTIVITIES AND TEACHING METHODS (given in hours of study time)
Scheduled Learning & Teaching Activities 42.00 Guided Independent Study 108.00 Placement / Study Abroad 0.00
DETAILS OF LEARNING ACTIVITIES AND TEACHING METHODS
Category Hours of study time Description
Scheduled Learning & Teaching activities 22 Lectures
Scheduled Learning & Teaching activities 20 Workshops/Tutorials
Guided Independent Study 45 Individual assessed work
Guided independent Study 63 Wider reading and exam preparation

 

ASSESSMENT
FORMATIVE ASSESSMENT - for feedback and development purposes; does not count towards module grade
Form of Assessment Size of Assessment (e.g. duration/length) ILOs Assessed Feedback Method
       
       
       
       
       

 

SUMMATIVE ASSESSMENT (% of credit)
Coursework 60 Written Exams 40 Practical Exams
DETAILS OF SUMMATIVE ASSESSMENT
Form of Assessment % of Credit Size of Assessment (e.g. duration/length) ILOs Assessed Feedback Method
Written exam – closed book 40 90 minutes 3, 5, 6, 7, 8 Oral, on request
Coursework – practical programming assignments 60 20 hours All Written directly on submitted code/assignment, on feedback sheet, and in model answer review in surgeries
         
         
         

 

DETAILS OF RE-ASSESSMENT (where required by referral or deferral)
Original Form of Assessment Form of Re-assessment ILOs Re-assessed Time Scale for Re-reassessment
All above Written exam (100%) All Last week August
       
       

 

RE-ASSESSMENT NOTES

Referred and deferred assessment will normally be by examination. For referrals, only the examination will count, a mark of 40% being awarded if the examination is passed. For deferrals, candidates will be awarded the higher of the deferred examination mark or the deferred examination mark combined with the original coursework mark.
 

RESOURCES
INDICATIVE LEARNING RESOURCES - The following list is offered as an indication of the type & level of
information that you are expected to consult. Further guidance will be provided by the Module Convener



ELE – http://vle.exeter.ac.uk

 

Reading list for this module:

Type Author Title Edition Publisher Year ISBN Search
Set James Nino and Frederick A. Horsch Introduction to Programming and Object Orientated Design Using Java 3rd Wiley 2008 [Library]
Set Niemeyer, Patrick and Knudsen, Jonathan Learning Java 3rd O'Reilly 2005 [Library]
Set Freeman, E & E, Sierra, K, Bates, B Head First Design Patterns O'Reilly Media 2004 978-0596007126 [Library]
Extended Downey, Adam How to think like a computer scientist 4th http://www.greentreepress.com/thinkapjava/ 2004 [Library]
Extended Darwin, Ian Java Cookbook 2nd O'Reilly 2004 978-0596007010 [Library]
Extended Bloch, Joshua Effective Java: Programming Language Guide 2nd Addison Wesley 2008 978-0321356680 [Library]
Extended Winder, Russel and Roberts, Graham Developing Java Software 3rd Wiley 2006 [Library]
CREDIT VALUE 15 ECTS VALUE 7.5
PRE-REQUISITE MODULES ECM1410
CO-REQUISITE MODULES
NQF LEVEL (FHEQ) 2 (NQF level 5) AVAILABLE AS DISTANCE LEARNING No
ORIGIN DATE Monday 12 March 2012 LAST REVISION DATE Wednesday 09 October 2013
KEY WORDS SEARCH Software Development, Java, Concurrent Programs, Design Patterns, Software Testing, Networked Programs