IADCS Handbook V3 - Oct 2004
IADCS Handbook V3 - Oct 2004
NCC Education
International Advanced
Diploma in Computer
Studies (IADCS)
Syllabus & Course
Handbook
Modification History
The copyright in this document is vested in NCC Education Limited. The document must not be
reproduced by any means, in whole or in part, except with the prior written permission of NCC
Education Limited and then only on condition that this notice is included in any such reproduction.
Information contained in this document is believed to be accurate at the time of publication, but no
liability whatsoever can be accepted by NCC Education Limited arising out of any use made of this
information.
CONTENTS
PAGE
IADCS STRUCTURE..................................................................................................................... 6
INTRODUCTION........................................................................................................................... 7
IADCS Structure
Compulsory:
Business Systems
Analysis
Business Systems
Design
Enterprise
Networking
Introduction
The International Advanced Diploma in Computer Studies (IADCS) is designed to
prepare students for a career in Information and Communication Technology (ICT).
It is a practical course designed to meet the needs of employers worldwide. The
IADCS is recognised by universities in the UK, USA, and Australia as having credit
towards degree courses. In particular, students who achieve the IADCS qualification
may go on to the joint NCC Education/London Metropolitan University External BSc
(Hons) in Computing and Information Systems programme awarded by the London
Metropolitan University.
Profile of Students
The IADCS is intended for students who have achieved the International Diploma in
Computer Studies (IDCS).
Delivery Model
The IADCS is a fully modular course, consisting of 10 modules – 8 taught modules
and a Practical Project, which is a double module. The taught modules are divided
into compulsory modules and electives grouped into topic streams. To achieve the
IADCS, students must pass, as a minimum, 4 compulsory modules and 4 elective
modules and the Practical Project.
Each module is designed as a self-standing professional course, covering a specific IT
topic in detail.
Note: NCC Education supplies accredited training partners with the set texts for
the compulsory modules only. Students must purchase the set texts for the
elective modules.
Entry Requirements
Applicants who wish to enter the International Advanced Diploma in Computer
Studies will need:
• an NCC Education IDCS or IDEC qualification, or
Regulations
The NCC Education document entitled ‘Regulations for Diploma and Graduate
Qualifications’ details the regulations governing the course.
Modules
Compulsory Modules
• Business Systems Analysis
− Methods and techniques for analysing business systems.
• Business Systems Design
− Methods and techniques for designing business systems.
• Enterprise Networking
− Technologies and protocols used in the design of network systems.
• Database Design and Development
− The design of databases in an operational environment.
Elective Modules (Advanced Programming Stream)
• C++ Programming
− Advanced programming design in C++ using object-oriented techniques.
• Advanced Java
− Advanced programming design in Java.
• Advanced VB .NET
− Advanced programming design in Visual Basic.
Elective Modules (Internet Systems Stream)
• Internet Systems Administration
− Managing Internet infrastructures.
• Internet Security
− Avoiding security breaches and developing strategies for secure systems.
• Computer Forensics
− Applying computer forensics skills and techniques.
Weighting of Modules
The following table shows the weightings for modules of the IADCS, and the ratio of
marks between assignments and examination.
Objective G: Mini-specs
G1. Describe the forms (flowcharts, decision tables, decision trees and
structured English) that the lowest level of DFD (the mini-spec) can take.
Objective H: Security
H1. Identify possible threats to, and sources of failure in, computer-based
systems.
H2. Identify the security responsibilities of both IT and senior management.
H3. Perform a risk analysis.
H4. Describe countermeasures to protect a system from risk and use this
knowledge to design more secure systems.
H5. Specify and design control procedures in a system.
H6. Outline control procedures to protect systems from unauthorised access.
H7. Describe contingency plans and recovery procedures.
H8. Design audit trails and carry out system reviews to prevent error and
fraud.
H9. Apply data protection principles to systems design (such as those
specified by the European Union).
H10. Identify the data protection requirements of the state or country
concerned.
H11. Specify the elements to be included in a disaster recovery plan.
I6. Highlight the problems associated with data conversion and file set-up.
I7. Describe the main options for changeover to new system procedures.
I8. Produce the documentation needed to specify the changeover.
I9. Conduct a system review and evaluate the effectiveness of the system in
relation to cost and meeting user requirements.
this case study can be found in the introductory pages of the case study
document. This document is available on the materials CD of the IADCS
programme.
J. Network Planning
Describe the main activities associated with the planning and design of
networks.
F4. Describe the basic types of paging services and their limitations.
F5. Explain the benefits of the General Packet Radio Service (GPRS).
F6. List the potential benefits of wireless connectivity.
F7. Describe the communication equipment used by wireless networking.
F8. Define the standards used in wireless networking.
F9. Identify the range over which radio signals can be transmitted.
F10. Describe the role of wireless hotspots.
F11. Discuss the major security issues associated with the use of wireless
technology.
F12. Describe how Bluetooth technology operates.
potential problems that might arise relating to the final submission date for the
project.
Group projects are acceptable. However, groups should not consist of more
than 3 people. Within a group project, although some division of labour
might be sensible, each student will still be marked for each element. It will
often be the case that students within a group will receive different marks for
the project. Where there is a sub-division of work, this must be specified in
detail.
A group project requires a minimum of 240 hours of work from each student,
and group projects must be increased pro rata.
B4. Discuss the issues related to nested loops and nested conditional
statements.
B4. Understand and use the statements exit, go to, continue and break in
directing the flow of control within a program.
Objective C: Arrays and Strings
C1. Understand the rationale behind the array data structure and make
effective use of it in appropriate programming context.
C2. Explore the various searching and sorting techniques based on arrays.
C3. Utilise multi-dimensional arrays where an array of arrays is involved.
C4. Do string processing which is based on an array of characters and its
associated functions.
C5. Organise a program's data as an array of structures or objects where
appropriate.
Objective D: Functions
D1. Understand the role of functions in modular programming.
D2. Define and use functions to give a program a better or cleaner structure.
D3. Make use of parameter passing to maintain safe communication between
the calling and called subprograms.
D4. Explain the advantages of function overloading and optional arguments
and use them where appropriate.
D5. Take advantage of recursive functions where it could provide a cleaner
structure.
Objective E: Pointers and Linked Structures
E1. Understand and explain the use of pointers in C++ programs.
E2. Learn and exploit the relationship between addresses and pointers,
pointers and arrays, pointers and functions and pointers and strings
within a program.
E3. Use pointers to create data structures such as liked lists and trees.
E4. Store and retrieve a linked structure onto a secondary storage.
E5. Explain the role of pointer in memory management through the use of
the functions new or delete.
E6. Appreciate the insecurity of pointer manipulation and difficulty of
program debugging.
Objective F: Objects and Classes
F1. Distinguish between a class and an object.
F2. Use a class name as a type to declare simple objects or a structure of
objects.
F3. Distinguish between reference to an object and state of an object.
F4. Explain the structure of a class including data members, member
functions, constructors and destructors.
F5. Appreciate that a member function has access to all the member data
items within its class and it can also take an object as its argument and
return an object as a value.
F6. Take advantage of static member data or member function where
appropriate.
Objective G: Inheritance and Polymorphism
G1. Understand the significance of inheritance in programming and the
concept of information hiding and re-usability.
G2. Understand the relationship between the base class, derived class,
accessing base class members and the protected access specifier.
G3. Use derived class constructors and overriding member functions where
appropriate.
G4. Explain the role of abstract base class and virtual functions within a class
hierarchy.
G5. Appreciate the role of polymorphism and program extensibility within a
larger programming context.
G6. Explain the ambiguity in multiple inheritances, advantages of having
classes within classes and the effect of access verifiers within a class
hierarchy.
Objective H: Templates and Exceptions
H1. Design and use function and class templates in a larger programming
context.
H2. Describe the role of exceptions in relation to error handling within a
program.
H3. Take advantage of built-in exceptions within C++ programming
language.
H4. Understand and use multiple exceptions and exceptions with arguments
within a wider programming context.
Object I: Streams and Files
I1. Explain the need for input and output procedures.
I2. Gain insight into the system of classes in the iostream library.
I3. Describe the role of formatted I/O in programming and use it where
appropriate.
I4. Explain how the stream input and output operators work and use them
within a program.
I5. Make use of text files and objects files within a program.
I6. Understand and how to do formatted I/O, how to overload the input and
output operators and how to attach streams to files.
Objective J: Graphics
J1. Understand, set up and use text-mode graphics or graphic modes in a
program.
J2. Explore the use of shapes, lines, colour and pattern within a
programming context.
J3. Appreciate graphics shapes as C++ objects.
J4. Exploit the use of text in graphics mode where appropriate.
6.4 Practical Work
The practical component of this module is made up of a number of
programming problems. Between them, they cover the programming concepts
enumerated above. Some of the problems are deliberately open-ended in
order to provide a level of challenge or sophistication in design and
implementation. In addition, the entire module's emphasis is on sound
Software Engineering Principles.
B5. Explain the array storage allocation, the class Arrays and an array having
Object as its type.
Objective E: Exceptions
E1. Describe the role of exceptions in relation to error handling within a
program.
E2. Take advantage of built-in exceptions within JAVA programming
language.
E3. Understand and use multiple exceptions and exceptions with arguments
within a wider programming context.
E4. Guarantee that a particular block of code in a method will always be
executed.
Objective H: Threads
H1. Explain what a thread is and how it is created and used.
H2. Control interactions between threads.
H3. Use synchronisation methods to manage sharing of common resources
among threads.
H4. Explain what deadlocks are and how to avoid them in a program.
H5.. Take advantage of thread priorities where appropriate.
Objective G: ADO.NET
G1. Discuss the fundamental concepts of ADO.NET and its essential classes.
G2. Describe the OLeDbConnection class.
G3. Explain how the OleDbDataAdapter class is used to retrieve and save
database data.
G4. Describe how the DataSet and DataTable classes are used to store an in-
memory representation of database information.
G5. Discuss SQL query parameters.
G6. Explain how to record DataSet changes to a database.
E2. Describe the preventive controls such as security tools and hardening
that can be used for systems security.
E3. Specify the detective measures that can be used to identify malicious
users of networks.
E4. Define the back-up strategies that should be out in place to counteract
any potential problems caused by system or network attacks.
F3. Explain the techniques behind activity networks and other visual
representations of project plans.