Bachelor of ScienceComputer and Information Sciences
The ABET-accredited Computer and Information Science Bachelor of Science degree program focuses on the science behind the coolest gadgets and gear on the market.
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.
Graduates of the ABET-accredited Bachelor of Science in Computer and Information Sciences program have to:
- Apply theoretical constructs of mathematical analysis and sound reasoning to develop and deploy practical solutions for real-world problems;
- Evaluate computing system requirements sufficient for developing efficient computational solutions for real-world problems;
- Assimilate new methodologies and advances in computer technology in an ever-evolving discipline;
- Master the elements of effective written and oral communication of results to technical and non-technical audiences;
- Work independently and in collaboration with colleagues;
- Live up to the ethical standards of the profession and professional knowledge and skills to contribute to society; and,
- Develop an understanding of the code of ethics of the software industry (social contract); and, therefore a sense of what it means to be a good citizen.
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.
Saeed Esmaili-Sardari, Ph.D. Associate Professor, ISEM program & Computer and Information Systems
Full Time Faculty
Instructor of Computer & Information Sciences
Instructor of Computer Science
Associate Professor of Computer Science
Instructor of Mathematics & Computer Science
Corporate Faculty (MEBA)
Associate Professor of Computer Science
Professor of Computer Science
Instructor of Computer Science
Instructor of Computer Science
Instructor of Cybersecurity
Instructor of Software Engineering
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( ).
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
HU developing STEM careers for women in Latin America
A UN study establishes that less than 30% of scientific researchers in the world are women, a percentage that leaves…
Professor builds partnerships on Fulbright trip to Colombia
Harrisburg University of Science and Technology Computer Science and Analytics Professor Dr. Kevin Huggins is building bridges that lead to…
Faculty share SpacEscape game design experience at Serious Play Conference
Two Harrisburg University faculty members gave a presentation on the in-house development of SpacEscape, a mobile science learning game students…
HU ranked among best, most affordable computer science colleges in U.S.
Harrisburg University of Science and Technology has been ranked among the best, most affordable computer science colleges in the U.S….
App research helped prepare HU grad for grad school, career
At Harrisburg University, students don’t just study science and technology. They experience both firsthand. During their time at HU, students…
Mobile game development provides students hands-on coding, design experience
Harrisburg University students assisting with the development of a mobile learning game called SpacEscape have been exposed to hands-on coding…
Take the Next Step
Get More Information
Questions about our programs? Reach out to a member of our team and get personalized answers.
Create an account and start your free online application to Harrisburg University today.