Module Specification |
The information contained in this module specification was correct at the time of publication but may be subject to change, either during the session because of unforeseen circumstances, or following review of the module at the end of the session. Queries about the module should be directed to the member of staff with responsibility for the module. |
Title | Engineering Programming | ||
Code | ELEC431 | ||
Coordinator |
Professor X Tu Electrical Engineering and Electronics Xin.Tu@liverpool.ac.uk |
||
Year | CATS Level | Semester | CATS Value |
Session 2021-22 | Level 7 FHEQ | First Semester | 15 |
Aims |
|
This module aims to equip students with knowledge of two most popular programming languages, C++ and MATLAB, an understanding of the Functional Decomposition method for program design, and practical skills of designing and coding software for engineering applications based on a problem specification. |
Pre-requisites before taking this module (other modules and/or general educational/academic requirements): |
Co-requisite modules: |
ELEC422 Microprocessor Systems |
Learning Outcomes |
|
(LO1) Knowledge and Understanding : On successful completion of the module, students should be able to demonstrate their appreciation of software as an "engineered product" and its development procedure;understanding of established engineering principles, such as abstraction, modularity and information hiding;knowledge of MATLAB and C++ as programming languages commonly used for enginnering computation and modelling, and their pros and cons for different applications requirements.knowledge of logic structures, data types, user sub-routines (functions), operater precedancy, and the availability of special functions or tool boxes in MATLAB for signal analysis, image processing, filter design, and simulation of electrical systems. |
|
(LO2) Intellectual Abilities: On successful completion of the module students should be able to analyse and determine the suitability of a programming language based on the nature of the problem; based on relevant software engineering principles, decompose a problem specification into well defined functional blocks (modules) and design the overall program structure; propose coding algorithms based on their knowledge of the programming languages to efficiently implement the software design; design and carry out a test strategy to assess the soundness of the software and make subsequent improvement to design and code; choose and correctly use appropriate tool boxes or functions for a given computational or data processing need in Matlab. |
|
(S1) On completion of the module students should be able to show experience and skills in software design based on functional decomposition method; design and coding C++ classes for Object oriented program design; using MATLAB to perform matrix calculation and generating high quality visualisation of a given data set. using SIMULINK to model electrical and electronic systems. |
|
(S2) On completion of the module students should be able to show experience and enhancement in software design using different programming languages; project organisation and problem solving; exploring the functionality of emerging Matlab toolboxes and C++ libraries through independent study. |
Syllabus |
|
Description of course structure of ELEC431 and brief review of software engineering and programming and their applications; Programming using MATLAB, MATLAB m-files; Logical structures; Logical and relational operators; Conditional code execution. Introduction to m.file functions. Introduction to SIMULINK; Model creation; Using blocks; Simulation Parameters; Case studies Symbolic operations in MATLAB; Introduction to tool boxes for image and signal processing. Design of Graphical User Interface (GUI) in MATLAB. Introduction to software as an engineered product and software engineering principles; Procedure for program design based on functional decomposition method. p> Introduction to C++ as a complilation program language and header files; Control structures and operators, input/output, arrays, structures and pointers, type conversions, character arrays and strings, reading and writing files. Basic introduction to Object Oriented Programming. |
Teaching and Learning Strategies |
|
Due to Covid-19, one or more of the following delivery methods will be implemented based on the current local conditions and the situation of registered students. It is anticipated that both a) & b) will be in operation for semester 1. Teaching Method 2 - Synchronous face to face tutorials Teaching Method 3 - Campus based Laboratory Work Tutorials (b) Fully online delivery and ass
essment Teaching Method 2 - On-line synchronous tutorials Teaching Method 3 - on-line Laboratory Work Tutorials (c) Standard on-campus delivery with minimal social distancing Teaching Method 2 - Tutorial Teaching Method 3 - Laboratory Work |
Teaching Schedule |
Lectures | Seminars | Tutorials | Lab Practicals | Fieldwork Placement | Other | TOTAL | |
Study Hours |
18 |
18 |
36 | ||||
Timetable (if known) | |||||||
Private Study | 114 | ||||||
TOTAL HOURS | 150 |
Assessment |
||||||
EXAM | Duration | Timing (Semester) |
% of final mark |
Resit/resubmission opportunity |
Penalty for late submission |
Notes |
CONTINUOUS | Duration | Timing (Semester) |
% of final mark |
Resit/resubmission opportunity |
Penalty for late submission |
Notes |
(431) Assignment 1 There is a resit opportunity. Standard UoL penalty applies for late submission. This is not an anonymous assessment. Assessment Schedule (When) : Week 4 -- Week 9 (Submissio | 0 | 65 | ||||
(431.1) Class Test (Online) There is a resit opportunity. This is an anonymous assessment. Assessment Schedule (When) :Week 10 or Week 12 | 0 | 35 |
Reading List |
|
Reading lists are managed at readinglists.liverpool.ac.uk. Click here to access the reading lists for this module. |