INFORMATION TECHNOLOGY Scope These program criteria apply to Information Technology, Computer Engineering Technology, and specialities therein, such as computer programming, computer systems analysis, design and security, computer architecture and networks, database systems, internet, and intranet technologies. It includes program criteria for I.T. programs which are clearly a mix of Information Technology, Applied Science and Engineering (usually Electronics) Technology. Objective Information Technology programs in Canada are built upon a foundation of generic skills that are defined as those general skills common to all disciplines, and technical skills described primarily in this and in the Electronics Engineering Technology criteria. Graduates will have the knowledge, skills, and attitudes to function in the work place in accordance with recognized I.T. practices. Information Technology graduates who are eligible to seek registration from a CCTT Constituent Member association may differ from other Engineering or Applied Science Technologists in that the scientific foundation is that of computer science, and does not necessarily include physics, chemistry or biology beyond that expected of high school graduates. Similarly, the math background for Information Technologists may not include calculus or other engineering-oriented topics, depending on the accredited program s proportions of I.T. and traditional applied science strengths. Advanced math requirements may be met through the study of math topics directly related to computer engineering technology rather than to other engineering or applied science technologies. Graduates of Information Technology programs have career opportunities in business, industry, government, and public organizations. They may find employment in computer network design, administration, operations and maintenance, field and customer service, computer programming, database design and management, other computer systems-related project management, and personnel training. Graduates of Information Technology programs will be able to: a) evaluate assignments; b) establish objectives; c) set parameters; d) determine appropriate procedures and actions; e) exercise due diligence in the work place; f) adhere to applicable laws, standards, regulations and codes; and g) work in accordance with health and labour-management principles and practices.
PROGRAM CRITERIA FOR INFORMATION TECHNOLOGY Areas of Practice IT01 Computer Systems and Applications: Analyze, build, implement, and maintain computer systems and applications. 1.1 Develop system requirements for an application and understand system requirements. 1.2 Research a business case using evaluation and feasibility studies, and preliminary investigation. 1.3 Evaluate strategy alternatives by developing in-house software, acquiring software or outsourcing. 1.4 Implement formal design procedures; use a variety of analysis, design, and development methods. 1.5 Apply the Systems Development Life Cycle (SDLC). 1.6 Apply standard system management tools. 1.7 Apply standard system modelling tools. 1.8 Apply the fundamentals of structured programming. 1.9 Develop program classes and methods to help modular program code. 1.10 Apply iteration, recursion and decision statements using a common programming language. 1.11 Analyze, design, develop, and maintain effective user interfaces. 1.12 Demonstrate competency in programming. 1.13 Prepare, present, and maintain current, clear, and accurate documentation. IT02 Quality Assurance Planning: Prepare, a quality assurance plan for the testing and evaluation of software. Install, configure, deploy, and integrate fully tested programs. 2.1 Use a variety of techniques to test and debug programs. 2.2 Select appropriate testing methods based on specifications and document results of tests. 2.3 Develop and organize integration testing. 2.4 Carry out complete systems tests, including user acceptance tests. 2
2.5 Develop, modify, and integrate programs in different platforms. 2.6 Minimize risk to clients when deploying programs. IT03 Project Management: Apply advanced project management techniques. 3.1 Apply the elements of project management and associated process methods. 3.2 Understand the relationship between various project activities and the resulting interdependency. 3.3 Create a project charter. 3.4 Describe the importance of scope management to define the successful completion of a project. 3.5 Develop and monitor project schedules; detail the work breakdown structure. Identify problems that will affect project schedules and revise schedules as necessary. 3.6 Develop performance reports to describe an activity or milestone. 3.7 Use project management software to track multiple projects. IT04 Information Technology Systems: Administer information technology systems and formulate solutions. Indicators of the Performance, such as: 4.1 Analyze and define problems. 4.2 Apply a systematic approach to solving problems using a variety of troubleshooting techniques. 4.3 Develop problem-solving skills to understand complex problems and design algorithms for such problems. 4.4 Use search techniques to find solutions for specific computing problems. 4.5 Use a variety of diagnostic tools. 4.6 Select solutions that have low-impact on existing systems and minimize risk of recurrence. 4.7 Implement solutions timely and effectively. 4.8 Monitor, review, and assess the effectiveness of solutions. 4.9 Document problems and solutions and communicate the results with others. 3
IT05 Hardware and Operating Systems: Analyze and maintain hardware and operating systems. 5.1 Analyze, and troubleshoot microprocessor core logic and associated technologies. 5.2 Configure, and troubleshoot primary and secondary storage technologies. 5.3 Configure, and troubleshoot peripheral technologies. 5.4 Analyze, administer, and troubleshoot operating system processes. 5.5 Analyze, administer, and troubleshoot operating system memory architectures. 5.6 Analyze, administer, and troubleshoot operating system input/output management. 5.7 Administer, and troubleshoot operating system file management strategies. 5.8 Analyze, administer, and troubleshoot file system security management strategies. 5.9 Design, deploy, and troubleshoot operating system script/batch programs. IT06 Information Security: Design and maintain security features involved with the processing and transfer of information. 6.1 Understand risk, threat, vulnerability and safeguards as applied to information security. 6.2 Understand common sources of vulnerabilities in hardware, operating systems, protocols and applications. 6.3 Use Common Vulnerabilities and Exposure (CVS) lists to identify known vulnerabilities. 6.4 Describe the concept of digital signatures and understand how they can be used to guarantee data integrity and provide non-reputation. 6.5 Understand the principles and practices of Public Key Infrastructure (PKI). 6.6 Understand the concept of Public Key Infrastructure Certificates and the role trusted certificate authorities play in providing mutual authentication in web-based systems. 6.7 Describe common types of authentications systems such as biometric, token and multifactor. 6.8 Identify and defend against common types of destructive devices such as viruses, trojans, worms and Spyware. 6.9 Understand common types of access control lists such as Mandatory, Role-Base and Discretional. 6.10 Recommend physical security measures to control access in a typical networked environment. 4
IT07 Security in Networking and Applications Development: Design and maintain systems security in networking and applications development. 7.1 Identify fundamental issues and solution avenues for network security. 7.2 Understand and analyze a variety of system threats and attack methodologies. 7.3 Understand the principles and practices of user authentication and data encryption techniques. 7.4 Apply the principles and practices of symmetric encryption techniques. 7.5 Apply the principles and practices of wireless security protocols. 7.6 Apply the principles and practices behind firewalls and proxies. 7.7 Apply the principles and practices involving remote access services, RADIUS, VPNs, and other associated security configurations. 7.8 Understand the principles behind intrusion detection, analysis, and prevention systems. 7.9 Secure Windows and Linux client/server environments. 7.10 Perform a network risk analysis survey, and provide recommendations. IT08 Protocols, Topologies, and Mobile Technologies: Develop protocols, topologies, and mobile technologies. 8.1 Install and administer client-side and server-side applications and services. 8.2 Configure, maintain, and troubleshoot DNS and DHCP. 8.3 Apply, configure, deploy, maintain, analyze, and troubleshoot TCP/IP protocols. 8.4 Analyze and apply the OSI model. 8.5 Configure, deploy, maintain, analyze, optimize and troubleshoot OSI Layer 2-3 devices and associated protocols. IT09 RDMS and OO-DBMS: Design Relational Database Management Systems (RDMS) and Object-Oriented Database Management Systems (OO-DBMS). 9.1 Design a relational database for an application using visual software tools. 9.2 Design user forms for an application using the database data model. 5
9.3 Design and run reports for database applications. 9.4 Prepare advanced database queries such as joins, sub-queries and unions. 9.5 Demonstrate how to select, create and alter data from a database using SQL. 9.6 Perform database table normalization to at least the 3rd normal form. 9.7 Apply an entity-relationship model for conceptual data modelling of a database application. 9.8 Transform a conceptual data model into a logical database model using standard relational modelling techniques. 9.9 Analyze and implement database security procedures. 9.10 Apply the use of database triggers to enhanced data integrity and security. IT10 Systems Analysis and Design: Apply SAD fundamentals, UML, and software engineering for systems analysis and design. 10.1 Understand functions of Structured Analysis of the Systems Development Life Cycle (SDLC). 10.2 Understand the importance, uses, and components of Computer Assisted Software Engineering (CASE). 10.3 Describe Unified Modeling Language (UML) and the advantage of using CASE tools in developing the Object Model. 10.4 Understand Data and Process Modeling using Data Flow Diagrams (DFD), Data Dictionaries, and Process Description Tools-Awareness of Logical vs. Physical Models. 10.5 Develop systems design input and output. IT11 Object-Oriented Programming: Analyze and design visual and non-visual approaches to Object-Oriented Programming. 11.1 Develop program logic using tools such as flow charts, pseudo code, and IPO tables. 11.2 Write, compile, execute and test visual programs. 11.3 Create data structures to store and manipulate complex data types. 11.4 Define and apply OOP classes and objects; understand an object relationship diagram. 11.5 Apply Object-Oriented Analysis with object modeling terms and concepts, including, attributes, methods, messages, instances, inheritance, polymorphism, interfaces, and packages. 6
11.6 Configure, deploy, and administer a graphical user interface (GUI) and a commandline interface (CLI) operating system; develop CLI and GUI based programs for both Windows and UNIX/Linux operating systems. 11.7 Construct visual interfaces using a visual programming language. 11.8 Analyze the concept of memory management. 11.9 Perform algorithm development using a common programming language. IT12 Programming Languages: Consider all non-oop, 3GLs, and 2GLs, excluding scripting languages. 12.1 Evaluate the application of common interpretative and compiled languages. 12.2 Evaluate the application of common procedural and object-oriented programming languages. 12.3 Analyze the role and strengths and weaknesses of common scripting languages. 12.4 Maintain vendor software development tool kits. 12.5 Administer techniques for data exchange, such as object linking and embedding (OLE), dynamic data exchange and Extensible Mark-up Language (XML). IT13 Network Systems: Manage network systems. 13.1 Design, deploy, maintain, analyze, and troubleshoot wireless networks. 13.2 Configure, administer and troubleshoot LAN and WAN networks. 13.3 Design and deploy network backup and recovery operations. 13.4 Administer SNMP devices, network management software and packet analysis tools. 13.5 Configure, deploy, maintain, and troubleshoot account and domain security. 7