Computer Science

ECM3440 - Software Engineering 2 (2019)

Back | Download as PDF
MODULE TITLESoftware Engineering 2 CREDIT VALUE15
MODULE CODEECM3440 MODULE CONVENERUnknown
DURATION: TERM 1 2 3
DURATION: WEEKS 12 0 0
Number of Students Taking Module (anticipated) 15
DESCRIPTION - summary of the module content

The primary role of a software engineer is to be able to design, build and test, high-quality software solutions following best practices and industry standards. You will typically be working as part of a larger collaborative team, in which you will have responsibility for significant elements of the overall project. You will need to be able to interpret requirements specification documentation and designs in order to develop and test software that meets its requirements, even when these requirements may change.

Pre-requisite ECM3432 Software Engineering 1

AIMS - intentions of the module

The aim of this module is to further develop your knowledge, understanding and skill in software development and the practice of software development in the business context. You should be able to create effective and secure software solutions using contemporary software development languages and methodologies to deliver the full range of functional and non-functional requirements.

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

On successful completion of this module you should be able to:

Module Specific Skills and Knowledge

1. Create effective and secure software solutions using contemporary software development languages to deliver the full range of functional and non-functional requirements using relevant development methodologies.

2. Undertake analysis and design to create artefacts, such as use cases to produce robust software designs.

3. Produce high quality code with sound syntax in at least one language following best practices and standards.

4. Perform code reviews, debugging and refactoring to improve code quality and efficiency.

5. Test code to ensure that the functional and non-functional requirements have been met.

6. Deliver software solutions using industry standard build processes, and tools for configuration management, version control and software build, release and deployment into enterprise environments.

7. Work collaboratively and professionally with others in cross functional teams

8. Apply secure and robust development principles to ensure software resilience

Discipline Specific Skills and Knowledge

9. Operate at all stages of the software development lifecycle.

10. Ensure teams work effectively to develop software solutions embracing agile and other development approaches.

11. Apply software analysis and design approaches.

12. Interpret and implement a design, compliant with functional, non-functional and security requirements.

13. Perform functional and unit testing.

14. Use and apply the range of software tools used in software engineering.

15. Know how the business environment and business issues related to software development

Personal and Key Transferable / Employment Skills and Knowledge

16. Communicate orally and in writing

 

17. Solve problems creatively

18. Think analytically and critically

19. Organise your own work

20. Work to a deadline

21. Collaborate and negotiate

22. Make decisions

 

 

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

Software architecture (2 weeks)

•          Design patterns revisited; MVP

•          Frameworks

•          Package diagrams

•          UML deployment diagrams

 

Code quality (1 week)

•          Best practices and standards; software quality assurance

•          GRASP principles

•          Developing efficient, secure and reliable software

•          Profiling

•          Code reviews

 

Methods and tools (2 weeks)

•          Working collaboratively and professionally with others in cross-functional teams

•          The Unified Process

•          Scrum in depth; XP; DSDM

•          Lean development

•          Development tools

 

Software design (2 weeks)

•          User experience design; usability; human-computer interaction

•          Domain modelling

•          UML sequence diagrams

•          Interpreting and implementing a design

 

Advanced programming (2 weeks)

•          Threads

•          Localisation

•          Product line development

 

Testing (2 weeks)

•          System testing; acceptance testing

•          Advanced testing tools

•          Test-driven development

 

Deployment in enterprise environments (1 week)

LEARNING AND TEACHING
LEARNING ACTIVITIES AND TEACHING METHODS (given in hours of study time)
Scheduled Learning & Teaching Activities 22.00 Guided Independent Study 128.00 Placement / Study Abroad 0.00
DETAILS OF LEARNING ACTIVITIES AND TEACHING METHODS
Category Hours of study time Description
Scheduled learning and teaching activities 18 Online learning activity, including virtual workshops, synchronous and asynchronous virtual lectures and other e-learning.
Scheduled learning and teaching activities 2 Lectures
Scheduled learning and teaching activities 2 Group workshops
Guided independent study 128 Coursework, exam preparation and self-study

 

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
Contribution to class discussion N/A 1-22 Verbal
       
       
       
       

 

SUMMATIVE ASSESSMENT (% of credit)
Coursework 60 Written Exams 40 Practical Exams 0
DETAILS OF SUMMATIVE ASSESSMENT
Form of Assessment % of Credit Size of Assessment (e.g. duration/length) ILOs Assessed Feedback Method
Architecture and design exercise 60 3,000 words 1-22 Written
Written exam 40 2 hours 1-20, 22 Written
         
         
         

 

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-assessment
Architecture and design exercise (60%) Architecture and design exercise 1-22 Completed over summer with a deadline in August
Written exam (40%) Written exam (2 hours) 1-20, 22 August assessment period
       

 

RE-ASSESSMENT NOTES

Deferral – if you miss an assessment for certificated reasons judged acceptable by the Mitigation Committee, you will normally be deferred in the assessment. The mark given for a re-assessment taken as a result of deferral will not be capped and will be treated as it would be if it were your first attempt at the assessment.

Referral – if you have failed the module overall (i.e. a final overall module mark of less than 40%) you may be required to sit a referral. The mark given for a re-assessment taken as a result of referral will be capped at 40%.

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 Sommerville, I. Software Engineering 10th Addison Wesley 2015 978978-0137053469 [Library]
Set Gamma, E., Helm, R., Johnson, R., Vlissides, J., Booch, G. Design Patterns: Elements of Reusable Object-Oriented Software 1st Addison Wesley 1994 0-201-63361-2 [Library]
Set Horstmann, C. S. Big Java: Early Objects 6th Wiley 2015 978-1-119-05644-7 [Library]
CREDIT VALUE 15 ECTS VALUE 7.5
PRE-REQUISITE MODULES ECM3432
CO-REQUISITE MODULES
NQF LEVEL (FHEQ) 6 AVAILABLE AS DISTANCE LEARNING No
ORIGIN DATE Friday 22 January 2016 LAST REVISION DATE Tuesday 10 July 2018
KEY WORDS SEARCH Software engineering