home
about me
about my car
contact me
courses
gallery
resume
links

Little intro into what courses I have and are going to take.

A jumping list will be here so that you can click on the course and jump to a description.


0.   Computer Architecture Courses
1.   Core Courses
2.   Mathematics Courses
3.   Networking Courses
4.   Non Computer Science Related Courses

Computer Architecture Courses

CSCI 2121.03: Introduction to Computer Organization and Assembly Language

This class deals with the fundamentals of computer organization; assembly language is used as an aid to studying computer organization. Topics include digital logic, ALU and CPU design, object code, microprogramming, CISC, RISC, and parallel computers.

CSCI 3121.03: Computer Organization and Assembly Language

This class examines the fundamentals of computer organization, including digital logic, ALU and CPU design, and CISC and RISC architectures. Assembly language is studied as a tool for understanding the computer's object code.

CSCI 4121.03: Computer Architecture

The class will focus on the basic principles of computer architecture with an emphasis on quantitative analysis of the effect of architectural design decisions on system performance and the price/performance trade-offs necessary in real computer design. This includes instruction set design issues (CISC vs. RISC), instruction level parallelism, implementation methods, pipelining, pipeline hazards, interrupts, the relationship with compiler technology, and memory system design. Several representative architectures will be used as examples, with emphasis on modern RISC processors.

CSCI 4124.03: Digital System Design

This class introduces students to fundamental principles of digital system design, with emphasis on the design of synchronous state machines. Topics include a review of boolean functions and gates, algorithmic state machines, logic minimization, multiplexers, decoders, registers, counters, memories, programmable logic arrays, flip-flops, synchronous counters, clocks, races and hazards, and synchronous ASM's.

back to top

Core Courses

CSCI 1100.03: Computer Science I

This class provides a general introduction to computer science and the hardware and software of computers. The main focus is on programming skills in Java and how to apply these skills in solving a variety of problems. Algorithmic concepts are stressed.

CSCI 2111.03: Data and File Structures (I and II)

This class investigates the application of analysis and design techniques to data and file structures. Particular topics covered by the class may include balanced search trees, hashing methods and graphs. The class also provides an introduction to Database Management Systems.

CSCI 2130.03: Programming Languages

CSCI: Systems Analysis

CSCI 2131.03: Topics in Applied Computer Science

This class consists of several independent modules designed to equip students with practical skills before the first co-op work term. Topics include C programming, networks, database systems, software engineering and human-computer interface.

CSCI 3120.03: Operating Systems

This class includes a review of I/O and interrupt structures, addressing schemes, and microprogramming. Other topics covered include dynamic procedure activation, system structure and evaluation, memory management, process management, recovery procedures, concurrent processors, name management, resource allocation, protection, and operating systems implementation.

CSCI 3130.03: Introduction to Software Engineering

The class examines the process of software development, from initial planning through implementation and maintenance. A brief survey of available tools and techniques will be presented covering the topics of analysis, planning, estimating, project management, design, testing, and evaluation. Particular emphasis will be given to organizing and planning, team participation and management, top-down design and structure charts, system and information flow diagrams, walk through and peer review, and testing and quality control.

back to top

Mathematics Courses

MATH 1000.03: Differential and Integral Calculus I

No later than the first week of classes students in MATH 1000.03 are required to take a diagnostic test to indicate how they may proceed with the class. This class offers a self-contained introduction to differential and integral calculus. The topics include: functions, limits, differentiation of polynomial, trigonometric, exponential and logarithmic functions, product, quotient and chain rules, applications of differentiation, antiderivatives and definite integrals, integration by substitution. A sequel to this class is MATH 1010.03.

MATH 2030.03: Matrix Theory and Linear Algebra I

This class, together with MATH 2040.03, is a self-contained introduction to Matrix Theory and Linear Algebra. Topics include: vector spaces, linear transformations, determinants, systems of linear equations. Students should note that this is a second-year class and, although it has no formal first-year prerequisites, mathematical maturity and an ability to handle formal proofs at the level of a student who has completed MATH 1000.03is expected.

STAT 2060.03 : Introduction to Probability and Statistics.

Rigorous introduction to probability and statistical theory. Subject matter is developed systematically beginning with the fundamentals of probability and following with statistical estimation and testing. The interrelationship between probability theory, mathematical statistics and data analysis will be emphasized. Topics covered include elementary probability, random variables, distributions, estimation and hypothesis testing. Estimation and testing are introduced using maximum likelihood and the generalized likelihood ratio.

MATH 2112.03: Discrete Structures I

This class together with MATH 2113.03 offer a survey of the following areas: set theory, mathematical induction, number theory, relations, functions, algebraic structures and introductory graph theory. The topics to be discussed are fundamental to most areas of Mathematics and have wide applicability to Computer Science.

CSCI 3110.03 : Analysis of Algorithms I

This class covers techniques for the design and analysis of efficient algorithms and data structures. Topics include: asymptotic analysis, divide and conquer, greedy algorithms, dynamic programming, data structure design, optimization algorithms, and amortized analysis. The techniques are applied to problems such as sorting, searching, graphs, and set manipulation.

back to top

Networking Courses

CSCI 3171.03: Network Computing

This class gives students a foundation in computer networks. It presents the physical and architectural elements, and the information layers of a communication system. The class also familiarizes students with up-to-date techniques in distributed systems such as CORBA, IDL, COM and DCOM. The class concludes with background in client-server network services and in techniques for building web applications.

CSCI 4170.03: Data Communications

This class introduces the seven-layer OSI model for data communications and examines the issues in the lowest three layers. Topics include data encoding and transmission techniques, data link control, packet switching and local area networks.

CSCI 4171.03: Computer Communication Networks.

This class gives students a foundation in the study of computer networks. Current methods and practices in the use of computer networks to enable communication are covered. Also covered are the physical and architectural elements and information layers of a communication network, along with diagnostic, design, operational, and performance measurement tools that are used to implement, operate, and tune such a network. Different network architectures are contrasted, and compared with traditional mainframe and time-shared computer models. Important subtopics include network architecture and communication protocols, network elements, data link, switching and routing, end-to-end protocols, LANs, and data security.

CSCI 4172.03: Internetworking

The objective of this class is to provide a comprehensive discussion on the protocols, architectures and software for internetworking and current trends in this area. Topics covered include TCP/IP, routing protocols and algorithms, network architectures, distributed systems, ATM, traffic management and applications.

CSCI 4173.03 : Advanced Web Programming

This class is a programmer-oriented survey of contemporary Internet technologies. It will cover the role, use, and implementation of current Internet tools for authoring, distributing, browsing and building network-centric applications. Programming projects may involve UNIX scripts, C, Perl, and Java. The emphasis will be on understanding, exploiting, and extending Internet technologies. This is intended as a very hands-on, programming-intensive view of the web; students taking this class must have previous experience in object oriented programming.

CSCI 6704.03: Advanced Topics in Computer Networks

Topics covered include Design and operation of computer networks, Gigabit Networking, Fibre Optics and SONET standards, Cell Networking, Asynchronous Transfer Mode, Wide Area and Local Area Cell networks, Gigabit packet networks, Applications, Internetworking Protocols, Traffic Modelling and Performance Issues, Switch Architectures and current research areas. Practical aspects of network software design are also discussed.

back to top

Non Computer Science Related Courses

ENGL 1000X/Y.06: Introduction to Literature

Since ENGL 1000.06 consists of sections taught by many different instructors, statements about its objectives and approach must be confined to generalizations. All instructors of ENGL 1000.06 have these two broad objectives in common: (a) to involve students in the serious study of literature; (b) to involve them in the discipline of words so that they will be more critical and responsive readers and more exact and imaginative writers. The subject matter varies from section to section. Detailed syllabi of all sections are available. Practice in writing is carried on throughout the year in regular essays. Each section attends three hours per week. In addition, the tutors attached to each session conduct small discussion groups and personal interviews with students.

PHYC 1100X/Y.06: Introduction to Physics

Primarily for students interested in the physical sciences. Students beginning this class should be familiar with algebra, graphs and trigonometry, and should be taking calculus (MATH 1000.03/1010.03) concurrently. The class concentrates on three main areas: mechanics, oscillations and waves, electricity and magnetism. As far as possible, the basic ideas are introduced through in-class demonstrations, enabling students to relate the verbal and mathematical descriptions to events in the real world. In addition, students are able to explore the physical world via labs.

PSYO 1000X/Y.06: Introduction to Psychology

This class provides a broad overview of present-day psychology. It includes an examination of scientific methodology, the neurobiological underpinnings of behaviour, an introduction to theories of sensory and perceptual processes, and learning and memory. In addition, students will learn about basic issues in child development, motivation and emotion, intelligence and personality. There will also be a discussion of the social factors that influence the way we think and act towards others as well as a survey of the character and treatment of various psychological disorders. The grade is based on a number of examinations given at intervals throughout the year.

PHIL 2140.03: Logic: Logical Theory I

An introduction to metalogic, with special attention to the soundness and completeness of formal systems, and to the philosophical evaluation of non-classical logics.

COMM 1000.03: Introduction to Business

This class is designed as a survey for those interested in business operations. It also acts as the introductory class for those intending to pursue the BComm degree. The class combines academic instruction with practical exercises. Students are required to develop skills in writing and oral presentations as well as group work. Involvement in and use of multimedia (email, websites, videos, spreadsheets, simulations) is integral to the class. The class is organized around large lectures and smaller tutorials. Subject matter includes such topics as business organization, human relations, accounting, small business and entrepreneurship, finance and marketing.

COMM 3511.03: Management Information Systems

Information is a key resource for businesses, other organizations and professionals in today’s world, and innovative uses of information are often keys to survival in an increasingly competitive economy. Your ability to harness information and information technologies demands understanding of a broad range of concepts, terms and challenging issues in a constantly changing context.
This class is designed to help you acquire the basic skills and conceptual background to become an effective client and user of management information systems. It will help you develop a broad understanding of how information systems are used in organizations, the technologies that influence their use, how they need to be managed, and the impact that they can have on organizations’ competitive positions.

CSCI 2100.03: Communication Skills: Oral and Written

This class is designed to help students become more successful communicators by examining the communication process from both a theoretical and practical viewpoint. Students learn to formulate communication goals, to examine their audience and to deliver accurate, effective messages. Written assignments and oral presentations allow for the development of these skills through practice. Students ultimately learn to communicate effectively and with confidence in a variety of settings. This class is only open to Bachelor of Computer Science students.

CSCI 3101.03: Social, Ethical and Professional Issues in Computer Science

A case study approach will be taken and will include the following topics. Social context of computing: methods and values in common with and distinct from those of other professionals, potentially controversial computer applications. Professional responsibilities: professional ethics, information security and privacy, ethical choices. Risks and liabilities: types of risk and loss, losses and liability. Intellectual property: definition, means of protection, infringement and penalties.

back to top

Hosted by www.Geocities.ws

1