University of Dayton
Academic Catalog 2013-14

Computer Science

Majors:

Minors:

The Department of Computer Science offers two programs leading to a Bachelor of Science degree in either Computer Science or Computer Information Systems. Both programs require the same introductory core sequence of courses in Computer Science. The main differences between the two programs are in the mathematics and science requirements and in the application emphases.

Computer Science

Computer Science is the study of algorithms and their implementation as applications (apps). This includes the study of data structures, software design, programming languages, and computer architecture. Each student must take appropriate upper-level electives to ensure depth in at least three of the core subject areas of data structures, software design, programming language concepts and architecture as arranged with the student's advisor.

Computer Information Systems

This program emphasizes computer science concepts with particular attention to systems analysis and design, and includes a concentration area or minor chosen by the student in consultation with the student's advisor.

These B.S. programs provide a foundation for students to embark on successful careers in a variety of computing disciplines, including software development, system design, database management, artificial intelligence, computer networking, systems programming and systems administration. In addition, graduates will be prepared to pursue graduate study in Computer Science and related disciplines.

Computer Science and Computer Information Systems majors are required to attain grades of C- or better in the following courses: CPS 150, CPS 151 and CPS 350.

A minor in computer science consists of twenty semester hours. A minor in computer information systems consists of twenty-three semester hours.

Faculty

Mehdi Zargham, Chairperson
Professors Emeriti: Kester, Lang, Winslow
Professor: Sritharan
Associate Professors: Buckley, Courte, Gowda, Perugini
Assistant Professor: Yao
Lecturer: Sanyal

 

Bachelor of Science with a major in Computer Information Systems (cis) Minimum 120 Hours

Common Academic Program (CAP)
*credit hours will vary depending on courses selected
First-Year Humanities Commons 112
The West & the World
Introduction to Religioius & Theological Studies
Introduction to Philosophy
Writing Seminar I 2
Second-Year Writing Seminar 30-3
Writing Seminar II
Oral Communication 3
Principles of Oral Communication
Mathematics 3
Social Science3
Arts3
Natural Sciences7
Crossing Boundariesvariable credit
Faith Traditions
Practical Ethical Action
Inquiry
Integrative
Advanced Studyvariable credit
Philosophy and/or Religious Studies
Historical Studies
Diversity and Social Justice3
Major Capstone0-3

1

 Completed with ASI 110 and ASI 120.

2

Or ENG 100A and ENG 100B, or ENG 200H, by placement.

3

 Completed with ENG 200H or ASI 120.



Science Breadth Requirements
Mathematics 19
Introductory Calculus I (Satisfies CAP Mathematics)
Introductory Calculus II
Statistical Methods I
Natural Sciences (Applies to CAP Natural Science) 18
Select two sequences from:
BIO 151
  & 151L
Concepts of Biology I: Cell & Molecular Biology
   and Concepts of Biology Laboratory: Cell & Molecular Biology
BIO 152
  & 152L
Concepts of Biology II: Evolution & Ecology
   and Concepts of Biology Laboratory II: Evolution & Ecology
CHM 123
  & 123L
General Chemistry
   and General Chemistry Laboratory
CHM 124
  & 124L
General Chemistry
   and General Chemistry Laboratory
GEO 115
  & 115L
Physical Geology
   and Physical Geology Laboratory
GEO 116
  & 116L
Geological History of the Earth
   and Geological History of the Earth Laboratory
PHY 201
  & 201L
General Physics
   and General Physics Laboratory
PHY 202
  & 202L
General Physics
   and General Physics Laboratory
General Physics I - Mechanics
   and General Physics Laboratory
General Physics II - Electricity & Magnetism
   and General Physics Laboratory II

Major Requirements57
CPS 150Algorthm&Progrm I (Applies to CAP Natural Science)4
CPS 151Algorthm&Progrm II4
CPS 242User Interface Desgn3
CPS 250Intro-Comptr Org3
CPS 310Systems Analysis3
CPS 312Systems Design3
CPS 341Discrete Structures3
CPS 346Operating Systems I3
CPS 350Data Struct&Algorthm3
CPS 490Senior Capstone (Satisfies CAP Major Capstone)1
Select four CPS courses (310 level or above)12
Concentration: courses below or an approved minor15-27
Intro-Financial Acc
Intro-Managerial Acc
Prin of Microecon
Prin of Macroecon
Organiztnl Behavior
Survey of MKT

Breadth
ASI 150Introduction to the University Experience1
PHL 319Information Ethics (Satisfies CAP Practical Ethical Action and Adv Studies in PHL)3
Social and Behavioral Sciences (includes CAP Social Science) 16
Total Hours to total at least120

1

This requirement, and CAP components, will be satisfied in some cases by the minor that is chosen.

 

Bachelor of Science with a major in Computer Science (cps) Minimum 120 Hours

Common Academic Program (CAP)
*credit hours will vary depending on courses selected
First-Year Humanities Commons 112
The West & the World
Introduction to Religioius & Theological Studies
Introduction to Philosophy
Writing Seminar I 2
Second-Year Writing Seminar 30-3
Writing Seminar II
Oral Communication 3
Principles of Oral Communication
Mathematics 3
Social Science3
Arts3
Natural Sciences7
Crossing Boundariesvariable credit
Faith Traditions
Practical Ethical Action
Inquiry
Integrative
Advanced Studyvariable credit
Philosophy and/or Religious Studies
Historical Studies
Diversity and Social Justice3
Major Capstone0-3

1

 Completed with ASI 110 and ASI 120.

2

Or ENG 100A and ENG 100B, or ENG 200H, by placement.

3

 Completed with ENG 200H or ASI 120.


 

Science Breadth Requirements
MTH 168Analytic Geometry & Calculus I (Satisfies CAP Mathematics)4
MTH 169Analytic Geometry & Calculus II4
MTH 218Analytic Geometry & Calculus III4
MTH 310Linear Algebra & Matrices 13
or CPS 353 Numerical Methods I
MTH 367Statistical Methods I3
Select one natural sciences group from (Applies to CAP Natural Sciences):8
BIO 151
  & 151L
  & BIO 152
  & BIO 152L
Concepts of Biology I: Cell & Molecular Biology
   and Concepts of Biology Laboratory: Cell & Molecular Biology
   and Concepts of Biology II: Evolution & Ecology
   and Concepts of Biology Laboratory II: Evolution & Ecology
CHM 123
  & 123L
  & CHM 124
  & CHM 124L
General Chemistry
   and General Chemistry Laboratory
   and General Chemistry
   and General Chemistry Laboratory
GEO 115
  & 115L
  & GEO 116
  & GEO 116L
Physical Geology
   and Physical Geology Laboratory
   and Geological History of the Earth
   and Geological History of the Earth Laboratory
PHY 206
  & PHY 207
  & PHY 210L
  & PHY 211L
General Physics I - Mechanics
   and General Physics II - Electricity & Magnetism
   and General Physics Laboratory
   and General Physics Laboratory II
Natural Sciences 26

Major Requirements45
CPS 150Algorthm&Progrm I (Applies to CAP Natural Science)4
CPS 151Algorthm&Progrm II4
CPS 242User Interface Desgn3
CPS 250Intro-Comptr Org3
CPS 341Discrete Structures3
CPS 346Operating Systems I3
CPS 350Data Struct&Algorthm3
CPS 387Comp System Desgn I3
CPS 490Senior Capstone (Satisfies CAP Major Capstone)1
Select six CPS courses (300/400 level) 318

Breadth
ASI 150Introduction to the University Experience1
PHL 319Information Ethics (Satisfies CAP Practical Ethical Action and Adv Studies in PHL)3
Social and Behavioral Sciences (Includes CAP Social Science)6
Total Hours to total at least120

1

CPS 353 will not count towards major requirement.

2

Select two acceptable courses for Science or Engineering majors.

3

These courses must cover three distinct topical areas as defined by the department.

 

Minor in Computer Information Systems (cis)

Computer Information Systems
CPS 150Algorthm&Progrm I4
CPS 151Algorthm&Progrm II4
CPS 242User Interface Desgn3
CPS 310Systems Analysis3
CPS 312Systems Design3
Select two CPS courses (320 level or above)6
Total Hours23

 

Minor in Computer Science (cps)

Computer Science
CPS 150Algorthm&Progrm I4
CPS 151Algorthm&Progrm II4
CPS 350Data Struct&Algorthm3
Select three CPS courses (320 level or above, excluding CPS 437)9
Total Hours20

Courses

CPS 107. Introduction to Computer Science. 3 Hours

An introduction to the field of Computer Science, covering computers and society, the internals and externals of computer hardware and software, as well as some exposure to advanced topics of artificial intelligence, computer forensics, and databases. Intended for science and engineering students.

CPS 111. Introduction to Personal Computers. 3 Hours

Emphasis on use of operating system, particularly file organization, and applications: word processor, spreadsheet, database and presentation software.

CPS 132. Computer Programming for Engineering & Science. 3 Hours

Fundamentals of computer programming including algorithms, program structure, library routines, debugging, and program verification. Calculus-based computer solutions of problems from science and engineering using C++. Corequisite(s): MTH 168.

CPS 144. Introduction to Computer Programming. 3 Hours

Fundamentals of computer programming including algorithms, program structure, library routines, debugging, and program verification. Computer solutions of problems from social sciences using a suitable compiler language such as Visual Basic.

CPS 150. Algorithms & Programming I. 4 Hours

Algorithms, programs, and computers. Algorithm development, basic programming and programming structure. Debugging and program verification. Data representation. Computer solutions to numeric and non-numeric problems using a compiler language.

CPS 151. Algorithms & Programming II. 4 Hours

Continuation of CPS 150. Emphasis on program design, development and style, string processing, data structures, program modularity, and abstract data type, using a compiler language. Prerequisite(s): CPS 150.

CPS 242. User Interface Design. 3 Hours

The importance and challenges of user interface design in software development are discussed and Graphical User Interfaces (GUI) are developed using an appropriate programming language. Reading assignments cover interface design issues and programming assignments focus on event-driven programming, exception handling, GUI development, web and multi-media applications, and data persistence. Prerequisite(s): CPS 151.

CPS 250. Introduction to Computer Organization. 3 Hours

Computer organization and architecture are studied from a software perspective. Data representation, program translation and execution are examined in the context of the classic von Neumann architecture. Programming projects involving both a higher-level language and an assembly language reinforce the architecture concepts. Prerequisite(s): CPS 151.

CPS 309. Topics in Computer Science. 1-4 Hours

Lectures or laboratory work in areas of current interest. May be taken more than once. Does not count as upper level credit for majors/minors.

CPS 310. Systems Analysis. 3 Hours

Methodologies for producing software, software development life cycles, top-down approach, data flow diagram, data dictionary, mini-specifications, in/output design, E-R diagrams, normalization, introduction to object oriented analysis. Prerequisite(s): CPS 151 or CPS 225.

CPS 312. Systems Design. 3 Hours

Structured design, tools of structured design, coupling and cohesion of modules, transform and transaction analyses, packaging, optimization, data-oriented and object oriented design methodologies, automated design tools. Prerequisite(s): CPS 310.

CPS 341. Discrete Structures. 3 Hours

Logic and proofs, sets and counting, Boolean algebra, graph theory, directed graphs, mathematical machines, formal languages and grammars. Prerequisite(s): CPS 150.

CPS 343. Comparative Languages. 3 Hours

Language design issues, formal syntax specification, data types and storage methods, activation records and procedural object oriented, functional, and logic programming paradigms. Prerequisite(s): CPS 350.

CPS 346. Operating Systems I. 3 Hours

Semaphores, conditions, monitors, and kernels. Concurrent programming, interrupts, memory, and process management. Design and implementation of multithreaded and distributed system components using concurrent languages. Prerequisite(s): CPS 250, CPS 350.

CPS 350. Data Structures & Algorithms. 3 Hours

Advanced concepts of linear data structures, stacks, queues, and abstract data types. Basic and advanced concepts of trees, graphs, hash tables, heaps, algorithm design and analysis techniques. Prerequisite(s): CPS 151.

CPS 353. Numerical Methods I. 3 Hours

Study of the algorithms of numerical mathematics with emphasis on interpolation, the solution of nonlinear equations, and linear systems of equations including matrix methods; analysis of errors associated with the algorithms. Prerequisite(s): (CPS 132 or CPS 150); MTH 169.

CPS 387. Computer System Design I. 3 Hours

Study of the elements of computer design. Design of combinatorial and sequential logic circuits using current integrated circuit devices. Discussion of encoders, decoders, registers, counters, etc. as applied to design and use of control, arithmetic, logic, and storage units. Instruction set, addressing modes and CPU design. Laboratory experiments with these devices. Prerequisite(s): CPS 250, CPS 341.

CPS 415. Software Testing. 3 Hours

Detailed examination of the software testing process and its role in the software lifecycle. Topics include functional testing, structural testing, methods for designing, generating and evaluating test data, coverage hierarchies, theoretical and practical limitations of testing, testability measures, regression testing, and specialized testing such as methods for testing object oriented software, graphical user interfaces. Prerequisite(s): (CPS 310 or CPS 418); CPS 341, CPS 350.

CPS 420. Object Oriented Systems Development. 3 Hours

An overview of object-oriented analysis and design methodologies and Unified Modeling Language (UML), Use Case Model, Logical Model, Component Model, Deployment Model and Design Patterns. The course will involve a team project using a state-of-the-art Computer Aided Software Engineering (CASE) tool. Prerequisite(s): CPS 310, CPS 350.

CPS 422. Software Project Management. 3 Hours

An overview of software project management tasks, software development methodologies, project planning techniques, algorithimic cost estimation models, Function Point Estimation, risk management, prototyping, management of software reuse, software maintenance, quality assurance, configuration management, Capability Maturity Model (CMM), and evaluation of CASE tools. Prerequisite(s): CPS 310 or CPS 418.

CPS 424. Discrete Event Simulation Techniques. 3 Hours

Design and use of simulation models; study and use of special-purpose simulation languages such as GPSS and GASP IV, SIMSCRIPT II.5. Applications. Prerequisite(s): CPS 151.

CPS 430. Database Management Systems. 3 Hours

Physical and logical organization of databases: the entity-relationship model; relational database model; the data definition and data manipulation language of a commercial database management system; integrity constraints; conceptual database design. Prerequisite(s): CPS 350.

CPS 432. Database Management Systems II. 3 Hours

Study of query execution and optimization, transaction management, concurrency control, recovery and security techniques. Advanced data models and emerging trends in database systems, like object oriented database systems, distributed database systems, the client-server architecture, multidatabase and heterogeneous systems. Other current database topics and emerging technologies will be discussed. Prerequisite(s): CPS 430.

CPS 437. System Architectures & Networking. 3 Hours

Issues and techniques used in the physical design of computer-based information systems. Basic operating systems, hardware architecture and networking prinicples. Intended for students majoring in MIS; not open to students majoring in CPS, CIS, or PCS. Prerequisite(s): MIS 380, MIS 385.

CPS 444. Systems Programming I. 3 Hours

Analysis of compilers and their construction; programming techniques discussed in the current literature; advanced computer applications in mathematical and nonnumeric areas. Prerequisite(s): CPS 346, CPS 350.

CPS 460. Computer Graphics. 3 Hours

Introduction to graphics devices and software graphic primitives (points, lines, characters), two-dimensional transformations, clipping, survey of display devices and methods. Graphic input devices, representation of curves and surface in space. Prerequisite(s): CPS 350.

CPS 470. Data Communications. 3 Hours

Basic hardware and software architectural components for computer communications. Analysis of communication protocol layers with respect to performance, error handling and control functions. Switching, routing, multiprocessing and distributed processing. Case studies of existing networks and network architectures. Prerequisite(s): CPS 350.

CPS 472. Computer Networking. 3 Hours

Continuation of CPS 470. Concepts and analysis of computer networks. Network applications, security and network management. Network topologies and case studies. Prerequisite(s): CPS 346, CPS 470.

CPS 477. Honors Thesis Project. 3 Hours

First of two courses leading to the selection, design, investigation, and completion of an independent, original Honors Thesis project under the guidance of a faculty research advisor. Restricted to students in the University Honors Program with permission of the program director and department chairperson. Students pursuing an interdisciplinary thesis topic may register for three semester hours each in two separate disciplines in consultation with the department chairpersons. Prerequisite(s): Approval of University Honors Program.

CPS 478. Honors Thesis Project. 3 Hours

Second of two courses leading to the selection, design, investigation, and completion of an independent, original Honors Thesis project under the guidance of a faculty research advisor. Restricted to students in the University Honors Program with permission of the program director and department chairperson. Students pursuing an interdisciplinary thesis topic may register for three semester hours each in two separate disciplines in consultation with the department chairpersons. Prerequisite(s): Approved 477; approval of University Honors Program.

CPS 480. Artificial Intelligence. 3 Hours

Basic concepts and techniques of intelligent systems. Emphasis on representations, problem solving, search strategies, expert systems, mVgic systems, and AI programming. Design and implementation of AI applications. Prerequisite(s): CPS 350.

CPS 481. Advanced Artificial Intelligence. 3 Hours

An examination of several advanced sub-disciplines of Artificial Intelligence including areas such as speech recognition, planning, machine learning, advanced multiple agent systems and related topics. An exploration of underlying theoretical issues as well as the status of current problems and applications. Prerequisite(s): CPS 480.

CPS 482. Automata Theory. 3 Hours

Finite automata, sequential machines, survey of formal languages, introduction to computability, recursive functions, and Turing machines. Prerequisite(s): CPS 341.

CPS 490. Senior Capstone Project & Presentation. 1 Hour

Project and presentation in the scholarship, activity and/or practice related to the major. Students will present their work in a forum appropriate to the major.

CPS 496. Cooperative Education. 1-3 Hours

Computer science cooperative education work experience in an approved organization. Not open to students with credit in CPS 497. Credit does not apply to major requirements. Repeat to a maximum of three semester hours. Prerequisite(s): Twelve hours of upper-level CPS courses with a GPA of 3.0; total ninety semester hours with a GPA of 2.75; permission of the department in advance of the work.

CPS 497. Internship. 1-3 Hours

Computer science work experience in an approved organization. Not open to students with CPS 496 credit. Credit does not apply to major requirements. Repeat to a maximum of three semester hours. Prerequisite(s): Twelve semester hours of upper-level CPS courses with GPA of 3.0; total ninely semester hours and 2.75 GPA; permission of department in advance of the work.

CPS 498. Problems in Computer Science. 1-4 Hours

Individual readings and research in a specialized area. (See CPS 499.) By arrangement. May be taken more than once for additional credit. Prerequisite(s): Permission of department chairperson.

CPS 499. Special Topics in Computer Science. 1-4 Hours

Lectures or laboratory work in such areas as advanced artificial intelligence, computer architecture, information retrieval, microprogramming, multiprogramming techniques, numerical analysis, graphics, data communications, parallel processing, software development, distributed computing, multimedia computing. By arrangement. May be taken more than once. Prerequisite(s): Permission of department chairperson.