
B.S. in Computer Science
Caldwell University’s Bachelor of Science in Computer Science prepares you for a technology career with a strong foundation in computer programming with focused electives.
Rapid growth of Computer Science opportunities has been fueled by increasing demand for new technology, expanding reliance on mobile and wireless networks, and rising concerns about cybersecurity. According to the U.S. Bureau of Labor Statistics (BLS), jobs in the Computer Science industry are projected to grow much faster than all other occupations in the next decade. BLS estimates for the period 2016 to 2026 that jobs for software developers are expected to increase 24%, with strong median wage rates.
Caldwell students acquire the knowledge, skills and abilities needed to pursue a diverse array of careers within the IT industry, including software development engineer, software developer, application developer, system engineer, net developer, system administrator, network engineer, security engineer, and programmer/cyber security analyst. Successful graduates have the ability to specify, design and implement software or software systems to meet customer requirements. This degree also provides a solid foundation for graduate work in the field.
Our students are provided opportunities to participate in Computer Science research and to publish and present their work at local and professional conferences. Current undergraduate research spans various topics, including Artificial Intelligence, Virtual Reality, and Human-Computer Interaction. For details, see the CogAI Research Lab website.
The School of Business and Computer Science provides comprehensive offerings for students seeking either general or specialized degrees in the fields of business and technology. Our increasingly-popular five-year tracks (BS/MBA and BS/MS Accounting) are rigorous programs for motivated students seeking to advance their business skills on an expedited basis.
Faculty emphasis extends beyond academics to fostering students’ business interpersonal skills and practical experiences through internships and international travel study trips. Business programs are accredited by the Accreditation Council for Business Schools and Programs (ACBSP) as noted; all other programs are aligned with applicable accreditation standards and will pursue full accreditation when eligible.
Students who complete this program will demonstrate the ability to specify, design and implement software or software systems to meet customer requirements. The Computer Science program focuses on developing technically competent professionals who are equipped to learn new technologies and principles that are necessary for success in the field. Graduates will be effective technical communicators and will demonstrate high professional standards.
STUDENTS WHO MAJOR IN COMPUTER SCIENCE MUST COMPLETE:
Course Code : CS 195
Course Description :
Intensive introduction to computer science, problem solving decomposition, and algorithm development. Writing, debugging, and analyzing computer programs using high-level programming language. Topics include decision structures, loops, files, methods, classes, arrays and lists.
Credit : 3
Prerequisites :
CS115, CS115X, MA130, MA117, MA112
Course Code : CS 196
Course Description :
Continues the development of a disciplined approach to problem solving and algorithm development using advanced topics of high-level programming language. Topics include details on classes and object, inheritance, exceptions, GUI applications, and recursion. Sorting and searching algorithms are introduced.
Credit : 3
Prerequisites :
CS195
Course Code : CS 216
Course Description :
Explores static and dynamic storage allocation in the implementation of linked lists, stacks, queues, trees, and graphs. Introduces advanced sorting and searching algorithms, algorithm design techniques including divide-and conquer, dynamic programming, greedy algorithms, and graph algorithms.
Credit : 3
Prerequisites :
CS195
Course Code : CS 302
Course Description :
This course presents the principles behind assessing the efficiency of algorithms, as well as a number of classic algorithms and their complexity analysis. In particular, different types of sorting and searching algorithms will be studied, as well as advanced algorithms such as dynamic programming, greedy algorithms, amortized analysis, and graph algorithms. Selected topics such as matrix operations, polynomials and the FFT, number-theoretic algorithms, NP-completeness and approximation algorithms may be studied, time permitting.
Credit : 3
Instruction methods : Lecture: 3 Hours
Prerequisites :
CS195, CS216
Course Code : CS 322
Course Description :
Analyzes programming languages and language design, emphasizing underlying similarities, differences, and applications in all current computing languages. Students develop knowledge in linguistics, language constructs, architecture influcences on compiler design, and compilation techniques. Topics include memory management, control structures and abstraction, and data structuring and abstraction techniques. The course investigates 3 main programming paradigms: object-oriented, functional and logic programming.
Course Code : CS 450
Course Description :
This capstone course is designed to develop complex software systems from business and institutional requirements and processes. Students utilize the fundamental principles of system development with both traditional and object-oriented approaches using professional charting, graphing and modeling tools. The course presents different software process models, project management anlysis, software requirements engineering processes, systems development and testing procedures and different organizational and managerial designs and methods for systems development organizations. IN addition, students integrate database, network topologies and cloud system designs to solve business problems. Computer system life cycles and maintenance procedures will also be analyzed.
Instruction methods : Lecture: 4 Hours
Prerequisites :
CS260, CS195, CS316, CS195
Course Code : BU 205
Active Term : Fall
Course Description :
This course introduces students to the fundamentals of microeconomic theory. It deals with the behavior of individual economic units that are small relative to the national economy. The course explains how consumers, workers, investors, owners of land, and business firms make their decisions, and how they interact to form larger units of markets and industries. A thorough survey of market failure and government failure also will be covered.
Credit : 3
Prerequisites :
MA 112 or other equivalent math core with grade of B- or higher
Course Code : MA 140
Course Description :
This course studies sets, graphs, Euler paths, trees, PERT diagrams, Venn diagrams, Dijkstra's algorithm, Prim's algorithm, binomial theorem, combinatorial problems, recurrence relations and methods of iteration. Practical business and science applications are examined and solved by using these structures.
Credit : 3
Prerequisites :
MA 113 or placement into one of the following:
- MA 130
- MA 140
- MA 131
- MA 220
- MA 221
Course Code : MA 311
Course Description :
An introduction to the theory of probability and statistics utilizing methods from calculus. Topics include the axioms and rules of probability, Bayes Theorem, discrete and continuous random variables, univariate probability distributions, expectation, variance, and generating functions.
Credit : 3
Prerequisites :
MA 220 or MA 140
MAJOR ELECTIVES (Take 10 courses or 30 credits):
Take 10 electives (30 cr.) in CS 200 level or higher courses.
Take 10 electives (30 cr.) in CS 200 level or higher courses.
Course Code : CS 225
Course Description :
This course provides a theoretical introduction and a hands-on experiential learning of today's operating systems used in personal computers and servers. The course explores Windows, Unix and Linux and tools used by administrators and users in managing these systems. Included is instruction for configuring, implementing and managing network and internet resources and services.
Credit : 3
Prerequisites :
CS115X, CS 115 or waiver
Course Code : CS 230
Course Description :
Focuses on evolving trends in global communication. Concentrates on developing web pages using formatted text, tables, image maps, graphics and frames in basic HTML, and Active Server Pages are introduced. Individual web design projects are developed. Previously named: Emerging Technologies Web Page Design, Spring 2019 and earlier.
Credit : 3
Prerequisites :
CS115, CS115X
Course Code : CS 231
Course Description :
The rise of digital technologies has changed culture and values in society. In turn, this has created significant areas of risk in the ethical use of technology. This course will focus on the ethical dilemmas that exist between humans, technology, and information. Students will examine the responsible use of technology by businesses and individuals and how it relates to their own responsibilities as digital citizens. The main objective for this course is to provide a modern ethical perspective on the infusion of technology into our everyday lives.
Credit : 3
Course Code : CS 238
Course Description :
This course will examine the evolution of data communications as a tool for commercial transactions. The history of networks and the Internet in transacting business will be reviewed. The marketing, financial and technical components of the e-commerce market will be examined so that students will be familiar with the motivations and operations of this rapidly growing worldwide marketplace. E-commerce will be analyzed as the primary facilitator in the globalization of the world economy. The technical aspects of planning, developing and implementing e-commerce web sites and electronic transfers of business transactions will be studied. The costs and benefits of typical E-commerce technical platforms using Windows and Linux (LAMP) webservers will be analyzed.
Credit : 3
Prerequisites :
CS 115 or waiver, CS115X
Course Code : CS 240
Course Description :
This course provides an introduction to the development of software applications with a graphical user interface that can be deployed on a Windows or Web platform. Using Visual Basic and the .Net environment, students will learn to design, code, debug and test structured, eventdriven computer and web applications. Course concepts include objects, properties, methods, events, forms, menus, loops, control structure, arrays, functions, procedures and active server pages.
Credit : 3
Prerequisites :
CS225
Course Code : CS 260
Course Description :
This course introduces the student to the logical and physical development of contemporary databases, with particular emphasis on the relational database model. Topics include types of databases, major data models, database design procedures, and normal forms. Hands-on experience illustrates the creation, maintenance, and reporting of business databases using SQL.
Credit : 3
Prerequisites :
CS219, CS195
Course Code : CS 285
Course Description :
The course will teach students about the use of computers and business data networks to solve management and corporate problems. The course examines the components and concepts of management information systems in managing information in business environments. The evolution and future direction of current corporate and institutional computing environments will be analyzed. The impact of emerging e-commerce marketplaces on corporate strategies and infrastructure will also be examined. The ways in which businesses develop or procure information technology resources and systems will be discussed. Case studies will be used for illustrate key concepts in systems development, implementation and management. In addition, students will learn how businesses manage and protect critical information and data.
Credit : 3
Instruction methods : Lecture: 3 Hours
Prerequisites :
CS219
Course Code : CS 301
Course Description :
This course presents the design and organization principles of computers, starting with how computers implement basic arithmetic and logic instructions, and continuing with how to develop a simple instruction set, and the processor hardware to support it. The course also covers principles of a hierarchical memory consisting of cache, main memory, and secondary storage, as well as I/O organization, instruction-level parallelism, and new topics in multi-core, multiprocessor design.
Credit : 3
Instruction methods : Lecture: 3 Hours
Prerequisites :
CS195
Course Code : CS 310
Course Description :
An overview of the knowledge necessary to understand HIT (healthcare information technology) and develop skills in HIT management, including topics in hardware, software, and communication systems; operational, management, and clinical applications; and selection, implementation, and valuation. The importance of HIT strategic alignment is evaluated and emphasized in the rapidly-changing economic, political, regulatory, and technological arenas of today’s healthcare industry, with specific application to networks, security, health records, administrative and financial systems, project portfolio management, and strategic competitive advantage.
Credit : 3
Prerequisites :
CS 115 or waiver
Course Code : CS 320
Course Description :
This course analyzes the theory, design, implementation and maintenance of current business voice and data networks. Topics include networking hardware, topologies, protocols, complex voice and data networks and using the Internet to transact business. The course includes lectures, hands-on projects, case studies and financial analyses of business networks. A lab is provided where the student can install system hardware and software, and administer and support network operations.
Credit : 3
Prerequisites :
CS225
Course Code : CS 327
Course Description :
This course explains the concepts and techniques related to application, network, and operating system security, and methods for testing security. Both Microsoft Windows and UNIX are covered, providing a broad range of information essential for the Web professional.
Credit : 3
Prerequisites :
CS320
Course Code : CS 334
Course Description :
The growth of the Internet and wide use of computers has increased the need for computer investigations. This course examines methods for conducting computer investigations in the investigators laboratory. Current forensic tools are examined and applied to the control of digital evidence on various operating systems.
Credit : 3
Prerequisites :
CS225
Course Code : CS 340
Course Description :
This course will instruct students how to use computer systems to analyze large datasets in order to gain useful insights, develop forecasts and make predictions. The course introduces several key aspects of data investigation: collection and organization, cleaning for efficiency and integrity, sampling, visual analysis, hypothesis generation, statistical testing and machine learning. Students will learn how to obtain information and transform it into a data set residing in a large database system for quick and reliable access and analysis. Students will also learn exploratory data analysis, visual and numerical, to gain understanding of the relationships, patterns and trends in the data. In addition, students will learn to use machine learning and analysis techniques for data sets that are too large for traditional statistical analysis. The emphasis of the course will be on applied techniques of data analysis for business or social science decision making. The course will utilize widely used, open source software such as Python, MySQL, or (statistical package.)
Credit : 3
Instruction methods : Lecture: 3 Hours
Prerequisites :
MA207, PS208, BU305
Course Code : CS 344
Course Description :
This course discusses the acquisition and analysis of data as well as image recovery tools, data compression and the restoring of graphical objects. Included are network forensic tools and the examination of E-mail crimes and violations.
Credit : 3
Prerequisites :
CS334
Course Code : CS 348
Course Description :
This course examines real-world applications of database security and auditing models. These concepts are integrated with planning, organizing and implementing disaster recovery procedures as applied to business data systems.
Credit : 3
Prerequisites :
CS260
Course Code : CS 355
Course Description :
The focus of this course will be on developing Web applications that deliver dynamic content to a Web site by providing for interactivity through server side programming. Students will develop multi-tier Web applications which connect to back-end databases. Previously named: Web Applications Using ASP.NET, Spring 2019 and earlier
Credit : 3
Prerequisites :
CS195
Course Code : CS 360
Course Description :
This course will provide instruction for developing and deploying applications for mobile devices that use the Android or iOS, the two most popular platforms. The focus of the projects will be applications that support business or institutional requirements. Students will develop applications that are part of Web services and native applications that function on the devices alone.
Credit : 3
Instruction methods : Lecture: 3 Hours
Prerequisites :
CS195, CS230
Course Code : CS 420
Course Description :
Introduces the concepts, approaches, and techniques of artificial intelligence, emphasizing both the underlying theory and its applications. Topics include intelligent agents, problem solving by searching, adversarial search, constraint satisfaction problems, logical agents, first-order logic, inference in first-order logic, quantifying uncertainty, probabilistic reasoning, and learning from examples.
Credit : 3
Prerequisites :
CS196
Course Code : CS 499
Course Description :
Offers qualified students the opportunity to pursue independent, in-depth research in selected areas under the guidance of a member of the faculty. Limited to junior and senior Computer Science and Computer Information Systems majors. School of Business and Computer Science Approval.
Credit : 2
Take 1 course & corresponding lab from:
Take 1 course & corresponding lab from:
Course Code : PY 201
Course Description :
Focuses on the fundamental principles and phenomena of physics; motion, Newton's Laws, work and energy, momentum, rotational dynamics and machines. Course is quantitative and closely allied with mathematics.
Credit : 3
Prerequisites :
MA131, MA221, MA220
AND
Course Code : PY 201L
Course Description :
Tests the laws derived in PY 201 through experimentation.
Credit : 1
Instruction methods : lab: 3 Hours
Co requisites :
PY201
OR
Course Code : BI 101
Course Description :
The first course in a two-semester introductory biology sequence. Covers molecules, cells, genetics, and evolution.
Credit : 3
Prerequisites :
MA130
Co requisites :
MA 113 or higher.
AND
Course Code : BI 101L
Course Description :
Laboratory explorations on topics covered in BI 101.
Credit : 1
Prerequisites :
MA130
Co requisites :
BI 101.
OR
Course Code : CH 111
Course Description :
Introduces fundamental concepts of stoichiometry and thermochemistry; ionic and covalent bonding are discussed as functions of electronic structure; properties of gases, liquids, solids and solutions are explored. Students dropping CH 111 should automatically be dropped from CH 011.
Credit : 3
Prerequisites :
MA130
AND
Course Code : CH 111L
Course Description :
Laboratory that accompanies CH 111. Incorporates experiments in substance separation, identification, and synthesis, and for determination of physical and thermodynamic constants. Introduces research literature format.
Credit : 1
Instruction methods : lab: 3 Hours
Co requisites :
CH111
Note
NOTE: Computer Science majors are strongly encouraged to participate in an internship (BU 487).

