0% found this document useful (0 votes)
13 views6 pages

Programming - Assignment - Part 1

This document outlines the assignment for Unit 1: Programming in the Pearson BTEC Level 5 Higher National Diploma in Computing for the academic year 2024-2025. It details the requirements for a written report, implemented software system, and a presentation demonstrating the developed program for calculating monthly water bills based on customer data. The assignment emphasizes the use of algorithms, programming processes, and critical evaluation of the coding experience, along with guidelines for referencing and avoiding plagiarism.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views6 pages

Programming - Assignment - Part 1

This document outlines the assignment for Unit 1: Programming in the Pearson BTEC Level 5 Higher National Diploma in Computing for the academic year 2024-2025. It details the requirements for a written report, implemented software system, and a presentation demonstrating the developed program for calculating monthly water bills based on customer data. The assignment emphasizes the use of algorithms, programming processes, and critical evaluation of the coding experience, along with guidelines for referencing and avoiding plagiarism.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Unit 1: Programming

Assignment part 1
Programme Title Pearson BTEC Level 5 Higher National Diploma in Computing

Student Name/ID
Number

Unit Number and Title Unit 1: Programming


Academic Year 2024-2025

Unit Tutor

Assignment Title Problem solving with algorithms

Issue Date
Submission Date

Submission Format
Format: This submission will have 3 components
1. Written report: The submission is in the form of an individual written
report. This should be written in a concise, formal business style using single
spacing and font size 12. You are required to make use of headings,
paragraphs and subsections as appropriate, and all work must be supported
with research and referenced using the Harvard referencing system. Please
also provide a bibliography using the Harvard referencing system.
With the submitted system student should do a presentation to
demonstrate the system that was developed. Time allocated is 10 to 15
min. Student may use 5 to 10 PowerPoint slides while doing the
presentation, but live demonstration of the system is required.
2. Implemented System (Software): The student should submit a system
developed using an IDE. Implemented program in format suitable to be run
and assessed for functionality – this could be as project/solution files or final
compiled executable.
3. Presentation: With the submitted system, students should do a presentation
to demonstrate the system that was developed. Time allocated is 10 to 15
minutes.
Submission: Students are compulsory to submit the assignment in due date and in a way
requested by the Tutors. The form of report and presentation will be a soft
copy in PDF posted on corresponding course of [Link]
Note: The Assignment must be your own work, and not copied by or from another
BTEC HN Assignment Brief Template
Issue Date: Jan 2024 Owner: HN QD
DCL1 Public (Unclassified) Version 2.0
student or from books etc. If you use ideas, quotes or data (such as diagrams) from books,
journals or other sources, you must reference your sources, using the Harvard style. Make
sure that you know how to reference properly, and that you understand the guidelines on
plagiarism. If you do not, you definitely get fail
Unit Learning Outcomes

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

Transferable skills and competencies developed

Computing-related cognitive skills


● Computational thinking (including its relevance to everyday life)
● Demonstrate knowledge and understanding of essential facts, concepts, principles
and theories relating to computing and computer applications
● Recognise and analyse criteria and specifications appropriate to specific problems,
and plan strategies for their solutions
● Critical evaluation and testing: analyse the extent to which a computer-based
system meets the criteria defined for its current use and future development
● Methods and tools: deploy appropriate theory, practices and tools for the design,
implementation and evaluation of computer-based systems.
Computing-related practical skills
● The ability to specify, design and construct reliable, secure and usable computer-
based systems
● The ability to evaluate systems in terms of quality attributes and possible trade-
offs presented within the given problem
● The ability to deploy effectively the tools used for the construction and
documentation of computer applications, with particular emphasis on
understanding the whole process involved in the effective deployment of
computers to solve practical problems
● The ability to critically evaluate and analyse complex problems, including those
with incomplete information, and devise appropriate solutions within the
constraints of a budget.
Generic skills for employability
● Intellectual skills: critical thinking; making a case; numeracy and literacy
● Self-management: self-awareness and reflection; goal setting and action planning
● Independence and adaptability; acting on initiative; innovation and creativity
● Contextual awareness, e.g. the ability to understand and meet the needs of
individuals, business and the community, and to understand how workplaces and
organisations are governed.)
Vocational scenario
BTEC HN Assignment Brief Template
Issue Date: Jan 2024 Owner: HN QD
DCL1 Public (Unclassified) Version 2.0
Vocational Scenario:
You currently work for ABC software, an independent software development company
that designs and builds bespoke software solutions for various companies of different
sizes that cover a range of different industries. The software that they design uses a
wide range of technologies, from simple stand-alone programs to large web-based
applications.
ABC software has requested a simple program that will calculate the monthly water bill
each month.
The CEO of the company has reviewed the client requirements and has determined that
this is a suitable project for you to take on. The company wants to see how you use and
apply the development environments and code standards.
The requirements are that ABC wants a program that will allow a user to enter the
following information:
▪ Customer name
▪ Type of customer
▪ Last month’s water meter readings
▪ This month’s water meter readings
The program can allow user to enter type of customer, enter number of people to know
if it’s a household.
The price of water is calculated according to the following table
Type of customer Price Environment
(VND/m3) protection fees
(10%)
Household customer To 10 5.973 597,30
m3/people/month VND/m3

From 10-20 7.052 705,20


m3/people/month VND/m3
From 20-30 8.699 866,90
m3/people/month VND/m3
Over 30 15.929 1.592,90
m3/people/month VND/m3
Administrative 9.955 995,50
agency, public VND/m3
services
Production units 11,615 1.161,50
VND/m3
Business services 22.068 2.206,80
VND/m3
BTEC HN Assignment Brief Template
Issue Date: Jan 2024 Owner: HN QD
DCL1 Public (Unclassified) Version 2.0
(The above price doesn’t include 10% VAT)
For each customer, the program should then output the following information:
▪ The customer name
▪ Type of customer
▪ Last month’s water meter readings
▪ This month’s water meter readings
▪ Amount of consumption (This month’s water meter readings - Last month’s
water meter readings)
▪ Total water bill
▪ Sort, search for customers, generate invoices notifying customers and payments
dues is one of the feature enhancement suggestions.
The client has not specified any Graphical User Interface, but the CEO has left the
design of the program completely up to you.
Once the program has been built, the CEO has asked you to report back to them on
how you designed and developed the algorithms required, as well as how you
converted these algorithms into a final program and to show any issues you
encountered.
As part of your report, the CEO wants you to create a presentation for the development
team showing the different programming paradigms available, as well as the debugging
tools you used as part of the program development, so that the development team can
review your progress.
Important note:
1. Type of customer: Household Customer
Example: A household of 4 members consumes 100 m³ of water.
● Average consumption per person: 100÷4=25 m³/person.
🡪 Level 3 (20-25 m³/people/month)
● Billing breakdown:
o 40 m³ (up to 10 m³/person) with price 5.973 VND/m³
o 40 m³ (10-20 m³/person) with price 7.052 VND/m³
o 20 m³ (20-25 m³/person) with price 8.699 VND/m³
2. Environment Protection Fees (10% of the base price) and VAT (10% of the total
bill) are two separate charges, with the former included in tiered rates and the
latter added at the final stage.
Assignment activity and guidance

Activity 1:
As you are part of the research and development arm, your role includes investigation
into new processes that can benefit the calculated water bill. One particular area of
research that you have been tasked with is the use of algorithms and how they can be
used to build more efficient software.
To do this you have to prepare a report on using algorithms to solve problems. You
BTEC HN Assignment Brief Template
Issue Date: Jan 2024 Owner: HN QD
DCL1 Public (Unclassified) Version 2.0
need to explain, using examples, how algorithms are used to solve simple business
problems and the steps needed to be followed to produce a working program solution.
You should make clear your assumption about your program. The problems to be
solved will involve basic procedural programming instructions - sequence instructions
(input, output and assignment statements), loops, conditional statements. Problems
should be analysed and designed using flowchart and demonstrated by the use of
modules (procedures). You will create a report and a presentation that should include:

Step 1: Define and Demonstrate an Algorithm


■ Begin your report by defining what an algorithm is and why it is a fundamental
concept in programming.
■ Outline the step-by-step process of building an application, from understanding a
problem to turning it into code.
■ Create a basic algorithm to solve a simple problem (e.g., calculating the average
of numbers, checking if a number is prime, or sorting a small list). Represent it in
pseudocode or flowchart form.
Step 2: From Code to Execution
■ Write code to implement your algorithm in a programming language of your
choice (you should use C#..).
■ Describe the steps taken to move from writing the code to executing it, including
compiling (if applicable), debugging, and running the program.
Step 3: Reflect on the Programming Process
■ Analyse the coding process from algorithm design to implementation.
- What challenges did you face?
- How did you troubleshoot issues?
- How did language syntax or logic affect your implementation?
Step 4: Evaluate Algorithm-to-Code Relationship
■ Provide a critical evaluation of how effectively your written algorithm was
translated into working code.
■ Discuss the relationship between the algorithmic logic and the code structure,
syntax, and logic.
- Were there any mismatches or adaptations needed?
- How does the final code reflect the intent of the original algorithm?

Recommended Resources
HN Global HN Global HN Global (2021) Reading Lists. Available at:
[Link]
HN Global (2021) Student Resource Library. Available at:
[Link]
HN Global (2021) Textbooks. Available at:
[Link]
Learning Outcomes and Assessment Criteria
BTEC HN Assignment Brief Template
Issue Date: Jan 2024 Owner: HN QD
DCL1 Public (Unclassified) Version 2.0
BTEC HN Assignment Brief Template
Issue Date: Jan 2024 Owner: HN QD
DCL1 Public (Unclassified) Version 2.0

Common questions

Powered by AI

The critical components include inputs for customer name, type of customer, number of people (for households), and water meter readings both current and previous month. The program should calculate water consumption, apply tiered pricing based on consumption levels, compute environmental protection fees, and add VAT to get the final bill. It should also incorporate features to sort and search customer data, generate invoices, and notify about payment dues .

The BTEC Level 5 Higher National Diploma in Computing emphasizes the importance of originality and independent work. It requires students to produce their assignments without copying from others or unauthorized sources, mandating proper referencing and citation of ideas, quotes, or data sourced from books, journals, or other references using the Harvard referencing system. This ensures students understand and adhere to guidelines on plagiarism, promoting academic integrity and ethical conduct .

Flowcharts and pseudocode enhance understanding and communication of algorithms by providing visual and simplified representations of logical processes. These tools bridge the gap between abstract concepts and concrete implementation by visualizing the sequence of operations, decision-making points, and possible outcomes, making it easier for team members to grasp complex algorithms. They facilitate effective communication among team members with varied expertise, ensuring a common understanding of the problem and solution space, thus promoting collaboration and reducing ambiguities during system development .

Requesting a report and presentation on programming paradigms and debugging tools is important for ensuring transparency in the development process and facilitating knowledge sharing within the team. It allows the CEO to assess the developer's understanding of suitable programming models and their practical application while identifying any challenges encountered during development. This post-development reflection helps in refining processes, improving future project strategies, and encouraging a culture of continuous learning and improvement within the organization .

Understanding different programming paradigms, such as procedural, object-oriented, or functional programming, is significant as each offers unique approaches to solving programming challenges, contributing to efficient and effective software applications. Familiarity with these paradigms allows developers to choose the best practice that aligns with project goals and requirements. Debugging tools are equally critical; they help identify and resolve errors in the code, enhancing reliability and functionality. Their usage ensures the development process is smooth, reducing time spent on fixing issues and improving overall code quality .

Challenges during the algorithm design to implementation phase can include difficulties in accurately translating algorithmic logic into programming syntax, handling unexpected input data, and ensuring optimal performance. Strategies to overcome these challenges include thorough understanding of the programming language used, employing robust debugging techniques, testing code with varied data sets, and iteratively refining algorithms for efficiency. Seeking peer reviews or utilizing resources like textbooks and online materials can provide additional perspectives and solutions to complex problems .

Step-by-step algorithms are crucial for software development as they provide a structured approach to solving business problems by breaking down tasks into smaller, manageable parts. This process aids in systematically understanding a problem, planning the solution, and ultimately transforming an idea into executable code. Algorithms help in outlining the logical flow of operations, such as input, processing, and output, which are essential in procedural programming. This structured approach enables developers to identify solutions for simple business problems using repetitive patterns like loops and conditional statements, represented through pseudocode or flowcharts .

Translating an algorithm to working code reflects an individual's understanding of programming concepts, attention to detail, and problem-solving skills. It tests their ability to transform logical procedures into syntactically correct and functional code. In the ABC Software water billing application, this involves accurate conversion of consumption calculation rules, billing logic, and incorporation of various customer type conditions into the code. Effective translation highlights the programmer’s competency in debugging, adapting the code to meet requirements accurately, and optimizing performance to handle real-world use cases .

Emphasizing transferable skills and competencies such as self-management, critical thinking, and innovation in programming assignments prepares students for varied professional scenarios. These skills are crucial for self-directed learning and adaptability, enabling students to tackle unforeseen challenges and continuously enhance their abilities. In the context of programming, abilities like initiative and creativity equip students to design unique solutions and improve existing systems effectively. Such skills also enhance their capacity to work autonomously and contribute actively within teams, essential attributes in dynamic, technology-driven environments .

Self-management skills in software development education are fundamental for ensuring ethical conduct and professional readiness. They imply responsibility in managing one’s work, meeting deadlines, and acknowledging sources accurately to avoid plagiarism. In the workplace, these skills translate to reliability, accountability, and a proactive approach to problem-solving. The ability to set goals, self-reflect, and continuously adapt are critical for personal growth and maintaining professional standards. Thus, fostering self-management skills aligns with ethical practices and prepares individuals to contribute effectively and responsibly in professional settings .

You might also like