2017-19 Undergraduate Catalog

Computer Science

Faculty and Academic Staff Top of Page

Faculty

Sergei Bezroukov, Professor
Shaun M. Lynch, Professor
Steven J. Rosenberg, Professor
Chad H. Scott, Professor
Jon Totushek, Assistant Professor
Shin-Ping Tucker, Professor

Academic Staff

Heather Kahler, Senior Lecturer
Hossain Khoroosi, Senior Lecturer
Marilyn Toscano, Senior Lecturer

Computer Science Program Top of Page

The Computer Science program is ideal for students seeking an intellectually stimulating career that thrives on problem solving and technological innovation. The curriculum offers a wide array of courses that range from programming fundamentals to special interest electives in a variety of application areas including databases, networking, and embedded systems. The program emphasizes technical skills built upon a strong theoretical foundation in preparation for careers in industry or advanced study in graduate school.

The Department of Mathematics and Computer Science offers two majors to suit student interests. The comprehensive major concentrates on theory and application and is designed for students who would like to focus on a single area of study and focus on computer science principles. The liberal arts major emphasizes core concepts and allows students to complement their program of study with a minor in another discipline. Both programs offer internship opportunities for students seeking professional experience prior to graduation.

In addition, the department offers three minors that satisfy degree requirements for non-comprehensive majors. The Computer Science minor introduces students to the essential concepts and provides a survey of the field. The Computer Science Teaching minor works in conjunction with the teacher education major to prepare future educators with key computer science concepts and skills. The Information Technology and Systems minor exposes students to software applications, web page authoring, database management, and other technologies used in the world of practice.

Computer Science Major (Comprehensive) Requirements Top of Page

The comprehensive Computer Science Major provides the background necessary to prepare students for positions in industry or to pursue graduate study. Students completing this major will have a sufficient understanding of the basic principles and concepts in computer science but also will be able to meet immediate demands for solving real-world computational problems. This program is an ideal choice for students who intend to work as computer science professionals.

58 total credits

Math and Computer Science core courses (48 credits required):

Calculus and Analytic Geometry I -- 4.00 credits
Calculus and Analytic Geometry II -- 4.00 credits
Introduction to Abstract Mathematics -- 3.00 credits
Discrete Structures -- 4.00 credits
Introduction to Programming -- 3.00 credits
Object-Oriented Programming -- 3.00 credits
Assembly Language Programming -- 4.00 credits
Algorithms and Data Structures -- 4.00 credits
Software Development and Professional Practice -- 4.00 credits
Operating Systems -- 4.00 credits
Computer Architecture and Organization -- 4.00 credits
Net-Centric Computing -- 4.00 credits
Group Capstone Project -- 3.00 credits

Advanced Programming required course (6 credits required):

Embedded Systems Design -- 3.00 credits
Computer Graphics and 3-D Modeling -- 3.00 credits
Internet Programming -- 3.00 credits
Database Systems -- 3.00 credits

Computational Theory required course (4 credits required):

Theory of Computation -- 4.00 credits
Algorithm Design and Analysis -- 4.00 credits
Cryptography -- 4.00 credits
Numerical Analysis -- 4.00 credits

Computer Science Minor Requirements-Suspended Top of Page

No admission to this program as of November 3, 2017.  Program has been suspended.  Current students in good standing have until December 23, 2022 to complete the program. 

 

The Computer Science minor fulfills the minor requirements for students pursuing a non-comprehensive major and exposes students to core topics studied in computer science. The curriculum provides a balanced mix of theory and practice suited for those interested in complementing their program of study with a technical degree that emphasizes theory and application.

22 total credits

Computer Science required courses (14 credits required):

Introduction to Programming -- 3.00 credits
Object-Oriented Programming -- 3.00 credits
Assembly Language Programming -- 4.00 credits
Algorithms and Data Structures -- 4.00 credits

Application required course (3 credits required):

Embedded Systems Design -- 3.00 credits
Computer Graphics and 3-D Modeling -- 3.00 credits
Internet Programming -- 3.00 credits
Database Systems -- 3.00 credits
Database Management -- 3.00 credits

Systems required course (3 credits required):

Operating Systems -- 4.00 credits
Computer Architecture and Organization -- 4.00 credits
Net-Centric Computing -- 4.00 credits

Computer Science Teaching Minor Early Adolescence-Adolescence Level (EA-A) Requirements-Suspended Top of Page

No admission to this program as of November 3, 2017.  Program has been suspended.  Current students in good standing have until December 23, 2022 to complete the program.

 

23 credits total credits

Math Education and Computer Science required courses (17 credits required):

Programming and Technology for the Teaching of Mathematics -- 3.00 credits
Introduction to Programming -- 3.00 credits
Object-Oriented Programming -- 3.00 credits
Assembly Language Programming -- 4.00 credits
Algorithms and Data Structures -- 4.00 credits

Computer Science Elective courses (6 credits required):

two additional CSCI courses numbered 300 or above

Math Education required courses (4 credits required):

Secondary Methods in Mathematics Education -- 3.00 credits
Tutoring Practicum -- 1.00 - 3.00 credits

All EA-A licensure students must also meet the Professional Education Requirements as outlined in the Secondary Education Certification section of this catalog. Students are also required to pass a subject specific Praxis II exam designated by the Wisconsin Department of Public Instruction before being placed for student teaching.

Information Technology Minor Requirements Top of Page

The Information Technology and Systems minor complements a student's major of study by providing the knowledge, skills, and abilities to use information technology in their filed of interest. It is tailored for the student with an interest in information technology who wishes to enhance their career opportunities. The program emphasizes choice and allows students to select from a range of topics applicable to their discipline or that pique their curiosity.

22 total credits

Computer Skills required course (3 credits required):

Computer Applications for Productivity -- 3.00 credits
Business Computer Applications -- 3.00 credits

Fundamental required course (3 credits required):

Introduction to Information Technology -- 3.00 credits
Information Technology Operations -- 3.00 credits

Programming required course (3 credits required):

Visual Programming Fundamentals -- 3.00 credits
Introduction to Programming -- 3.00 credits

Information Technology Elective courses (12 credits required):

Web Page Authoring -- 3.00 credits
Internet Programming -- 3.00 credits
Management Information Systems -- 3.00 credits
Database Management -- 3.00 credits
Networking and Communications -- 3.00 credits
Ethics in Information Technology -- 3.00 credits
Digital Multimedia -- 3.00 credits
Information Security -- 3.00 credits
Global E-Commerce Systems -- 3.00 credits

Senior Experience required course (1 credit required):

Group Capstone Project -- 1.00 credits

Information Technology and Systems Certificate Requirements Top of Page

The Information Technology and Systems Certificate is ideal for students seeking individual courses to complement a current degree plan, expand their technology skills, or enhance their career projects. The certificate complements comprehensive and non-comprehensive degree programs and offers a wide variety of topics to satisfy student interests. Completion of the certificate is noted on a student's transcript.

12 total credits

Information Technology required courses (6 credits required):

Computer Applications for Productivity -- 3.00 credits
Visual Programming Fundamentals -- 3.00 credits
Introduction to Information Technology -- 3.00 credits

Information Technology Elective courses (6 credits required):

Internet Programming -- 3.00 credits
Information Technology Operations -- 3.00 credits
Web Page Authoring -- 3.00 credits
Management Information Systems -- 3.00 credits
Database Management -- 3.00 credits
Networking and Communications -- 3.00 credits
Ethics in Information Technology -- 3.00 credits
Digital Multimedia -- 3.00 credits
Information Security -- 3.00 credits
Global E-Commerce Systems -- 3.00 credits

*Note: ITS 108 is an acceptable substitute for ITS 148. Students in programs that include ITS 108 may contact the Mathematics and Computer Science Department program associate for a waiver.

*Students who are degree-seeking may also complete certificate requirements as part of their credits toward a degree. Non-degree-seeking students may seek the certificates through the Mathematics and Computer Science Department. Completion and awarding of the certificate is coordinated through the Registrar's Office that enables students to this certificate noted on their official transcript. Contact the Mathematics and Computer Science Department for more information.

*If students are interested in the ITS individually designed major, he or she may fill out the Individually Designed Major form. Contact the Mathematics and Computer Science Department for more information.

Student Learning Outcomes Top of Page

Computer Science Comprehensive Major

  • Applies an appropriate formal process (or informal language) to write a solution to a given problem and to evaluate the validity and effectiveness of a given written solution.
  • Solves multi-part problems by performing appropriate analysis and complex calculations.
  • Adopts best practices of software engineering, including documentation, teamwork, and integration, to create large software projects; presents results in oral and visual format.
  • Understands and effectively utilizes both high and low-level programming concepts and languages.
  • Demonstrates fluency in the definitions, results, analysis and reasoning of a given axiomatically defined system.
  • Understands the organization of modern computing devices, both intra-machine and inter-machine.

Computer Science Major

  • Applies an appropriate formal process (or informal language) to write a solution to a given problem and to evaluate the validity and effectiveness of a given written solution.
  • Solves multi-part problems by performing appropriate analysis and complex calculations.
  • Adopts best practices of software engineering, including documentation, teamwork, and integration, to create large software projects; presents results in oral and visual format.
  • Understands and effectively utilizes both high and low-level programming concepts and languages.
  • Understands the organization of modern computing devices, both intra-machine and inter-machine.

Information Technology and Systems Minor

  • Uses computer productivity applications to enhance personal and professional productivity.
  • Familiar with the disciplines associated with information technology and systems, uses of information technology, career opportunities, and various applications for modern life.
  • Understands basic programming concepts and is able to design, implement and debug programs.

Computer Science Major (non-comprehensive) Requirements Top of Page

37 total credits

The Computer Science Major is ideal for students pursuing a liberal arts plan of study and provides the fundamental education necessary for positions in industry, graduate study, or fields that require knowledge of basic principles and concepts. Students choosing this program must select a minor from the numerous programs offered across campus or the Information Technology and Systems or Mathematics minors offered by the Mathematics and Computer Science Department.

Math and Computer Science core courses (30 credits required):

Calculus and Analytic Geometry I -- 4.00 credits
Calculus and Analytic Geometry II -- 4.00 credits
Introduction to Abstract Mathematics -- 3.00 credits
Discrete Structures -- 4.00 credits
Introduction to Programming -- 3.00 credits
Object-Oriented Programming -- 3.00 credits
Assembly Language Programming -- 4.00 credits
Algorithms and Data Structures -- 4.00 credits
Individual Capstone Project -- 1.00 credits

Advanced Programming required course (3 credits required):

Embedded Systems Design -- 3.00 credits
Computer Graphics and 3-D Modeling -- 3.00 credits
Internet Programming -- 3.00 credits
Database Systems -- 3.00 credits
Database Management -- 3.00 credits

Computational Theory required course (4 credits required):

Theory of Computation -- 4.00 credits
Algorithm Design and Analysis -- 4.00 credits
Cryptography -- 4.00 credits
Numerical Analysis -- 4.00 credits