The Bachelor of Science in Computer Science curriculum is designed to provide in-depth professional training in a range of current computer science subjects, including structured programming, object-oriented analysis and program design, computer organization principles and industry-wide operating systems, database principles and applications, and principles of computer networks. It is designed to equip the student with both a theoretical background and hands-on experience. The curriculum provides training in software engineering and prepares the students for employment in computer software related areas, such as computer software design and development, and computer software applications in computer networks and Internet systems. The computer training will enable the students to work with computers as programmers, program and/or systems analysts, software engineers, computer systems administrators, database developers or administrators, Internet application software engineers, and technical program managers. After completing the undergraduate degree, a student is also prepared to enter an advanced degree program in a computer science related field if he/she desires.
A minimum of 129 units are required for graduation. They include the following:
- 39 units of general education courses including 12 units in English and communications, 9 units in humanities, 9 units in mathematics and natural sciences, and 9 units in social sciences,
- 75 units of major courses, and
- 15 units of electives.
1. General Education (minimum 39 units)
The purpose of general education is to give breadth to the student’s education. With a general background in English and communications, humanities, mathematics, natural sciences, and the social sciences, the student will be prepared for his/her roles both in society and at work. Students who have not completed the general education requirements upon entering a degree program at NPU are required to observe the following curriculum to meet the general education requirements.
(a) English and Communications (12 units)
ENGL101 is a required course. Other listed courses are suggested subjects.
(b) Humanities (9 units)
The following are suggested subjects.
|HU210||Introduction to Philosophy||(3)|
|HU280||Principles of Ethics||(3)|
(c) Mathematics and Natural Sciences (9 units)
MATH201 and MATH208 are required courses. PHYS101 is a suggested subject.
|PHYS101||Introduction to Physical Sciences||(3)|
|MATH201||Calculus – I||(3)|
(d) Social Sciences (9 units)
The following are suggested subjects.
|SOC275||The American Experience||(3)|
2. Major Requirements (minimum 75 units)
([Engineering mathematics, science, digital circuits basics, and computer science; a course to prepare for professional career)
|IT200||Introduction to Computers and Digital Media||(3)|
|MATH202||Calculus – II||(3)|
|PHYS201||Physics – I||(3)|
|PHYS201L||Physics Lab – I||(1)|
|PHYS202||Physics – II||(3)|
|PHYS202L||Physics Lab – II||(1)|
|CS204||Program Design and Analysis in C Language||(3)|
|CS204L||C Programming Lab||(1)|
|CS230||Introduction to Unix/Linux||(3)|
|EE205||Fundamentals of Digital Electronics||(3)|
|EE205L||Digital Electronics Lab – I||(1)|
|CS350L||Data Structures Lab||(1)|
|CS360||Object-oriented Programming in C++||(3)|
|CS360L||Object-oriented Programming in C++ Lab||(1)|
|CS385||Unix/Linux Shell and Python Scripting||(3)|
|CS385L||Unix/Linux Shell and Python Scripting Lab – II||(1)|
|CE450||Fundamentals of Embedded Engineering||(3)|
|CE450L||Embedded Engineering Lab||(1)|
|CS457||Data Modeling and Implementation Techniques||(3)|
|CS457L||Database Technologies Lab||(1)|
|CS470||Network Engineering and Management||(3)|
|CS470L||Network Engineering Lab||(1)|
|CS480||Java and Internet Applications||(3)|
|CS480L||Java Programming Lab||(1)|
3. Electives (minimum 15 units)
The student may select courses in any discipline to fulfill this requirement to promote breadth as well as depth in their study program. Course prerequisite requirements must be met. When applicable, the student may take curricular practicum courses and engage in practical training to work on company projects that are directly related to the student’s course of study. Students interested in research and development work may select to enroll in the Senior Design Project course series and work under the guidance of a project advisor. Detailed course requirements for the Senior Design Project course series are posted on the Online Service Center.