WM164-30 Smart Solutions Development I (Programming)
Introductory description
The Industry 4.0 revolution is taking place which is also driving every single industry to become more smart and adaptable. Smart and portable devices can display important information on touchscreens using software programs embodied in hardware. As such, programming skills are needed to create reconfigurable, customized and dependable programs that would not be only useful to improve customer experience but will also help the industry to differentiate itself from the other competitors.
Module aims
This module will teach apprentices a range of digital technology solution development techniques and tools including programming concepts and basic algorithms using modern languages. Apprentices will gain knowledge and hands-on experience in development, testing, implementation, and debugging, as well as problem-solving skills. They will gain a good understanding of code quality and coding standards.
The current module builds up the foundation and tightly links to modules such as WM264 Smart Solutions Development-II (Database).
Outline syllabus
This is an indicative module outline only to give an indication of the sort of topics that may be covered. Actual sessions held may differ.
Variables and constants
Variable types and assignment
Local variables, global variables and global constants
Operators
Mathematical operators
Bit wise operators and logical operators
Loops and decision structures
For loops
While and do-while loop
If/else statements
Switch and case statements
Nested decision structures
Functions
Built-in functions
Passing arguments to functions and returning values
Recursive functions
Version control
Version management
Head, master, origin, branch
Learning outcomes
By the end of the module, students should be able to:
- Describe basic syntax, data structures, and algorithms used in modern programming languages
- Describe development techniques and tools used in modern programming languages
- Describe the underlying benefits of memory management and code optimization, and how to interact with basic hardware devices.
- Describe underlying theories of object-oriented programming, and how these are applied at different stages of software development
- Describe underlying theories of version controls systems
- Describe factors affecting software quality and approaches for how to control them including code quality and standards.
- Describe the basic principles of coding, testing and debugging software for data analysis involving different data formats.
Indicative reading list
View reading list on Talis Aspire
Subject specific skills
Programming in C++, Programming in Python, distributed version control using Git, object-oriented programming, testing, debugging, code quality checking, using data in different structure and formats
Transferable skills
Team working, problem-solving, oral and written communication
Study time
Type | Required |
---|---|
Lectures | 30 sessions of 1 hour (6%) |
Tutorials | 30 sessions of 1 hour (6%) |
Demonstrations | (0%) |
Work-based learning | 64 sessions of 1 hour (13%) |
Online learning (independent) | 52 sessions of 1 hour (10%) |
Other activity | 4 hours (1%) |
Private study | 196 hours (40%) |
Assessment | 120 hours (24%) |
Total | 496 hours |
Private study description
No private study requirements defined for this module.
Other activity description
Exam support sessions and PMA support sessions.
About WBL hours: work-related activities using programming languages.
Costs
No further costs have been identified for this module.
You must pass all assessment components to pass the module.
Assessment group D1
Weighting | Study time | Eligible for self-certification | |
---|---|---|---|
Assessment component |
|||
Post Module Assessment | 60% | 72 hours | Yes (extension) |
Post Module Assessment – A report on a programming project either pre-defined or defined by students |
|||
Reassessment component is the same |
|||
Assessment component |
|||
In Module Assessment | 40% | 48 hours | No |
In Module Assessment - Computer-based exam using software development tools |
|||
Reassessment component is the same |
Feedback on assessment
Feedback will be given as appropriate to the assessment type:
– In Module Assessment: written cohort-level feedback.
– Post Module Assessment: written summative feedback on post module assessment.
Post-requisite modules
If you pass this module, you can take:
- WM264-30 Smart Solutions Development-II (Databases)
Courses
This module is Core for:
- Year 1 of DWMS-H655 Undergraduate Digital and Technology Solutions (Cyber) (Degree Apprenticeship)
- Year 1 of DWMS-H652 Undergraduate Digital and Technology Solutions (Data Analytics) (Degree Apprenticeship)
- Year 1 of DWMS-H653 Undergraduate Digital and Technology Solutions (Network Engineering) (Degree Apprenticeship)
- Year 1 of DWMS-H654 Undergraduate Digital and Technology Solutions (Software Engineering) (Degree Apprenticeship)