Module Descriptors
APPLICATION MODELLING
COSE40672
Key Facts
Digital, Technology, Innovation and Business
Level 4
30 credits
Contact
Leader: Graham Mansfield
Hours of Study
Scheduled Learning and Teaching Activities: 96
Independent Study Hours: 204
Total Learning Hours: 300
Assessment
  • Coursework weighted at 50%
  • Practical Examination weighted at 50%
Module Details
MODULE ADDITIONAL ASSESSMENT DETAILS
COURSEWORK Weighting 50%: Assignment to design, implement, test algorithms that use appropriate data structures to solve a given problem, including a brief report documenting and justifying the choice of algorithms and data structures.

(Learning outcomes 1, 3, 4 and 5)
An INDIVIDUAL PRACTICAL EXAM Weighting 50%: Staged practical assignment to design, implement, test and document object-oriented solutions. (Learning outcomes 2, 3, 4, 5 and 6)
This is the Final Assessment

PLEASE NOTE ALTERNATIVE ASSESSMENTS FOR Semester 1 2020/21 DUE TO COVID-19 AS FOLLOWS: Coursework 1 (50%), Coursework 2 (50%)
MODULE INDICATIVE CONTENT
Procedural
Top-down Problem solving
Pseudo-code
Introduction to C++
- Variables & data types
- Input & Output
- Sequence, selection & iteration
- Functions
- Pointers
- Memory management
Evaluating algorithms
- Testing
- Big-O notation
Data structures
- Arrays
- Stacks
- Queues
- Heaps
- Linked lists
- Trees
Sorting & searching algorithms
Process-centric modelling of systems
- Data Flow Diagrams

Object-Oriented
Object-oriented analysis & design
UML
- Modelling structure
- Class and object diagrams
- Relationships
- Modelling behaviour
- Use case diagrams
- Interaction diagrams
- Activity diagrams
- State diagrams
Techniques for testing OO designs
Implementing OO designs
MODULE LEARNING STRATEGIES
48 lectures presenting key topics and concepts.
48 supervised tutorials with formative practical exercises.
MODULE RESOURCES
Visual Studio
Modelling tool such as ArgoUML
MODULE TEXTS
Data Structures and Algorithms in C++, 2nd ed., Goodrich, M.T.; Tamassia, R.; Mount, D.M. (2011), Wiley & Sons, ISBN: 978-0470383278
The Unified Modelling Language User Guide 2nd ed., Booch, G.; Rumbaugh, J.; Jacobson, I. (2005), Addison-Wesley, ISBN: 978-0321267979
MODULE SPECIAL ADMISSIONS REQUIREMENTS
Co-requisite CESCOM10083-4 Introduction to Software Development or equivalent
MODULE LEARNING OUTCOMES
1. Employ a procedural approach to design and implement efficient algorithms that use appropriate data structures.
(APPLICATION; PROBLEM SOLVING)

2. Employ an object-oriented approach to design and implement efficient algorithms that use appropriate data structures. (APPLICATION; PROBLEM SOLVING)

3. Evaluate the effectiveness and efficiency of various algorithms and data structures.
(ENQUIRY; KNOWLEDGE & UNDERSTANDING)

4. Employ a suitable notation to model solutions to problems. (ANALYSIS; COMMUNICATION; PROBLEM SOLVING)

5. Select and exploit appropriate features of the c++ programming language to implement solutions.
(APPLICATION; KNOWLEDGE & UNDERSTANDING)

6. Implement object-oriented models in a suitable programming language. (APPLICATION)