site hit counter

Online Degree Computer Science | California State University

Online Bachelor Degree of Science in Computer Science

The California State University at Chico offers online degree in computer science. This article is a review of the online Bachelor of Science degree in computer science offered by California State University at Chico.

What is computer science? The Computing Science Accreditation Board defines Computer Science as follows:

"Computer Science is the body of knowledge concerned with computers and computation. It has theoretical, experimental, and design components and includes:
theories for understanding computing devices, programs, and systems;
experimentation for the development and testing of concepts;
design methodology, algorithms, and tools for practical realization; and
methods of analysis for verifying that these realizations meet requirements."

The online degree in Computer Science offered by California State University is accredited by the Computing Science Accreditation Board. Their online degree courses integrates technical computer science requirements with institutional requirements to prepare students for a career in computer science or to further their studies.
The focus of the online degree in computer science at California State University is on the evaluation and application of automated systems. These include system analysis, machine architecture, programming languages and operating systems.

The faculty at California State University, Chico that offers the online degree in computer science consists of an experienced group of scholars and professionals. All of them have their own specialties. These include programming language, operating systems, systems analysis, software engineering, computer networks, artificial intelligence, object-oriented methodologies, numerical analysis, computer graphics, database management, compiler theory, microprocessors, data communications, and distributed systems.

Computer-related career continues to remain as one of the most well-paid career in U.S., and given the continuous expansion and development of technological science, employment of trained computer scientists remains very high for many years to come.

The California State University (CSU), Chico, has been a leader in distance education for more than 30 years. They had delivered high quality, online computer science degree to people across the globe. More than 90% respondent who took part in a recent survey are satisfied or are very satisfied with the online degree in computer science offered by CSU. Some 85% responded that they would recommend the online degree program to others.

CSU listed the following benefits of their online degree in Computer Science: The online bachelor degree in computer science is accredited by the Western Association of Schools and Colleges and the Computing Accreditation Commission of ABET. The online degree program is also a very well-established program with experienced teaching and advising offered by the faculty of CSU.
As the Bachelor of Science in Computer Science is offered totally online, you may study at your own pace. All lectures are offered through video streaming.
The followings are a detailed description of the subjects offered under the online degree in Computer Science at CSU:

CSCI 111 – Programming and Algorithms I in Java

Students who wish to pursue this course from the degree in computer science must have at least one year of high school algebra. This course covers software life cycle, algorithms and role in software design.


CSCI 112 – Programming and Algorithms II in C++


This course from the online degree in computer science at CSU continues the study of softwares specification, design, implementation, debugging techniques, fundamental data structure and associated algorithms. The course also covers dynamic memory, file I/O, linked lists, stacks, etc.

CSCI 221 – Assembly Language Programming

Topics covered under this course include number systems and their rules for arithmetic; basic central processing unit (CPU) organization concepts such as registers, data paths, the arithmetic and logic unit (ALU), and the interface to random access memory (RAM); instruction formats, addressing modes and their uses with a variety of data structures; and parameter passing techniques including the use of a stack frame.

CSCI 301 – Computer's Impact on Society
This course from the online degree in computer science covers issues on impact of computers and high-tech systems on people, institutions, organizations, and environment. The course further examines the law, medicine, education, government, data banks, privacy, computer security, changing work, automation, robots, expert systems, AI, social responsibility, ethics, war, and conflict resolution.

CSCI 311 – Algorithms and Data Structures in Java

This course from the online degree in computer science introduces students to object-oriented software design methodologies and implementation alternatives for various fundamental data structures and problems in computer science. The courses also explores  multithreading in concurrent and distributed programming.

CSCI 311 -- Algorithms and Data Structures in C++

This course from the online degree in computer science focuses on object-oriented methodologies in designing and implementing a variety of data structures and algorithms. Coverage includes recursion, trees, search structures, hashing, heaps, sorting algorithms, and graph algorithms. Data structure and algorithm combinations will be studied and analyzed along with their relative merits using both mathematical and empirical measurements.

CSCI 315 – Programming Languages
This course investigates into the structure and syntax of current programming languages, including binding, scoping, data types, transfer-of-control structures, subprograms, abstract data types, object-oriented programming, and functional programming. In addition to these topics, this course provides an in-depth look at a modern language system: the Microsoft .NET Framework.

CSCI 320 – Computer Architecture
The course introduces basic digital logic design techniques and integrates the topics of assembly language programming, computer organization, and computer design. Topics include the design of the arithmetic and logic unit (ALU), hardware multiplication and division, multiple clock cycle implementations, pipelined implementations, hazard detection and forwarding, design of a memory hierarchy, system busses and the design of a direct memory access (DMA) controller, cache consistency in multiprocessor systems, and implementation of a snooping cache.

CSCI 330 – Software Engineering
Special problems in the development of large software systems. Software life cycle, requirements analysis, structural design, implementation, costing, standards, verification, and validation.

CSCI 340 – Operating Systems Programming
Operating system fundamentals, including history, process and thread management, concurrency with semaphores and monitors, deadlocks, storage management, file systems, I/O, and distributed systems.

CSCI 448 – Survey of Computer Security

This course from the online degree in computer science  provides a broad overview of some of the more technical aspects of Information Systems Security. The content is designed to prepare students for the Certified Information Systems Security Professional/Associate (CISSP/A) examination from the International Information Systems Security Certification Consortium (ISP2), including a discussion of each of the following topics: security management practices; access control systems; telecommunications and network security; cryptography; security architecture and models; operations security; applications and systems development; business continuity planning and disaster recovery planning; law, investigation, and ethics; and physical security.

CSCI 465 – Web Programming Fundamentals
This course from the online degree in computer science is a comprehensive introduction to the major technologies used in the construction of interactive, client-server Web sites. Emphasis is placed on the protocols and standards used for exchanging data between the client and server programs. Both client and server side implementation methods are discussed using programming and scripting languages for the creation of dynamic Web pages.

CSCI 470 – Database Management
This course provides an introduction to the theory and methodology for database design and implementation. Topics may include a survey/lecture component as well as a project component. The survey component covers entity-relationship modeling, relational algebra and calculus theories, data definition and data manipulation languages such as SQL, file structures, transactions, concurrency control, recovery, tuning and optimization, and object-oriented databases. The project entails requirements definition, design, and implementation of a database application.

CSCI 511 – Object-Oriented Programming & Implementations in Java
This class focuses on object-oriented programming using the large class libraries and interactive programming environments provided in the Java Programming Language. Topics include both design considerations (e.g. model/view/controller architectures) and the programming constructs of user-interfaces, multi-threaded systems, I/O, database connectivity (JDBC), exception handling, and distributed computing (client/server programming with sockets).

CSCI 515 – Compiler Design
The elements of lexical, syntactical, and semantic analysis including finite and push-down automata, top-down and bottom-up parsing, error detection and recovery, semantic actions and code generation.

CSCI 540 – Multi-User Operating Systems

An analysis of multi-user operating systems, to include an in-depth study of current techniques used by a specific multi-user OS.

CSCI 547 – Computer Networks
This course from the online degree in computer science covers the concepts, vocabulary, design issues, and techniques currently used in the area of computer networks. Topics include history and evolution, transmission media, interconnection topology, control methods, protocols, types of nodes, network interfaces, performance analysis, diagnosis and maintenance, taxonomy, bridges, and gateways. Case studies of existing state-of-the-art networks are included.

CSCI 550 – Theory of Computing
An introduction to formal languages, grammars, and automata theory with unsolvable problems.

CSCI 566 – Computer Graphics
This course covers algorithms and data structures in computer graphics. Topics include output primitives and their attributes, 2-D and 3-D geometric transformations and viewing, 3-D object modeling, parallel and perspective projections, visible surface detection, illumination models, and rendering algorithms.

CSCI 567 – Graphical User Interface Implementation
This course of the online degree in computer science introduces the student to the implementation of graphical user interfaces using object-oriented programming. We will utilize the Java programming language and the Swing API. Learn to give your applets and applications a sophisticated graphical user interface! Previous knowledge of the Java language is not required, but at least 3 semesters of previous experience programming in an object-oriented language is expected.

CSCI 570 - Advanced Database Management Systems
Course topics include database application programming using a high performance, high concurrency multi-user database management system. This course covers the SQL programming language including Data Definition Language, Data Manipulation Language, and Data Control Language. The course then focuses on a procedural database programming language including control structures, composite datatypes, explicit cursors, exception handling, and writing embedded SQL applications.

CSCI 580 – Artificial Intelligence
An introduction to the basic principles, techniques, and applications of Artificial Intelligence. Coverage includes knowledge representation, logic, inferencing, problem solving, search algorithms, game theory, perception, learning, planning, and agent design. Students will program with AI language tools. Additional areas may include expert systems, machine learning, natural language processing, and computer vision.

CSCI 598 – Advanced Topics in Computer Science: Data Mining
This course from the online degree in computer science introduces the student to basic concepts, tasks, methods, and techniques in data mining; in particular, the course focuses on practical machine learning tools and techniques used in data mining. Students will develop an understanding of the data mining process and issues, learn various techniques for data mining, and apply the techniques in solving data mining problems using data mining tools and systems. Students from departments such as Biology, Mathematics, and Electrical & Computer Engineering who are working in interdisciplinary research (e.g., bioinformatics, modeling, data analysis) are especially encouraged to take this course.

CSCI 598 – Advanced Topics in Computer Science: Mobile/Wireless with J2ME
This course from the online degree in computer science is an introduction to programming for consumer devices, such as mobile phones, PDAs, TV set-top boxes, and other embedded devices. The Java 2 Platform, Micro Edition (J2ME) includes Java virtual machines and a set of standard Java APIs that provide flexible user interfaces, a robust security model, a broad range of built-in network protocols, and support for both networked and offline applications. The J2ME platform is deployed on millions of devices, supported by leading tool vendors, and used by companies worldwide.

CSCI 598 – Advanced Topics in Computer Science: The .NET Framework
An investigation into the structure and syntax of current programming languages, including binding, scoping, data types, transfer-of-control structures, subprograms, abstract data types, object-oriented programming, and functional programming. In addition to these topics, this course provides an in-depth look at a modern language system: the Microsoft .NET Framework. The key features of the .NET Framework that will be covered include the Common Language Infrastructure (CLI), .Net Assemblies, .NET Metadata, Security, and the Common Language Runtime (CLR). We examine how these features provide programming language interoperability.

CSCI 611 – Distributed Computing
Advanced programming in Java covers programming for both single system software distribution and across networks/devices. In this course, particularly, we will cover the advanced topics that a Java programmer will need to know so that they will be in a position to do commercial Java development both for single services and for distributed processes across multiple devices. The course provides an in-depth coverage of object serialization, Java Beans, XML, Servlets, JSP's, networking, remote objects (RMI), and distributed computing through Jini, Java Message Services and JavaSpaces.

CSCI 620 – Computer Architecture
This course in the online degree in computer science provides a thorough and fundamental treatment of the art of computer architecture. Topics include concepts of von Neumann architectures, methods of evaluating CPU performance, instruction-set design and examples, compiler issues, instruction pipelining, superscalar processors, methods for reduction of branch penalty, memory hierarchies, I/O systems, floating-point arithmetic, and current issues in parallel processing.

CSCI 630 – Software Engineering
In-depth study and application of the planning, design, implementation, and management of complex software systems. Topics include requirements engineering, use case development, object-oriented analysis, software architecture, design patterns, and more.

CSCI 639 – Topics in Software Engineering
This is the continuation of a two-course sequence addressing the practical aspects of software development emphasizing object technology and process. This course continues the topics of CSCI 630 and includes software architecture, use case design using Rational Rose or other suitable tools to realize class and interactive diagrams, design patterns, user interface design, frameworks, technologies for web-based application development, code generation, testing, and other related topics.

CSCI 640 – Operating Systems
In-depth study of operating systems concepts including results from recent research.  Topics may include processes, threads, virtual memory, file systems, distributed computing, scheduling, protection, and communication protocols.  Students may be required to implement operating system projects.

CSCI 650 – Design and Analysis of Algorithms
Algorithms from many areas of computer science will be analyzed. Topics include algorithm design techniques (such as divide-and-conquer, greedy algorithms, dynamic programming, and others), mathematical and empirical analysis of algorithms, and NP-completeness.

CSCI 679 – Oracle Database 10g – Architecture and Administration including Networking and Basic Backup and Recovery
Oracle DBAs manage the industry's most advanced information systems and command some of the highest salaries. In this class, students learn how to install Oracle components as well as create and maintain an Oracle database.  Students will gain a conceptual understanding of the Oracle database architecture and how its components work and interact with one another. Students will also learn how to create an operational database and properly manage the various structures in an effective and efficient manner including performance monitoring, database security, user management, and backup/recovery techniques.  Powerful new Oracle tools are featured throughout the course.  The lesson topics are reinforced with structured hands-on practices. 

CSCI 679 – Oracle 10g Backup, Recovery and Performance Tuning (Database Administration)
This course from the online bachelor degree in computer science advances knowledge as an Oracle professional in the area of database administration. Students learn how to configure an Oracle database for multilingual applications. Various methods of recovering a database using RMAN, SQL, and Flashback technology are practiced. Tools to monitor database performance and steps to improve database performance are also covered. Students also learn how to use various database technologies, such as the Resource Manager, the Scheduler, and Automatic Storage Management (ASM). Lesson topics are reinforced with structured hands-on practice. CSCI-679 Oracle 10g Database Administration Workshop I and this course are designed to prepare students for the Oracle Database 10g: Database Administrator Certified Associate and Certified Professional Exams.

CSCI 682 Seminar in Artificial Intelligence: Computer Games
This course from the online degree in computer science focuses on the aspects of Artificial Intelligence used in Game Programming. Intelligence is a factor in game design which is being taken more seriously by game developers and producers than ever before. This course will look at AI in games from the early days of Checkers and Chess to making characters appear more interesting and believable as "living" creatures in today's games. Not just for gamers; topics include knowledge acquisition, decision-making processes, pattern recognition, use of intelligent agents, dealing with adversaries and much more.

Fees of the Online Degree in Computer Science at California State University

The course fees in the CHICO Computer Science Program is $1,675 per student per 3-unit course. This fees do not include course materials or textbooks.  

 
Your Ad Here
Pursuing an online bachelor degree is the right option if you would like to have a brighter future. Many of those who own a degree online has been able to secure high salary career much better than those who do not hold a degree.