Error message

(#10) To use 'Page Public Content Access', your use of this endpoint must be reviewed and approved by Facebook. To submit this 'Page Public Content Access' feature for review please read our documentation on reviewable features: https://developers.facebook.com/docs/apps/review.
Computer Science and Engineering Computer Science and Engineering Computer Science and Engineering Computer Science and Engineering Computer Science and Engineering

College of Arts & Sciences

Computer Science and Engineering

Questions?

Sun-il Kim
Wentz Science Center 148

630-637-5176

skim@noctrl.edu

Computer Scientists and Computer Engineers design and build hardware and software systems that operate devices from the smallest components in your smartphone and tablet to the largest satellites orbiting the globe. As the demand for these technologies continues to increase, so too does the need for computer scientists whose skills drive the next innovation.

Like many highly-rated computer science and engineering programs, our programs prepare our graduates to stay ahead of the curve, thanks to a solid theoretical foundation, a pragmatic curriculum that teaches the most widely used skills and languages, and opportunities outside the classroom, such as internships and student research projects.

What sets our program apart is the understanding that computer science isn't about building programs for computers. It's about building systems for people. Our curriculum helps you develop the skills employers consistently mention as highly valued, yet often absent in the profession--communication skills. At North Central you will learn to write, to speak and listen, and to work effectively with others.

Learn about: 

 

Computer Science, B.A.

Computer science offers a mix of theory of computation, software development, systems concepts, and computing applications. Our graduates are employed in a wide range of companies and research labs.

For additional programs and courses in this department, see Computer Science and Engineering.

Major Requirements

Core Courses

  • CSCE 160 - Introduction to Computer Programming

    CSCE 160 - Introduction to Computer Programming

    4.00 credit hours

    An introduction to computer science and programming, emphasizing the development of algorithms and problem solving skills using both procedural and object-oriented approaches. Topics include data types; I/O; arithmetic, relational and logical operators; control structures; functions; simple data structures; different computing environments such as the Linux operating system are also explored. Integrated laboratory.

    Schedule Of Classes

  • CSCE 210 - Data Structures

    CSCE 210 - Data Structures

    4.00 credit hours

    Elementary data structures and algorithms. Topics include the design, implementation, application and variations of the following: linked lists, stacks and queues; different types of trees; searching and sorting algorithms; graphs; and introduction to analysis of algorithms. Extensive programming required. Integrated laboratory.

    Prerequisite(s)

    CSCE 160.

    Schedule Of Classes

  • CSCE 220 - Computer Organization and Design

    CSCE 220 - Computer Organization and Design

    4.00 credit hours

    Basic computer architecture including combinational circuits, instruction sets, microprogramming, assembly language, I/O (devices, busses and interrupts) and memory systems and organization. Integrated laboratory.

    Prerequisite(s)

    CSCE 160.

    Schedule Of Classes

  • CSCE 230 - Discrete Structures

    CSCE 230 - Discrete Structures

    4 credit hours

    Fundamental topics in mathematics and computer science including: formal logic; proof techniques; sets, relations and functions; combinatorics and counting techniques; induction and recursion; discrete probability; number theory and cryptography; graphs; Boolean algebra; finite state machines and modeling computation; program verification and algorithm analysis. Programming may be required.

    Prerequisite(s)

    CSCE*160

    Schedule Of Classes

  • CSCE 306 - Object Oriented Software Development

    CSCE 306 - Object Oriented Software Development

    4.00 credit hours

    Object-oriented design and implementation of large scale software. Topics include object-oriented modeling and design, such as the use of UML and software design patterns, object-oriented language features, such as inheritance, polymorphism, encapsulation and overloading, and using existing class libraries. Extensive programming required. Integrated laboratory.

    Prerequisite(s)

    CSCE 210.

    Schedule Of Classes

  • CSCE 340 - Design and Analysis of Algorithms

    CSCE 340 - Design and Analysis of Algorithms

    4.00 credit hours

    Design and analysis of algorithms. Classification of algorithms by time and space complexity. Algorithm design techniques such as divide and conquer, the greedy method and dynamic programming. NP-complete problems and approximation algorithms. Introduction to parallel algorithms.

    Prerequisite(s)

    CSCE 210 and CSCE 230.

    Schedule Of Classes

  • CSCE 420 - Operating Systems

    CSCE 420 - Operating Systems

    4.00 credit hours

    An examination of approaches to computer system resource management. Topics include scheduling, memory management, file systems, I/O management, multiprocessing, security, protection. Research literature is used to introduce systems research topics. Extensive programming required. Integrated laboratory.

    Prerequisite(s)

    CSCE 220 and CSCE 306.

    Schedule Of Classes

  • CSCE 494 - Senior Capstone

    CSCE 494 - Senior Capstone

    4.00 credit hours

    Students apply the many skills they have acquired during their undergraduate studies by participating as a member of a team to design, develop and present a computing solution (software/hardware) to a substantive problem. Group process and leadership skills are addressed as well as ethical considerations important to computer science professionals. Formal project proposal, progress report and technical report writing are emphasized.

    Prerequisite(s)

    CSCE 420 and Senior standing.

    Schedule Of Classes

Electives
  • One four credit hour CSCE or INFS elective at the 200-level or above
  • One four credit hour CSCE elective at the 300-level or above *
  • One four credit hour CSCE elective at the 400-level *
Note:

*Internships may not be used to fulfill requirement.

Support Courses

Ethics

One of the following:

  • PHIL 110 - Ethics

    PHIL 110 - Ethics

    4.00 credit hours

    An examination of alternative bases for morality and the arguments by which moral claims are justified.

    Cardinal Directions Designation(s)
    Humanities, Ethical Dimensions, Community Engaged Learning.
    iCon(s)
    Being Human, Engaging Civic Life.

    Schedule Of Classes

  • PHIL 210 - Professional Ethics

    PHIL 210 - Professional Ethics

    4.00 credit hours

    Professional ethics in selected career fields including law, business and biomedicine. Students may apply basic concepts to the career of their choice, relate their personal ethics to professional ethics and become better informed consumers of professional services. This course begins with an examination of the alternative bases for making moral judgments.

    Cardinal Directions Designation(s)
    Humanities, Ethical Dimensions.
    iCon(s)
    Innovating World.

    Schedule Of Classes

Communications

One of the following:

  • COMM 200 - Interpersonal Communication

    COMM 200 - Interpersonal Communication

    4.00 credit hours

    An introductory study of the theory and practice of human communication within diverse relationships and contexts. The emphasis will be on dyadic (one-on-one) communication and the basic verbal and nonverbal strategies affecting perception and comprehension within the communication process. Key subtopics will include nonverbal communication, verbal styles, relationship development and conflict management. Requires participation in written and oral activities designed to develop and improve interpersonal skills.

    Cardinal Directions Designation(s)
    Social Science.
    iCon(s)
    Being Human.

    Schedule Of Classes

  • COMM 214 - Group Interaction

    COMM 214 - Group Interaction

    4.00 credit hours

    Students are introduced to the theory and practice of small group communication and decision-making. The course features an extensive group project, where students develop their abilities to participate, observe, analyze, evaluate and intervene in small group communication.

    Cardinal Directions Designation(s)
    Social Science, Community Engaged Learning.
    iCon(s)
    Being Human.

    Schedule Of Classes

  • COMM 280 - Business and Professional Communication

    COMM 280 - Business and Professional Communication

    4.00 credit hours

    An intermediate course in which students develop the skills and strategies for use in written, face-to-face and electronic communication in professional settings. Students learn fundamentals of writing and presenting in professional contexts and may investigate organizational communication practices such as interviewing, performance feedback, training and meeting management.

    Prerequisite(s)

    CARD 102 or COMM 100; COMM 200 or COMM 214; Junior standing.

    Schedule Of Classes

  • COMM 285 - Argumentation and Debate

    COMM 285 - Argumentation and Debate

    4.00 credit hours

    An intermediate course that addresses both theory and practice in argumentation. Through preparation and participation in debates, students learn the basic principles of debate, emphasizing the development of research, critical thinking and oral presentation skills.

    Prerequisite(s)

    CARD 102 or COMM 100.

    Cardinal Directions Designation(s)
    Humanities, Ethical Dimensions.

    Schedule Of Classes

  • COMM 287 - Advanced Public Speaking

    COMM 287 - Advanced Public Speaking

    4.00 credit hours

    Building upon the fundamentals learned in COMM 100, students refine their skills in impromptu, manuscript and extemporaneous speaking in applied settings. The class includes communication theory as well as speech preparation and delivery techniques for speeches that include variations of informative, persuasive and special occasion speeches, as well as emphasis on oral interpretation of texts. This advanced skills course serves Communication majors as well as other students who are seeking to improve their presentation skills.

    Prerequisite(s)

    CARD 102 or COMM 100.

    Cardinal Directions Designation(s)
    Arts.

    Schedule Of Classes

  • LEAD 230 - Conflict Resolution

    LEAD 230 - Conflict Resolution

    4.00 credit hours

    An inquiry into the theories and skills relating to the resolution of conflict in the community and the workplace. A variety of approaches will be used to understand and analyze issues and develop skills including lecture/discussion, negotiation exercises and simulated mediations. The course will focus on developing the ability to practice as a mediator.

    Prerequisite(s)

    Sophomore standing.

    Schedule Of Classes

  • MEDI 200 - Digital Media Writing

    MEDI 200 - Digital Media Writing

    4.00 credit hours

    Digital media writing introduces students to writing on different types of platforms including the web, applications and social media. Students learn to write in a variety of different genres including blog writing, online news and public relations. The course also hones writing and research skills for digital writing.

    Prerequisite(s)

    CARD 102 or COMM 100.

    Cardinal Directions Designation(s)
    Humanities, U.S. Power Structures.
    iCon(s)
    Innovating the World.

    Schedule Of Classes

  • MEDI 255 - Social Media

    MEDI 255 - Social Media

    4.00 credit hours

    Examines social media as an evolving, complex system of channels used to communicate, exchange messages and persuade. This class focuses on the crafting of messages for distinct social media channels and audiences. Among the things that we will consider are the uses of social media in advertising, social movements, and political campaigns.

    Cardinal Directions Designation(s)
    Social Science.

    Schedule Of Classes

Additional Requirements for the B.A. Degree

  • Two additional four credit hour courses from the Communications list above, not already taken for the major.
  • For a B.A. degree, the student will demonstrate elementary competence in a foreign language. This learning objective will typically be met in one of five ways:
    1. Language study through LANG 102, or
    2. Three years of language study in high school with an average grade of B in those language courses, or
    3. Participation for one term in a designated study abroad program that develops linguistic skills in a language other than English, or
    4. Transfer students who enter with 51 or more credit hours, who did not meet this learning objective by another category, may fulfill the requirement with LANG 390 - Topics in Language and Culture or CLSS 190 - Words and Ideas From Greece and Rome, or
    5. Students with extensive experience living in a non-English language context may fulfill the language requirement by:
      1. provision of an official transcript attesting the completion of (the equivalent of) an 8th grade or higher education in a non-English language school, or
      2. passing an exam that determines proficiencies in a non-English language equal to or greater than the LANG 102 outcomes.

Computer Science, B.S.

Computer science offers a mix of theory of computation, software development, systems concepts and computing applications. Our graduates are employed in a wide range of companies and research labs.

For additional programs and courses in this department, see Computer Science and Engineering.

Major Requirements

A minimum of 39 credit hours to include:

Core Courses

  • CSCE 160 - Introduction to Computer Programming

    CSCE 160 - Introduction to Computer Programming

    4.00 credit hours

    An introduction to computer science and programming, emphasizing the development of algorithms and problem solving skills using both procedural and object-oriented approaches. Topics include data types; I/O; arithmetic, relational and logical operators; control structures; functions; simple data structures; different computing environments such as the Linux operating system are also explored. Integrated laboratory.

    Schedule Of Classes

  • CSCE 210 - Data Structures

    CSCE 210 - Data Structures

    4.00 credit hours

    Elementary data structures and algorithms. Topics include the design, implementation, application and variations of the following: linked lists, stacks and queues; different types of trees; searching and sorting algorithms; graphs; and introduction to analysis of algorithms. Extensive programming required. Integrated laboratory.

    Prerequisite(s)

    CSCE 160.

    Schedule Of Classes

  • CSCE 220 - Computer Organization and Design

    CSCE 220 - Computer Organization and Design

    4.00 credit hours

    Basic computer architecture including combinational circuits, instruction sets, microprogramming, assembly language, I/O (devices, busses and interrupts) and memory systems and organization. Integrated laboratory.

    Prerequisite(s)

    CSCE 160.

    Schedule Of Classes

  • CSCE 230 - Discrete Structures

    CSCE 230 - Discrete Structures

    4 credit hours

    Fundamental topics in mathematics and computer science including: formal logic; proof techniques; sets, relations and functions; combinatorics and counting techniques; induction and recursion; discrete probability; number theory and cryptography; graphs; Boolean algebra; finite state machines and modeling computation; program verification and algorithm analysis. Programming may be required.

    Prerequisite(s)

    CSCE*160

    Schedule Of Classes

  • CSCE 306 - Object Oriented Software Development

    CSCE 306 - Object Oriented Software Development

    4.00 credit hours

    Object-oriented design and implementation of large scale software. Topics include object-oriented modeling and design, such as the use of UML and software design patterns, object-oriented language features, such as inheritance, polymorphism, encapsulation and overloading, and using existing class libraries. Extensive programming required. Integrated laboratory.

    Prerequisite(s)

    CSCE 210.

    Schedule Of Classes

  • CSCE 340 - Design and Analysis of Algorithms

    CSCE 340 - Design and Analysis of Algorithms

    4.00 credit hours

    Design and analysis of algorithms. Classification of algorithms by time and space complexity. Algorithm design techniques such as divide and conquer, the greedy method and dynamic programming. NP-complete problems and approximation algorithms. Introduction to parallel algorithms.

    Prerequisite(s)

    CSCE 210 and CSCE 230.

    Schedule Of Classes

  • CSCE 420 - Operating Systems

    CSCE 420 - Operating Systems

    4.00 credit hours

    An examination of approaches to computer system resource management. Topics include scheduling, memory management, file systems, I/O management, multiprocessing, security, protection. Research literature is used to introduce systems research topics. Extensive programming required. Integrated laboratory.

    Prerequisite(s)

    CSCE 220 and CSCE 306.

    Schedule Of Classes

  • CSCE 494 - Senior Capstone

    CSCE 494 - Senior Capstone

    4.00 credit hours

    Students apply the many skills they have acquired during their undergraduate studies by participating as a member of a team to design, develop and present a computing solution (software/hardware) to a substantive problem. Group process and leadership skills are addressed as well as ethical considerations important to computer science professionals. Formal project proposal, progress report and technical report writing are emphasized.

    Prerequisite(s)

    CSCE 420 and Senior standing.

    Schedule Of Classes

Electives
  • One four credit hour CSCE or INFS elective at the 200-level or above

  • One four credit hour CSCE elective at the 300-level or above *

  • One four credit hour CSCE elective at the 400-level *

Note:

*Internships may not be used to fulfill requirement.

Support Courses

Ethics

One of the following:

  • PHIL 110 - Ethics

    PHIL 110 - Ethics

    4.00 credit hours

    An examination of alternative bases for morality and the arguments by which moral claims are justified.

    Cardinal Directions Designation(s)
    Humanities, Ethical Dimensions, Community Engaged Learning.
    iCon(s)
    Being Human, Engaging Civic Life.

    Schedule Of Classes

  • PHIL 210 - Professional Ethics

    PHIL 210 - Professional Ethics

    4.00 credit hours

    Professional ethics in selected career fields including law, business and biomedicine. Students may apply basic concepts to the career of their choice, relate their personal ethics to professional ethics and become better informed consumers of professional services. This course begins with an examination of the alternative bases for making moral judgments.

    Cardinal Directions Designation(s)
    Humanities, Ethical Dimensions.
    iCon(s)
    Innovating World.

    Schedule Of Classes

Communications

One of the following:

  • COMM 200 - Interpersonal Communication

    COMM 200 - Interpersonal Communication

    4.00 credit hours

    An introductory study of the theory and practice of human communication within diverse relationships and contexts. The emphasis will be on dyadic (one-on-one) communication and the basic verbal and nonverbal strategies affecting perception and comprehension within the communication process. Key subtopics will include nonverbal communication, verbal styles, relationship development and conflict management. Requires participation in written and oral activities designed to develop and improve interpersonal skills.

    Cardinal Directions Designation(s)
    Social Science.
    iCon(s)
    Being Human.

    Schedule Of Classes

  • COMM 214 - Group Interaction

    COMM 214 - Group Interaction

    4.00 credit hours

    Students are introduced to the theory and practice of small group communication and decision-making. The course features an extensive group project, where students develop their abilities to participate, observe, analyze, evaluate and intervene in small group communication.

    Cardinal Directions Designation(s)
    Social Science, Community Engaged Learning.
    iCon(s)
    Being Human.

    Schedule Of Classes

  • COMM 280 - Business and Professional Communication

    COMM 280 - Business and Professional Communication

    4.00 credit hours

    An intermediate course in which students develop the skills and strategies for use in written, face-to-face and electronic communication in professional settings. Students learn fundamentals of writing and presenting in professional contexts and may investigate organizational communication practices such as interviewing, performance feedback, training and meeting management.

    Prerequisite(s)

    CARD 102 or COMM 100; COMM 200 or COMM 214; Junior standing.

    Schedule Of Classes

  • COMM 285 - Argumentation and Debate

    COMM 285 - Argumentation and Debate

    4.00 credit hours

    An intermediate course that addresses both theory and practice in argumentation. Through preparation and participation in debates, students learn the basic principles of debate, emphasizing the development of research, critical thinking and oral presentation skills.

    Prerequisite(s)

    CARD 102 or COMM 100.

    Cardinal Directions Designation(s)
    Humanities, Ethical Dimensions.

    Schedule Of Classes

  • COMM 287 - Advanced Public Speaking

    COMM 287 - Advanced Public Speaking

    4.00 credit hours

    Building upon the fundamentals learned in COMM 100, students refine their skills in impromptu, manuscript and extemporaneous speaking in applied settings. The class includes communication theory as well as speech preparation and delivery techniques for speeches that include variations of informative, persuasive and special occasion speeches, as well as emphasis on oral interpretation of texts. This advanced skills course serves Communication majors as well as other students who are seeking to improve their presentation skills.

    Prerequisite(s)

    CARD 102 or COMM 100.

    Cardinal Directions Designation(s)
    Arts.

    Schedule Of Classes

  • LEAD 230 - Conflict Resolution

    LEAD 230 - Conflict Resolution

    4.00 credit hours

    An inquiry into the theories and skills relating to the resolution of conflict in the community and the workplace. A variety of approaches will be used to understand and analyze issues and develop skills including lecture/discussion, negotiation exercises and simulated mediations. The course will focus on developing the ability to practice as a mediator.

    Prerequisite(s)

    Sophomore standing.

    Schedule Of Classes

  • MEDI 200 - Digital Media Writing

    MEDI 200 - Digital Media Writing

    4.00 credit hours

    Digital media writing introduces students to writing on different types of platforms including the web, applications and social media. Students learn to write in a variety of different genres including blog writing, online news and public relations. The course also hones writing and research skills for digital writing.

    Prerequisite(s)

    CARD 102 or COMM 100.

    Cardinal Directions Designation(s)
    Humanities, U.S. Power Structures.
    iCon(s)
    Innovating the World.

    Schedule Of Classes

  • MEDI 255 - Social Media

    MEDI 255 - Social Media

    4.00 credit hours

    Examines social media as an evolving, complex system of channels used to communicate, exchange messages and persuade. This class focuses on the crafting of messages for distinct social media channels and audiences. Among the things that we will consider are the uses of social media in advertising, social movements, and political campaigns.

    Cardinal Directions Designation(s)
    Social Science.

    Schedule Of Classes

Additional Requirements for the B.S. Degree

  • MATH 151 - Calculus I

    MATH 151 - Calculus I

    4.00 credit hours

    An exploration of the fundamental concepts of single-variable calculus including limits, continuity, differentiation and integration with applications.

    Prerequisite(s)

    MATH 140 or placement; Four years of math including algebra, geometry and trigonometry recommended.

    Cardinal Directions Designation(s)
    Quantitative Analysis.

    Schedule Of Classes

  • MATH 152 - Calculus II

    MATH 152 - Calculus II

    4.00 credit hours

    A continuation of single-variable calculus with emphasis on advanced integration techniques and applications, parametric equations, polar coordinates, and infinite series.

    Prerequisite(s)

    MATH 151.

    Cardinal Directions Designation(s)
    Quantitative Analysis.

    Schedule Of Classes

Statistics

One of the following:

  • BUSN 265 - Business and Economics Statistics

    BUSN 265 - Business and Economics Statistics

    4.00 credit hours

    Provides an overview of basic statistics as it applies to business. The focus is on learning statistical concepts by applying analytical reasoning to business applications. Examples illustrating the relevance of statistics to broad areas of business are used. The course requires students to use spreadsheet programs, statistical programs, the Internet and other computer tools in analyzing statistics. The focus is on application of the material and on solving problems. Only one of BUSN 265 and PSYC 250 may be taken for credit.

    Prerequisite(s)

    MATH 130 or higher.

    Cardinal Directions Designation(s)
    Quantitative Analysis.

    Schedule Of Classes

  • PSYC 250 - Statistics

    PSYC 250 - Statistics

    4.00 credit hours

    The methods, concepts and logic underlying the statistical evaluation of research data with an emphasis on "why" as well as "when" to use various statistical methods. Content includes descriptive and inferential statistics, estimation and hypothesis testing. Analyses include z and t tests, one-way and factorial ANOVA, correlation, regression and Chi square. Assignments focus on problem solving, technical writing and use of computer statistical packages (SPSS). Only one of BUSN*265 or PSYC*250 may be taken for credit.

    Prerequisite(s)

    MATH 130 or higher.

    Cardinal Directions Designation(s)
    Quantitative Analysis.

    Schedule Of Classes

NOTE: This page contains all of the regular course descriptions for this discipline or program. Academic credit for each course is noted in parenthesis after the course title. Prerequisites (if any) and the general education requirements, both Core and All-College Requirements (ACRs), which each course fulfills (if any) are noted following each course description. Not all courses are offered every year. Check Merlin, our searchable course schedule, to see which courses are being offered in upcoming terms.

Course Descriptions

The courses listed herein have been approved by the faculty as authorized by the Board of Trustees.  Prerequisites (if any) and the General Education Requirement(s) which each course fulfills (if any) are noted following each course description.

Current course offerings are available in Merlin.

CSCE 160 - Introduction to Computer Programming

4.00 credit hours - An introduction to computer science and programming, emphasizing the development of algorithms and problem solving skills using both procedural and object-oriented approaches. Topics include data types; I/O; arithmetic, relational and logical operators; control structures; functions; simple data structures; different computing environments such as the Linux operating system are also explored. Integrated laboratory.

CSCE 210 - Data Structures

4.00 credit hours - Elementary data structures and algorithms. Topics include the design, implementation, application and variations of the following: linked lists, stacks and queues; different types of trees; searching and sorting algorithms; graphs; and introduction to analysis of algorithms. Extensive programming required. Integrated laboratory.

Prerequisite(s): CSCE 160.

CSCE 220 - Computer Organization and Design

4.00 credit hours - Basic computer architecture including combinational circuits, instruction sets, microprogramming, assembly language, I/O (devices, busses and interrupts) and memory systems and organization. Integrated laboratory.

Prerequisite(s): CSCE 160.

CSCE 230 - Discrete Structures

4 credit hours - Fundamental topics in mathematics and computer science including: formal logic; proof techniques; sets, relations and functions; combinatorics and counting techniques; induction and recursion; discrete probability; number theory and cryptography; graphs; Boolean algebra; finite state machines and modeling computation; program verification and algorithm analysis. Programming may be required.

Prerequisite(s): CSCE*160

CSCE 242 - Introduction to Bioinformatics

4.00 credit hours - An introduction to the field of bioinformatics. Computational methods for study of biological sequence data in comparative biology and evolution. Analysis of genome content and organization. Techniques for searching sequence databases, pairwise and multiple sequence alignment, phylogenetic methods and methods for pattern recognition and functional inference from sequence data. Database theory, information extraction, algorithm analysis and data mining are utilized. Programming required.

Prerequisite(s): CSCE 160 and BIOL 195.

CSCE 297 - Internship

0.00-12.00 credit hours

Prerequisite(s): Sophomore standing.

CSCE 299 - Independent Study

1.00-12.00 credit hours

CSCE 306 - Object Oriented Software Development

4.00 credit hours - Object-oriented design and implementation of large scale software. Topics include object-oriented modeling and design, such as the use of UML and software design patterns, object-oriented language features, such as inheritance, polymorphism, encapsulation and overloading, and using existing class libraries. Extensive programming required. Integrated laboratory.

Prerequisite(s): CSCE 210.

CSCE 315 - Web Applications

4.00 credit hours - Development of web applications. Topics include HTTP, the Browser and Document Object Models; Server-side technologies such as Java Servlets, ASP.NET MVC and NodeJS/Express; Client-side technologies JavaScript, AJAX and JQuery; and server-side database access. Introduction to Single Page Apps and Restful services using JAXRS and ASP.NET Web API. Extensive programming required.

Prerequisite(s): CSCE 210.

CSCE 320 - Computer Architecture

4.00 credit hours - Introduction to digital computer architecture. Topics include performance metrics and evaluation, instruction set architecture, data representation, processor design, memory hierarchy and cache, I/O, datapath and control, pipelining, branching, multiprocessors and (review of) assembly language programming. Integrated laboratory.

Prerequisite(s): CSCE 220.

CSCE 327 - Linux Programming

4.00 credit hours - Fundamental concepts, library facilities and programming techniques that provide the foundation for application, systems, network and Internet programming on Linux and Unix systems. Course topics include the operating system kernel, process management, I/O, pipes, signals, sockets and shell programming. The course does not cover system administration. Extensive programming required in C/C++.

Prerequisite(s): CSCE 220 and CSCE 306.

CSCE 330 - Mobile Applications Development

4.00 credit hours - An introduction to creating applications that run on mobile devices such as smartphones, tablets and smart watches. Topics include device hardware and development platforms; interface design; interactivity; SQLite database; multimedia; monetization. Extensive programming required. Integrated laboratory.

Prerequisite(s): CSCE 306.

CSCE 335 - Introduction to Game Design and Development

4.00 credit hours - Project-based course; Design and development of computer games; Introduction to a modern game engine (such as Unity or Unreal Engine). Extensive programming and major project required. Integrated laboratory.

Prerequisite(s): CSCE 306.

CSCE 336 - Human Computer Interaction

4.00 credit hours - Fundamental principles in the design, implementation and evaluation of human-machine interfaces with emphasis on human computer interaction. Topics include user psychology, theories of human learning and perception, audio and visual physiology, graphical user interfaces, task analysis and usability heuristics.

Prerequisite(s): CSCE 210.

CSCE 340 - Design and Analysis of Algorithms

4.00 credit hours - Design and analysis of algorithms. Classification of algorithms by time and space complexity. Algorithm design techniques such as divide and conquer, the greedy method and dynamic programming. NP-complete problems and approximation algorithms. Introduction to parallel algorithms.

Prerequisite(s): CSCE 210 and CSCE 230.

CSCE 360 - Database Systems

4.00 credit hours - Introduction to data modeling, database design and implementation, SQL, transaction processing, concurrency and recovery with emphasis on the relational model. Database connectivity APIs, such as JDBC are also covered. Programming required.

Prerequisite(s): CSCE 210 and Junior standing.

CSCE 364 - Data Mining and Machine Learning

4.00 credit hours - Introduction to the data mining process and its application to real-world problems. Topics include data preparation techniques, supervised and unsupervised machine learning algorithms and post-processing metrics to identify information of interest. Programming required.

Prerequisite(s): CSCE 210CSCE 230MATH 280 or MATH 340.

 

Click here for the schedule of classes.

CSCE 370 - Principles of Programming Languages

4.00 credit hours - Design principles behind modern programming languages; Analysis of languages, language implementation, formal specification, semantics and parsing, comparative study of programming paradigms. Programming required.

Prerequisite(s): CSCE 210 and CSCE 230.

CSCE 380 - Introduction to Artificial Intelligence

4.00 credit hours - Foundational concepts in artificial intelligence (AI); definitions, survey of AI topics, problem solving and searching, heuristics, knowledge representation, reasoning, learning, programming languages for AI; study of applications areas and the research literature. Programming required.

Prerequisite(s): CSCE 230 and CSCE 306.

CSCE 390 - Special Topics

4.00 credit hours - A course covering a topic of current interest, such as game development, eBusiness, social analytics, virtual/augmented reality or mobile computing.

CSCE 397 - Internship

0.00-12.00 credit hours

Prerequisite(s): Junior standing.

CSCE 399 - Independent Study

1.00-12.00 credit hours - Designed for students who want to study a topic not covered in a regular course.

CSCE 420 - Operating Systems

4.00 credit hours - An examination of approaches to computer system resource management. Topics include scheduling, memory management, file systems, I/O management, multiprocessing, security, protection. Research literature is used to introduce systems research topics. Extensive programming required. Integrated laboratory.

Prerequisite(s): CSCE 220 and CSCE 306.

CSCE 455 - Windows and .NET Programming

4.00 credit hours - System and application programming on Windows and the .NET platform using C#. Topics include Windows Forms and the Windows Presentation Foundation, interprocess communication, .NET network programming, ADO.NET and security.

Prerequisite(s): CSCE 306.

CSCE 469 - Computer Networks

4.00 credit hours - Exploration of the theory and design issues in data communications and computer networks. Topics include network architecture, TCP/IP protocols, wireless and mobile networks and network security. Extensive programming required. Integrated laboratory.

Prerequisite(s): CSCE 220 and CSCE 306.

CSCE 479 - Computer and Network Security

4.00 credit hours - Introduction to the theory and methods for developing and maintaining secure systems and applications. Topics include secure infrastructures, intrusion prevention and detection, viruses and anti-virus software, software security, authentication, cryptography and legal and ethical issues. Modern topics, such as cryptocurrency, cyberphysical systems, cloud computing, etc., are covered through a survey of research and technical literature. Programming required. Integrated laboratory.

Prerequisite(s): CSCE 220 and CSCE 306.

CSCE 487 - Parallel and Concurrent Programming

4.00 credit hours - A course in hardware, software and language aspects of parallel computing, focusing on the development of effective parallel algorithms and their implementation on a variety of parallel architectures and interconnection networks.

Prerequisite(s): CSCE 420.

CSCE 490 - Special Topics

4.00 credit hours - A course covering a topic of current interest, such as cloud computing, eBusiness, machine intelligence, social analytics, video design, virtual/augmented reality or mobile computing.

CSCE 494 - Senior Capstone

4.00 credit hours - Students apply the many skills they have acquired during their undergraduate studies by participating as a member of a team to design, develop and present a computing solution (software/hardware) to a substantive problem. Group process and leadership skills are addressed as well as ethical considerations important to computer science professionals. Formal project proposal, progress report and technical report writing are emphasized.

Prerequisite(s): CSCE 420 and Senior standing.

CSCE 497 - Internship

0.00-12.00 credit hours

Prerequisite(s): Junior standing.

CSCE 499 - Independent Study

1.00-12.00 credit hours - Designed for students who want to study a topic not covered in a regular course.

Frank Harwath

Professor of Engineering; Director of Engineering Program
Engineering
+1 630 637 5173
Christopher Kardaras

Visiting Assistant Professor of Computer Science
Computer Science
+1 630 637 5169
Sun-il Kim

Professor of Computer Science; Chairperson, Department of Computer Science and Engineering
Computer Science
+1 630 637 5176
Nnamdi Nwanze

Assistant Professor of Computer Science and Engineering
Computer Science
+1 630 637 5353
Caroline St. Clair

Professor of Computer Science
Computer Science
+1 630 637 5171

Faculty Emeriti

Godfrey A. Muganda
Professor of Computer Science Emeritus 
B.S., Eastern Mennonite College, 1979; M.S., College of William and Mary, 1980; Ph.D., Lehigh University, 1984
gcmuganda@noctrl.edu

Stephen C. Renk
Professor of Computer Science Emeritus 
B.A., 1973, M.S., 1979, Ph.D., 1986, University of Iowa
screnk@noctrl.edu

Judy C. Walters
Associate Professor of Computer Science Emerita 
B.A., University of Iowa, 1968; M.S., Illinois Institute of Technology, 1984
jcwalters@noctrl.edu

 

Adjunct Faculty

Pero Atanasov
B.S., North Central College; M.S., University of Chicago
Senior Software Engineer, Informatica

Brian Craig
B.S., M.S., North Central College
Software Engineer Specialist, Argonne National Laboratory

Jennifer Dust
B.A., M.S., North Central College
Web Applications Programmer and Graduate Assistant, North Central College

Ronald Hurlbut
B.S., M.S., Michigan Tech University

William Krieger
B.S., University of Illinois at Urbana-Champaign; M.S., University of Illinois at Chicago
Co-founder, Synopsys


 

 

Computer Science students have the opportunity to participate in a number of activities outside the classroom that will enhance their learning experiences in the classroom.

Students have the opportunity to participate in the yearly ACCA programming competition where our students compete with students from other schools in the Chicagoland area. Students may also choose to participate in our internship program and our summer undergraduate research program where they can gain valuable real-world experience. In addition, students may serve as lab assistants or tutors, or participate in the college's preceptor program.

Students interested in these opportunities should contact the computers science department for more information.


News