Curriculum

The Computer Science-Software Development degree completion program includes courses in the following areas:

  • Foundations of Computer Science
  • Data Structures and Algorithms
  • Computer Networks and Telecommunications
  • Database Management Systems
  • Web Application Programming
  • Software Development
  • Software and Systems Engineering
  • Computer Organization and Architecture
  • Computer and Information Security
  • Technology and Society
  • Software Application Practicum

Course List:

Title Course Credits Weeks
CSCI3103 Foundations of Computer Science 1 3 6
CSCI3113 Foundations of Computer Science 2 3 6
CSCI3123 Data Structures and Algorithms 3 6
CSCI3013 Computer Networks and Telecommunications 3 6
CSCI3133 Database Management Systems 3 6
CSCI3143 Web Application Programming 3 6
CSCI3004 Software Development 4 8
CSCI3024 Software and Systems Engineering 4 8
CSCI4011 Software Application Practicum 1 1
CSCI3054 Computer Organization and Architecture 4 8
CSCI4003 Computer Information Security 3 6
CSCI4021 Software Application Practicum 2 1 2
CSCI3083 Technology and Society 3 6
CSCI4031 Software Application Practicum 3 1 2
Total 39 76

Course Descriptions:

CSCI3103
Foundations of Computer Science 1 [3]

An introduction to Computer Science using the Java programming language. Topics include: fundamental concepts of computer systems and software development; algorithm design and implementation using subroutines, functions and arrays; introduction to object-oriented programming and graphical user interfaces; and consideration of ethical issues related to computers and technology.
Prerequisite: CSCI1033, or a course in computer programming, or a passing score on the Computer Science Placement Exam; and MATH1053 or a course in discrete mathematics.

CSCI3113
Foundations of Computer Science 2 [3]

This course is a continuation of CSCI3103, emphasizing object-oriented software design and programming using the Java language; introduction to common data structures such as lists, stacks, queues, and trees; introduction to fundamental concepts of abstraction, recursion, computational complexity and software testing methods.
Prerequisite: CSCI3103 Foundations of Computer Science 1.

CSCI3123
CSCI3123 Data Structures and Algorithms [3]

A study of common data structures including lists, stacks, queues, trees, graphs and networks, algorithm design methods, and object-oriented design and implementation.
Prerequisites: CSCI3113 Foundations of Computer Science 2.

CSCI3013
Computer Networks and Telecommunications [3]

A study of networking and telecommunication concepts, models, standards, addressing, and protocols. Topics include advances in wireline and wireless networks, Ethernet, optical networks, broadband including DSL and cable, cellular networks, and network security and management. Network management and administration is also discussed.
Prerequisite: CSCI3103 Foundations of Computer Science 1.

CSCI3133
CSCI3133 Database Management Systems [3]

A study of database models, designs, organization, normalization, integrity, and distributed database systems. Includes lab project work in design and implementation of relational databases, and software applications that use databases.
Prerequisites: MATH1053 Elementary Discrete Mathematics, and CSCI3103 Foundations of Computer Science 1.

CSCI3143
Web Application Programming [3]

This course introduces web programming methods using both PHP and JavaScript languages. The course will cover web programming concepts, client-server architecture, database access and web user interfaces with XHTML with Cascading Style Sheets. Students will use an Apache Web Server with MySQL database. Students will write a web application as their final project.
Prerequisites: CSCI3113 Foundations of Computer Science 2, and CSCI3033 Database Management Systems.

CSCI3004
Introduction to Software Development [4]

An introductory course in software development. Concepts include software specifications and design, methodologies for software organization and development, user interfaces, file processing techniques, and software debugging, testing, and documentation.
Prerequisite: CSCI3123 Data Structures and Algorithms.

CSCI3024
Software and Systems Engineering [4]

A study of the planning, specification, design, implementation, validation, documentation and management of computer software and computer systems. Participation in a major group project is required.
Prerequisites: CSCI3033 Database Management Systems, and CSCI3004 Introduction to Software Development.

CSCI3054
Computer Organization and Architecture [4]

A study of computer system logic, components, hardwired and micro-programmed control units, memory organization, and RISC architecture. A digital design laboratory is included.
Prerequisites: CSCI3113 Foundations of Computer Science 2, and MATH1053 Elementary Discrete Mathematics.

CSCI4003
Computer and Information Security [3]

An advanced study of computer and information security. Topics include threats, vulnerabilities, and associated response mechanisms used to protect an organization. Hardware and software solutions are presented with security-related models, principles, and concepts for analyzing and implementing organizational security programs. This course includes hands-on lab experience using current tools for analysis, monitoring and testing.
Prerequisite: CSCI3013 Computer Networks and Telecommunications.

CSCI3083
Technology and Society [3]

A study of technology’s impact on individuals, groups, and institutions. Special emphasis is given to worker displacement, computer illiteracy, environmental and health issues, depersonalization, computer crime, intellectual property, invasion of privacy and other ethical/legal issues.

CSCI4011
Software Application Practicum 1 [1]

An independent software development project selected in conjunction with the instructor. This course includes the project planning and requirements specification to define the project that will be completed in the remainder of the software practicum course sequence.
Co-rerequisite: CSCI3024 Software and Systems Engineering.

CSCI4021
Software Application Practicum 2 [1]

An independent software development project selected in conjunction with the instructor. This course includes refinement of the requirements specification, design, and initial implementation of prototypes for part of the project that will be completed in the final course of the software practicum sequence.
Prerequisite: CSCI4011 Software Application Practicum 1.

CSCI4031
Software Application Practicum 3 [1]

Completion of an independent software development project selected in conjunction with the instructor. This course includes the implementation, testing and final documentation of a project, based on the requirements and design completed in the previous courses of the software practicum sequence.
Prerequisite: CSCI4021 Software Application Practicum 2.

Terms of Use  |  Privacy Policy  |  Contact Us  |  Sitemap


Mount Vernon Nazarene University · 800 Martinsburg Road · Mount Vernon, Ohio 43050 · Tel: 740-392-6868


© 2014 Mount Vernon Nazarene University