BCS Level 3 Certificate in Programming Syllabus QAN 603/1192/7

Similar documents
BCS Level 3 Certificate in Software Development Context and Methodologies Syllabus QAN 603/1191/5

BCS Level 3 Award in Business Processes Syllabus QAN 603/0297/5

BCS Level 3 Award in Mobile and Operating Systems Syllabus

BCS Level 3 Award in Cloud Services Syllabus

BCS Level 4 Award in Operating Systems (Cyber Intrusion Analyst) Syllabus 603/2894/0

BCS Level 4 Certificate in Network and Digital Communications Theory Syllabus QAN 603/0703/1

BCS Level 3 Award in Coding and Logic Syllabus QAN 603/0523/X

Qualification Specification for the Knowledge Modules that form part of the BCS Level 3 Software Development Technician Apprenticeship

BCS Level 4 Certificate in Network Principles Syllabus QAN 603/0548/4

BCS Level 3 Award in Principles of Coding Syllabus

BCS Level 4 Certificate in Data Analysis Tools QAN 603/0824/2 Version 1.1 December 2016

BCS Foundation Certificate in Software Asset Management Essentials Syllabus

BCS EXIN ITAMOrg Software Asset Management Specialist Syllabus Version 1.1 December 2016

BCS Level 4 Certificate in Cyber Security Introduction Syllabus QAN 603/0830/8

Governance, Organisation, Law, Regulation and Standards Syllabus QAN 603/0855/2

BCS Practitioner Certificate in Integrating Off-the-shelf Software Solutions Syllabus

BCS Level 3 Award in Networking and Architecture Syllabus

BCS Specialist Certificate in Change Management Syllabus

BCS Specialist Certificate in Service Desk and Incident Management Syllabus

BCS Level 4 Diploma in Data Analysis Concepts QAN 603/0823/0 Version 2.0 July 2017

BCS Certificates in VeriSM Foundation, Essentials and Plus

BCS Practitioner Certificate in Information Risk Management Syllabus

BCS Professional Certificate in Benefits Planning and Realisation Syllabus Version 1.3 December 2016

BCS Specialist Certificate in Supplier Management Syllabus

BCS EXIN Foundation Certificate in OpenStack Software Syllabus

BCS EXIN Foundation Certificate in OpenStack Software Neutron Syllabus

BCS Foundation Certificate in Systems Development Syllabus

BCS Certificate in Systems Modelling Techniques Syllabus Version 3.5 December 2016

BCS Certificate in Requirements Engineering Syllabus

BCS Certificate in Modelling Business Processes Syllabus. Version 3.3

Certificate Software Asset Management Essentials Syllabus. Version 2.0

BCS Higher Education Qualifications. Diploma in IT. Professional Project Syllabus

Qualification Specification for the Knowledge Modules that form part of the BCS Level 4 Software Developer Apprenticeship

Qualification Specification for the Knowledge Modules that form part of the BCS Level 3 Infrastructure Technician Apprenticeship

BCS Certificate in Requirements Engineering Extended Syllabus Version 2.5 May 2017

BCS Practitioner Certificate in IA Architecture Syllabus

BCS EXIN Professional Certificate in SIAM Syllabus

BCS Practitioner Certificate in Information System Security Management Syllabus

Qualification Specification

BCS International Diploma in Consultancy Syllabus & Guidelines Version 1.2 December 2016

Level 4 Diploma in Computing

CIBTAC LEVEL 4 DIPLOMA IN SPA AND SALON MANAGEMENT CBD11 QAN 600/3328/9. Qualification Specification

A BRIGHTER FUTURE FOR DIGITAL IT APPRENTICESHIPS. Apprenticeship End-Point-Assessment for Training Providers

Qualification Specification

BCS Higher Education Qualifications. Diploma in IT. IT Service Management Syllabus

Qualification Specification

Qualification Specification

KEY PROGRAMME INFORMATION. Originating institution(s) Bournemouth University. Faculty responsible for the programme Faculty of Science and Technology

DIGITAL APPRENTICESHIPS

BCS Higher Education Qualifications. Level 6 Programming Paradigms Syllabus

Higher National Unit specification: general information

A BRIGHTER FUTURE FOR DIGITAL IT APPRENTICESHIPS. Apprenticeship End-Point-Assessment for Employers

CIBTAC LEVEL 3 CERTIFICATE IN MEDIA MAKE-UP CMC02 QAN 603/2350/4. Qualification Specification

BCS Higher Education Qualifications. Level 4 Certificate in IT. Computer Network Technology Syllabus

Youth can begin apprenticeship in high school through Secondary School Apprenticeship (SSA) programs.

Information and Communication Technology

Programme Specification

BCS Foundation Certificate in Information Security Management Principles Syllabus

Qualification Specification

FLOOR COVERING INSTALLER

Specification. Edexcel Levels 1 and 2. For first teaching September Issue 3

Qualification Specification

PETROLEUM EQUIPMENT INSTALLER

CONSTRUCTION ELECTRICIAN

IQ Level 4 Award in Understanding the External Quality Assurance of Assessment Processes and Practice (QCF) Specification

1st4sport Functional Skills in Mathematics at Level 1

SECURITY SYSTEMS TECHNICIAN

BCS Higher Education Qualifications. Level 6 Web Engineering Syllabus

INSTRUMENTATION AND CONTROL TECHNICIAN (INDUSTRIAL INSTRUMENT MECHANIC)

INDUSTRIAL ELECTRICIAN

Qualification details

ITIL 2011 Foundation Course

BCS Higher Education Qualifications. Diploma in IT. Professional Issues in Information Systems Practice Syllabus

Practitioner Certificate in Business Continuity Management (PCBCM) Course Description. 10 th December, 2015 Version 2.0

Qualification Specification

MOT Qualifications and CPD (3428)

EXAM PREPARATION GUIDE

AUTOMOTIVE SERVICE TECHNICIAN

FUNCTIONAL SKILLS. Functional Skills in English, Maths and ICT. Levels 1 and 2. Qualification Specification. Issue B. Overview

Higher National Unit specification: general information. Graded Unit 2

AUTOMOTIVE GLASS TECHNICIAN

INDUSTRIAL ELECTRICIAN

V&A/Icon Conservation and Collections Care Technicians Diploma What is the V&A / Icon Conservation and Collections Care Technicians Diploma?

CONSTRUCTION ELECTRICIAN

Faculty of Engineering and Informatics. Programme Specification. School of Electrical Engineering and Computer Science

AUTOMOTIVE SERVICE TECHNICIAN (AST 1, 2, 3 & 4)

Qualification Specification

Typical Training Duration 11 months

Qualification Specification Level 4 Award in Food Safety Management for Manufacturing

Specification. Edexcel Levels 1 and 2. For first teaching September Issue 5

The London Institute of Banking & Finance a registered charity, incorporated by Royal Charter. Page 1 of 8

COBIT 5 Foundation. Lesson Plan. Mock Exam: Duration: Language:

Audit Report. The Chartered Institute of Personnel and Development (CIPD)

Group NETWORK ENGINEER

Qualification Specification

Qualification details

Unit title: Computing: Authoring a Website (SCQF level 6)

2D Computer Animation for Visual Communication: Advanced

LANDSCAPE HORTICULTURIST

Apprenticeships CYBER SECURITY HIGHER APPRENTICESHIP FROM IT TECHNICIAN TO SKILLED INFORMATION SECURITY PROFESSIONAL

Transcription:

Making IT good for society BCS Level 3 Certificate in Programming Syllabus QAN 603/1192/7 Version 3.2 February 2018 This is a United Kingdom government regulated qualification which is administered and approved by one or more of the following: Ofqual, Qualification in Wales, CCEA or SQA Copyright BCS 2018 Page 1 of 13

BCS Level 3 Certificate in Programming Contents Introduction... 4 Objectives... 4 Course Format and Duration... 4 Eligibility for the Examination... 4 Format and Duration of the Examination... 4 Additional Time for Apprentices Requiring Reasonable Adjustments Due to a Disability... 5 Additional Time for Apprentices Whose Language is Not the Language of the Examination. 5 Guidelines for Training Providers... 5 Syllabus... 6 Levels of Knowledge / SFIA Levels... 12 Question Weighting... 12 Format of Examination... 13 Trainer Criteria... 13 Classroom Size... 13 Copyright BCS 2018 Page 2 of 13

Change History Any changes made to the syllabus shall be clearly documented with a change history log. This shall include the latest version number, date of the amendment and changes made. The purpose is to identify quickly what changes have been made. Version Number Version 1.0 March 2016 Version 1.1 October 2016 Version 1.2 December 2016 Version 2.0 August 2017 Version 2.1 October 2017 Version 2.2 October 2017 Version 2.3 October 2017 Version 3.0 October 2017 Version 3.1 November 2017 Changes Made Syllabus Created Amendment made Compliance statement added Major amendments following full review Minor amendments following review Amendments made Amendments made Final document created Amendment to the learning outcome numbering Minor amend to format of QAN reference Copyright BCS 2018 Page 3 of 13

Introduction This award is the second module of the two knowledge modules required for the Level 3 Software Development Technician Apprenticeship. It covers the range of concepts, approaches and techniques that are applicable to software development programming, for which apprentices are required to demonstrate their knowledge and understanding. Objectives Apprentices should be able to demonstrate knowledge and understanding of software development programming. Key areas are: 1. Understand how to implement code, following a logical approach. 2. Understand how code integrates into the wider project. 3. Understand how to follow a set of functional and non-functional requirements. 4. Understand the end-user context for the software development activity. 5. Appreciate the importance of seamlessly connecting applications to databases and understand types of data storage and their applications. 6. Demonstrate knowledge of database normalisation. 7. Understand why there is a need to follow good coding practices. 8. Understand the principles of good interface design. 9. Understand the importance of building security in to software at the development stage. Evidence of lessons learnt in these key areas should be collected and reflected upon when the apprentice is compiling the summative portfolio as the apprentice could identify how the task might be done better/differently with knowledge subsequently gained. Target Audience The award is relevant to anyone enrolled on the Level 3 Software Development Technician Apprenticeship programme. Course Format and Duration Candidates can study for this award by attending a training course provided by a BCS accredited training provider. The estimated total qualification time for this award is 169.5 hours. Eligibility for the Examination Individual employers will set the selection criteria, but this is likely to include 5 GCSEs (especially English, mathematics and a science or technology subject); other relevant qualifications and experience; or an aptitude test with a focus on IT skills. Level 2 English and Maths will need to be achieved, if not already, prior to taking the endpoint assessment. Format and Duration of the Examination The format for the examination is a 60-minute multiple-choice examination consisting of 40 questions. The examination is closed book (no materials can be taken into the examination room). The pass mark is 26/40 (65%). Copyright BCS 2018 Page 4 of 13

Additional Time for Apprentices Requiring Reasonable Adjustments Due to a Disability Apprentices may request additional time if they require reasonable adjustments. Please refer to the reasonable adjustments policy for detailed information on how and when to apply. Additional Time for Apprentices Whose Language is Not the Language of the Examination If the examination is taken in a language that is not the apprentice s native / official language, then they are entitled to 25% extra time. If the examination is taken in a language that is not the apprentice s native / official language, then they are entitled to use their own paper language dictionary (whose purpose is translation between the examination language and another national language) during the examination. Electronic versions of dictionaries will not be allowed into the examination room. Guidelines for Training Providers Each major subject heading in this syllabus is assigned an allocated time. The purpose of this is two-fold: first, to give both guidance on the relative proportion of time to be allocated to each section of an accredited course and an approximate minimum time for the teaching of each section; second, to guide the proportion of questions in the exam. Training providers may spend more time than is indicated and apprentices may spend more time again in reading and research. Courses do not have to follow the same order as the syllabus. Courses may be run as a single module or broken down into two or three smaller modules. This syllabus is structured into sections relating to major subject headings and numbered with a single digit section number. Each section is allocated a minimum contact time for presentation. Apprentices should be encouraged to consider their summative portfolio throughout the modules. Copyright BCS 2018 Page 5 of 13

Syllabus For each top-level area of the syllabus a percentage and K level is identified. The percentage is the exam coverage of that area, and the K level identifies the maximum level of knowledge that may be examined for that area. 1 Implementing software code following a logical approach (17.5%, K3) Understand how to implement code, following a logical approach. 1.1 Explain the fundamental concepts of programming. procedural vs. object-oriented vs. functional programming; compiled vs. interpreted. 1.2 Demonstrate the core constructs used when writing code. classes; objects; methods; variables; logic operators; o AND o OR o NOT o NAND o NOR o XOR control structures. o iteration o selection o sequence 1.3 Explain and demonstrate how algorithms are used. encryption; searching; sorting. 1.4 Explain and demonstrate how data structures are used and how data is represented in software code. types of data; o integer o floating o Boolean o character o string variables; lists, stacks, arrays. Copyright BCS 2018 Page 6 of 13

1.5 Describe how to write software code in order to solve problems. describe how programs are structured; o instructions o sub-routines o pseudocode o data definitions and links o comments describe modularity and the rational re-use of code. o design patterns o library functions o frameworks 1.6 Understand the fundamental concept of Test Driven Development (TDD). 2 How code integrates into the wider project (10%, K2) Understand how code integrates into the wider project. 2.1 Describe the activities undertaken in the following stages of software development: design; code development; testing. 2.2 Outline the activities undertaken in the following stages of software development: feasibility study; requirements analysis; deployment / implementation. 2.3 Understand software development activities for the following roles: requirements engineer; business analyst; software designer; software developer; software tester; software release engineer. 2.4 Describe the key business concepts and artefacts that must be considered during a software development project. processes and procedures; o business process management as it relates to business involvement in development o release management documentation; training; support; service levels. 2.5 Describe how software development is conducted within governance structures and the role of the project manager. Copyright BCS 2018 Page 7 of 13

2.6 Understand how effective team-working contributes to the effective delivery of software projects. decision making; conflict resolution; collaboration; communication; peer review and retrospectives. 3 Developing software against a set of functional and non-functional requirements (15%, K2) Understand how to follow a set of functional and non-functional requirements. 3.1 Understand how to follow a set of functional and non-functional requirements. 3.2 Understand the difference between functional and non-functional requirements and how these are used to drive software development activities. how to review requirements; how to assess their validity; how they are used as input to software design; how they are used during testing to ensure adequate test coverage. 3.3 Identify the different types of non-functional requirements, and the reasons they are important to the end-product of software development. availability; capacity; performance; scalability; reliability; maintainability; 3.4 Recognise common ways in which software requirements can be expressed. requirements documents clear, unambiguous; user stories; use case diagrams; process models / flow diagrams; UML diagrams. 3.5 Describe the qualities of good requirements and the impact of poor requirements. 3.6 Explain how to determine the correct level of test coverage based on each requirement / type of requirement. 4 The end user context for software development (7.5%, K2) Understand the end-user context for the software development activity. 4.1 Understand and recognise the relationship between the user and the environment in which the software will be used. Copyright BCS 2018 Page 8 of 13

4.2 Understand the individual business and external constraints and dependencies that need to be taken into account when developing software. compliance; ethics; governance; legality. 4.3 Describe the methods used to identify end-user needs. questionnaires; user interviews; contextual enquiry; focus groups; personas; customer journey mapping. 5 Connecting code to data sources (5%, K2) Appreciate the importance of seamlessly connecting applications to databases and understand types of data storage and their applications. 5.1 Explain the purpose of data storage for storing new information (orders or customer information). orders; customer information. 5.2 Explain the purpose of data storage for extracting and displaying data. products; pricing. 5.3 Explain the concept and key features of databases and data stores. relational databases; SQL and NoSQL; data files; data structures (tables, records, fields, definitions); document; key-value. 6 Database normalisation (5%, K3) Demonstrate knowledge of database normalisation. 6.1 Explain the purpose and importance of effective data modelling and normalisation. 6.2 Demonstrate the principle of normalisation, that information or data should be stored only once. Copyright BCS 2018 Page 9 of 13

7 Following good coding practices (12.5%, K2) Understand why there is a need to follow good coding practices. 7.1 Explain the importance of good coding practice. quality of coding development. o design documentation o structure of code o consistent design and structure o secure code 7.2 Explain the purpose of good software coding principles and practices. the basic common principles; o DRY (don t repeat yourself) defensive programming; commenting; refactoring; patterns / anti-patterns. 7.3 Understand that there are a range of open and organisational coding standards and where to source them. 8 Principles of good interface design (10%, K2) Understand the principles of good interface design. 8.1 Explain human computer interaction and understand the issues associated with interactive systems. usability / ease of use and intuitive design; graphical user interfaces (GUI) for different types of devices; ergonomic design. 8.2 Describe the key concepts and processes of good user interface design. design principles; design patterns; tools; o wireframes o prototypes techniques and methods. o A/B testing 8.3 Explain the importance of usability when developing interactive systems. 8.4 Describe the fundamental considerations for developing an accessible system and the purpose of the Web Accessibility Initiative (WAI). Copyright BCS 2018 Page 10 of 13

9 Building in security software (17.5%, K2) Understand the importance of building security in to software at the development stage. 9.1 Describe the following types of security issues and the scale and nature of threats that can impact software development. common security attacks; security versus resilience; social engineering. 9.2 Explain what is meant by 'building security in', in terms of secure software development and creating a secure end-product, and why it is important. the role coders play in determining a secure software end-product; the impact they can have on security by not building security in; why building security in at the start is better than trying to retrofit later. 9.3 Describe proactive security approaches during software design and development. security development lifecycle (SDLC); defensive design / defensive programming; test creation and execution; permission setting and role based access; physical infrastructure and security. 9.4 Explain approaches to make software more secure. security scanning; penetration testing; fuzzing; load testing. Copyright BCS 2018 Page 11 of 13

Levels of Knowledge / SFIA Levels This syllabus will provide apprentices with the levels of difficulty / knowledge skill highlighted within the following table, enabling them to develop the skills to operate at the levels of responsibility indicated. The levels of knowledge and SFIA levels are explained on the website www.bcs.org/levels. The levels of knowledge above will enable apprentices to develop the following levels of skill to be able to operate at the following levels of responsibility (as defined within the SFIA framework) within their workplace: Level Levels of Knowledge Levels of Skill and Responsibility (SFIA) K7 Set strategy, inspire and mobilise K6 Evaluate Initiate and influence K5 Synthesise Ensure and advise K4 Analyse Enable K3 Apply Apply K2 Understand Assist K1 Remember Follow Question Weighting Syllabus Area Target number of questions 1. Implementing software code following a 7 logical approach 2. How code integrates into the wider project 7 3. Developing software against a set of 6 functional and non-functional requirements 4. The end-user context for software 3 development 5. Connecting code to data sources 3 6. Database normalisation 2 7. Following good coding practices 3 8. Principles of good interface design 4 9. Building in security software 5 Total 40 Questions Copyright BCS 2018 Page 12 of 13

Format of Examination Type Duration Pre-requisites Supervised Open Book 40 Question Multiple Choice. 60 minutes. An additional 25% will be allowed for apprentices sitting the examination in a language that is not their native / mother tongue. Training from a BCS accredited training provider is strongly recommended but is not a pre-requisite. Yes. No. Pass Mark 26/40 (65%). Calculators Total Qualification Time (TQT) Delivery Calculators cannot be used during this examination. 169.5 Hours. Online. Trainer Criteria Criteria Have 10 days training experience or have a train the trainer qualification Have a minimum of 3 years practical experience in the subject area Classroom Size Trainer to Apprentice ratio 1:16 Copyright BCS 2018 Page 13 of 13