TEC103 Survey of Windows 3 Credits
This is an introductory course designed to have students work with five major Windows
software application packages used in business. Students will use a hands-on approach in
creating projects using word processing, spreadsheet, presentation, desktop publishing, and
database software in addition to exploring options in how to integrate between the packages
to achieve business related goals. This course will also present information on navigating
through a Windows environment and how to manage files and programs from a
TEC105 Information Technology 3 Credits
This course provides an overview of essential computer and digital technologies impacting
society today. A variety of readings, presentations, and discussions may be used to examine
the historical, political, social, and ethical issues surrounding computer technology. Key
discussion points for this course will include an introduction to computer concepts, wireless
technologies, security issues, and other current trends. Students will also work hands-on
with the Internet, communication software, and typical productivity applications available in a
modern Windows environment.
TEC120 Structured Programming 3 Credits
This course introduces students to the formal syntax and semantics of the C++ programming
language through the examples of programming games. Students will learn to interpret
program requirements in terms of input, output, and processes. Hands on programming
exercises will introduce programming concepts the include data types, variables, selection
control structures, repetition control structures, and user defined functions.
TEC125 Microsoft Access 3 Credits
This course is an introduction to relational databases and database design. Coverage
includes a quick review of database modeling, data types, establishing relationships, creating
updating tables, and entity-relationship diagrams. Students learn Microsoft Access as an
implementation of a relational database to input data, create forms, create queries, and create
TEC135 Networking I 3 Credits
Networking I introduces the theoretical concepts that are the underpinnings of modern
network functions. Beginning with the OSI and TCP/IP models, students will learn how
network protocols function at each level of the network. Students will learn how logical and
physical addresses are used to identify hosts on the network, how networks are segmented
into manageable sizes with switches and routers, and how different networks communicate
with each other through a router.
TEC140 Microcomputer Systems 3 Credits
This course includes the basic elements of computer science that are necessary to
understand how all computers work, the relationship between hardware and software,
hardware components of personal computers and related peripherals, and an introduction
to networking and programming. The course also includes the binary and hexadecimal
numbering systems, input and output processes, software installation and configuration, the
OSI model, algorithm concepts, and basic data structures.
TEC200 Data Modeling Foundations 3 Credits
This introductory course presents the theoretical aspects of database design and
methodologies for designing relational databases such as Microsoft Access, Oracle, and
SQL Server. Coverage includes methods of gathering, documenting, and communicating the
elements and structure of business information. Different types of modeling include entity
relationship models, hierarchical models, and principles for converting from logical models into
TEC210 Discrete Logic 3 Credits
This course focuses on the language and methods of reasoning used throughout
mathematics, computer science, and selected topics in discrete mathematics. Students
will use the principles of sets and subsets, logic, counting, functions, order relations
and structures, and finite state machines. Students will spend time each week reading,
completing assignments and other related academic activities outlined by the professor.
TEC222 Networking II 3 Credits
Network II introduces wireless and mobile networking, multimedia, and security, with a
specific focus on network security. Encryption, message integrity, authentication, network
layer, and transport layer security are key topics. A range of potential network security risks
arising from email, remote access, and file transfers are discussed.
TEC225 Visual Programming 3 Credits
This is an introductory class for the .NET Framework which will demonstrate a development
and execution environment that allows different programming languages & libraries to work
together seamlessly to create Windows-based applications that are easier to build, manage,
deploy, and integrate with other networked systems. This course provides the student
programming experience in a .NET language such as VB.NET or C#. It covers the design,
development, and execution of user-generated design requirements. Topics covered include
components of main windows, dialog boxes, menus, controls, color, and animation. Programs
are oriented toward solving common business problems.
TEC230 Introduction to Data Analysis 3 Credits
Many professionals, including those involved with data analytics use Microsoft Excel in their
daily work as a tool to manage and analyze data. This course uses Microsoft Excel to generate
analytical models through data summarization, data reporting, and the analysis of data. Those
taking this course will learn Excel functions including, but not limited to, Solver, Pivot Tables,
Charting, Power View, and Monte Carlo simulations.
Prerequisite: BUS120 or TEC103 or Chair approval for students in the IT program
TEC235 Object-Oriented Programming I 3 Credits
This course introduces students to the field through object-oriented design and programming,
using C++. Reinforces concepts with practical exercises in weekly lab sessions and with
challenging and engaging programming assignments. Students in this course have some
programming experience in C++ prior to enrolling.
TEC238 Python 3 Credits
Python is an extensible scripted language commonly used in artificial intelligence and for
processing large data sets. As an extensible language Python makes extensive use of
third-party Python libraries. This course introduces students to Python structure and syntax
conventions. This course teaches students how to solve computable problems in the Python
language. Students will be exposed to Python data, modules, Turtle graphics, functions,
strings, lists, Python GUIs, event driven programming, and other Python topics.
Prerequisite: TEC120 Structured Programming
TEC240 Visual Basic for Applications 3 Credits
Visual Basic for Applications is a programming language that allows users to customize their
applications by creating more convenient ways to perform common tasks. The course is
designed to guide the beginning programmer in writing procedures using the VBA language to
customize Microsoft Word, Microsoft Excel, and Microsoft Access.
TEC245 Internet Programming I 3 Credits
This course is an introduction to tools and -programming skills needed for developing Internet
and database access through the web.
TEC248 Routing and Switching 3 Credits
The abstract concept of networking is implemented with routers and switches. Routers
function at Layer 3, the Network Layer and distribute TCP/IP packets to networks throughout
the Internet. Switches are Layer 2 devices that connect hosts to routers providing access to
the Internet, and distribution to individual hosts from routers connected to the Internet. The
course examines how TCP/IP packets are managed by these two devices that make up the
physical network. Students will learn how to physically connect a network by setting up and
configuring routers and switches.
Prerequisite: TEC135 Networking I
TEC252 SQL Fundamentals 3 Credits
Structured Query Language is the standard language for creating, maintaining, and extracting
data from all relational databases. SQL Fundamentals introduces the conceptual framework
for SQL and syntax for identifying and defining data types, defining the relationship between
fields, and entering data into the proper table. Students will be expected to learn how to
enforce data integrity and query a database within SQL.
TEC305 COBOL 3 Credits
COBOL has been the most widely used programming language since its development.
Billions of lines of COBOL are used in combination with CICS to process billions of
transactions each day, This course introduces students to the essentials of COBOL
programming and how to test programs that prepare reports. Students will learn file
organization and how to work with intrinsic functions, dates, characters, tables, copy
members, and subprograms.
Prerequisite: TEC120 Structured Programming
TEC310 Virtualization 3 Credits
This course investigates virtualization along with related architectures and security concepts.
Students will learn about the benefits of virtualization, cloud computing and solutions with
related deployment methods. Students will also gain an understanding of virtualization
hardware, storage, and thin clients. Labs will explore a variety of scenarios and help reinforce
theoretical concepts discussed in this collaborative class.
TEC320 Systems Analysis and Design 3 Credits
This course is a comprehensive study of tools and techniques used in the analysis of
computer systems and the design of software to support that system. Topics covered
include corporate goals and objectives, input/output files, forms, processing, documentation
techniques, backup, project management, and the responsibilities of a systems analyst.
Prerequisites: TEC140 and TEC200
TEC325 Operating Systems 3 Credits
This course is designed to provide the fundamentals of Operating Systems. Students will
exam the theoretical concepts underlying the design and implementation of a computer
operating system from the perspective of the operating system’s tasks and responsibilities.
Beginning with process definition, process management and memory management, students
will progress to the study of file structures and how input and output is managed. The course
will conclude with an examination of how those concepts have been implemented in Unix
Prerequisites: TEC140 and TEC310
TEC330 Network Management 3 Credits
Network management presents the principles and practices of network management and
administration of Microsoft Server. Beginning with the configuration and installation, the
course proceeds to the discussion of server domains. Active Directory is a major component
of this course and considerable time will be spent developing an understanding of Active
Directory and its management. The course will also cover the management of group policies
and the user’s environment.
TEC335 Object-Oriented Programming II 3 Credits
This course introduces students to the principles of object-oriented analysis, design and
programming using JAVA. The focus is on developing creative thinking for analyzing a problem
domain and designing a solution, and on using the JAVA programming language (or other
appropriate programming language) to implement it. Topics covered include classes of
inheritance, polymorphism, basis abstract types, including lists, stacks, queues, debugging
techniques, and program compilation and execution. An object-oriented programming
language (currently JAVA) will be used to demonstrate constructs and syntax.
TEC345 Internet Programming II 3 Credits
The development of advanced web-based systems involves challenges in software
engineering, system architecture, database design, user interfaces, security, and web
services. This course will describe both the theoretical background behind these issues and
the practical challenges of system implementation. Web based programming languages such
as PHP, Ruby on Rails, and Java will be used for in-class demonstrations and for assignments.
Readings from current research and professional publications will inform discussions.
Projects and assignments will involve the implementation, use, and evaluation of advanced
Prerequisites: TEC245 and TEC252
TEC350 Firewalls and Intrusion Detection 3 Credits
Beginning with an examination of the nature of firewalls and the importance of developing a
security policy to meet specific requirements, this course proceeds to study various firewall
topologies and how they are implemented in order to support network services. The concept
of honeypots and honeynets are introduced and students will learn how they can be used to
monitor and track attacks on the network.
TEC370 Human Computer Interaction 3 Credits
This course explores the psychological, physiological, and engineering basis of design and
evaluation of human-computer interactions (HCI). The course will focus on design methods
and thinking, and will allow students to develop their design and practical skills through a
variety of hands-on exercises. The course covers topics such as: the foundations of HCI, task
analysis techniques for gathering design information, user experiences, usability testing, and
project planning and reporting. Individual and group assignments, including a significant group
project, will provide an opportunity to more deeply engage with the course material.
TEC376 Selected Topis in Technology 3 Credits
The specific topic of this course will be determined before the academic term that it is
offered. This topic will relate to a specific area of technology related to computer science,
programming, networking, data analytics, or systems analysis.
Prerequisites: TEC120 and TEC320
TEC385 Social Media 3 Credits
As interactive social networking sites have proliferated the Internet, many disciplines have
recognized the power of these communities. The question that arises, how and why does
social media, such as Facebook, Twitter, and LinkedIn, work? The goal of this course is to
merge communication, information technology, and marketing approaches to explore the
social and technological forces driving the design and use of social media services. Students
will learn about setting objectives, measuring program results, new media technologies and
macro-environmental issues affecting new media. This class will use a hands-on approach to
experience social media including work on an interdisciplinary, team-based project involving
the conceptualization, design, and implementation of a social media application.
Prerequisites: ENG102 and 3rd or 4th year status
TEC388 Data Analysis with Python 3 Credits
Python is an extensible scripted language extensively used in processing large data sets
for data analysis. This course focuses on those parts of the Python programming language
along with its data-oriented libraries and tools that are integral to processing large data sets
in preparation for data analysis. NumPY, pandas, matplotlib, SciPy, scikit-learn, and Jupyter
notebooks are several of the more popular libraries and toolkits that will be presented
in this course.
Prerequisites: TEC230 and TEC238
TEC390 IT Project Management 3 Credits
This advanced course is a comprehensive study of information technology project
management. Participants explore the tools and techniques used in the analysis of computer
system projects and the design and project management that support system planning
and implementation. Topics covered include integration management, scope and time
management, cost management, and risk management. Other topics covered include project
initiating, planning, executing, controlling, and estimating the cost of a project. This course
builds an unparalleled foundation for tomorrow’s creators and managers by providing a
meaningful study of projects and building a framework of sound IT project management.
TEC410 Advanced Data Structures and Algorithm Analysis 3 Credits
This course is a survey of elementary data types and static and dynamic data structures, with
a study of alternative representations and the algorithms used to manipulate each. The Java
language will be used in the implementation of various projects.
TEC411 Cyber Ethics 3 Credits
Cyber ethics refers to the study of moral, legal, and social issues involving computer and
network technology. This course addresses the ethical roles and responsibilities of computer
professionals. Privacy, security, intellectual property rights, and cyber-related crimes will be
discussed, along with the problems of regulating commerce and speech in cyberspace.
TEC412 Pen Testing 3 Credits
Network security professionals need to understand the types of attacks that may be directed
against their system in order to assess risks and prioritize defense measures. This course
examines how hackers gather information about systems and networks and the vulnerabilities
of various operating systems. This course explores entry points to the network, how hackers
exploit vulnerabilities in firewalls and network devices. This course also looks at reporting
results and preparing for the next penetration test.
TEC413 Hacking Defenses 3 Credits
This course examines the tools and techniques for protecting systems against hacking
attacks. Multifunctional tools such as Netcat, the X Windows Operating system and Cygwin
are examined. Port scanners and auditing tools are used to audit systems on the network,
while port redirection, port sniffers, and wireless tools are used to audit the network itself.
Tools used in forensics and incident response will be introduced.
TEC420 Advanced Routing 3 Credits
This course continues with advanced routing concepts introduced in previous networking
courses. Course content includes scaling IP networks using VLSM, private IP addressing,
NAT, and IPv6; optimizing IP address utilization; intermediate level configuration of routing
protocols including RIPv2, EIGRP, OSPF, IS-IS, and BGP routing protocols; techniques used for
route filtering and route redistribution.
TEC425 Advanced Switching 3 Credits
This course continues with advanced switching concepts introduced in previous networking
courses. Course content pertains to the deployment of state-of-the-art campus LANs and
selection and implementation of appropriate Cisco IOS services to build reliable scalable
multilayer-switched LANs. Additional topics covered include VLANs, VTP, STP, inter-VLAN
routing, and multilayer switching: redundancy, Cisco AVVID solutions, QoS issues, campus
LAN security, and emerging transparent LAN services.
TEC445 Software Engineering 3 Credits
This course introduces and discusses topics such as software life cycle models, estimation of
size and effort of software development projects, risk management of software projects, how
to conduct formal technical reviews, formal methods for software architecture and design,
verification and validation methods, configuration management, the Capability Maturity Model
Integration (CMMI), how to start, implement, and sustain a software process improvement
program, how to manage resistance to change in an organization, and Agile software
development techniques. The practical side of the course includes discussion on practical
examples provided by the instructor and a final research project developed by the students.
TEC455 Machine Learning 3 Credits
Machine learning is an extension of data analytics and Artificial Intelligence. Raw data is the
input and a computer generated model is the resulting output of the machine’s processing
of the data as the machine learns to identify patterns in the data and make decisions based
on what it has learned. This course will focus on identifying the types of data that need to
be collected and input into the machine and the mathematical models that are appropriate
for processing that data. This course will make extensive use of the Python programming
language and its extensions.
TEC460 Data Mining and Analysis 3 Credits
Data mining is the process of discovering novel patterns and use those discoveries to create
descriptive and understandable models from large datasets. This course examines the
basic properties of data modeled as a data matrix and stress the geometric, algebraic and
probabilistic interpretation of data. This course examines the practices of pattern mining,
clustering, and classification along with the practice of summarizing data so that it can