Software Engineering 1 - 2019 entry
MODULE TITLE | Software Engineering 1 | CREDIT VALUE | 15 |
---|---|---|---|
MODULE CODE | ECM3432 | MODULE CONVENER | Michael Saunby (Coordinator) |
DURATION: TERM | 1 | 2 | 3 |
---|---|---|---|
DURATION: WEEKS | 0 | 11 | 0 |
Number of Students Taking Module (anticipated) | 15 |
---|
***DEGREE APPRENTICESHIP STUDENTS ONLY***
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. The developer 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.
The aim of this module is to build 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 software solutions to deliver a range of requirements using Java and an iterative development approach.
On successful completion of this module you should be able to:
Module Specific Skills and Knowledge
1. Create effective software solutions using Java to deliver a range of requirements using an iterative development approach.
2. Write use cases and user stories, and create UML class diagrams.
3. Produce good quality code with sound syntax in at least one language.
4. Debug and refactor code.
5. Test code to ensure that the functional and non-functional requirements have been met.
6. Deliver software solutions using tools for configuration management, version control and software build.
Discipline Specific Skills and Knowledge
7. Apply software analysis and design approaches.
8. Perform unit testing.
9. Use software tools in development.
10. Demonstrate understanding of the business environment and business issues related to software development
Personal and Key Transferable / Employment Skills and Knowledge
11. Communicate orally and in writing
12. Solve problems creatively
13. Think analytically and critically
14. Organise your own work
15. Work to a deadline
16. Collaborate and negotiate
17. Make decisions
Introduction and context (1 week)
• The business environment and business issues related to software development
• Cost of software development and maintenance
Analysis (2 weeks)
• Meeting functional and non-functional requirements
• Requirements analysis techniques; use cases; user stories; scenarios
• UML; analysis and modelling tools
Design (2 weeks)
• Design principles (transparency, separation of concerns, abstraction, modularity, incremental development)
• User interface design
• Program structure; UML class diagrams
• Data structures
• Design patterns; MVC
Development (3 weeks)
• Agile and iterative development; Scrum
• Development tools; IDEs; configuration management and version control
• Secure Coding principlies
• Debugging
• Refactoring
Testing (2 weeks)
• Forms of testing; testing processes; verification and validation
• Unit testing; integration testing
• Automated testing tools
Advanced programming techniques (1 week)
• Collections and generics; other types
• Serialisation
• Error handling
Deployment (1 week)
• Processes and tools for software build, release and deployment
Scheduled Learning & Teaching Activities | 22 | Guided Independent Study | 128 | Placement / Study Abroad | 0 |
---|
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 |
Form of Assessment | Size of Assessment (e.g. duration/length) | ILOs Assessed | Feedback Method |
---|---|---|---|
Contribution to class discussion | N/A | 1-17 | Verbal |
Coursework | 60 | Written Exams | 40 | Practical Exams | 0 |
---|
Form of Assessment | % of Credit | Size of Assessment (e.g. duration/length) | ILOs Assessed | Feedback Method |
---|---|---|---|---|
Agile development exercise | 60 | 3000 words | 1-17 | Written |
Written exam | 40 | 2 hours | 1-15, 17 | Written |
Original Form of Assessment | Form of Re-assessment | ILOs Re-assessed | Time Scale for Re-assessment |
---|---|---|---|
Agile development exercise (60%) | Software engineering exercise | 1-17 | Completed over summer with a deadline in August |
Written exam (40%) | Written exam (2 hours) | 1-15, 17 | August assessment period |
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%.
information that you are expected to consult. Further guidance will be provided by the Module Convener
ELE: vle.exeter.ac.uk
Reading list for this module:
Type | Author | Title | Edition | Publisher | Year | ISBN |
---|---|---|---|---|---|---|
Set | Horstmann, C. S. | Big Java: Early Objects | 6th | Wiley | 2015 | 978-1-119-05644-7 |
Set | Sommerville, I. | Software Engineering | 10th | Addison Wesley | 2015 | 978978-0137053469 |
CREDIT VALUE | 15 | ECTS VALUE | 7.5 |
---|---|---|---|
PRE-REQUISITE MODULES | None |
---|---|
CO-REQUISITE MODULES | None |
NQF LEVEL (FHEQ) | 6 | AVAILABLE AS DISTANCE LEARNING | No |
---|---|---|---|
ORIGIN DATE | Tuesday 10th July 2018 | LAST REVISION DATE | Wednesday 18th September 2019 |
KEY WORDS SEARCH | Software, Engineering |
---|
Please note that all modules are subject to change, please get in touch if you have any questions about this module.