XI. Course Descriptions

Distributed Computing

DCCT*1000 Electronics Fundamentals F (3-2) [0.50]
This course introduces concepts of electricity and electronics: the fundamental laws of DC and AC circuits with emphasis on telecommunication applications; DC electronics (Ohm’s law through the analysis of series and parallel circuits); AC electronics, particularly application of sine wave in communication circuits. Network theorems will be applied to calculate currents and voltages in complex electrical circuits. The concept of inductive and capacitive reactance is introduced. The effects of resonance and coupling on transmission lines are studied. Transformer principles and simple first order passive filter design are presented.
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*1010 Semiconductor Electronics W (3-2) [0.50]
This course will provide the theoretical base required to study semiconductor electronics devices and their roles in the construction of communication equipment. Devices and topics studied will include diodes, transistors and integrated circuit OP-AMPS, rectifiers, amplifiers, and analog OP-AMP circuits, amplifier frequency response to understand bandwidth as it relates to transmission capacity. The course concludes with a study of active filters, and linear and switching regulators.
Prerequisite(s): DCCT*1000, DCCT*1030, SCMA*1010
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*1020 Principles of Programming F (3-3) [0.50]
This is a technically intensive introduction to programming and problem solving concepts. Control and basic data structures, organizational approaches, and basic algorithms are introduced.
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*1030 Telecommunications Computations F (3-1) [0.50]
This course will provide key elements of the mathematical background to understand modern computing science and telecommunications system. Topics covered include: basic electronics algebraic calculations; matrices and determinants, systems of linear equation; graphs and graph representations of networks, graph calculations: spanning trees and shortest paths; sets and relations. Students will be required to make extensive use of mathematical software and symbolic algebraic packages.
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*1050 Anatomy of a PC W (3-2) [0.50]
The course will explore the origins, historical development, important milestones and economics of the modern electronic computer and communications systems. Students will build a working personal computer from components and install the most common personal computer (PC) operating systems, thereby gaining an intimate understanding of the modern PC.
Prerequisite(s): 2.50 credits
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*1060 Digital System Fundamentals W (3-2) [0.50]
This is an introductory course in digital systems, as such; some basic concepts will be introduced. Topics will include: number systems, Boolean algebra and the simplification of Boolean expressions, switches, logic gates, analysis and design of combinational logic, encoders/decoders, multiplexing and de-multiplexing, flip-flops, clocked sequential circuits, arithmetic circuits, finite state machines and programmable gate arrays, analog and digital (ADC) converters and digital and analog (DAC) converters, computer structure, machine language programming, timing, peripheral interface programming with interrupts and basic protocols.
Prerequisite(s): DCCT*1000, DCCT*1030
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*1070 Object-Oriented Programming W (3-2) [0.50]
This course reinforces structured programming concepts using a general purpose procedural language. Topics include string processing, record manipulation in memory and on disk, static and dynamic data structures, recursion and pointers. Fundamental algorithms are introduced for sorting, searching, text processing and other important tasks.
Prerequisite(s): DCCT*1020
DCCT*2000 Designing Interactive Applications and Data Centered Programming F (3-2) [0.50]
This is a highly technical advanced programming courses designed to equip students in the DCCT program to develop advanced software applications in later courses. Tools and programming languages are subject to change over time. With advanced HTML, the Java ™ programming language and Javascript ™ as the current tools, highly complex user-centred concepts of programming for the World-Wide Web are explored in detail, including: advanced web programming (including animation); Applets ™ and graphics; event models; interactive programming; threads.
Prerequisite(s): 5.00 credits
Co-requisite(s): DCCT*2030
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*2010 Principles of Telecommunications F (3-2) [0.50]
This course provides the technical background and material needed in the field of Telecommunications. Fundamental principles of Telecommunications will be covered and hands-on techniques will be used to acquire skills needed to analyze and troubleshoot modern communications links. Topics covered include-physical layer interfaces, PC serial port operation and interrupts, Digital network, noise and error analysis, data link layer, LANS and multimedia transmission.
Prerequisite(s): DCCT*1010, DCCT*1060
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*2020 Communication Systems F (3-2) [0.50]
This course is an introduction to modern analog and digital communication systems. Analog and digital signals. The radio frequency spectrum. Radio frequency transmission and reception. Component to system level analysis of fundamental RF building blocks. The super-heterodyne receiver including mixers, oscillators, phase locked loops and IF filters. Spectral analysis, bandwidth, distortion and modulation. Line coding, symbol rate and multiplexing. Regulatory and technology issues.
Prerequisite(s): DCCT*1010, DCCT*1030, DCCT*1060, SCMA*1020
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*2030 Data-Centered Programming F (3-2) [0.50]
This is a highly technical advanced programming courses designed to equip students to develop advanced software applications in later courses. Tools and programming languages are subject to change over time. With SQL, the Java programming language and Javascript as the current tools, data-centred concepts of programming are explored in detail, including: SQL and SQL access to a database; Java and JDBC database access; basics of web software connectivity, client / server concepts; applet / server and browser / servlet connection; introduction to data structures and hierarchies.
Prerequisite(s): 5.00 credits
Co-requisite(s): DCCT*2000
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*2040 Data Structures and Algorithms W (3-2) [0.50]
Advanced data structures are examined: their representation in both a high-level programming language and as abstractions; analysis of algorithms, comparative performance, and complexity. Structures include trees, graphs, hash tables, sets, object-oriented hierarchies and their associated methods, and templates.
Prerequisite(s): 5.00 credits including: DCCT*2000, DCCT*2030
DCCT*3000 Computer Networks W (3-2) [0.50]
This course focuses on Local Area Network (LAN) interconnection technologies used to form larger Wide Area Network (WAN) networks with emphasis on Internet Applications. Topics covered include Network layers, Switching technologies, TCP/IP protocol Suite, Client/Server programming using socket API, IP routing, ICMP, UDP and application layer protocols such as HTTP, FTP, internet mail, DNS and SNMP.
Prerequisite(s): DCCT*2010
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*3010 Electro-magnetics W (3-2) [0.50]
This course introduces elementary field theory, derivation of transmission line equations and practical applications of principles describing electromagnetic waves in guiding media. The Smith chart is used to evaluate transmission line performance and used to design matching networks such as single and double stub tuners. Selection of RF connectors and transmission lines for various applications is studied. Microwave components are studied. Poynting’s theorem is studied and used in distant E/M field calculations from an RF source. A variety of antenna structures are studied in order to evaluate patterns, down tilt, gain, beam-width, input impedance and efficiency. Inter-modulation distortion (IMD) is measured. Propagation of plane waves, path loss and link budgets are studied in order to predict system performance. Antenna structures are designed, simulated, and tested in the anechoic chamber.
Prerequisite(s): DCCT*1000, DCCT*1020, DCCT*2020, SCMA*1020
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*3020 Operating Systems W (3-1) [0.50]
A theory and practice approach is taken to study computer operating systems in this course. Students examine: basic components, subsystems and system processes, scheduling and resource allocation, process management, multi-programming, multi-tasking, input and output control and file systems, as well as mechanisms for client-server computing. Examples are taken from contemporary operating systems.
Prerequisite(s): DCCT*2040
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*3030 Distributed Programming I W (3-0) [0.50]
Students build a substantial client-server application experiencing all aspects of the software development life cycle in this “large project” based course. Topics include all aspects (except budgeting) of systems development using intellectual resources and tools developed for project management and systems building, software engineering, requirements elicitation, analysis, design, implementation, testing, deployment and maintenance. Skills are developed in collaboration with project management and delivery. Multi-computer (distributed) applications systems are an essential component of project undertaken.
Prerequisite(s): 7.50 credits
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*3040 Digital Signal Processing (DSP) W (3-2) [0.50]
This course reviews sampling theory and quantization; signal aliasing; discrete time systems; Fourier series; z-transforms; Fourier Transforms; digital filters; convolution and correlation; digital system processing architecture; system simulation and various software applications. Applications to communications systems include: vocoding, equilization, data compression, data scrambling and echo cancellation.
Prerequisite(s): DCCT*1020, DCCT*1030, SCMA*3000
DCCT*3050 Fibre Optic Communication W (3-2) [0.50]
This course examines the nature of light, including a study of the propagation of light as an electromagnetic wave and optical wave-guide. Students analyze the effects of dispersion and attenuation on transmission capacity, data rate and distance limitations. Analysis and interpretation of technical Specs and design parameters of commercially available light sources and optical detectors are also studied in addition to various fiber optic cable assemblies, connectors, splicing techniques and OTDR measurement principles. Design and planning of Fiber optic communication Networks for LAN and WAN applications are utilized with particular emphasis on calculating Dispersion and Power budgets.
Prerequisite(s): DCCT*2010, DCCT*2020, DCCT*2040
DCCT*3060 Database Systems and Application Concepts S (3-1) [0.50]
Students study advanced topics in database modelling, design, query processing and optimization for various database models and architectures. Advanced topics include database security and integrity, transaction management, concurrency control and recovery systems. Database management system examples of particular structured query languages and well-known database implementations will be used in case studies.
Prerequisite(s): DCCT*2040, DCCT*3020
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*3070 Systems and Network Simulation S (3-1) [0.50]
Students are introduced to the concepts of simulation and performance analysis of computers using an object oriented programming language. Concepts include: simulation model classification, continuous and discrete simulation, process and transaction oriented systems. Also presented are techniques for simulation and optimization of the basic computing system components such as subsystems and system processes: scheduling and resource allocation, process management, multi-programming, multi-tasking; input/ output control and file management strategies, performance analysis and improvement mechanisms for network and distributed computing.
Prerequisite(s): DCCT*3020, SCMA*3000
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*3080 Wireless Data Networks S (3-2) [0.50]
The course examines the infrastructures, System components, frame structures and protocols of a wide range of Wireless Networking Technologies. Also studied are The Bluetooth, Digital Audio Broadcast (DAB) and IMT2000 including IEEE 802.11x and follow-on technology as they develop. The course concludes with a discussion of Wireless Broadband Technologies.
Prerequisite(s): DCCT*1030, DCCT*2020, DCCT*3000
Co-requisite(s): DCCT*3090
DCCT*3090 Cellular Technology S (3-2) [0.50]
This course offers an in-depth look at cellular technology, from its earliest inceptions, to the latest 3G systems currently being developed and deployed. Cellular system infrastructure, cell coverage area, cell capacity, frequency reuse, cell splitting, multiple access techniques, channel allocation, AMPS, GSM, and CDMA are just a few topics that will be studied. Students will also have an opportunity to research the latest technologies that are being implemented by major players in the cellular industry.
Prerequisite(s): DCCT*2020, DCCT*3000, DCCT*3010
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*4010 Computer Telephony Integration F (3-2) [0.50]
This course examines aspects of linking telephone systems and today’s computer systems. This process involves an introduction to the components that make up today’s telephone system including voice mail, call distribution, switch programming, and telephone feature management.
Prerequisite(s): DCCT*2010, DCCT*3000
DCCT*4020 Broadband Communications W (3-2) [0.50]
This course examines the Architecture, Protocols, Frame structures, control messages, and frame transmission techniques employed in modern high speed Networks. The practical, commercially available broadband equipment and products of leading broadband equipment manufacturers will be studied with reference to their current deployment. The focus of the course is to combine the practical hands-on training in configuring, programming, testing and troubleshooting of practical broadband equipment with the solution oriented engineering insight for business and corporate applications. The course concludes with a comparison of current base technologies with the Next Generation Networking.
Prerequisite(s): DCCT*2010, DCCT*2020, DCCT*2040
DCCT*4030 Personal Communications Systems F (3-2) [0.50]
Students study the principles behind digital modulation techniques used in modern voice and data communications systems. The latest cellular PCS systems are studied. Next-Generation systems are discussed.
Prerequisite(s): DCCT*2010, DCCT*3090
DCCT*4040 Telephone Switch Technology S (3-2) [0.50]
This course covers the digital telephone systems, digital transmission, multiplexing, H.323 Multimedia system, Session Initiation Protocol (SIP), Real Time Protocol (RTP) and Real Time Control Protocol (RTCP), Quality of Service (QOS), SS7 Connectionless Packet switching protocol, and Network protocols that deal with voice over internet protocol (VoIP) combining in a seamless manner, in addition to the concepts from the voice switching world and the data world of the Internet. This course starts from switches of type manual, step by step strowger electro-mechanical, crossbar, electronic central office switches to the latest VoIP implementations currently being developed and deployed. Students will also have an opportunity to research the latest telephone switch technologies that are being implemented in the telecommunication industry.
Prerequisite(s): 15.00 credits
DCCT*4050 Wireless Service Technology S,F,W (3-2) [0.50]
Wireless Service Technology is a hands-on course in which the student will study modern two-way VHF or UHF mobile communication system. Specifically, the students will learn to test the individual elements of a mobile communication system, such as antennae, transmission lines, duplexes, filters, isolators, transceivers, and other equipment. Also, the student will learn to setup and support a complete mobile communication system.
Prerequisite(s): DCCT*2020, DCCT*3010, DCCT*3090
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*4060 Independent Study in Telecommunications S,F,W (3-0) [0.50]
The independent study course is designed to provide senior undergraduate students with an opportunity to pursue library, field research or project under faculty supervision and to prepare a research report of literature review. Formal agreement between the student and the faculty supervisor is required, as is approval of the program head.
Prerequisite(s): 15.00 credits
Restriction(s): Instructor consent required.
DCCT*4070 Advanced Information System Architectures F (3-2) [0.50]
This course examines advanced topics in parallel and distributed information systems. For example some topics presented may include: P2P (peer to peer) architectures, evolution of distributed middleware and grid computing. Topic list will evolve, based on new distributed and parallel computing paradigms.
Prerequisite(s): DCCT*3070, DCCT*4130, DCCT*4140
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*4080 Network Security and Cryptography S-F (3-1) [0.50]
The course is a detailed analysis of current and emerging topics in computer security. Students will study in detail the implementation of measures to protect computer systems, installations, communications traffic and computer-to-computer messages. Computer system security topics will include measures such as firewalls and antiviral and anti-worm tools and techniques. Most common intrusion strategies will be discussed and the methods for dealing with them. Standard algorithms for encryption will be studied, along with the underlying mathematical principles for code generation and code-breaking. Secure protocols will be examined for inter-computer communication and for mobile/wireless computer communications.
Prerequisite(s): 15.00 credits
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*4090 Information Storage and Retrieval Systems F (3-2) [0.50]
This course examines advanced topics in the organization of extensive collections of data and information, storage schemes designed for efficient retrieval of requested information, and query algorithms that are capable of executing precise retrieval on the basis of imprecise requests. Multimedia data stores, distributed data systems, web-based retrieval, libraries and bibliographical systems, and multilingual data organization are analyzed in detail, with concrete examples and algorithms presented.
Prerequisite(s): DCCT*3070, DCCT*4130, DCCT*4140
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*4100 Human-Computer Interaction F (3-3) [0.50]
The course examines the interface between human users and computing devices of various types, with an emphasis on mobile and wireless devices in common usage that, typically, have limitations on both input and output as compared to their full-function peers. Methodologies are explored for user interface software design, interface representations and testing. Evaluation is conducted of sample application systems and implementation and testing tools. Students develop an understanding of the learning stages in the use of computer applications and the design of assistance subsystems. The class evaluates impacts of computer-based information systems on individuals and organizations. Practical experience is gained in user interface design specification in multicasting environments.
Prerequisite(s): DCCT*3020
Restriction(s): Instructor consent required. Registration in the Bachelor of Applied Computing program.
DCCT*4110 Artificial Intelligence S-F (3-1) [0.50]
Students will examine techniques used in the field of artificial intelligence using the intelligent agent approach, including: heuristic search, informed search algorithms, logic-based knowledge representation and reasoning. Other topics may include frames, scripts, semantic nets, models of uncertain reasoning, expert systems, learning theory and natural language understanding. These ideas will be explored through the development of a substantial project.
Prerequisite(s): SCMA*3000
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*4120 Computer Graphics F (3-2) [0.50]
Students undertake a systematic development of the fundamental principles governing the use of computer display devices to depict object, scenes and text, together with the manipulation of their representation by standard input devices. Topics covered include, standard graphics programming concepts, geometrical transformations, 3-dimensional projections, raster graphics, sculptured surfaces, visible surface determination, image processing, representations of movement and other topics. Programming practice involves current hardware and software tools and techniques.
Prerequisite(s): DCCT*3020
Restriction(s): Registration in the Bachelor of Applied Computing program. Instructor consent required.
DCCT*4130 Distributed Programming II S (3-3) [0.50]
A comprehensive survey is undertaken of the advanced tools and techniques developed for distributed systems: architectures and topologies, distribution models and phenomena affecting efficiency and performance. Communication in distributed systems, middleware, server and client programming. Practical experience is gained in the application of the technology: sockets, remote invocation, broker architectures, and web services design and development. Students analyze strategies of distribution of computing load and file systems, and principles and techniques in fault-tolerance. This course involves large projects and work sharing in teams.
Prerequisite(s): DCCT*3030
Co-requisite(s): DCCT*4140
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*4140 Internet Technologies S (3-3) [0.50]
The course focuses on those concepts and technologies which are needed to understand and implement applications and services based on the ”World Wide Web (WWW) Paradigm.” This course examines tools and techniques supporting the growing complexity of the “client-side” of the WWW. Significant application development and leading edge applications are necessary features of the laboratory work and student projects.
Prerequisite(s): DCCT*3030, DCCT*3060
Co-requisite(s): DCCT*4130
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*4151 Senior Research Paper I S (3-0) [0.25]
First part of the two-semester course DCCT*4151/2. Refer to DCCT*4151/2 for course description.
Prerequisite(s): 15.00 credits in Distrubuted Computing
Restriction(s): Registration in the Bachelor of Applied Computing program. Instructor consent required.
DCCT*4151/2 Senior Research Paper S-F (3-0) [0.75]
The course involves planning, developing and writing a research proposal under individual faculty supervision. The course provides senior undergraduates an opportunity to pursue an independent course of study. The topic selected will be determined by agreement between the student and the faculty member with expertise in the area. . In addition the student is required to present his/her work in a seminar and also participate in the critical analysis and review of the work of other students taking this course. This is a two semester course. A grade will not be assigned to DCCT 4151 until the completion of DCCT 4252.
Prerequisite(s): 15.00 credits in Distrubuted Computing
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*4152 Senior Research Paper II F (3-0) [0.50]
Second part of the two-semester course DCCT*4151/2. Refer to DCCT*4151/2 for course description.
Prerequisite(s): DCCT*4151
Restriction(s): Registration in the Bachelor of Applied Computing program. Instructor consent required.
DCCT*4160 Distributed Information Systems Architectures F (3-0) [0.50]
This course develops in detail, the various strategies and methods of large scale integration of computer systems in distributed frameworks. It answers questions such as “why is distributed computing necessary?” and examines system organization for enterprise integration, building-blocks: architecture patterns, scalability, meta-information, semantic web.
Prerequisite(s): DCCT*4130, DCCT*4140
Restriction(s): Registration in the Bachelor of Applied Computing program.
DCCT*4200 Independent Study F,W (3-0) [0.50]
The independent study course is designed to provide senior undergraduate students with an opportunity to pursue library, field research or project under faculty supervision and to prepare a research report or literature review. Formal agreement between the student and the faculty supervisor is required, as is approval of the program head.
Prerequisite(s): 15.00 credits
Restriction(s): Instructor consent required.
DCCT*4250 Technology & Society F (3-0) [0.50]
This course affords students an opportunity to critically examine issues surrounding the pervasive role of technology in society. The primary focus is the reciprocal impact between information technology and society. Each course offering develops one particular theme, chosen for importance and relevance to student's future careers. Topics may include: the so-called "digital divide" between technologically advanced communities and those classified as developing, the conversion of biology to technology, the roles of the Internet in commerce (legal and otherwise), the impact of technology on learning, the economics of access to technology, the responsibilities of scientists as members of society.
Prerequisite(s): 15.00 credits
University of Guelph
50 Stone Road East
Guelph, Ontario, N1G 2W1

Canada
519-824-4120