Become a problem-solver in the field of technology when you earn the online computer science degree at Southern New Hampshire University. Our undergraduate computer science program is primarily experiential and applied, not theoretical; students will work on real-world problems in courses that emphasize the design and development of computer software.
You'll dig deep into the science behind modern computing, absorbing programming languages, operating systems, systems architecture, quality assurance and the software development life cycle. You'll learn the ins and outs of languages such as Python, Java and C++; operating environments like Linux, Windows and mobile; as well as software development and testing platforms, including Netbeans, Eclipse, OpenGL and Maven.
SNHU's online BS in Computer Science program sets you up for the real world's demands. Our hands-on approach gives you experience that can make your resume shine and your skill set stand out.
Upon completion of the BS in Computer Science, you'll be able to:
As a private, nonprofit university, SNHU has one mission - to help you see yourself succeed. The benefits of earning your online computer science degrees at SNHU include:
Our online computer science degree positions you for roles like applications and software developers and computer systems analysts. Jobs in this field typically demand a bachelor's degree - and there's oftentimes a shortage across industries. According to the U.S. Bureau of Labor Statistics, projections estimate growth to be faster than average, a minimum of 17%.*
The curriculum for our computer science degree online emphasizes the design and development of computer software, providing you with the necessary math, science and engineering skills you’ll need for career success. Students must complete core courses (CS-200, IT-201, IT-145, PHY-101 and 101L, DAD-220 and MAT-225) before enrolling in program courses.
This course introduces the role of computer software in a variety of industries. Principles of hardware, software, computation, and algorithm development are introduced. Students will learn the fundamentals of basic programming concepts, including data types, variables, control structures, logical expressions, and arrays.
Structured Query Language (SQL) is at the heart of most data systems. In this course, students will learn the basics of SQL programming as it relates to both database management and data manipulation. This course will also provide students with an overview of more advanced topics such as embedded SQL, function calls, and stored procedures.
This course provides the hardware/software technology background for information technology personnel. Hardware topics include CPU architecture, memory, registers, addressing modes, busses, instruction sets and a variety of input/output devices. Software topics include operating system modules, process management, memory and file system management. Also included are basic network components and multi-user operating systems. Offered every year.
This course is an introduction to the design, implementation, and understanding of computer programs. The course emphasizes programming as a problem-solving technique in business and engineering applications. Students will write computer code in a logical, structured, and organized manner. The course also covers the key concepts of object orientation, including inheritance, encapsulation, polymorphism and communication with messages. Other topics include classes and objects, base classes and class hierarchies, abstract and concrete classes. Students will learn to write, review and document interactive applications and working with Software Development Kits and Integrated Development Environment tools. Offered every year. This is a programming course and lab intense. Prerequisite or Concurrent: IT 100
Calculus is the mathematical study of change that has widespread applications in science, engineering, economics and business. This course provides a rigorous introduction to single-variable calculus. Topics include limits, continuity, differentiation and integration of algebraic, trigonometric, exponential, and logarithmic functions, applications of derivatives, and integration, including the Fundamental Theorem of Calculus. This course will encourage students to think beyond memorizing formulas and to work towards understanding concepts. Students may not take both MAT 210 and MAT 225 for credit.
Principles of Physics is an algebra based course that explores the major topics in physics, such as motion and forces, gravity and projectiles, energy and work, thermodynamics, vibrations and waves, electricity and magnetism, solids and fluids, light and optics, and atomic and nuclear physics.
This course will use laboratory techniques to study the fundamental principles of physics. Topics such as motion and forces, gravity and projectiles, and energy and work will be covered along with other topics important to physics.
Students build upon their knowledge of the software development lifecycle through a project based experience. All phases of activity within the lifecycle, including analysis, design, development, testing, deployment, maintenance, and retirement are explored. Software development methodologies are examined and how they affect the way each phase of activity is conducted.
In this course, students learn about current and emerging data structures including lists, maps, and sets. Algorithm development are covered with emphasis on creating algorithms that solve processing problems.
Students learn how to collaborate on a software project. Change control and versioning are covered including technologies appropriate for supporting collaboration on a project in a distributed workforce with remote contributors.
In this course, students learn about software engineering testing strategies and practices. The course covers how software quality assurance techniques are used through the software development life cycle, including requirements analysis, verification and validation, and quality management.
Students will examine current and emerging programming technologies and will use a higherlevel programming language to write a software system. Object-oriented programming is covered.
Students examine current and emerging programming technologies and use a higher-level programming language to write a software system. Object-oriented programming is covered.
Taken in the student's final term, the capstone course is the culminating experience for the Bachelor of Science in Computer Science. This course builds on the theories and concepts of all courses students have taken within the program of study. The capstone course provides students with the opportunity to design, develop, document, and test an original application that is approved by their instructor, while assessing their level of mastery of the stated outcomes of their degree program in computer science. In addition, students utilize a higher-order programming language in their final capstone assignment.
A large portion of data analytics focuses on identifying meaningful patterns in data. Using a case studies approach, students will examine effective strategies that blend both hypothesis testing and data-driven discovery methods to identify meaningful data patterns and apply that knowledge to common business problems. Emphasis will be placed on data-mining tasks such as classification, clustering, and sequential pattern discovery.
This course provides an introduction to the structure and functioning of the UNIX operating system. It is designed to give students a solid foundation in the design and organization of the operating system and to teach the basic set of UNIX commands. Offered as needed.
This course develops software systems engineering principles combining object-oriented design principles and methods augmented by computer assisted engineering (CASE) technology. The course involves use of the unified modeling language (UML) and, through the vehicle of a student group project, applies these elements to the system development life cycle. This course is writing intensive, as student project teams are required to submit a comprehensive project report and a PowerPoint presentation. Specialized Systems Development Computer Laboratory intensive and open laboratory intensive. Offered every year. Writing intensive course.
This course will introduce students to operating environments used in today's business computing environments, including enterprise level systems down to mobile devices. Students will learn the components in an operating system and how they interact with each other and with system hardware and application software. Students learn how to write programs that take full advantage of operating support.
This is a first course in linear algebra and matrices. Topics include systems of linear equations, linear independence, matrices of linear transformations, matrix algebra, determinants, vector spaces, eigenvalues and eigenvectors. After mastering the basic concepts and skills, students will use their knowledge of linear algebra to model a selection of applied mathematics problems in business, science, computer science and economics.
Elective: Students select 12 credit hours in DAD, DAT, GAM, IT, or ISE with a minimum of 6 credits at the 300 to 400 – level
Free Elective Credits: 9
Total Credits: 121
Tuition rates for SNHU's online degree programs are among the lowest in the nation. We offer financial aid packages to those who qualify, plus a 30 percent tuition discount for active-duty service members and their spouses.
*Tuition rates are subject to change. Changes are generally implemented in June each year.
Additional Costs Books (course by course).
Students are responsible for providing their own internet access.
Southern New Hampshire University is a private, nonprofit institution accredited by the New England Association of Schools and Colleges as well as several other accrediting bodies. More...
* Bureau of Labor Statistics, U.S. Department of Labor, Occupational Outlook Handbook, 2010-11 Edition, on the Internet at Computer Systems Analysts and Software Developers (viewed online October 18, 2016)