Skip to content

Technology at Harrisburg University is more than just computer screens and keyboards. It’s a hands-on study of the complex information systems and peripherals that power our world and shape our future.

Choosing to major in computer and information sciences helps the student gain core knowledge of information sciences in order to integrate business and real-world perspectives, interpersonal and team skills, and the competencies that lead to a career in computer and information sciences. The ability to devise a solution and execute it is at the core of this program. The design of these solutions is what we call “creating a computation,” which involves the integration of a few key design notions of data representation, algorithms, programming, knowledge in systems, data security, and software engineering within one unified framework. The ultimate goal is to enable the student to understand a problem and build a general-purpose computer system from the ground up through a program of study that provides a sound computer information system engineering design experience.

Program Goals

Graduates of the ABET-accredited Bachelor of Science in Computer and Information Sciences program have to:

Five-Year Accelerated Bachelor of Science/Master of Science

HU’s Five-Year Accelerated BS/MS options in Computer & Information Sciences are designed to result in a baccalaureate degree in Computer and Information Sciences and a master of science degree in Information Software Engineering and Management. The student who demonstrates exceptional academic performance in the undergraduate Bachelor of Science program in Computer and Information Sciences may apply to this accelerated dual-degree program. These programs facilitate the student completing both degree programs in five years rather than the usual six.

Program Lead

 Saeed  Esmaili-Sardari, Ph.D.

Saeed Esmaili-Sardari, Ph.D. Associate Professor, ISEM program & Computer and Information Systems

View Profile

Program Courses

This program requires a total of 50 semester hours: 35 semester hours from the core courses listed below and 15 semester hours completed in the Individualized Concentration. The semester hour value of each course appears in parentheses( ).

CISC 120 – Programming I (4 credits)

This course introduces the concepts and techniques of computer programming. Emphasis is placed on developing the student’s ability to apply problem-solving strategies to design algorithms and to implement these algorithms in a modern, structured programming language. Topics include fundamental programming constructs, problem solving techniques, simple data structures, Object-Oriented Programming (OOP), program structure, data types and declarations, control statements, algorithm strategies and algorithm development.

CISC 160 – Data Structures (3 credits)

This lecture and laboratory course further develops the concepts and techniques of computer programming. Emphasis is placed on structured programming, top-down design, more advanced data structures, and the proper use of the programming language and development tools. Topics include abstract data types (ADTs), sets, records, recursion, problem solving and algorithms, fundamental computing algorithms, searching, introductory sorting, hash tables, basic algorithm analysis, Object-Oriented Programming (OOP), files, linked lists, queues, stacks, and binary trees.

CISC 211 – Computer Organization & Archiecture (4 credits)

The goal of the course is to teach the design and operation of a digital computer. It serves students in two ways. First, for those who want to continue studying computer architecture, embedded systems, and other low-level aspects of computer systems, it lays the foundation of detailed implementation experience needed to make the quantitative tradeoffs in more advanced courses meaningful. Second, for those students interested in other areas of computer science, it solidifies an intuition about why hardware is as it is and how software interacts with hardware. The subject matter covered in the course includes technology trends and their implications, performance measurement, instruction sets, computer arithmetic, design and control of a datapath, pipelining, memory hierarchies, input and output, and brief introduction to multiprocessors. Offered Semester II (Spring), annually.

CISC 225 – Information Syst Design & Analysis (3 credits)

This course is a foundation for database design and database security courses. Systems Analysis and Design is a fundamental, active field in which analysts continually learn new techniques and approaches to develop systems more effectively and efficiently. There is a core set of skills that all analysts need to know no matter what approach or methodology is used. All information systems projects move through the four phases of planning, analysis, design, and implementation; all projects require analysts to gather requirements, model the business needs, and create blueprints for how the systems should be built; and all projects require an understanding of organizational behavior concepts like change managememnt and team building. This course captures the dynamic aspects of the field by keeping the student focused on doing Systems Analysis and Design while presenting the core set of skills that the analysts needs to know.

CISC 233 – Essential Algorithms (3 credits)

This course covers the basic techniques used to analyze problems and algorithms, including asymptotic, upper/lower bounds, and best/average/worst case analysis. Amortized analysis, complexity, and basic techniques are used to design algorithms (including divide & conquer/greedy/dynamic programming/heuristics, choosing appropriate data structures) and important classical algorithms (including sorting, string, matrix, and graph algorithms). The goal for the student is to be able to apply all of the above to design solutions for real-world problems.

CISC 301 – Operating Systems (4 credits)

This course provides an introduction to the design and implementation of operating systems. The student is exposed to different operating systems on various computer platforms and is expected to develop a significant operating system programming project in this area. Topics include operating systems principles, computer architecture, concurrency threads, CPU scheduling and dispatching, memory management techniques, computer security and system administration using Windows XP, Unix and Linux.

CISC 325 – Programming Languages Concepts and (3 credits)

This course introduces the student to the fundamental concepts in design and implementation of programming languages. We examine the evolution and the theory of language design with respect to syntax and semantics of programming language. Different approaches to programming paradigms and feature inclusions are discussed both with respect to their utility for developers as well as the underlying programming models which enable these features. This course examines the full range of programming models and language paradigms, starting from imperative, functional, logic programming to the latest object-oriented programming languages.

CISC 399 – Formal Languages & Automata Theory (4 credits)

This course presents a study of formal languages and the correspondence between language classes and the automata that recognize them. Formal definitions of grammars and acceptors, deterministic and non-deterministic systems, grammar ambiguity, finite state and push-down automata, and normal forms will be discussed.

MATH 220 – Calculus I (3 credits)

This course introduces techniques to evaluate limits and covers continuity, special trigonometric limits, absolute value limits and differentiation of algebraic, trigonometric, and logarithmic functions. The course explores intermediate value theorem, mean value theorem, and extreme value theorem. Other topics for exploration are application and formal definition of derivative average rate of change versus instantaneous rate of change, velocity, and the introduction of the definite integral and its applications. A graphing calculator is required for this course.

MATH 250 – Introduction to Linear Algebra (3 credits)

As science and engineering disciplines grow so does the use of mathematics; new mathematical problems are encountered, and new mathematical skills are required. In this respect, linear algebra has an essential role in various engineering and scientific disciplines. This course develops the fundamental algebraic tools involving matrices and vectors to study linear systems of equations and Gaussian elimination, linear transformations, orthogonal projection, least squares, determinants, eigenvalues and eigenvectors and their applications. This course develops concrete computational skills along with theoretical considerations.

MATH 310 – Discrete Mathematics II (3 credits)

This course ensures that the computer science student reaches the level of mathematical maturity necessary for the study of Computer and Information Science. Topics covered draw on current material from the study of graphs, trees, relations, algorithms and models of computation.

Take the Next Step

Get More Information

Questions about our programs? Reach out to a member of our team and get personalized answers.

Apply Now

Create an account and start your free online application to Harrisburg University today.

326 Market St, Harrisburg, PA 17101
P: (717) 901-5100 Contact Us