central college in London
 
               Enquiries
             Courses
          Location Map
       Contact Us
     Fees & Start Dates
   Student Login
Online Application About the College Student Accommodation
Business Courses Computer and IT Courses Facilities Management English Courses
Study in London at the College of Central London
  Maritime Courses Student Profile College Staff Apply Now Project Management
Home
Mission Statement
What's in it for you
Accreditations
FAQ
Awards
Disclaimer
Online Visa Applications
Equal Opportunities
Test Your English
Links & Downloads
  City and Guilds e-Quals Level 3 - Advanced Diploma for IT Practitioners (Software Development)
 

click here to apply for this college course in london

For the award of the Advanced Diploma, candidates must successfully complete the assessments for one of units 301-305 plus 306 and 307, plus any two other units, from 301-311 within the Level 3 Advanced Diploma for IT Practitioners (Software Development) award.
Core units
301 Develop software using 'C'
302 Develop software using C++
304 Develop software using Visual Basic
305 Develop software using Java
306 Create designs for software
307 Requirements analysis and systems specification
Optional units
309 Web site design
311 Relational database
City & Guilds Unit 306 Create designs for Software (Mandatory)
Rationale
The aim of this unit is to enable candidates to develop the skills required to create a detailed software design specification from a given outline program design specification.

There are 5 outcomes to this unit. The candidate will be able to
1. explain the concepts of software design
2. use diagrammatical representation for design
3. specify data types and data structures
4. develop a software design specification
5. validate the completed design specification
6. identify Health and Safety requirements
Assessment
Assessment will be by means of a set assignment covering both practical activities and underpinning knowledge.

Outcome 1: Explain the concepts of software design
Underpinning knowledge - the candidate will be able to
1. describe the advantages in adopting a formal design procedure:
* maintainability of code
* reliability of code
* reusability of code
* comprehension of code
* hardware independence (portability of code)
* code is easily checked and tested
* language independence
2. List and describe the three fundamental program constructs:
* sequence
* selection
* iteration
3. Describe and distinguish between various types of iteration:
* definite
* indefinite
* pre-condition
* post-condition
4. Describe the purpose and value of using a structured approach by transferring control to
* functions
* procedures/subroutines
* class interfaces
and five examples of their use
5. describe the top-down and bottom-up approaches to program design
6. explain the need for consistency and traceability when naming variables, files, function, procedures/subroutines, objects, attributes/ properties and methods
7. list the information that should be contained in a program specification, see Appendix A blow
Outcome 2: Use diagrammatical representation for design
Practical activities - the candidate will be able to
1. interpret
* an Event/Action chart
* a structure chart
* an object model
* a State Transition Diagram (STD)
* an Event-state table
* a flowchart
* process specification (eg; structured English/ pseudocode)
2. interpret file, screen and print layouts
Underpinning knowledge - the candidate will be able to
1. explain how an Event/Action chart is used to represent the links between events and code for an event-driven program
2. explain how event-driven programs respond to events initiated by a user
3. explain how a structure chart is used to represent the links between code modules for a procedural program
4. explain why procedural program modules should have high cohesion and low coupling
5. explain how an object model is used to show the links between objects for an object oriented program
6. describe how objects encapsulate data
7. explain how objects are accessed through their interfaces
8. explain that real-time programs respond to events which cause a change from one state to another
9. explain that a State Transition Diagram provides a diagrammatical representation of the possible states, transitions and enabling events in a real-time program
10. identify that a transition between states takes place as a result of an event occurring
11. explain that each entry in an Event-state table for a real-time program defines:
* any condition that must be satisfied
* the necessary action to be performed as a result of the event
* the new state
Outcome 3: Specify data types and data structures
Practical activities - the candidate will be able to
1. document the designs of a program by specifying:
* variable names and data types
* argument names and data types
* return value data types
* objects, attributes/properties and methods
* data structures
* external and internal filename(s)
* file access method
* user-defines data types
Underpinning knowledge - the candidate will be able to
1. identify the basic data types: integer, floating point, character, string, boolean
2. explain the purpose of a pointer data type
3. explain that an object is made up of attributes/properties and methods
4. describe one-dimensional arrays, multi-dimensional arrays and the use of subscripts
5. explain the meaning of the terms file, record and field and describe the relationships between them
6. explain that fields in a file should be as small as possible to reduce the overall file size
7. describe the access methods for files
* sequential
* random
8. explain the advantages of using random access files
9. explain the difference between an external filename and an internal filename
10. explain that all accesses to a file must be checked for successful completion
11. list the types of errors that can occur when accessing a file, (eg; file does not exist, record does not exist, read past end of file, hardware fault)
12. explain the purpose of a used-defined data type
13. explain how a data structure can be used to create the following:
* table
* stack
* queue
* tree
* linked list
14. describe algorithms for sorting:
* bubble sort
* quicksort
15. describe algorithms for searching:
* serial search
* binary search
Outcome 4: Develop a software design specification
Practical activities - the candidate will be able to
1. identify from an outline design specification the software components required
2. select and produce suitable diagrammatical representations for different programming requirements:
* event-driven
* procedural
* object-oriented
* real-time
3. produce program design language alogorithms for components
4. insert references to any pre-written library routines or objects to be used
5. specify
* the peripherals required
* error handling routines to trap errors
* screen error messages
* security measures
* constraints, (eg: file size, hardware)
6. apply validation checks to input data
7. produce file, screen and print layouts
Underpinning knowledge - the candidate will be able to
1. explain that pseudocode, structured English or flowcharts may be used as program design language
2. explain the advantages of using pre-written library routines or objects (eg: built-in, in-house, third-party)
3. explain the need for validation checks on data input
4. identify the different types of validation check that may be performed (eg: range, type (alphabetic, numeric), check digits, hash totals)
5. explain he importance of designing programs to handle error conditions
6. list examples of error conditions that can occur in software
7. explain the need for security measures:
* backup
* passwords
Outcome 5: Validate the completed design specification
Practical activities - the candidate will be able to
1. prepare a test plan for logical testing
2. derive the expected results from a given set of test data
3. use the technique of dry running to test the logic of a design
4. check the design for consistency and completeness
5. check that quality criteria is met by the design
6. verify that the design conforms fully with the given specification
Underpinning knowledge - the candidate will be able to
1. explain the need for testing with invalid input data as well as valid input data
2. explain the importance of testing boundary limits
3. list the advantages of a rigorous and standardised method of design for a large system, where a team of people will be involved in the implementation of software
4. explain the benefits of planned incremental implementation and testing of software components
5. describe the quality criteria which should be met by the design:
* effectiveness
* modifiability
* portability
* use of standard routines
* reliability
* reusability
* store usage
* security
* ease of operation
Outcome 6: Identify Health and Safety requirements
Practical activities - the candidate will be able to
1. maintain a safe working environment for self and others
2. use safe working practices at all times
3. operate equipment according to suppliers, manufacturers and/or workplace requirements
4. use and maintain equipment, materials and accessories to a safe standard
5. use reporting procedures to report any hazards
Underpinning knowledge - the candidate will be able to
1. describe what elements and practices create a good working environment
2. identify the health and safety precautions to adopt when using a computer
3. identify injuries common in a bad working environment
4. identify cleaning procedures related to IT equipment
5. explain the term 'ergonomics'
6. describe the main points of relevant legislation: Health and Safety at work Act 1974, electrical regulations, working with VDU's, COSHH regulations
7. explain the importance of keeping fire doors and exits clear and unblocked
8. describe the use of different types of fire extinguishers, in particular those suitable for use in the IT envionment.
Appendix A - Information in a program specification
In order to provide a complete basis for design, a program specification will needf to contain most or all of the following information:
* User needs, expectations and experience
* Input and output specifications
- file formats
- file access methods
- record design
- data definitions
- data types
- data strictures
- quantity
- acceptable values
* Processing requirements description to be read by:
- users
- management
- audit
* Reports required
- print layout
- screen layout
- file format
* Code structures to be used
* Peripherals to be used
* Controls necessary to prove that
: - correct files were input
- all of the data input has been processed
- all of the data is accounted for on output
* Quality criteria to be met by the design, particularly in terms of:
- effectiveness
- modifiability
- portability
- use of standard routines
- store usage
- security
- ease of operation
- reliability
- re-usability
* Other criteria
- run-time parameters
- operator-controlled insertions (if any)
- system-generated data
- error reports
- management information
* Program test plan
- data in
- expected output
City & Guilds Unit 307 Requirements analysis and systems specification (Mandatory)
City & Guilds Unit 301 Develop Software using 'C' (Core)
Rationale
The aim of this unit is to enable candidates to understand the principles required to develop software using the 'C' programming language. Candidate will develop the skills required to design, create and test software components to solve a given problem.

There are 7 outcomes to this unit. The candidate will be able to
1. interpret program specifications to develop software
2. develop software components
3. use functions
4. use pre-defined functions
5. save and retrieve data from disk
6. describe the principles of software testing and management
7. produce documentation
Assessment
Assessment will be by means of a set assignment covering both practical activities, and a multiple choice test covering underpinning knowledge.

Outcome 1: Interpret program specifications to develop software
Practical activities - the candidate will be able to
1. use program specifications to design a solution
2. use the design to select the most appropriate components to solve the problem
3. create software from the design using a 'C' text editor
4. use suitable validation to control user input
5. use good coding practice in the implementation of the design
Underpinning knowledge - the candidate will be able to
1. specify the components required to create software from project specifications
2. identify the need for program design
3. identify the need for effective validation within a program
4. explain the need for comments in a program
5. explain the need for indentation in a program
6. explain the need for consistency in the coding of the program
7. identify that all languages use algorithms
8. identify that control structures take on a similar role between languages: -
* selection
* sequence
* iteration
Outcome 2: Develop software components
Practical activities - the candidate will be able to
1. develop programs using the data types int, float, double and char
2. use the data qualifiers long, short, signed and unsigned
3. declare and use struct
4. declare and use an array of structures
5. declare and initialise a pointer
6. use pointers to access and alter values stored
7. use indirection operators
8. use switch statements
9. design algorithms to validate user input
10. construct and use one and two dimensional arrays of data types: - int[] char[] float[]
11. develop header files to define shared constants and functions
12. use header files to define constants, external functions and simple madros
13. use the assignment operators: -
= += _= *= /= %=
14. use casting in a program
15. use the ++ and - - operators in prefix and postfix modes
16. use enumeration to specify a set of constants
17. use auto, static, extern, const and typedef in a program
18. use free and malloc to manage memory
Underpinning knowledge - the candidate will be able to
1. describe the format of struct
2. identify an array of structures
3. explain that a pointer is a variable that holds the memory address of another variable
4. state the purpose of the indirection operator
5. explain that the name of an array is equivalent to a pointer to the first element of that array
6. identify the use of switch statement in selection
7. describe the purpose of default, break and continue in a switch statement
8. explain why it is necessary to validate user input
9. explain the difference between a one and two-dimensional array
10. describe the component parts of a string
11. identify the declaration of user defined header files
12. describe the use of the assignment operators =, +=, _=, *=, /= and %=
13. explain the reason for casting
14. describe the use of enum, auto, static, extern, const and typedef in a program
15. explain the concept of dynamic memory allocation
16. identify that the keywords free and malloc are concerned with memory management
17. explain properties of the ++ and - - incrimination operators in prefix and postfix modes
Outcome 3: Use functions
Practical activities - the candidate will be able to
1. create a program using functions and pass values by value (copy)
2. create a program using functions and pass values by reference using the & operator
3. pass structures to functions: -
* by value (copy)
* by reference
4. pass strings to functions
5. create functions that return values to the calling function of data types: - char int float.
Underpinning knowledge - the candidate will be able to
1. describe the meaning of pass by value (copy) of function
2. describe the meaning of pass by reference to functions
3. describe the purpose of the reference operator &
4. identify the return type of a function
5. explain the need for function prototypes
6. explain the declaration of variable and pointers in function arguments (eg: in parenthesis)
Outcome 4: Use pre-defined functions
Practical activities - the candidate will be able to
1. use pre-defined functions: -
* strcpy()
* strcat()
* strlen()
* atoi()
* atof()
* gets()
* puts()
* toupper()
* tolower()
2. use #define in a program
3. use a clear screen function
Underpinning knowledge - the candidate will be able to
1. explain the difference between #include and #define directives
2. identify from given specification data type(s) to be used
3. identify the correct use of: -
* strcpy()
* strcat()
* strlen()
* atoi()
* atof()
* gets()
* puts()
* toupper()
* tolower()
Outcome 5: Save and retrieve data from disk
Practical activities - the candidate will be able to
1. use standard header files to define functions and data types for input/output routines
2. manipulate files: -
* write to a file
* read from a file
* append to a file
3. create files of type: -
* text
* binary
4. declare file pointers
Underpinning knowledge - the candidate will be able to
1. explain the need for a file pointer
2. explain the purpose of input and output modes
3. explain the importance of closing a file after use
Outcome 6: Describe the principles of software testing and managementPractical activities - the candidate will be able to
1. verify that the program conforms to the design specification
2. dry run a program
3. implement change control procedures
4. test the software according to a prepared test plan
5. determine the expected outcome from a program
6. compare the expected outcome to the actual outcome and decide of the program is working correctly
7. keep a long of the results for each test
8. clearly identify any discrepancies and any amendments made to correct errors
9. resolve logical and run-time errors found during testing
Underpinning knowledge - the candidate will be able to
1. explain the reasons for testing a program prior to implementation
2. describe the meaning of a dry run
3. describe the meaning of a compilation error
4. describe the meaning of a run-time error
5. describe the purpose of test data
6. explain the need to test software in the target environment
7. state the difference between interfacing and integration
8. explain why software is integrated
9. state that interface testing is conducted to evaluate whether systems or components pass data and control correctly to one another
10. state that interface design is the activity concerned with the interfaces of the software system contained in the software requirements documentation
11. state that interfacing consolidates the interface descriptions into a single interface description of the software system as a whole
12. explain the need for an overall control when developing software projects
13. identify the benefits of teamwork to avoid duplication of effort, when working on a large project
14. describe the need for control and documentation of any changes to programs
Outcome 7: Produce documentation
Practical activities - the candidate will be able to
1. produce end user instructions that are clear and unambiguous
2. produce technical documentation to describe the purpose of the program and its operation
3. print listing of code
Underpinning knowledge - the candidate will be able to
1. identify the need for end user instructions
2. describe the need for technical documentation to aid future maintenance and reusability
City & Guilds Unit 302 Develop Software using 'C++' (Core)
Rationale
The aim of this unit is to enable candidates to understand the principles required to develop software using 'C++' programming language. Candidates will develop the skills required to design, create and test software to solve a given problem.

There are 8 outcomes to this unit. The candidate will be able to:
1. Interpret program specifications to develop software
2. Develop software components
3. Use functions
4. Use pre-defined functions
5. Save and retrieve data from disk
6. Use Object Oriented Programming (OOP)
7. Describe the principles of software testing and management
8. Produce documentation.
Guided learning hours
The recommended guided learning hours for this unit are 90 hours.
Assessment
Assessment will be by means of a set assignment covering practical activities, and a multiple choice test covering underpinning knowledge.

Outcome 1: Interpret program specifications to develop software.
Practical activities
The candidate will be able to:
1. Use program specifications to design a solution
2. Use the design to select the most appropriate components to solve the problem
3. Create software from the design using a 'C++' text editor
4. Use suitable validation to control user input
5. Use good coding practice in the implementation of the design.
Underpinning knowledge
The candidate will be able to:
1. Specify the components required to create software from project specifications
2. Identify the need for program design
3. Identify the need for effective validation within a program
4. Explain the need for comments in a program
5. Explain the need for indentation in a program
6. Explain the need for consistency in the coding of the program
7. Identify that all languages use algorithms
8. Identify that control structures take on a similar role between languages i.e:-
* Selection
* Sequence
* Iteration.
Outcome 2: Develop software components.
Practical activities
The candidate will be able to:
1. Develop programs using the data types int, float, double and char, static, auto and const
2. Use the data qualifiers long, shirt, signed and unsigned
3. Declare and use struct
4. Declare and initialise a pointer
5. Use pointers to access and alter values stored
6. Use indirection operators
7. Use switch statements
8. Design algorithms to validate user input
9. Construct and use one and two dimensional arrays of data types:-int[] char[] float[]
10. Develop header files to define shared constants and functions
11. Use header files to define constants, external functions and simple macros
12. Use the assignment operators:-
-+= -= *= /= %=
13. Use casting in a program
14. Use the ++ and - operators in prefix and postfix modes
15. Use enumeration to specify a set of constants
16. Use local and global variables in a program
Underpinning knowledge
The candidate will be able to:
1. Describe the format of a struct
2. Identify an array of structures
3. Explain that a pointer is a variable that holds the memory address of another variable
4. State the purpose of the indirection operator
5. Explain that the name of an array is equivalent to a pointer to the first element of that array
6. Identify the use of a switch statement in selection
7. Describe the purpose of default, break and continue in a switch statement
8. Explain why it is necessary to validate user input
9. Explain the difference between a one and two-dimensional array
10. Describe the component parts of a string
11. Identify the declaration of user header files
12. Describe the use of the assignment operators =, +=, +=, /= and %=
13. Explain the reason for casting in a program
14. Describe enumeration
15. Explain properties of the ++ and - incrimination operators in prefix and postfix modes
16. Explain the use of
* Static
* Auto
* Const
17. Identify the difference between local global variables
18. Describe the use of the NULL pointer
19. Identify the declaration of one and two-dimensional arrays.
Outcome 3: Use functions.
Practical activities
The candidate will be able to:
1. Create a program using functions and pass values by value (copy)
2. Create a program using functions and pass values by reference using the & operator
3. Pass structures to a function:-
* by value
* by reference
4. Pass strings to functions
5. Create functions that return values to the calling function of the data types:-char int float
6. Use const in function parenthesis
Underpinning knowledge
The candidate will be able to:
1. Describe the meaning of pass by value (copy) to functions
2. Describe the meaning of pass by reference to functions
3. Describe the purpose of the reference operator &
4. Identify the return type of a function
5. Explain the need for function prototypes
6. Explain the declaration of variables and pointers in function arguments i.e. parenthesis
7. Explain why defaults parameters are used
8. Describe how functions can be overloaded
9. Describe the use of const in function parenthesis.
Outcome 4: Use pre-defined function.
Practical activities
The candidate will be able to:
1. Use pre-defined functions e.g.: -
* strcpy()
* strcat()
* strlen()
* atoi()
* atof()
* gets()
* puts()
* toupper()
* tolower()
2. Use #define or const in a program
3. Use a clear screen function.
Underpinning knowledge
The candidate will be able to:
1. Explain the difference between #include and #define directives
2. Explain the scope of const
3. Identify and describe the pre-defined functions e.g.:-
* strcpy()
* strcat()
* strlen()
* atoi()
* atof()
* gets()
* puts()
* toupper()
* tolower().
Outcome 5: Save and retrieve data from disk
Practical activities
The candidate will be able to:
1. Use standard header files to define functions and data types for input/output routine
2. Manipulate files: -
* Write to a file
* Read from a file
* Append to a file
3. Create files of type:-
* Text
* Binary
4. Declare file objects
5. Use cerr in a program
Underpinning knowledge
The candidate will be able to:
1. Explain the need for a file object
2. Explain the purpose of input and output modes
3. Explain the importance of closing a file after use
4. Explain the correct method to close a file on disk
5. Identify the purpose of the file streams fstrem, istream and ostream
6. Identify the hierarchy of the handling streams
7. Explain the purpose of cerr.
Outcome 6: Use Object Oriented Programming (OOP)
Practical activities
The candidate will be able to:
1. Use classes in program design incorporating:-
* Objects
* Methods
* Attributes
2. Use the scope resolution operator::
3. Use functions of types: -
* inline
* friend
4. Create derived classes which:-
* are derived
* uses inheritance
5. Use the following in a program:-
* constructor
* destructor
6. Use the this pointer in a program.
Underpinning knowledge
The candidate will be able to:
1. Identify a program that uses classes
2. Explain an instance of a class
3. Describe what is meant by the keywords private and public
4. Describe the difference between attributes and methods
5. Explain the meaning of :-
* encapsulation
* inheritance
* polymorphism
6. Explain the purpose of:-
* an inline function
* a friend function
7. Explain what is meant by reusability
8. Explain the purpose of a constructor and a destructor in a program
9. Explain the purpose of the tilde (~)
10. Describe the purpose of the scope resolution operator ::
11. Describe the purpose of the scope of this pointer
12. Explain that an object of a class be initialised when instantiated
13. Describe the main components of an object.
Outcome 7: Describe the principles of software testing and managementPractical activities
The candidate will be able to:
1. Verify that the program conforms to the design specification
2. Dry run a program
3. Implement change control procedures
4. Test the software according to a prepared test plan
5. Determine the expected outcome from a program
6. Compare the expected outcome to the actual outcome and decide if the program is working correctly
7. Keep a log of the results for each test
8. Clearly identify any discrepancies and any amendments made to correct errors
9. Resolve logical and run-time errors found during testing.
Underpinning knowledge
The candidate will be able to:
1. Explain the reasons for testing a program to implementation
2. Describe the meaning of a dry run
3. Describe the meaning of a compilation error
4. Describe the meaning of a run-time error
5. Describe the purpose of test data
6. Explain the need to test software in the target environment
7. State the difference between interfacing and integration
8. Explain why software is integrated
9. State that interface testing is conducted to evaluate whether systems or components pass data and control correctly to one another
10. State that interface design is the activity concerned with the interface of the software system contained in the software requirements documentation
11. State that interfacing consolidates the interface descriptions into a single interface description of the software system as a whole
12. Explain the need for an overall control when developing software projects
13. Identify the benefits of team work to avoid duplication of effort, when working on a large project
14. Describe the need for control and documentation of any changes to programs
Outcome 8: Produce documentation
Practical activities
The candidate will be able to:
1. Produce end user instructions that are clear and unambiguous
2. Produce technical documentation (including any class interface) to describe the purpose of the program and its operation
3. Print listing of code
Underpinning knowledge
The candidate will be able to:
1. Identify the need for end user instructions
2. Describe the need for technical documentation to aid future maintenance and reusability.
City & Guilds Unit 304 Develop Software using Visual Basic (Core)
Rationale
The aim of this unit is to enable candidates to understand the principles required to develop software using the Visual Basic programming language. Candidate will develop the skills required to design, create and test software components to solve a given problem.

There are 6 outcomes to this unit. The candidate will be able to
1. interpret program specifications to develop software
2. use components to create a Graphical User Interface(GUI)
3. use built-in database management features
4. develop code for implementation
5. test software using change control
6. produce documentation

Assessment
Assessment will be by means of a set assignment covering both practical activities, and a multiple choice test covering underpinning knowledge.

Outcome 1: Interpret program specifications to develop software
Practical activities - the candidate will be able to
1. design a solution to meet a given specification
2. identify and document input screens and output layouts
3. select the most appropriate controls and events to fulfil the specification
4. identify constants, variables, procedures, functions and modules required
5. use meaningful names for forms, controls, procedures, functions and modules using consistent naming conventions
6. identify the links between events, procedures, functions and modules
7. use a suitable method to document the code required for each procedure, function or module (eg: pseudocode, flowchart or structured English)
8. provide a solution which is structured, easily maintained and fulfils the specification
Underpinning knowledge - the candidate will be able to
1. identify the need for program design
2. explain the need for effective validation of input data in software
3. explain the need for consistency in naming
Outcome 2: Use components to create a Graphical User Interface(GUI)Practical activities - the candidate will be able to
1. select and use controls
2. change the settings for the properties of controls
3. set the CancelError property of the CommonDialog
4. select and use bound controls
5. set the DataSource and DataField properties of bound controls to enable access to database records
Underpinning knowledge - the candidate will be able to
1. explain the purpose and action of controls
* Data
* CommonDialog
* ComboBox
* Image
* ListBox
* PictureBox
* CheckBox
* TextBox
2. explain the purpose of the properties of controls
* ActiveForm
* ActiveControl
* AddItem
* AutoSize
* AutoRedraw
* Cancel
* DatabaseName
* Default
* DragIcon
* DrawWidth
* Icon
* Index
* KeyPreview
* List
* ListCount
* ListIndex
* MousePointer
* Picture
* RecordSet
* RecoedSource
* Selected
* TabStop
* Tag
* TextWidth
* Width
3. describe the purpose of a Bound control
* ComboBox
* PictureBox
* CheckBox
* TextBox
4. describe how the List and ListIndex properties can be used to set and return list items
Outcome 3: Use built-in database management features
Practical activities - the candidate will be able to
1. declare and use object variables of Database and Recordset type
2. reference the properties of a database and a recordset via object variables
3. use the Refresh method on a data control to open a database and build a dynaset type recordset in the control's Recoedset property
4. use the OpenDatabase and OpenRecordset methods to return a set of records from a database and assign them to the Recordset property of a Data control
5. use Data control in conjunction with bound controls to navigate and display individual records from a database table
6. use MoveFirst, MoveLast, MoveNext and MovePrevious methods for navigation
7. use Validate and Reposition data control events when editing records
8. use Edit, Update, Add and Delete methods
9. use FindFirst and FindNext methods to find records
10. set the Bookmark property
11. use an embedded SQL query statement to implement a search
Underpinning knowledge - the candidate will be able to
1. describe the features of a record structured database
2. identify appropriate data types for the fields in a given record
3. describe the purpose of an index
4. state that a primary key field is used to uniquely identify a record
5. state the syntax and structure of basic SQL queries
6. state the reasons for timely archiving of records from a database: -
* size
* loss of data
* backup
Outcome 4: Develop code for implementation
Practical activities - the candidate will be able to
1. declare and use local and global constants and use built-in predefined constants
2. use Dim, Static and Global for variable declarations
3. declare and use arrays of integer and string variables
4. declare and use the Type definition to create a user defined variable with two or more elements
5. use the Tag property of a control
6. use the Randomize statement and the Rnd function to generate random integer numbers
7. invoke Click event procedures for the CommandButton and the OptionButton, by setting the control's Value property to True
8. create and use control arrays
9. set the TabIndex property of controls to preset the order in which they receive focus
10. write code for event procedures for controls
11. use methods for controls
* Clear
* Cls
* Print
* PrintForm
* SetFocus
12. use functions for concatenation and manipulating strings
13. write code for procedures and functions in forms and separate code modules
14. use KeyPress and KeyDown events to monitor and acquire keyboard input
15. use the KeyAscii argument and the Chr$ function to echo user keyboard input
16. use the IsNumeric, Val and StrComp functions in the validation of numeric input data
17. use the properties of the Screen object to position forms on the screen
18. use the Visual Basic co-ordinate system as it applies to: the screen; a form and its location on the screen; a container, and its locations on a form
19. use drawing methods: -
20. use the Drag method and the DragDrop event to initiate actions
21. use the SelLength, SelStart and SelText properties to manipulate text in a TextBox
22. create the option to print
23. write simple error-handling routines
24. use the Show and Hide methods and the Load and Unload statements
25. use the ActiveForm and ActiveControl properties in applications having more than one form
26. create simple multi-form applications that use procedures in a code module
27. create simple applications in which event procedures on one form reference properties on another form
Underpinning knowledge - the candidate will be able to
1. describe and state the scope of Dim and Static variables declared in procedures
2. describe and state the scope of Dim and Global variables declared in modules
3. describe the user-defined data type and how Type definitions should be placed in code
4. explain how the AddItem method is used to populate a ComboBox or ListBox control
5. describe the functions for concatenating and manipulating strings
6. explain the purposes and functions of control arrays and the Index property
7. explain the meaning of the term 'focus', its effects on a control and the means by which a control can receive the focus.
8. explain how the Print method is used to send data to a printer
9. describe
* simple sources of run-time errors
* responses by Visual Basic when an error occurs
* simple uses of the OnError statement
* use of GoTo and Resume to manage errors
* use of Err and Error$ in error-handling
10. explain the purpose of event procedures for controls:
* Activate
* Change
* DragOver
* Error
* GotFocus
* Load
* LostFocus
* Resize
* SelChange
* Unload.
Outcome 5: Test software using change control
Practical activities - the candidate will be able to
1. determine the expected results from a given set of test data
2. test the software according to a prepared test plan
3. compare the expected to the actual results and correct any errors
4. keep a log of the results for each test, clearly identifying
* discrepancies between the expected and actual results
* amendments made to correct errors
5. resolve logical and run-time errors found during testing using appropriate methods
6. use the Error statement to test and error handling routine
7. verify that the program conforms to the design specification
8. create an EXE file and test its operation
Underpinning knowledge - the candidate will be able to
1. explain the reasons for testing a program prior to implementation
2. describe the meaning of a dry run
3. describe the meaning of a compilation error
4. describe the meaning of a run-time error
5. describe the purpose of test data
6. explain the need to test software in the target environment
7. state the difference between inter facing and integration
8. explain why software is integrated
9. state that interface testing is conducted to evaluate whether systems or components pass data and control correctly to one another
10. state that interface design is the activity concerned with the interfaces of the software system contained in the software requirements documentation
11. state that interfacing consolidates the interface descriptions into a single interface description of the software system as a whole
12. explain the need for an overall control when developing software projects
13. identify the benefits of teamwork to avoid duplication of effort, when working on a large project
14. describe the need for control and documentation of any changes to programs
Outcome 6: Produce documentation
Practical activities - the candidate will be able to
1. provide end user instructions that are clear and unambiguous
2. produce technical documentation to describe the purpose of the program and its operation
3. print listing of code
4. print forms (screen images)
Underpinning knowledge - the candidate will be able to
1. identify the need for end user instructions
2. describe the need for technical documentation to aid future maintenance and reusability
City & Guilds Unit 305 Software using Java Level 3 (Core)
Rationale
The aim of this unit is to enable candidates to understand principles required to develop software using the Java programming language. Candidates will develop the skills required to design, create and test software to solve a given problem.

There are 5 outcomes to this unit. The cxandidate will be able to:
1. interpret program specification s to develop software
2. create classes
3. develop code for interpretation
4. test software using change control
5. produce documentation
Guided learning hours
The recommended learning hours for this unit are 90 hours
Assessment
Assessment will be by means of a set assignment covering practical activities, and a multiple choice test covering underpinning knowledge.
Outcome 1: Interpret program specifications to develop software
Practical activities
The candidate will be able to:
1. design a solution to meet a given specification
2. identify a document input screens and output layouts
3. select the most appropriate classes to fulfill the specification
4. identify the methods and attributes for each class
5. identify the type access required for attributes and members: public, private
6. use meaningful names for classes, methods and attributes
7. identify the links between classes
8. use a suitable method to document the whole code required for each method (e.g. pseudocode, flowchart or structured English)
9. provide a solution which is structured, easily maintained and fulfills specification
Underpinning knowledge
The candidate will be able to:
1. describe the key features of object oriented programming
* encapsulation
* polymorphism
2. identify the elements of the class
3. describe the relationship between and instance of a class and two or more instances of a class
4. describe how methods contains a sequence of computing actions and variables that are used to store values needed and produced during computations
5. explain the need for consistency in using meaningful names
Outcome 2: create classes
Practical activities:
The candidate will be able to:
1. use the import statement to access predefined classes firm packages
2. create user defined classes
3. declare the attributes of a class using the basic data types
4. create methods for a class
5. use methods to perform operations on instances of a defines class
6. use public and private to allow access to data and methods of a user defined class
7. create and use instances of a defined class
8. create constructor to initialize new instances of a class
9. write simple error-handling routines e.g. try, catch, finally.
Underpinning knowledge
The candidate will be able to:
1. describe the effect of making data or methods public, private, protected, static and final
2. explain when a constructor is called
3. state that a constructor has the same name as the class, can have the same parameters but has not the return value
4. describe the syntax for a method declaration, the number and type of arguments that must be supplied to a method and how arguments are passes by value
5. describe Java inheritance for a class and the use of this and extends
6. explain what causes a Java method to throw an exception
7. describe the purpose and use of overloading methods
8. describe how to call a method that is part of the current class
Oucome3: develop code for implementation
Practical activities
The candidate will be able to:
1. declare and use data types:
* byte
* int
* chat
* long
* float
* double
* boolean
2. declare and use constants and built-in predefined constants as appropriate
3. use single dimension arrays of type
* byte
* int
* char
* float
* double
4. use String and StringBuffer classes to manipulate strings
5. use operators
assignment operators: =,+=,-=, *=, /=, %=
relational operators: ==, <, >, !=, <=, >=
arithmetic operators: +, -, *, /, %, ++, --
logical operators: &&, (AND), || (OR), ! (NOT)
6. use program constructs for iteration
* for
* while
* do...while
7. use program constructs for selection
* if
* if...else
* switch
8. use the break statement
9. use System.out.print() and System.out.println() to output data
10. use System.in.read() to input data
Underpinning knowledge
The candidate will be able to:
1. describe he syntax for classes
2. describe the logical operators
3. describe the relational operators
4. describe the precedence rules for arithmetic and the effects of parenthesis
5. state limitations on the use of Java reserved words
6. explain the operation of repetition program constructs: for, while, do...while
7. explain the operation of selection program constructs: if, if...else, switch
8. explain the use of packages ant the purpose of import statement
9. state the difference between prefix and postfix mode for increment (++) and decrement (--)
10. state the purpose of the .(dot) selection operator when calling a method
11. describe the three stream objects System.in, System.out and System.err and how they are produced
Outcome 4: Test software using change control
Practical activities
The candidate will be able to:
1. determine the expended results from a given set of test data
2. test the software according to a prepared test plan
3. compare the expected to the actual results and correct any errors
4. keep a log of the results for each test, clearly identifying
* discrepancies between the expected and actual results
* amendments made to correct errors
5. resolve logical and run-time errors found during testing using appropriate methods
6. verify that the program conforms to the design specification
Underpinning knowledge
The candidate will be able to:
1. explain the reasons for testing a program prior to implementation
2. describe the meaning of a dry run
3. describe the meaning of a compilation error
4. describe the meaning of a run-time error
5. describe the purpose of test data
6. explain the need to test software in the target environment
7. state the difference between interfacing and integration
8. explain why software is integrated
9. state that interface testing is conducted to evaluate whether system or components pass data and control correctly to one another
10. state that interface design is the activity concerned with the interfaces of the software system contained in the software requirements documentation
11. state that the need for an overall control when developing software projects
12. identify the benefits of teamwork to avoid duplication of effort, when working on a large project
13. describe the need for control and documentation of any changes to programs.
Outcome 5: Produce documentation
Practical activities
The candidate will be able to:
1. produce end user instructions that are clear and unambiguous
2. produce clear technical documentation (to include class interface) to describe the purpose of the program and its operation
3. print listing of code
Underpinning knowledge
The candidate will be able to:
1. identify the need for end user instructions
2. describe the need for technical documentation to aid future maintenance and reusability
City & Guilds Unit 309 Web site design - Level 3 (Optional)
Rationale
The aim of this unit is to equip candidates with the principles needed to be bale to create and maintain a series of web pages creating a web site, incorporating a variety of advanced design and information presentation techniques.

There are 5 outcomes to this unit. The candidate will be bale to:
1. Explain fundamentals of web page development
2. Undertake formal user requirements analyses
3. Use appropriate development tools to implement and test interactive web pages incorporating advanced design and information presentation techniques
4. Use appropriate graphics software to create
5. Maintain and evaluate websites
Assessment
The assessment will be by means of a set assignment covering both practical activities and underpinning knowledge.

Outcome 1:Explain fundamentals of web page development
Underpinning knowledge
The candidate will be able to:
1. Describe how web pages can be made more interactive (using e.g. VRML, DHTML and Java applets);
2. Explain the purposes of XML;
3. Outline the different uses of scripting languages (e.g. CGI, VBScript, JavaScript);
4. Explain scripting techniques used to interface a web page with a database to enable presentation or interchange of up-to-date information.
Outcome 2: Undertake formal user requirements analyses:
Practical activities
The candidate will be able to:
1. Create 'Terms of Reference' for clients to include:
a. a statement of the problem
b. a design for the web page using a suitable methodology such as storyboarding
c. a style sheet describing the formats of the text and paragraphs (font style, font type, font colour, paragraph indents, line spacing etc) to promote consistency within web page
d. an appropriate structure diagram demonstrating the linking structure of the web page
2. Produce resources project plans for the incremental development of web pages including the gathering of suitable resources.
Underpinning knowledge
The candidate will be able to:
1. explain the relevance, importance and contents of a 'Terms of Reference' when creating a web page for a third party
2. recognise the different components of a 'Terms of Reference'
3. explain the importance of a design style sheet when working either to a specification or within a team environment
4. describe the constraints and limitations that must be considered when producing a web page (e.g. file size/download times, timescale of production, quality of image resources)
Outcome 3: Implement web pages and test websites
Practical activities
The candidate will be able to:
1. Create websites compatible wit a range of browsers:
a. Providing both a frame based and a non-frame based interface
b. Incorporating Java Script into a web page to achieve such effects as:
* scrolling texts
* rollover button graphics
c. Incorporating a Java applet into a web page (e.g. expanding menu tree)
d. Using Dynamic HTML to enhance the interactivity or appeal of a web page
* layers
* cascading style sheets (css)
e. Interfacing a web page to a database in order to provide a web page presentation of responses to a simple query, e.g.:
* a telephone number linked to a name; or
* a product price or quantity in stock from a product code; or
* a library book availability
f. Incorporating into web pages suitable forms to enable the gathering of
feedback or other information from users of web pages
2. Test web sites:
a. Verifying all links work
b. Using different browsers to preview pages and verify all components appear as expected
Underpinning knowledge
The candidate will be able to:
1. explain the importance of maintaining cross-browser compatibility
2. describe the advantages and disadvantages of a frame based interface
3. select appropriate data to be collected using a form
4. describe the terms quality, timeliness and accuracy when applied to data collected from a web site
5. Use appropriate graphics software to create and manipulate images
Practical activities
The candidate will be able to:
1. Create images to predefined specifications (pixel height/width; colour depth) suitable for inclusion in web pages (e.g. buttons used for linking
2. Alter areas of colour to facilitate the application of transparency to an image
3. Create an animated GIF for use within a web page

Underpinning knowledge
The candidate will be able to:
1. explain the factors that affect the dimensions of a button, for examplea. quantity of a text
b. font type, size and style
c. available space for the button(s) on a web page
2. describe what is meant by the term anti-aliasing
Outcome 5: Maintain and evaluate websites
Practical activities
The candidate will be able to:
1. Create appropriate plans for the effective periodic maintenance and updating of websites
2. Check that a website satisfies the 'Terms of Reference'
3. Identify potential future enhancements to websites
4. Create suitable documentation for maintaining websites to include, for each web page, a list of resources including the full path to a file name from a route directory of a website.
Underpinning knowledge
The candidate will be able to:
1. Explain the importance of documentation in maintaining a web site
City & Guilds Unit 311 Relational Databases Level 3 (Optional)
Rationale
The aim of this unit is to enable candidates to develop the skill s requitred to design and create relational databases

There are 6 outcomes to this unit. The candidate will be able to:
1. identify client requirements for a database
2. undertake analysys and design
3. implement the database design to create tables and forms for data entry
4. undertake information retrieval
5. create reports for output
6. undertake testing and produce documentation
Guided learning hours
The recommended learning hours for this unit are 60 hours
Assessment
Assessment will be by means of a set assignment covering both practical activities and underpinning knowledge.
Outcome 1: identify client requirements for a database
Practical activities
The candidate will be able to:
1. use suitable methods to identify client requirements
2. create a brief and simple description of the purpose of a given data processing system
3. produce a brief description (sketches should be included)of an existing data processing activity which is being considered for computerization
4. produce an outline description of a proposed database to meet client requirements
5. list the advantages and limitations for the existing and porposed data processing systems
Underpinning knowledge
The candidate will be able to:
1. describe what is meant by the term Relational Database System
2. explain the differences between the following types of database:
* flat file
* relational
3. explain the potential need for restricting access to a database or information system, including the implementation of a hierarchical system of passwords
4. describe advantages and limitations of a computer based database to a paper based system
Outcome 2: undertake analysis and design
Practical activities
The candidate will be able to:
1. compile a list to identify
* input data
* output data
* internally generated data
2. use meaningful names for consistency in design
3. identify entities in a database or information system
4. identify the attributes of an entity
5. refine the data model using normalization procedures
6. design a user interface screen(s)
7. create screen.form layouts
8. create report layouts identifying query criteria
9. create an Entity-relationship (E-R) model
10. create a data dictionary
Underpinning knowledge
The candidate will be able to:
1. explain the methods of identifying data items (data element) in a given data processing system (e.g. document analysis, operator interviews, transaction definitions, internally generated data)
2. explain the purpose of fields for time, date and calculations
3. define the terms:
* entity
* attribute
4. describe the purpose and differences between primary, foreign and alternate keys
5. define the term relationship and give examples of 1:1, 1:M, M:M relationships
6. identify and explain normalization form (NF) in the process of normalization:
* 1NF no repeating sets
* 2NF attributes depend on the whole primary key
* 3NF no sets of mutually dependant non-keys attributes
7. explain that a user friendly interface screen should have clearly labeled user options, supported by automated sequences which give easy access to specified functions, reports and forms
8. explain than a data dictionary defines for each table
* table name
* key (primary, foreign, alternate)
* index(es)
* field names
* data types (numeric, character, date, logical)
* format (currency, day/month/year)
* description of the field
* field length
* validation of fields
Outcome 3: implement the database design to create tables and forms for data entry
Practical activities
The candidate will be able to:
1. use the data dictionary to create the table structure(s)
2. use the E-R model to create the relationship(s)
3. create any indexes
4. create forms for input using screen layout/form(s)
5. create a sub-form where this is included in the design
6. generate useful descriptive error messages to support entry validation
7. provide controls to link input forms
Underpinning knowledge
The candidate will be able to:
1. define the term 'validation' giving examples of how this may be applied in a database or information system
2. explain the following terms when they are applied to a database or information system
* data integrity
* data consistency
* data redundancy
* referential integrity
Outcome 4: Undertake information retrieval
Practical activities
The candidate will be able to:
1. create queries form design criteria
2. select records from:
* a single table
* two or more tables
Underpinning knowledge
The candidate will be able to:
1. explain that queries can be used to:
* append data to an existing database table whilst maintaining the integrity of all related tables
* append data to a new database table either within the current database or to a table within an alternative database whilst maintaining the integritry of all related tables
* update either a single record or multiple records in a database automatically
* update existing records
* generate forms and records
2. describe the options available to specify search criteria when implementing/ designing queries
* logical operators e.g. AND, OR, NOT
* relational operators e.g. =, <,>, <=, >=
* query by example (QBE)
3. explain the use of sort criteria (i.e. ascending , descending)
4. explain the use of SQL Select statements (e.g. group by, order by, where)
Outcome 5: create reports for output
Practical activities
The candidate will be able to:
1. create reports using
* headings
* subheadings
* calculations
* footers
* pagination
* data grouping
* mailing labels
2. direct report output to:
* the screen
* the printer
3. provide controls to enable automatic output
Outcome 6: undertake testing and produce documentation
Practical activities
The candidate will be bale to:
1. design and complete a test plan
2. verify that the database conforms to the design specification
3. test the database according to a prepared test plan
4. compare the expected outcome to the actual outcome and decide if the database is working correctly
5. clearly identify any discrepancies and any amendments made to correct errors6. create technical documentation; to include:
* log of testing
* explanation of normalization (1NF, 2 NF, 3NF)
* table structures
* data dictionary
* illustrated relationship diagram (including relationship types)
* screen/form layouts
* report layouts
* query designs
* illustration and description of menu interface
* contents of index
* results of testing
7. create user documentation; to include:
* clear operating instructions for the complete database
* explanations for any error messages
Underpinning knowledge
The candidate will be able to:
1. describe the purpose of test data including:
* normal
* boundary
* exception
2. Identify the need for technical and user documentation

   

About the College | Business Courses | Computer and IT Courses | English Courses | Contact Us | Resources | Enquiries
 
© Copyright central-college.com All rights reserved
 website designed and CMS System developed by 3E