Unit 1 Programming – Hire Academic Expert

 

 

 

 

Pearson

Higher Nationals in Computing

 

Unit 1: Programming

 

 

 

 

UNIT GUIDE

 

 

 

 

 

 

 

 

 

Title: Unit 1 Programming

 

Unit code: D/615/1618

 

Credit value:  15

 

Level: 4

 

Unit Leader: Mohammad Rahman

 

 

 

 

 

 

 

Contents:               Introduction ………………………………………………3

 

                                Learning outcomes ……………………………………..4

 

Essential Content………………………………………..4

                                   

Reading List & Useful Websites………………………5

 

Assessment Criteria……………………………………. 6

                                               

Assignment Briefs and Guidelines…………………..7

                       

                                Proposed Outline of Programme………………………9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

INTRODUCTION

 

Programming involves describing processes and procedures, which are derived from algorithms. The ability to program is what sets apart a developer and an end-user. Typically, the role of the developer is to instruct a device (such as a computer) to carry out instructions. The instructions are known as source code and are written in a language that is converted into something the device can understand. The device then executes the instructions it is given.

 

Algorithms help to describe the solution to a problem, or task, by identifying the data and the process needed to represent the problem, or task, and the set of steps needed to produce the desired result.

 

Programming languages typically provide the representation of both the data and the process. They provide control constructs and data types, which can be numbers, words, and objects, and be constant or variable.

 

The control constructs are used to represent the steps of an algorithm in a convenient, yet unambiguous fashion. Algorithms require constructs that can perform sequential processing, selection for decision-making, and iteration for repetitive control. Any programming language that provides these basic features can be used for algorithm representation.

 

This Unit introduces students to the core concepts of programming, with an introduction to algorithms and the characteristics of programming paradigms. Among the topics included in this Unit are the introduction to algorithms, procedural, object-orientated & event-driven programming, security considerations, the Integrated Development Environment (IDE) and the debugging process.

 

On successful completion of this Unit, students will be able to design and implement

algorithms in a chosen language within a suitable IDE, which will be used to develop and help track any issues with the code.

 

As a result, they will develop skills such as communication literacy, critical thinking,

analysis, reasoning, and interpretation, which are crucial for gaining employment and

developing academic competence

 

 

 

 

 

 

 

 

 

 

 

 

LEARNING OUTCOMES

 

By the end of this Unit, students will be able to:

LO1. Define basic algorithms to carry out an operation and outline the process of programming an application.

LO2. Explain the characteristics of procedural, object-orientated and event-driven programming.

LO3. Implement basic algorithms in code, using an IDE.

LO4. Determine the debugging process and explain the importance of a coding standard.

 

ESSENTIAL CONTENT

LO1 Define basic algorithms to carry out an operation and outline the process

of programming an application.

Algorithm definition:

Writing algorithms to carry out an operation, e.g. Bubble sort.

The relationship between algorithms and code.

The generation process of code, the roles of the pre-processor, compiler,

Linker and interpreter.

LO2 Explain the characteristics of procedural, object-orientated and event-driven programming.

Characteristics of code:

Definitions of data types, the role of constants/variables, methods of coding (including

input/output), control structures, iteration, scope, parameter passing, classes,

inheritance and events.

Key components of an IDE, with a brief explanation of each component.

Use of addition of advanced text editors to view code, such as Notepad++, Atom,

Sublime Text.

LO3 Implement basic algorithms in code using an IDE.

Implementation:

Developing simple applications, which implements basic algorithms covered in

LO1, using the features of a suitable language and IDE. Consider possible

security concerns and how these could be solved.

LO4 Determine the debugging process and explain the importance of a coding standard

Review and reflection:

Documentation of the debugging process in the IDE, with reference to watch

lists, breakpoints and tracing.

How the debugging process can be used to help developers fix vulnerabilities,

defects and bugs in their code.

What a coding standard is and its benefits when writing code.

 

 

READING LIST & USEFUL WEBSITES

 

 

Textbooks

 

AHO, A. V. et al. (1987) Data Structures and Algorithms. 1st Ed. Addison-Wesley.

 

HUNT, A. et al. (2000) The Pragmatic Programmer: From Journeyman to Master. 1st Ed. Addison-Wesley.

 

MCCONNELL, S. (2004) Code Complete: A Practical Handbook of Software Construction. 2nd Ed. Microsoft Press.

 

 

Websites

 

MIT Open Courseware makes historical courses straight from MIT professors available to anyone, free of charge. Complete with video lectures, activities, and more, you cannot beat access to free state-of-the-art learning on the fly.

 

https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/

 

A free and interactive way to learn how to code a number of different languages, Codecademy is committed to providing an engaging, effective learning environment that reshapes the learning experience and allows students to go from beginner to expert at their own pace, entirely online. More than 25 million people are already enhancing their knowledge and skills with Codecademy.

 

https://www.codecademy.com/

 

 

Links

 

This unit links to the following related units:

 

Unit 19: Data Structures & Algorithms.

 

Unit 20: Advanced Programming.

 

Unit 28: Prototyping.

 

 

 

 

 

 

 

 

ASSESSMENT CRITERIA

 

Assessment Criteria
Pass Merit Distinction
LO1: Define basic algorithms to carry out an operation and outline the process of programming an application  

D1 Examine the implementation

of an algorithm in a suitable

language. Evaluate the relationship between the written algorithm and the code variant.

 

P1 Provide a definition of what an algorithm is and outline the process in building an application.

 

M1 Determine the steps taken from writing code to execution.
LO2:  Explain the characteristics of procedural, object-orientated and event-driven programming, conduct an analysis of a suitable Integrated Development Environment (IDE)  

 

D2 Critically evaluate the source

code of an application, which

implements the programming

paradigms, in terms of the code

structure and characteristics.

 

 

P2 Give explanations of what

procedural, object-orientated

and event-driven paradigms are,

their characteristics and the

relationship between them.

M2 Analyse the common

features that a developer has

access to, in an IDE.

LO3: Implement basic algorithms in code using an IDE  

D3 Evaluate the use of an IDE for

development of applications,

contrasted with not using an IDE.

 

P3 Write a program that implements an algorithm, using an IDE. M3 Use the IDE to manage the

development process of the

program.

 

LO4: Determine the debugging process and explain the importance of a coding standard  

D4 Critically evaluate why a coding standard is necessary in a team, as well as for the individual.

 

 

P4 Discuss 4 Explain the debugging process and explain the debugging facilities, available in the IDE.

P5 Outline the coding standard you have used in your code.

M4 Evaluate how the debugging

process can be used to help

develop more secure, robust

applications.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ASSIGNMENT BRIEF AND GUIDANCE

 

Unit Number and Title Unit 1 Programming
Academic Year 2021/2022
Unit Tutor Mohammad Rahman
Assignment Title Programming an application (The driverless vehicle project for the City Planning Department)
Assignment Number Assignment 1 of 1
Issue Date 17th January 2022
Submission Date 11th April 2022 @23.59
IV Name & Date 08/01/2022
Submission Format
Scenario (Robot Wars)

 

You are working for the City Planning Department. With your colleagues, in teams, you shall evaluate the road route for the postal vehicle to transport mail from building A to building B. The buildings are within a complex that uses driverless vehicles. You shall identify, assess and amend the current path of the driverless vehicle to ensure post is delivered in the shortest route.

 

Unit Learning Outcomes for Assignment 1
 

LO1: Define basic algorithms to carry out an operation and outline the process of programming an application

LO2:  Explain the characteristics of procedural, object-orientated and event-driven programming, conduct an analysis of a suitable Integrated Development Environment (IDE)

LO3: Implement basic algorithms in code, using an IDE

LO4: Determine the debugging process and explain the importance of a coding standard

 

 

 

Assignment Brief and Guidance
Working in your team, you will demonstrate the ability to programme a robot to perform basic tasks, in accordance with the scenario above. Firstly, you will operate the robot and ensure you are capable of programming, using the Integrated Development Environment (IDE) by performing basic tasks in a hectic driverless vehicle situation (Robot Wars type).  In doing so, you will experience procedural, event-driven, and object-oriented paradigms. You will access the written code and adjust the code to provide the driverless vehicle the shortest route available, to get from building A to building B.

Once you have reviewed the new code, and debugged to ensure there are no errors, you will upload the code to the driverless vehicle and validate your new programme by test driving to successful completion of the route.

Once your vehicle has completed the route, you will produce a Project Report for your City Planning Manager, explaining definitions of algorithms and justify the selection of the algorithms used.  Using the attached City Planning Office Report template, your individual report will demonstrate successful completion of all the assessment criteria for this Unit.

 

———————————————-Report template below———————————————

City Planning Officer Project Report

 

Project Report Title:  
Report Date:  
Project Report completed by:  

 

Introduction

Purpose for the change

Equipment Used

Justification of Coding Choice (IDE, Algorithms)

Experimental Methods Used

Evaluation of Project

Conclusions

Recommendations

———————————————-End of Report template ——————————————–

Guidance: Essential Requirements to be included in your report are:

 

  • The programme showing the source code before amendments
  • The programme showing the coding after amendments

 

PROPOSED OUTLINE OF PROGRAMME (subject to change)

 

Week 1 – Introduction to the Unit content and the Unit assessment, followed by an introduction to algorithms, purpose and structure and the outline of a program.

 

Week 2 – Examining and implementing algorithms. Computer laboratory work (Experimental work with Robotics and driverless vehicles)-Introduction to coding

 

Week 3 – Introduction to the procedural programming paradigm and identifying characteristics of object-orientated programming. (Learning by doing exercises and introduction to the assignment brief)

 

Week 4 – Object orientated programming paradigm implantation and an introduction to the event-driven programming paradigm. (Learning by doing exercises and continue computer and laboratory work towards assignment)

 

Reading week

 

Week 6 – Identifying characteristics of event-driven programming and looking at the relationship between the programming paradigms. (Continuation of computer and laboratory work towards assignment)

 

Week 7 – What is an IDE? Exploring the various components of an IDE, the editor, file manager and compiler and discovering the debugger, performance analyser and version control. (Continuation of computer and laboratory work towards assignment)

 

Week 8 –An overview of the implementation process and implementing algorithms. Introduction to report writing and critical analysis for computer programmers.

 

Week 9 – Application development, implement an application using algorithms for a specified purpose. Report writing and critical analysis for computer programmers

 

Week 10 – Evaluating the debugging process, internal testing and debugging application, using the IDE. (Evaluation of computer and laboratory work).

 

Week 11 – Application development. Adapting development of application according to testing process.

Assignment submission deadline: 11th April 2022.