Higher Nationals Internal verification of assessment decisions – BTEC (RQF) INTERNAL VERIFICATION – ASSESSMENT DECISIONS Programme title BTEC Higher National Diploma in Computing - Software Engineering Assessor Unit(s) Assignment title Internal Verifier Unit 20: Applied Programming and Design Principles Sales Analysis System for Sampath Food City (PVT) Ltd Student’s name List which assessment criteria the Assessor has awarded. Pass Merit Distinction INTERNAL VERIFIER CHECKLIST Do the assessment criteria awarded match those shown in the assignment brief? Y/N Is the Pass/Merit/Distinction grade awarded justified by the assessor’s comments on the student work? Y/N Has the work been assessed accurately? Y/N Is the feedback to the student: Give details: • Constructive? • Linked to relevant assessment criteria? Y/N Y/N • Identifying opportunities for improved performance? Y/N • Agreeing actions? Y/N Does the assessment decision need amending? Y/N Assessor signature Date Internal Verifier signature Date Programme Leader signature(if required) Date Confirm actioncompleted Remedial action taken Give details: 2 Assessor signature Date Internal Verifier signature Date Programme Leader signature (if required) Date Applied Programming and Design Principles Assignment no 1 Higher Nationals - Summative Assignment Feedback Form Student Name/ID Unit Title Unit 20: Applied Programming and Design Principles Assignment Number Assessor Submission Date Date Received 1st submission Re-submission Date Date Received 2nd submission Assessor Feedback: LO1. Investigate the impact of SOLID development principles on the OOP paradigm Pass, Merit & Distinction P1 P2 M1 D1 Descripts LO2. Design a large dataset processing application using SOLID principles and clean coding techniques Pass, Merit & Distinction Descripts P3 P4 M2 LO3. Build a data processing application based on a developed design Pass, Merit & Distinction P5 M3 Descripts LO4. Perform automatic testing on a data processing application Pass, Merit & Distinction P6 P7 M4 D2 Descripts Grade: Assessor Signature: Date: Assessor Signature: Date: Resubmission Feedback: Grade: Internal Verifier’s Comments: Signature & Date: * Please note that grade decisions are provisional. They are only confirmed once internal and external moderation has taken place and grades decisions have been agreed at the assessment board. 3 Applied Programming and Design Principles Assignment no 1 Assignment Feedback Formative Feedback: Assessor to Student Action Plan Summative feedback Feedback: Student to Assessor 4 Assessor signature Date Student signature Date Applied Programming and Design Principles Assignment no 1 Pearson Higher Nationals in Computing Unit 20: Applied Programming and Design Principles Assignment 01 5 Applied Programming and Design Principles Assignment no 1 General Guidelines 1. A Cover page or title page – You should always attach a title page to your assignment. Use previous page as your cover sheet and make sure all the details are accurately filled. 2. Attach this brief as the first section of your assignment. 3. All the assignments should be prepared using a word processing software. 4. All the assignments should be printed on A4 sized papers. Use single side printing. 5. Allow 1” for top, bottom , right margins and 1.25” for the left margin of each page. Word Processing Rules 1. 2. 3. 4. The font size should be 12 point, and should be in the style of Time New Roman. Use 1.5 line spacing. Left justify all paragraphs. Ensure that all the headings are consistent in terms of the font size and font style. Use footer function in the word processor to insert Your Name, Subject, Assignment No, and Page Number on each page. This is useful if individual sheets become detached for any reason. 5. Use word processing application spell check and grammar check function to help editing your assignment. Important Points: 1. It is strictly prohibited to use textboxes to add texts in the assignments, except for the compulsory information. eg: Figures, tables of comparison etc. Adding text boxes in the body except for the before mentioned compulsory information will result in rejection of your work. 2. Carefully check the hand in date and the instructions given in the assignment. Late submissions will not be accepted. 3. Ensure that you give yourself enough time to complete the assignment by the due date. 4. Excuses of any nature will not be accepted for failure to hand in the work on time. 5. You must take responsibility for managing your own time effectively. 6. If you are unable to hand in your assignment on time and have valid reasons such as illness, you may apply (in writing) for an extension. 7. Failure to achieve at least PASS criteria will result in a REFERRAL grade . 8. Non-submission of work without valid reasons will lead to an automatic RE FERRAL. You will then be asked to complete an alternative assignment. 9. If you use other people’s work or ideas in your assignment, reference them properly using HARVARD referencing system to avoid plagiarism. You have to provide both in-text citation and a reference list. 10. If you are proven to be guilty of plagiarism or any academic misconduct, your grade could be reduced to A REFERRAL or at worst you could be expelled from the course. 11. If you are proven to be guilty of plagiarism or any academic misconduct, your grade could be reduced to A REFERRAL or at worst you could be expelled from the course. 6 Applied Programming and Design Principles Assignment no 1 Student Declaration I hereby, declare that I know what plagiarism entails, namely to use another’s work and to present it as my own without attributing the sources in the correct way. I further understand what it means to copy another’s work. 1. I know that plagiarism is a punishable offence because it constitutes theft. 2. I understand the plagiarism and copying policy of the Pearson UK. 3. I know what the consequences will be if I plagiaries or copy another’s work in any of the assignments for this program. 4. I declare therefore that all work presented by me for every aspects of my program, will be my own, and where I have made use of another’s work, I will attribute the source in the correct way. 5. I acknowledge that the attachment of this document signed or not, constitutes a binding agreement between myself and Pearson, UK. 6. I understand that my assignment will not be considered as submitted if this document is not attached to the attached. Student’s Signature: (Provide E-mail ID) 7 Date: (Provide Submission Date) Applied Programming and Design Principles Assignment no 1 Assignment Brief Student Name /ID Number Unit Number and Title Unit 20: Applied Programming and Design Principles Academic Year 2022/2023 Unit Tutor Assignment Title Sales Analysis System for Sampath Food City (PVT) Ltd Issue Date Submission Date IV Name & Date Submission Format: Part 1. Report- Submit a professional report with appropriate report formatting and guidelines followed. All the research data should be referenced along with in-text citations using the Harvard referencing system. Part 2 A fully functional standalone software system (command-line interface based) Unit Learning Outcomes: LO1 Investigate the impact of SOLID development principles on the OOP paradigm. LO2 Design a large dataset processing application using SOLID principles and clean coding techniques. LO3 Build a data processing application based on a developed design. LO4 Perform automatic testing on a data processing application. 8 Applied Programming and Design Principles Assignment no 1 Assignment Brief and Guidance: Assignment Brief Scenario. ‘Data Labs’ is a leading software development company in Sri Lanka. They are focusing on helping businesses to build their businesses through creative and effective solutions. Assume that you work as an apprentice software developer for Data Labs company. As a part of your role, you have been asked to develop a software system (command-line interface based) for the following scenario using python programming language. Sampath Food City (PVT) Ltd is one of the main supermarket networks in Sri Lanka. Currently, Sampath Food City has several branches island wide. At present, transactions of each branch are recorded through a point of sale (pos) system. At the end of each month, recorded data of each point of the sales system are transferred to a centralized database. Top-level management of the company use the centralized data to do the monthly sales data analysis of the whole company at the end of the month to find insights to take managerial decisions for the company. Currently, the company uses a paper-based manual system to do monthly sales data analysis. Some weaknesses and drawbacks that have occurred in the manual system such as human errors leading to inaccurate information, time consuming, data redundancy, inconsistency and difficulty to find insights affect the business performance negatively. Therefore, the management of Sampath Food City has decided that using a customized software system for sales data analysis is the solution for eliminating above mentioned weaknesses and drawbacks of the existing sales data analysis process. Assume yourself as a software developer of Data Labs (PVT) Ltd and assigned to develop a sales data analysis system (command-line interface based) using python programming language for scenario given above. New system should provide following features: 9 Monthly sales analysis of each branch. Price analysis of each product Weekly sales analysis of supermarket network Product preference analysis Analysis of the distribution of total sales amount of purchases Applied Programming and Design Principles Assignment no 1 Develop a command-line interface-based solution for the above scenario and produce a report covering the following tasks. Activity 1 Investigate the characteristics of the object-orientated paradigm, including class relationships (inheritance, association, composition, aggregation) and evaluate the impact pf SOLID principles (single responsibility principle, open/closed principle, Liskov’s substitution principle, interface segregation principle and dependency inversion principle) by taking suitable examples incorporating UML diagrams and coding samples. Your answer should include suitable examples to evaluate the impact of SOLID principles in Object oriented Development. Explain how clean coding techniques can impact on the use of data structures and operations when writing algorithms by taking suitable examples from the given scenario. Analyse each of the creational, structural and behavioral design patterns with relevant examples. Activity 2 Design a large data set processing application, utilising SOLID principles, clean coding techniques, a design pattern and data structures by providing justifications for selected design pattern and selected data structures. Design a suitable testing regime for the application developed with a provision for automated testing, selected test types and selected automatic testing tools, and provide justifications for the selections. Refine the design to include multiple design patterns by justifying the reasons for the inclusion of each design pattern for the given scenario. Activity 3 Build a large dataset processing application based on the design produced, by using python programming language and provide evidence for the usage of data structures and file handling techniques. Your answer must include an assessment of how effective the use of SOLID principles, clean coding techniques and programming patterns on the application developed. Take suitable examples from the developed application to elaborate your answer. 10 Applied Programming and Design Principles Assignment no 1 Activity 4 Examine the benefits and drawbacks of different methods of automatic testing of applications and software systems available for automatic testing by taking examples from the developed application. Provide an action plan to address the identified drawbacks of testing of the developed application. Implement automatic testing of the developed application by using selected testing tools and provide evidence for the automatic testing. Discuss how developer-produced and vendor-provided automatic testing tools differ for applications and software systems by taking suitable examples from the testing of the developed application. 11 Applied Programming and Design Principles Assignment no 1 Grading Rubric Grading Criteria Achieved Feedback LO1 Investigate the impact of SOLID development principles on the OOP paradigm. P1 Investigate the characteristics of the object orientated paradigm, including class relationships and SOLID principles. P2 Explain how clean coding techniques can impact on the use of data structures and operations when writing algorithms. M1 Analyse, with examples, each of the creational, structural and behavioral design pattern types. D1 Evaluate the impact of SOLID development principles on object orientated application development. LO2 Design a large dataset processing application using SOLID principles and clean coding techniques. P3 Design a large data set processing application, utilising SOLID principles, clean coding techniques and a design pattern. P4 Design a suitable testing regime for the application, including provision for automated testing. M2 Refine the design to include multiple design patterns. LO3 Build a data processing application based on a developed design P5 Build a large dataset processing application based on the design produced. 12 Applied Programming and Design Principles Assignment no 1 M3 Assess the effectiveness of using SOLID principles, clean coding techniques and programming patterns on the application developed. LO4 Perform automatic testing on a data processing application. P6 Examine the different methods of implementing automatic testing as designed in the test plan. P7 Implement automatic testing of the developed application. M4 Discuss the differences between developer-produced and vendor-provided automatic testing tools for applications and software systems. D2 Analyse the benefits and drawbacks of different forms of automatic testing of applications and software systems, with examples from the developed application. 13 Applied Programming and Design Principles Assignment no 1 2019/20 BTEC Internal Verification of Assignment Brief Template Issue Date: 29 July 2019 Owner: BTEC Assessment DCL1 Public (Unclassified) Version 1.0 OBSERVATION RECORD Learner name: Qualification: Unit number & title: Description of activity undertaken Assessment criteria How the activity meets the requirements of the assessment criteria Learner name: Learner signature: Date: Assessor name: Assessor signature: 2019/20 BTEC Internal Verification of Assignment Brief Template Issue Date: 29 July 2019 Owner: BTEC Assessment DCL1 Public (Unclassified) Version 1.0 Date: WITNESS STATEMENT Learner name: Qualification: Unit number & title: Description of activity undertaken (please be as specific as possible) Assessment criteria (for which the activity provides evidence) How the activity meets the requirements of the assessment criteria, including how and where the activity took place Witness name: Witness signature: Job role: Date: Learner name: Learner signature: Date: Assessor name: Assessor signature: 2019/20 BTEC Internal Verification of Assignment Brief Template Issue Date: 29 July 2019 Owner: BTEC Assessment DCL1 Public (Unclassified) Version 1.0 Date: 2019/20 BTEC Internal Verification of Assignment Brief Template Issue Date: 29 July 2019 Owner: BTEC Assessment DCL1 Public (Unclassified) Version 1.0 2019/20 BTEC Internal Verification of Assignment Brief Template Issue Date: 29 July 2019 Owner: BTEC Assessment DCL1 Public (Unclassified) Version 1.0