BTEC NATIONAL DIPLOMA IT Practitioners

Unit 14: Event Driven Programming

ASSIGNMENT

Assessment Activity Front Sheet

This front sheet must be completed by the student where appropriate and included with the work submitted for assessment.

Qualification
BTEC IT Practitioners
Unit 14 – Event Driven Programming
Students Name: / Assessors Name: George Dong
Date Issued:
(Issued to students) / Interim Deadline:
(To be submitted by students) / Return to student:
FINAL DEADLINE:
Missing this deadline, your work may not be marked.
Grade / P1 / P2 / P3 / P4 / P5 / P6 / M1 / M2 / M3 / M4 / D1 / D2

In this assessment you will have opportunities to provide evidence against the following criteria.

Unit Objectives

/ To pass this unit the evidence must show that the student is able to:
1 / Understand the features of event driven programming
2 / Be able to use the tools and techniques of an event driven language
3 / Be able to design event driven applications
4 / Be able to implement event driven applications
Learner’s comments:
Sign…………………………
Assessor’s general comments:
Internal Verifiers approval to use with students
Comments
IV’s Name / IV’s Signature / Date

Criteria ref.

/ To achieve the criteria the evidence must show that the student is able to: / (Unit 18) Tick if met / Page no.
P1 / Explain the key features of event driven programming
P2 / Demonstrate the use of event driven tools and techniques
P3 / Design an event driven application to meet defined requirements
P4 / Implement a working event driven application to meet defined requirements
P5 / Test an event driven application
P6 / Create on-screen help to assist the users of a computer program
M1 / Discuss how an operating system can be viewed as an event driven application
M2 / Given reasons for the tools and techniques used in the production of an event driven application
M3 / Analyse actual test results against expected results to identify discrepancies
M4 / Create technical documentation for the support and maintenance of a computer program
D1 / Evaluate the suitability of event driven programs for non-graphical applications
D2 / Evaluate an event driven application
Assessor: George Dong / Grade:
Signature: / Date:


Unit Keywords:
GUI, Event, Object, Event Handler, XML, Service consumer, Windows services, Subroutine, Routine, Procedure, Function, Case-sensitive, Context-sensitive, DOS, BIOS, WIMP, CLI, Coldfusion, Javascript, Visual Studio (Express), VBA, C++, C#, Java, VB.NET, IDE, Windows, Linux, iOS, GIGO, Condition, Assignment, Sequence, Selection, Repetition, Iteration, Loop, Combo box, Text box, Label, Text Area, Button, Radio button, Object Property, Method, Class, Stamp, Print, Stencil, Debugging, Breakpoint, Output window,
Watch window, Immediate window, Constant, Variable, Data type, Declare, Initialise, Assign value to variable, Data types, Boolean, Char, String, Date, Floating point, Integer, Byte, int, small int, array, Syntax, Syntax error, Runtime error, Scope , Program maintenance, Bespoke program, Checksum, Validation, Algorithm, Flowchart, Structured English, Pseudo code, Action list, Program, Error handling, Error reporting, Test plan, Black box testing, White box testing, User acceptance testing, Diagnostic software, User guide, System requirement, Installation, Technical guide, User requirements, Program specification, Program design, Screen components and properties, Data storage, Event procedures and descriptions, Data dictionary, Structured diagrams, Flowcharts, Form designs, Print designs, Test plan and results
Annotated code printouts,
Scenario
HBG is a small software house that produces bespoke software, such as programs to operate door entry system, shop tills, job estimates and so on, for a range of national and international clients. Most of the marketing work is done through the website.
You are new to the company, employed as a junior programmer, in a team of three programmers led by Sabrina who is an analyst-programmer.
Task 1 – Introduction (P1, M1, D1) Deadline:
Sabrina has asked you to produce some material to be used to help potential clients understand what event-driven-programs are and some examples of how they can be used. Create a presentation and use it to present to the class to cover the following:
1.  Describe key features of event driven programs.
a.  Include a diagram showing how event handlers, trigger functions and event loops work with form components
b.  Include text to explain the diagram [P1]
2.  Explain how an operating system, such as Windows, can be viewed as an event driven program
a.  Take a screenshot of an operating system, such as Windows. Annotate to identify where a variety of user-initiated events occur, for example, right clicking on a desktop icon, left clicking on the Start button, etc.
b.  Write explanation of each of these events. Structure your explanations with some subheadings:
i.  Why the user would want to initiate the event,
ii.  How the user initiates the event
iii.  What actions the operating system does to handle the event.
c.  Draw a diagram identifying the events from hardware that are handled by the operating system, for example, a printer needing more paper, a key being pressed, etc.
d.  Write explanations of these events, structure with these subheadings:
i.  Why the hardware device needs to initiate the event
ii.  What actions the operating system does to handle the event [M1]
3.  Evaluate the suitability of event driven programs for non-graphical applications. To do this you need to identify two or more applications that either use a text-based interface or have no graphical components (Icon, window, menu or pointer). A program with no graphical components might be a control application for a device such as a burglar alarm burned into a ROM. Identify the events that each of your applications would receive with how suitable an event driven language might be to handle those events. [D1]
What you must submit – peer evaluation report and your presentation with speaker’s note.
Task 2 – Design (P2, M2) Deadline:
Your work at HBG is going well and Sabrina is preparing for your first appraisal, a meeting you will have with her formally review your performance as a junior programmer with HBG.
As your job has a strong programming elements, she needs to have evidence of your ability and understanding of event driven programming in preparation for the meeting.
1.  You are to produce some small programs to demonstrate the use of the following event driven tools and techniques. Evidence for these will include the following.
a.  A screenshot of each program as it runs, pasted into a document which has your name, program title and an explanation of how the tools and techniques were used
b.  A code printout of each program taken directly from thje IDE using File, Print menu of development environment, with annotations to identify where the tools and techniques used.
c.  A small program to demonstrate the use of menus, loops, both definite and indefinite, with the use of variables. [P2]
2.  To achieve progression in the team you also need to demonstrate skills in report writing. Write a report justifying the tools and techniques used in the production of your application. [M2]
Task 3 – Implementation (P3, P4, P5, P6, M3,M4, D2) Deadline:
1.  The HBG team has been allocated a job from clients:
Project Title: Car Racing Game for Ray Smith
Ray Smith runs a nursery for children aged 2-4 years old.
The nursery wants a program that can be used by the children to improve their awareness of numbers. The children will choose a number on the keyboard, then drive a car from the program, using the number as speed.
The nursery requires the program run on a PC which has a current processor, 2GB of RAM, 250GB of free disk space and a current version of the MS Windows operating system.
2.  You will design and implement a working racing application for Ray Smith. Evidence for these will be
a.  Program specification with input and output, processes, user need and purpose
b.  Data storage
c.  Event procedures and descriptions
d.  Planned design for forms/screens and printer (if used)
e.  Coding design using pseudocode or flowchart [P3]
3.  Create your program. Evidence will be
a.  User guide for your program with screenshots of the running program
b.  Code print of each program taken directly from IDE using File, Print menu option of the development environment [P4]
4.  Add on-screen help system. Evidence for this will be
a.  Screenshots of the help
b.  Written explanation of how the help system was created [P6]
5.  The programs you produced need to be tested
a.  Written test plan and testing result [P5]
Write a document showing that you have analysed actual test results against expected results to identify discrepancies. This document should include how you used appropriate debugging tools with explanations of each, including the use of:
Breakpoints, step over, step into, watch window [M3]
6.  The programs you produced need technical documentation for the support and maintenance. The documentation for each program will consist of
a.  Data dictionary (all variables, all procedures)
b.  Feedback for from users
c.  Checks against the original specification [M4]
7.  Produce an evaluation of the program you have written. Include the good and bad aspects your work as well as anything you would do to enhance the program. [D2]
Interim feedback to student:
1
2
3
Declaration by student:
I declare that all the work submitted for assignment is my own work.
Student: Date:
Notes:

Find 6 - 10 different platforms where events occur

For example,

Web page with buttons

Computer OS 1

OS 2

Game 1

Game 2

Application software (database, spreadsheet, …)

Take a screenshot and annotate which events are involved and where.

Cartoon for Anne Merchant

Anne Merchant

Article I.  Key Terms

Self-contained – a section, a block of code with its own identifier and could be called anywhere within the program to do a task.

Article II.  Project 1 Cartoon display for a music store

Anne Merchant runs a small music store and wants a program to project cartoons on to a large flat screen in the shop. The cartoons are from a collection of 800x600 JPGs and the program should show them in sequence.

Anne require the program to run on a PC which has a current processor, video at 1024x768, 2GB of RAM, 250GB of free disk space, and a current version of Windows operating system.

  1. From these user requirements, produce a design for the forms (screens) needed for the program. Do this using pencil and paper or a drawing program such as Paint.
  2. Identify which events are to be used by your program, such as a button to start the cartoon or to quit the program.

There are many ways a program like this can use events to meet the requirements – if you design the program to work in a different way, that is fine.

  1. Produce a document entitled “Data Dictionary: Procedures” with a subheading for each of your identified events. Under each of these subheadings write a description of what the event will do.
  2. Identify which variables are to be used by your program, then create a document entitled “Data Dictionary: Variables”
  3. Produce a test plan for your program
  4. Create the program and write the code for the events.
  5. Test the program to confirm it meets the requirements. Update the test plan with results of your testing. Document any changes you make to the program when a test is failed.
  6. On-screen help (user guide) is required for this program.

Article III.  Project 2 Car Racing for Children

Ray Smith runs a nursery for children aged 2-4 years old.

The nursery wants a program that can be used by the children to improve their awareness of numbers. The children will choose a number on the keyboard, then drive a car from the program, using the number as speed.

The nursery requires the program run on a PC which has a current processor, 2GB of RAM, 250GB of free disk space and a current version of the MS Windows operating system.

  1. From these user requirements, produce a design for the forms (screens) needed for the program. Do this using pencil and paper or a drawing program such as Paint.
  2. Identify which events are to be used by your program, such as a button to start the car or to quit the program.

There are many ways a program like this can use events to meet the requirements – if you design the program to work in a different way, that is fine.

  1. Produce a document entitled “Data Dictionary: Procedures” with a subheading for each of your identified events. Under each of these subheadings write a description of what the event will do.
  2. Identify which variables are to be used by your program, then create a document entitled “Data Dictionary: Variables”
  3. Produce a test plan for your program
  4. Create the program and write the code for the events.
  5. Test the program to confirm it meets the requirements. Update the test plan with results of your testing. Document any changes you make to the program when a test is failed.
  6. On-screen help (user guide) is required for this program.

Unit 14 Event Driven Programming George