|
|
The Graduate Assessment exam is intended for students to prove
knowledge in a particular prerequisite class. They should be
taken only if recommended by a faculty member after an PPA
appointment. The study guides and FAQ's are contained on this
page.
Login to the GAE Application
Study Guides are located below
Frequently Asked Questions About GAE Exam
-
When are GAE's available?
GAE's are always administered on the first Tuesday and the
first Friday of the month at 2:00pm.
-
How often may I take an assessment exam?
Only one attempt is allowed for any exam. If failed, the
corresponding course must be taken and completed with a
grade of "B-" or better
-
How is the assessment exam graded?
Assessment exams are graded on a Pass/Fail basis. A minimum
score of 70% is required to "Pass".
-
How long is each assessment exam?
One hour and a half is allowed for each exam.
-
How much does an assessment exam cost?
Each exam costs $30.00, payable in either cash or by
check. Checks must be made payable to DePaul University.
-
What is the format of the GAE's?
All exams are written. No computers, calculators, books,
notes, etc. are allowed. Specific exam formats vary and
cannot be given. However, all exams may be completed in the
allotted 1.5 hours.
-
When do GAE applications need to be submitted?
Applications are typically due only a few days prior to the
exam date. The online application will display application
deadlines.
-
What happens if a student does not show up for an
exam?
It is assumed that students who do not show up for a GAE
will either reschedule for a different date or that they
have decided not to take the GAE. Exams may be cancelled via
the online application. CTI asks that this be done at least
2 business days prior to the exam date.
-
Is there a limit to the number of exams which may be
taken?
No. Any prerequisite phase course may be satisfied by
attempting to pass a GAE. However, CTI does ask that no more
than two (2) exams be scheduled on the same day.
-
If the CSC 224 assessment exam is taken and failed, can
the CSC 211 assessment exam be attempted?
No. Failure on either the CSC 211 or CSC 224 GAE means that
the java prerequisite must be satisfied by completed the
corresponding course.
GAE Study Guides
| CNS 340 |
Fundamentals of Information Assurance |
| CSC 202 |
Mathematics for Computer Science |
| CSC 211 |
Programming in Java |
| CSC 212 |
Programming in Java II |
| CSC 224 |
Java for Programmers |
| CSC 261 |
Programming in C++ I |
| CSC 262 |
Programming in C++ II |
| CSC 309 |
Object Oriented Programming in C++ |
| CSC 373 |
Computer Systems I |
| CSC 374 |
Computer Systems II |
| CSC 383 |
Data Structures and Algorithms in Java |
| CSC 393 |
Data Structures in C++ |
| ECT 270 |
Client Side Web Application Development |
| ECT 310 |
Internet Application Development |
| ECT 353 |
Server side web application development |
| GPH 212 |
Perceptual Principles for Digital Environments II |
| GPH 259 |
Design Geometry |
| HCI 332 |
User Centered Web Development |
| HCI 402 |
Principles of Digital Design |
| IS 313 |
Business Application Development in Java |
| IS 404 |
Business Systems |
| IT 130 |
The Internet and the Web |
| IT 215 |
Analysis and Design Techniques |
| IT 223 |
Data Analysis |
| IT 230 |
Building Internet Applications |
| IT 236 |
End User Application Development |
| IT 240 |
Database Technologies |
| MAT 140 |
Discrete Mathematics I |
| PHY 405 |
Physics of Telecommunication |
| SE 325 |
Principles and Practices of Software Engineering |
| TDC 311 |
Computers in Telecommunications |
| TDC 361 |
Basic Communication Systems |
| TDC 411 |
Computers in Telecommunications |
CNS 340 Fundamentals of Information Assurance
Topics:
-
Vulnerability, threats and attacks
-
Symmetric and asymmetric
cryptography
-
Digital signatures, DES, RSA, certificates
-
Secure programs
-
Viruses and other malicious code
-
Elementary network
concepts
-
Threats in networks, network security controls
-
Legal issues
in computer security
References:
-
Security in Computing, 3rd Ed., C.P. Pfleeger and
S. L. Pfleeger. Prentice Hall.
CSC 202 Mathematics for Computer Science
This course introduces basic mathematical tools essential for solving problems in computer science.
Topics:
-
Propositional/Boolean Logic (and, or, not, truth-tables, disjunctive normal form, basis)
-
Declaring and using objects belonging to predefined classes
(including the String class)
-
Set Theory (union, intersection, difference, complement, powerset)
-
First-Order Logic (existential, universal quantifiers)
-
Relations (Equivalence, Ordering)
-
Functions (composition, inverse)
-
Searching and Sorting (Depth-First/Breadth-First Search, Insertion Sort, Topological Sort)
- Graph Theory (Graphs, paths, cycles, complete graphs, bipartite graphs, Eulerian cycles, Hamiltonian cycles, planarity)
- Combinatorics (Counting and probability, permutations, combinations)
- Arithmetic (Logarithms, exponentials, polynomials, arithmetic series, geometric series)
References:
-
Discrete Mathematics, 6th ed., Richard Johnsonbaugh, Prentice-Hall, 2004.
- Discrete Mathematics with Applications, 3rd ed., Susanna S. Epp. Brooks/Cole Publishing, 2004.
CSC 211 Programming in Java
Topics:
-
Primitive types, variables and expressions
-
Declaring and using objects belonging to predefined classes
(including the String class)
-
Control statements for branching (e.g. if statement) and
looping (e.g. for and while statements)
-
Defining classes and writing their methods, including parameter
passing and return values
-
Static variables and methods
-
Arrays
-
Inputting data from the user and outputting information to the user
using JOptionPane.showMessageDialog() and
JOptionPane.showInputDialog()
References:
-
Computing with Java: Programs, Objects, Graphics,
Alternate 2nd Ed., Gittleman. Scott Jones, 2002.
CSC 212 Programming in Java II
Topics:
-
Using and defining classes and their methods
-
User interfaces with swing components
-
Layout managers including:
-
FlowLayout, GridLayout and BorderLayout. Action event handling
-
Arrays, vectors, and collection classes. Sorting
-
Classes encapsulating collection data such as stacks and
queues
-
Inheritance and polymorphism
-
Exception handling
-
I/O streams
-
Database connectivity using JDBC (see Deitel and Deitel
reference)
-
Recursion
References:
-
Java Software Solutions, 2nd Ed., Lewis and
Loftus, Addison-Wesley, 2001.
-
For reference on database connectivity, see Java How to
Program, 3rd Ed., Deitel and Deitel.
CSC 224 Java for Programmers
Topics:
-
Primitive types, variables and expressions
-
Declaring and using objects belonging to predefined classes
(including the String class)
-
Control statements for branching (e.g. if statement) and
looping (e.g. for and while statements)
-
Defining classes and writing their methods, including parameter passing
and return values. Static variables and methods
-
User interfaces with swing components. Layout managers
including
FlowLayout, GridLayout and BorderLayout. Action event handling
-
Arrays, vectors, and collection classes. Sorting
-
Classes encapsulating collection data such as stacks and
queues
-
Inheritance and polymorphism
-
Exception handling
-
I/O streams
-
Database connectivity using JDBC (see Deitel and Deitel
reference)
-
Recursion
-
Static variables and methods
-
Arrays
-
Basic graphical swing components (e.g. buttons, labels, text
fields),
common events and listeners (e.g. ActionEvents). Using java
interfaces
such as the ActionListener interface
References:
-
Java Software Solutions, 2nd Ed., Lewis and
Loftus. Addison-Wesley, 2001.
-
For reference on database connectivity, see Java How to
Program, 3rd Ed., Deitel and Deitel.
CSC 261 Programming in C++ I
Topics:
- Flow of Control
- Functions
- Parameters and Overloading
- Arrays
- Structures and Classes
- Graphics
- Strings
References:
-
Absolute C++, Walter Savitch, Addison-Wesley
CSC 262 Programming in C++ II
Topics:
- Classes and objects
- Operator overloading
- Memory management, pointers and arrays
- Classes with pointers
- Standard string class
- Array of objects
- Linked Lists
- Inheritance and polymorphism
- Templates
References:
-
Absolute C++, Walter Savitch, Addison-Wesley
CSC 309 Object-Oriented Programming in C++
Topics:
-
C++ Variable types, objects, strings. C++ control structures
(if,
switch, for, do, etc). C++ functions and parameter passing.
-
C++ pointers. Using the C++ new operator and differences with
Java:
e.g. no garbage collection, and how to delete dynamically declared
variables. Differences between pointers and references. *,
->, &.
-
Memory management, pointers and arrays. Arrays of pointers.
-
C++ structs and classes. Data structures and stacks.
-
Linked Lists.
-
Recursive functions. Trees and tree traversals.
-
Object oriented concepts, inheritance, virtual functions,
polymorphism and encapsulation.
-
Operator Overloading & Templates
References:
-
Object Oriented Programming in C++, Johnsonbaugh and
Kalin.
CSC 373 Computer Systems I
Basic concepts in computer systems and their effect on program
performance. Information representations, assembly language and
debuggers, memory hierarchy, virtual memory, basic system-level I/O,
networking and network programming.
Topics:
-
C language primer. (Chapter 1 of the text)
-
Representations of data. (Chapter 2 of the text)
-
Assembly language programming. (Chapter 3 of the text)
-
Memory hierarchies. (Chapter 6 of the text)
-
Virtual memory. (Chapter 10 of the text)
-
Computer input/output. (Chapter 11 of the text)
-
Network programming. (Chapter 12 of the text)
References:
-
Computer Systems: A Programmer's Perspective.
Randal E. Bryant and David R. O'Hallaron. Prentice Hall, 2003.
CSC 374 Computer Systems II
A second course in computer systems. Processor architecture, lexical
analysis, parsing, compiler optimization, linking, measuring execution
time, system-level I/O, concurrency and concurrent programming.
Topics:
-
Processor Architecture (Chapter 4 of the text)
-
Grammars and Finite Automata
-
Lexing and Parsing
-
Compiling & Optimizing Program Performance (Chapter 5 of the text)
-
Linking (Chapter 7 of the text)
-
Measuring Program Execution Time (Chapter 9 of the text)
-
Process Creation and Synchronization (Chapter 8 of the text)
-
Input/Output and Network Programming (Chapters 11 and 12 of the text)
-
Threads (Chapter 13 of the text)
References:
-
Computer Systems: A Programmer's Perspective.
Randal E. Bryant and David R. O'Hallaron. Prentice Hall, 2003.
-
Course notes on Grammars and Automata and Lexing and Parsing.
CSC 383 Data Structures and Algorithms in Java
This course provides basic knowledge of data structures.
Topics:
-
Runtime complexity and asymptotics
-
Implementation and use of data structures
-
Linked lists
(including Java's LinkedList and LinkedListIterator classes)
-
Stacks
-
Queues
-
Trees
-
Balanced trees (including AVL trees)
and Java's TreeMap and TreeSet classes
-
Binary heaps
-
Memory pools
-
Hash tables
(including Java's HashMap and HashSet classes)
-
Graphs (including adjacency matrix and adjacency list
implementation as well as simple algorithms like topological
sort, shortest path, and minimum spanning tree)
References:
-
Data Structures and Algorithms in Java, Michael Goodrich and
Roberto Tamassia. Wiley, 2000.
-
Java online API documentation
CSC 393 Data Structures in C++
This course provides basic knowledge of data structures.
Topics:
-
Runtime complexity and asymptotics
-
Implementation and use of data structures
-
Linked lists
-
Stacks
-
Queues
-
Trees
-
Balanced trees (including AVL trees)
-
Binary heaps
-
Memory pools
-
Hash tables
-
Graphs (including adjacency matrix and adjacency list
implementation as well as simple algorithms like topological
sort, shortest path, and minimum spanning tree)
References:
-
Data Structures and Program Design in C++, Rober Kruse
and Alexander Ryba. Prentice Hall, 1998.
ECT 270 Client side Web Development
Topics:
-
Overview of Internet: Internet history, e-mail system, LAN, TCP/IP,
ISP, DNS, ftp, telnet, basic Unix commands (ls, mkdir, chmod), Unix text
editor.
-
Overview of WWW: Web definition, HyperText, Web browsers, search
engines, newsgroups, mailing lists, creating a simple Web
page.
-
HTML/XHTML: Basic tags, formatting text, images, lists, tables, image
maps, forms.
-
Basic web design considerations: Site development process, Interface
design, Navigation
-
Cascading style sheets (CSS1, CSS2): Inline, document-level, external,
style rules, classes and ID's, block level elements, 3D
positioning.
-
JavaScript: Basic programming structures, functions, arrays, objects,
methods, event model, form validation, regular expressions.
-
DHTML: dynamic contents, rollovers, filters, transitions, drop menus,
slide shows, simple animation.
References:
-
Creating Web Pages with HTML and XML, P.Carey.
Thompson Learning, 2001.
-
Creating Web Pages with Dynamic HTML, P.Carey.
Thompson Learning, 2001.
-
Internet and World Wide Web: How to Program, Deitel
& Deitel. Prentice Hall, 2002.
ECT 310 Internet Application Development
Format:
Question formats may include: true/false, multiple choice, matching, short answer, fill-in-the-blank, coding and essay. The exam has many questions and requires you to work quickly.
Topics:
The exam covers c#-based ASP.NET. Any of the topics below could
provide appropriate questions for the GAE exam, since all are
covered in ECT
310. Because of time limitations, not all topics may actually
appear on the exam:
-
What ASP.NET can do for your Web pages
-
What you need to run ASP.NET
-
.NET framework and ASP.NET
-
Differences between running a script on a server and running your
script on a client
-
Declaring and referring to a variable; Converting variables;
Declaring and using an array
-
Arithmetic
-
String variable manipulation
-
Control structures: Branching (if-then and select case); Looping
(for-next and do while); Jumping (sub-procedures and
functions)
-
Objects and their interfaces (properties, methods and events)
-
Setting and retrieving object properties
-
Calling an object's methods
-
HTML server controls
-
ASP.NET server controls
-
ASP.NET validator controls
-
ASP.NET user controls and code-behind
-
Application and session objects/variables
-
Cookies
-
Debugging ASP.NET code
-
Accessing and updating ACCESS databases through ASP.NET
-
Using SQL in ASP.NET
-
Building a shopping cart using ASP.NET
References:
-
Beginning ASP.NET 1.1 with Visual C# .NET 2003.
Wrox Press.
ECT 353 Server side web application development
Format:
Question formats may include: true/false, multiple choice, matching, short
answer, fill-in-the-blank, coding and essay. The exam has many questions and
requires you to work quickly.
Topics:
The exam covers VB-based ASP. Any of the topics below could
provide appropriate questions for the exam, since all are
covered in ECT 353. Because of time limitations, not all topics
may actually appear on the exam:
-
What ASP can do for your Web pages
-
What you need to run ASP and where to get it
-
ASP as a Microsoft technology
-
Differences between running a script on a server and running your script on
a client
-
Declaring and referring to a variable § Converting variables § Declaring
and using an array
-
Arithmetic
-
String variable manipulation
-
Control structures: Branching (if-then and select case); Looping (for-next
and do while); Jumping (sub-procedures and functions)
-
Objects and their interfaces (properties, methods and events)
-
Setting and retrieving object properties
-
Calling an object's methods
-
Understanding and using ASP's five object model
-
Using hidden variables
-
Buffering and caching
-
Application and session objects/variables
-
Cookies
-
Debugging ASP code
-
Accessing and updating ACCESS databases through ASP
-
Using SQL in ASP
-
Applying the concepts of ASP to a real world retail problem
References:
-
Beginning Active Server Pages. Wrox Press.
GPH 212 Perceptual Principles for Digital Environments II
There is no written GAE for this course. Students who believe
they qualify for a waiver are asked to prepare a portfolio for
review and are encouraged to speak with their faculty advisors
if they have any questions.
GPH 259 Design Geometry
This course covers the basic geometric principles necessary to
understand and manage the geometric tools of standard graphic
applications. The course is for non-mathematicians.
Topics:
-
The basic elements of geometry and their function in classic compass and
straight-edge construction.
-
The principles of position, tangent and curvature continuity.
-
Principles of vector geometry and how these are used to represent
classic geometry in CAD programs.
-
Using transformations and symmetry in design.
-
Solve a triangle using the trigonometric functions of sine, cosine and
tangent.
-
Principles of projection geometry and the use of that geometry in 3D
rendering
-
The structure of spline curves and the use of normals and curvature
circles for purposes of analysis.
-
The structure and role of spline and mesh surfaces in graphics.
-
Definitions of fractal depth, fractal dimension, fractal generation,
fractal enhancement, recursion and iteration.
References:
-
References are varied and covered best in course handouts that
can be secured from Professor Stephen Luecking.
HCI 332 User Centered Web Development
This class teaches client-side web development (HTML, DHTML)
with particular emphasis on questions of design and usability
testing.
Topics:
-
HTML
-
formatting, links, images
-
imagemaps, tables, forms, frames
-
DHTML
-
CSS
-
Eventhandlers
-
DOM
-
Javascript (variables, conditionals, loops)
-
Form validation
-
Web-Design
-
Design Principles
-
Layout through visual grouping
-
Information architecture
-
Color, fonts, graphics (pictures, icons)
-
Navigation (Principles, functions)
-
Usability Testing
-
Key-Task Testing, Get-It Testing (see Krug)
References:
-
HTML, CSS, DHTML:
Creating Web-Pages with HTML and Dynamic HTML,
by Patrick Carey.
Thomson Learning, 2001.
-
Usability Testing:
Don't Make Me Think, by Steve Krug.
QUE, 2000.
- Design:
The Non-Designer's Web Book, 2nd Ed., by Robin
Williams. Peach-Pit Press, 2001.
HCI 402 Principles of Digital Design
This class covers the basic design principles used to structure and
enhance visual communication on the digital page.
This exam measures your ability to determine the design principles at work
in numerous visual examples.
Topics:
-
Formal structural patterns with emphasis on the grid.
-
Informal structural patterns with emphasis on the principles of unity
and gestalt perception.
-
Shape interactions, especially the use of Booleans.
-
Spatial transformations used to establish relationships of
compositional elements to one another and to the compositional
space.
-
Additive and subtractive color systems incorporated in 2D
graphic programs.
-
Color harmonies derived from these systems.
-
Methods for conveying the illusion of space on a two
dimensional page.
References:
-
Principles of Two-Dimensional Design, Wucius Wong.
Wiley.
-
Design Fundamentals for the Digital Age, Linda Holtzschue and
Edward Noriega. Wiley.
IS 313 Business Application Development in Java
This course covers more advanced features of the Java programming
language, including database connectivity, networking, graphical user
interfaces, and multithreading. The use of these features in business
applications is emphasized.
Topics
-
The Java Collections framework (Chapter 2)
-
JDBC (Chapter 4)
-
AWT/Swing (Chapter 6, pgs. 400-458)
-
Threads (Chapter 1)
-
Network programming (Chapters 3 and 5)
-
Sockets
-
RMI
References:
-
Core Java 2, Volume II: Advanced Features, 4th Ed., Cay
S. Horstmann and Gary Cornell.
IS 404 Business Systems
Topics:
-
Understanding of some basic IS concepts e.g.
Data, Information, Knowledge
-
Role of information systems in organization
-
Information systems management approaches
-
Understanding of the following information
systems: Automation systems, Transaction processing systems, Management
information systems and Strategic information systems.
-
Different types of hardware and software
-
Understanding of the new organization structures
and there information requirements
-
Information and organization strategy
-
Information technology in the internet age
-
Internet and other external networks
References:
-
Information Systems: A management Approach, 2nd Ed.,
J.R. Gordeon S.R. and Gordon.
IT 130 The Internet and the Web
This course introduces basic concepts of the Internet and World-Wide
Web. Students will learn how to create web pages with HTML and CSS and
use JavaScript for dynamic effects.
Topics:
- the roles and operation of Web browsers and servers
- creating web pages using HTML
- setting styles and formatting using cascading stylesheets
- user-centered web design to create effective interfaces for the web
- dynamic programming using JavaScript
References:
-
A Balanced Introduction to Computer Science, David Reed.
Pearson/Prentice Hall, 2004.
IT 215 Analysis and Design Techniques
Topics:
-
System Development Life Cycle
-
Phase 1: Planning
-
Phase 2: Analysis
-
Phase 3: Design
-
Phase 4: Implementation
-
Phase 5: Operation
and Support
-
Development Techniques
-
Structured
-
Joint Application
-
Rapid Application
-
Analysis Tools
-
Requirements Modeling
-
Data flow diagrams
-
Entity Relationship diagrams
-
Data Dictionary
-
Feasibility Study
-
Design Strategies
-
User Centered Design
-
Application Architecture
-
Implementation Issues
-
Application Development
-
Documentation
-
Testing
-
User training
References:
-
Systems Analysis and Design, 5th Ed., Shelly Cashman
Rosenblatt.
IT 223 Data Analysis
This exam covers topics in a first data analysis or statistics
class.
Topics:
-
Histograms with possibly unequal class widths
-
Basic descriptive statistics: mean, median, standard deviation,
interquartile range
-
Measurement error
-
Normal distributions
-
Correlation as a measure of linear association
-
The straight line regression model Root mean squared error for
regression
-
Basic laws of probability
-
The binomial formula
-
Expected value and standard deviation of a random variable
-
Expected value and standard error of the sum and average of independent
outcomes.
-
Law of averages (also known as the Law of Large Numbers)
-
Normal approximation of a sum and an average (also known as the Central
Limit
-
Theorem)
-
Confidence intervals
-
Tests of significance
References:
-
Introduction to the Practice of Statistics, 4th Ed.,
D.S. Moore and G.P. McCabe. Freeman and Co, 2002.
IT 230 Building Internet Applications
Format:
Question formats may include: true/false, multiple choice, matching, short
answer, fill-in-the-blank, coding and essay. The exam has many questions
and requires you to work quickly.
Topics:
The exam covers CGI/Perl, PHP, JSP/Servlets, and c#-based
ASP.NET. Any of the topics below could provide appropriate
questions for the GAE exam, since all are covered in ECT
310. Because of time limitations, not all topics may actually
appear on the exam:
-
Client-side scripting vs. server-side scripting
-
CGI/Perl
-
PHP
-
JSP/Servlets
-
HTTP basics
-
ASP.NET basics
-
ASP.NET HTML server controls
-
Request and Response objects
-
Programming access to databases using ASP.NET
-
XML Web services
-
Windows authentication
References:
-
Beginning ASP.NET 1.0 with C#. Wrox Press.
IT 236 End User Application Development
IT236 is a one quarter course in Visual Basic. It assumes that the
student has had one quarter of programming in a language such as
JavaScript, C ,C++, or Java. IT 130 is the CTI prerequisite for IT 236
Topics:
-
A basic understanding of the Visual Studio IDE and basic
terminology: Code Editor, Form Designer, Toolbox, Properties
Window, Solution Explorer
-
Arithmetic Expressions, Arithmetic operators (+, -, *, /, \, Mod,
^), Options Strict and Explicit
-
Event Driven Programming in Visual Basic: Event Handler, Linking an
event to an event handler using the Handles keyword.
-
Controls: TextBox, ListBox, Button, Label, GroupBox,
RadioButtons, CheckBoxes, MainMenu, MenuItem, DataGrid
-
Strings including string functions Substring and IndexOf
-
External text file processing, sequential files, CSV files
-
Subprograms and Functions, parameter passing (value vs. reference),
public vs. private
-
Structured programming constructs: If..Else, For..Next, Do loops,
Select Case, Relational operators (=, <, <=, >, <=, <>)
-
Classes and Objects, Methods, Properties vs. Public variables, Methods,
Constructors.
-
Database access: SQL, OleDbConnection, OleDbCommand,
OleDbDataAdapter, DataSet, DataGrid.
-
Be able to:
-
define the various concepts.
-
discuss the advantages and disadvantages of the various
concepts.
-
predict the output of a Visual Basic application.
-
create an application using design time and run time
programming.
-
write and test subroutines and functions.
-
write simple SQL statements for extracting information from a
database table.
-
manipulate information in controls, collections, and/or
databases.
References:
-
An Introduction to Programming Using Visual Basic.Net,
5th Ed., David I. Schneider. Prentice Hall, 2003.
IT 240 Introduction to Desktop Databases
This course introduces students to the methods for the design,
development, implementation and administration of desktop
databases.
Topics:
Upon completion of the course, students should be able to do the
following.
-
Design a database: Entity Relation (ER) modeling and
normalization techniques
-
Create and maintain a database using Microsoft Access.
-
Compose and use queries in Structured Query Language
-
Create and customize forms and reports
-
Integrate databases with other sources of data and
applications
References:
-
Modern Database Management, Hoffer, Prescott, and
McFadden. Prentice Hall, 2005.
MAT 140 Discrete Mathematics I
This course and its companion (MAT 141) are intended to provide
a solid foundation for further study of mathematics, programming
languages, database theory, data structures, and analysis of
algorithms. The focus of Math 140 is on the basic principles of
logical reasoning and how to apply these principles to formulate
and explore the truth and falsity of statements in mathematics
and computer science. Proof, disproof, and conjecture all figure
prominently. The main vehicle for exploration is number theory,
including divisibility properties of integers, the infinity of
the prime numbers, the representation of real numbers on a
number line, and properties of rational and irrational
numbers. The last part of the course deals with combinatorial
reasoning and its applications in a variety of different areas.
Topics:
-
Logic of Compound Statements
-
Logic of Quantified Statements
-
Elementary Number Theory and Methods of Proof (divisibility;
division theorem; rational and irrational numbers; floor and
ceiling; mod and div; direct and indirect proof; division into
cases)
-
Applications: Algorithms (division algorithm; Euclidean algorithm)
-
Sequences and Mathematical Induction
-
Definitions from set theory, functions and relations
-
Combinatorial Reasoning (counting and probability, possibility
trees and the multiplication rule; combinations, the binomial
theorem)
References:
-
Discrete Mathematics with Applications, 3rd ed.,
Susanna S. Epp. Brooks/Cole Publishing, 2004.
PHY 405 The Physics of Telecommunication
This
exam covers topics in a first physics course in electricity, electrical
systems, and transmission media.
Topics:
-
Units of Electrical Measurement: Hertz, Ohms,
Volts, Joules, Farads, Watts, Henrys, Coulombs, Amperes
-
Basic Circuit Operations and Analysis
-
Series vs. Parallel Circuits
-
Ohm's Law
-
Inductance, Capacitance and Tuned Circuits
-
Semiconductors, Transistors, Diodes, Integrated
Circuits, Digital Circuits
-
AM and FM Modulation· Fourier Analysis,
Frequency Spectra and Filters
-
Transmission Media:
-
Twisted Pair, Coaxial Cable, Radio
Frequency, Fiber Optics
References:
-
Electricity and Electronics, Gerrish and Dugger.
Goodheart-Willcox Co.
-
Introduction to Telecommunications Electronics, Noll.
Artech House.
-
Understanding Electricity and Electronic Principles,
Heiserman. Sams.
SE 325 Principles and Practices of Software Engineering
The exam covers topics from an introductory course on Software
Engineering. The exam will consist of a combination of multiple
choice questions, short answer questions, and one or two longer
questions. The following topics are covered in this exam but
only to the level of an introductory Software Engineering
textbook.
Topics
-
Software development life cycle models
-
Iterative and incremental development
-
Capability Maturity Model including the levels and key process
areas.
-
Team organization including democratic, chief programmer etc.
-
Basic risk management including risk assessment, risk
analysis, risk mitigation, and
risk contingencies.
-
CASE tools
-
Software Configuration management
-
Version control
-
Blackbox and whitebox testing techniques
-
Software Quality Assurance (defect removal, formal technical
reviews etc)
-
Metrics for analyzing design quality (coupling, cohesion,
fan-in, fan-out etc)
-
Reusability
-
Planning and estimating (LOC, Expert judgment, COCOMO,
Function point analysis)
-
Requirements (Characteristics, writing requirements,
Functional vs. non-functional
requirements)
-
Analysis (Basic knowledge of DFD, SADT, Petri Nets, FSM, use
cases, sequence diagrams, class diagrams). Note many of these
methods are covered in more detail in other classes, but SE325
students should at least be able to utilize rudimentary models
of each type.
-
Change Management (request for change, traceability, impact
analysis)
-
Engineering of safe and secure software systems
References:
Each of the following textbooks covers most of these topics
-
Software Engineering, 7th Ed, Ian
Sommerville. Addison-Wesley, 2004.
-
Software Engineering: A Practitioners Approach, 6th Ed,
Roger Pressman. McGraw-Hill, 2004.
-
Object Oriented & Classical Software Engineering,
6th Ed, Stephen R. Schach. McGraw-Hill, 2005.
TDC 311 Computers in Telecommunications
Topics:
-
Introduction to systems architecture: Computer capabilities
(Processor, Storage capacity, Input/Output capability);
Computer hardware (Central processing unit, System bus,
Primary storage, Secondary storage, Input/output devices);
Computer system classes (Multicomputer configurations).
-
Data representation:
Binary data representations (Hexadecimal notation, Octal notation);
Goals of computer data representation (Compactness, Accuracy, Ease of manipulation, Standardization);
CPU data types (Integers, Real Numbers, Character data, Unicode, Boolean data, Memory addresses).
-
Processor technology and architecture: CPU Operation;
Instructions and instruction sets (Data movement, Data
transformations, Sequence control, Complex processing
operations); Instruction format (Instruction length, Reduced
instruction set computing); Clock rate; CPU registers (General
purpose registers, Special purpose registers); Word size;
Enhancing processor performance (Pipelining, Branch prediction
and speculative execution, Multiprocessing).
-
Data storage technology: Storage device characteristics
(Speed, Volatility, Access method, Portability, Cost and
capacity, Memory-storage hierarchy); Primary storage devices
(Storing electrical signals, Random access memory, Nonvolatile
memory, Memory packaging); CPU memory access (Physical memory
organization, Memory allocation and addressing); Magnetic
storage (Magnetic decay and leakage, Areal density, Media
integrity, Magnetic tape); Optical mass storage devices
(CD-ROM, CD-R).
-
System integration and performance: System bus (Bus clock and
data transfer rate, Bus protocol); Logical and physical
access; Device controllers (Mainframe channels); Interrupt
processing (Interrupt handlers, Multiple interrupts, Stack
processing, Performance effects); Buffers and caches (Buffers,
Diminishing returns, Cache); Processing parallelism (Multicore
processors, Multi-CPU architecture, Scaling up and scaling
out); High-performance clustering.
-
Operating systems: Operating system overview (Operating system
management functions, Operating system layers); Resource
allocation (Single-tasking resource allocation, Multitasking
resource allocation, Resource allocation goals, Resource
allocation tasks, Real and virtual resources); Process
management (Process control data structures, Threads); CPU
allocation (Thread states, Interrupt processing, Scheduling);
Memory allocation (Single-tasking memory allocation,
Multitasking memory allocation, Memory fragmentation,
Noncontiguous memory allocation, Virtual memory management,
Memory protection, Memory management hardware).
-
Files and secondary storage management: File management systems (Logical and physical storage views, File content and type); Directory content and structure (Hierarchical directory structure, Graph directory structure); Storage allocation (Allocation units, Storage allocation tables, Blocking and buffering); File manipulation (File open and close operations, Delete and undelete operations); Access controls.
-
Internet and distributed application services: Distributed
computing (Client/server architecture, N-layer client/server
architecture); Network resource access (Protocol stacks,
Access remote resources); Interprocess communication (Sockets,
Named pipes, Remote procedure calls); The Internet (Standard
web protocols and services, The Internet as an application
platform); Components and distributed objects (Component-based
software, Components and objects, Connection standards and
infrastructure, CORBA, COM+, SOAP); Directory services
(Lightweight Directory Access Protocol (LDAP)).
References:
-
Systems Architecture, Stephen D. Burd.
TDC 361 Basic Communication Systems
Topics:
-
Know the concept of a network architecture model; the OSI
model and its layers; the TCP/IP protocol suite and its layers
-
Know the differences between data and signals, differences
between and advantages of analog and digital, signal
amplitude, frequency and phase, modulation techniques, pulse
code modulation
-
Know the different media types (twisted pair, coax, fiber,
wireless); their advantages and disadvantages; application
areas for each type of media
-
What are the basic modem operations; operation and limitations
of 56k modems; four parts of an interface standard; basic
understanding of RS232, USB; data link asynchronous
connections versus synchronous connections
-
What are the basic operations, advantages and disadvantages of
frequency division multiplexing, time division multiplexing
(both synchronous and statistical), and wavelength division
multiplexing
-
What are the various types of error; parity checks; cyclic
redundancy checks; efficiencies; basic concepts of error
control
-
What are the functions, advantages and disadvantages of a LAN;
LAN topologies; medium access control protocols; MAC sublayer;
popular LAN systems
-
What is a transparent bridge (how does it work); switch
operation; basics of routers, hubs and servers
-
What are the network operating system basics, including domain
and tree structured designs; characteristics, advantages and
disadvantages of popular NOSs.
-
What are WAN basics: including circuit switched, packet
switched (datagram and virtual circuit), broadcast,
connection-oriented, connectionless, routing (least cost,
flooding, centralized, distributed, isolated, adaptive, and
static), and network congestion.
-
What is the Internet and how does it work: services provided,
IP (addressing, routing, fragmentation, time-to-live), ARP,
DHCP, NAT, IPv6, DNS, and TCP protocol (basic functions)
-
Know the basic telecommunication concepts: POTS, Divestiture
of 1984, Telecommunications Act of 1996, PBX, key systems,
voice processing, T-1, ISDN, frame relay, ATM, and DSL
-
Know the basics of network security: basic security measures,
standard system attacks, encryption and decryption techniques,
PKI, and firewalls
-
Know the basic concepts of compression; lossy vs. lossless
compression
References:
-
Data Communications and Computer Networks: A Business
User's Approach, White, Course Technology.
-
Business Data Communications, Stallings and
Van Slyke. Prentice Hall.
-
Business Data Communications and Networking,
Panko. Prentice Hall.
-
Business Data Communications and Networking,
Fitzgerald and Dennis, John Wiley & Sons.
-
Business Data Communications, Stamper,
Addison-Wesley.
TDC 411 Computers
in Telecommunications
Topics:
-
Computer technology: Need to know, IS development: technical
knowledge, Management of computer resources, Roles and job titles,
Information sources about computer technology
-
Automated computation, computer processors, computer system
capabilities, computer system components, von Neumann computer
architecture, classes of computer systems, the role of software, economics
of software development, programming languages, parallel Hardware/Software
development
-
Data in motion and data at rest, data representation and transport,
binary data, goals of data representation, integer data, real numbers,
character data, Boolean data
-
Processor technology and Architecture: CPU operations, Instructions and
instruction format, CPU registers, Future trends
-
Data storage technology : Storage devices characteristics (speed,
volatility, access method, portability..etc.), CPU memory access, Magnetic
storage
-
System integration & performance: System bus, Bus performance,
Interrupts, Buffers & caches, Compression
-
Input/Output technology: I/O processing, I/O and storage device
performance issues, Video display, Printers, Optical devices, Audio I/O
devices
-
Communications protocols, data encoding methods
-
Coordinating communications, clock synchronization, asynchronous
transmission, synchronous transmission, parallel transmission Network
Topologies and OSI model
-
Basic Operating System concepts
-
File Management Systems
References:
-
Systems Architecture Hardware and Software in Business
Information Systems, Stephen D. Burd. Course Technology.
|