Computer Science Courses
|
CSC |
050 |
INDEPENDENT STUDY |
One to three credit hours |
|
|
This course is designed to assist students in the study of computer topics beyond those included in the regular course offerings. Students working in cooperation with a supervising faculty member may study approved material which does not duplicate a course presently in the curriculum. See Independent Study Program, Section II. |
||||
|
CSC |
070 |
INTERNSHIP |
Credit hours to be arranged |
|
|
Academic credit is offered for appropriate off-campus, computer-related experience. See Internship Program, Section II. |
||||
|
CSC |
259,359,459 |
FACULTY-STUDENT COLLABORATION |
Credit hours to be arranged |
|
|
CSC |
121 |
TECHNOLOGICAL LITERACY FOR TODAY’S WORLD |
Three credit hours |
|
|
This course introduces concepts and methods concerning the use of computer-based systems in business and other aspects of society, including communication technologies and the sciences. Several applications will be introduced in a hands-on, laboratory setting, including word processing, presentation software, spreadsheets, HTML, e-mail, the Internet, and the World Wide Web. |
||||
|
CSC |
131 |
COMPUTER APPLICATION SOFTWARE |
Two credit hours |
|
|
Prerequisite: Dependent upon topic |
||||
|
The focus is on the application of a specific software product. Techniques for using software will be learned while applying them to the solution of information-processing problems. Students are permitted to repeat the course when it is offered with a different software application, but no more than six credit hours of CSC 131 may be counted toward graduation requirements. |
||||
|
CSC |
135 |
WEB SITE DESIGN |
Three credit hours |
|
|
This course is designed to provide experience in the development of basic web sites, focusing on standard web development languages and tools such as HTML, XML, CSS, and JavaScript. Use of web editing tools such as Joomla or Dreamweaver is also included. Several web sites will be developed to practice the implementation of the technologies discussed. |
||||
|
CSC |
141 |
ADVANCED APPLICATIONS FOR INFORMATION ANALYSIS |
Three credit hours |
|
|
Prerequisite: CSC 121 or basic computer literacy, including the use of word processing and beginning Excel, is assumed; readiness for MTH 136 or higher or completion of MTH 137. |
||||
|
This course focuses on spreadsheet and database technologies with an emphasis on the application of those technologies in the business domain. Topics include creation of spreadsheets and databases, financial and statistical functions, charting, problem solving tools, querying of databases, creation of forms and reports, macros, and the integration of spreadsheets and databases. |
||||
|
CSC |
170 |
INTRODUCTION TO COMPUTER INFORMATION SYSTEMS |
Three credit hours |
|
|
This course is designed to provide an introduction to computing from a perspective of information systems as opposed to computer science. As such, the course focuses less on the technical aspects of computer systems and more on systems architecture and the usage of computer systems within organizations. The course builds the foundation necessary for student interested in areas such as business analysis, project management, and system design. Topics include Boolean algebra, databases, HTML, system architecture, and the software development life cycle. Ethical considerations are introduced throughout the course. |
||||
|
CSC |
180 |
FOUNDATIONS IN COMPUTER SCIENCE |
Three credit hours |
|
|
This introductory course is designed for those students intending to major or minor in Computer Science or Computer Information Systems. Topics include the internal representation of values and instructions, digital logic and circuits, machine language, network terminology and architecture, algorithmic thinking, data communications, security, and the use of global networks. |
||||
|
CSC |
210 |
COMPUTER SCIENCE I: PROGRAMS AND APPLICATIONS |
Three credit hours |
|
|
This course covers the fundamental concepts of computers and computer programming in the procedural paradigm. Repetition, selection, procedures, simple data types, arrays, and records are covered. Object-orientation is introduced. Structured design and programming techniques are emphasized. |
||||
|
CSC |
211 |
INTRODUCTION TO PROGRAMMING IN PYTHON |
Three credit hours |
|
|
This course is intended to provide students with basic skills and experience in the analysis of problems, the creation of algorithms to solve these problems, and implementation of the resulting algorithms as working programs. The Python programming language is used and many of the assignments focus on the creation or manipulation of multimedia components. |
||||
|
CSC |
235 |
SYSTEM REQUIREMENTS AND TESTING |
Three credit hours |
|
|
Prerequisite: CSC 170 or CSC 180 |
||||
|
This course is designed to introduce the student to the areas of requirements gathering and testing of computer systems. The course focuses on building the skills necessary to drive a student's understand, application and success in the Business or Systems Analysis arena. Case studies will be used to explore requirements gathering. Testing topics will include V Model and Testing First models. Students will be introduced to the components of a testing plan and be required to create portions of a test plan using industry standard techniques. |
||||
|
CSC |
241 |
LINEAR DATA STRUCTURES |
Three credit hours |
|
|
Prerequisite: CSC 170 or CSC 180 and CSC 210; Corequisite: MTH 161 |
||||
|
This course emphasizes the design, construction, and use of structured data and objects. Both static and dynamic linear structures are covered, including lists, stacks and queues. |
||||
|
CSC |
242 |
NON-LINEAR DATA STRUCTURES |
Three credit hours |
|
|
Prerequisite: CSC 241 and MTH 161 |
||||
|
This course expands the study of data structures begun in CSC 241 to non-linear structures, including trees, graphs and heaps. Special attention is paid to the time and space complexity of the related algorithms. More advanced language topics are introduced. |
||||
|
CSC |
250 |
MULTIMEDIA PROGRAMMING |
Three credit hours |
|
|
Prerequisite: CSC 170 or CSC 180 and CSC 210 or CSC 211 |
||||
|
This course focuses on the creation and integration of computer media including still graphics, animation, video, and sound. A major part of the course will focus on programming techniques and languages for the interactive control of multimedia presentations. |
||||
|
CSC |
263 |
SEMINAR |
One to three credit hours |
|
|
Prerequisite: Dependent upon topic. |
||||
|
Selected topics in computer science |
||||
|
CSC |
270 |
DATA COMMUNICATION CONCEPTS |
Three credit hours |
|
|
Prerequisite: CSC 170 or CSC 180 |
||||
|
This course provides an introduction to data communications. Topics include fundamental communications concepts (data and voice); communications hardware, protocols, and software; and network configurations, design, security, control, and management. Topic coverage includes study of LANs, WANs, OSI models, Internet, and intranets. |
||||
|
CSC |
275 |
INFO SYSTEMS SECURITY, PRIVACY, & ETHICS |
Three credit hours |
|
|
Prerequisite: CSC 170 or CSC 180 and one 200-level CSC course |
||||
|
This course explores the social issues, including historical and social context, professional responsibilities, risks and liabilities, and intellectual property of an information system organization. Topics include security policy development life cycle, policy development and implementation process, network security, privacy laws, authentication, and access and information flow controls. |
||||
|
CSC |
280 |
INTRODUCTION TO DATABASE MANAGEMENT SYSTEMS |
Three credit hours |
|
|
Prerequisite: CSC 170 or CSC 180 and CSC 210 |
||||
|
This course introduces the fundamental concepts necessary for the use, design, implementation, and management of a database system. The course is project-based, covering database creation, maintenance, and querying using SQL. A relational database management system will be used throughout. The project focuses on retrieving and answering queries from and to a Web interface. |
||||
|
CSC |
285 |
NETWORK DIAGNOSTICS AND TROUBLESHOOTING |
Three credit hours |
|
|
Prerequisite: CSC 210 and CSC 275 |
||||
|
This course covers concepts and tools associated with diagnosing and troubleshooting computer networks. Topics include interpreting documentation, performing online and offline diagnostics, debugging code, interpreting diagnostic results and log files, performing troubleshooting techniques. Course will focus on finding and localizing “problems” rather than correcting them. |
||||
|
CSC |
290 |
COMPUTER NETWORKS |
Three credit hours |
|
|
Prerequisite: CSC 270 and CSC 285 and MTH 161 |
||||
|
This course covers the design, installation and administration of computer networks at the operating system level from an applied perspective. The course includes a highly integrated hands-on component in which a fully functional single client and peer-to-peer client network is realized within a hybrid physical and virtualized platform is used. |
||||
|
CSC |
310 |
SOFTWARE ENGINEERING I |
Three credit hours |
|
|
Prerequisite: CSC 235 and CSC 241 |
||||
|
This is the first of a two-course sequence that presents how engineering principles are applied in the development of large, complex software systems. The focus is on issues of the analysis, design, and development phases of the software development life cycle. Topics presented include software development methodologies, modeling, and version control, and development for different platforms (PC, web, mobile). |
||||
|
CSC |
311 |
SOFTWARE ENGINEERING II |
Three credit hours |
|
|
Prerequisite: CSC 242 and CSC 310 |
||||
|
Building upon the topics presented in CSC 310, this course will include topics such as configuration management, design patterns, software validation and verification, deployment, and software evolution. |
||||
|
CSC |
315 |
NETWORK ADMINISTRATION |
Three credit hours |
|
|
Prerequisite: CSC 280 and CSC 290 |
||||
|
This course covers administering network operating systems. Topics include Windows system and UNIX (Linux) system administration, application (Database, Web) maintenance and interoperability between Windows and Linux systems. A highly integrated hands-on component is used where Windows and Linux systems are realized in a hybrid physical and virtualized platform is used. |
||||
|
CSC |
320 |
COMPUTER ARCHITECTURE & ORGANIZATION |
Three credit hours |
|
|
Prerequisite: CSC 242 |
||||
|
This course covers computing history, computer technology and terminology, basic logic |
||||
|
CSC |
325 |
INTERMEDIATE PROGRAMMING FOR APPLICATIONS |
Three credit hours |
|
|
Prerequisite: CSC 280 |
||||
|
This course introduces the concept of structured programming in a business-programming environment. Concepts covered include object-oriented program structures, developing text and GUI interfaces, file processing, database information processing, data conversion and information processing. |
||||
|
CSC |
330 |
WEB PROGRAMMING |
Three credit hours |
|
|
Prerequisite: CSC 242 or CSC 325 |
||||
|
This course focuses on technologies used in the development of Web sites. Topics covered include XML, CSS, JavaScript, ASP.NET/C#, and an introduction to web security. |
||||
|
CSC |
400 |
OPERATING SYSTEMS |
Three credit hours |
|
|
Prerequisite: CSC 242 |
||||
|
This course covers operating systems concepts and design, including processes and threads, CPU scheduling, mutual exclusion and synchronization, deadlock, memory management, file systems, networking, distributed systems and systems programming. |
||||
|
CSC |
410 |
ADVANCED COMPUTER NETWORKS |
Three credit hours |
|
|
Prerequisite: CSC 290 and MTH 135 |
||||
|
This course covers advanced concepts and tools associated with network operation and performance. Topics include network topology, network hardware (switches and routers), communication protocols and packet formats, troubleshooting techniques, multi-platform integration, and network security and configuration. |
||||
|
CSC |
415 |
PENETRATION TESTING AND DEFENSE |
Three credit hours |
|
|
Prerequisite: CSC 210 and CSC 311 |
||||
|
This course covers concepts and tools associated with evaluating the security of a computer system or network and the defense of attacks from malicious outsiders. Topics include the anatomy of an attack, survey of tools used in attacks, strategies used in attacks, and techniques and guidelines on how to prevent or mitigate attacks. Documenting the attacks, from the attacker and the victim perspective, is also covered. |
||||
|
CSC |
420 |
FORMAL LANGUAGES AND AUTOMATA |
Three credit hours |
|
|
Prerequisite: CSC 242 |
||||
|
This course is an introduction to the theoretical foundations underlying computing. Topics include language specification and grammars, finite and pushdown automata, Turing machines, decidability, and computability. Application of these concepts into areas such as compiler design will also be discussed. |
||||
|
CSC |
430 |
ALGORITHM DESIGN AND ANALYSIS |
Three credit hours |
|
|
Prerequisite: CSC 242 |
||||
|
Building on concepts of basic algorithm design and complexity analysis introduced in earlier courses, this course explores advanced algorithm design and analysis. Topics may include advanced data structures, inductive algorithms, graph algorithms, geometric, algebraic, and numeric algorithms, reductions, NP-completeness, and parallel algorithms. Emphasis is placed on formal efficiency analysis of algorithms utilizing concepts from discrete mathematics. |
||||
|
CSC |
460 |
SYSTEMS ANALYSIS AND DESIGN |
Four credit hours |
|
|
Prerequisite: CSC 235 & CSC 280 |
||||
|
This course provides a methodical approach to developing computer systems including feasibility study, systems planning, analysis, design, testing, implementation, and software maintenance. Structured Systems Analysis and Design will be emphasized, but data-structure based and object-oriented Systems Analysis and Design methods will also be covered, with an emphasis on the relationship between the latter two methodologies. |
||||
|
CSC |
465 |
INFORMATION SYSTEMS PROJECT MANAGEMENT |
Three credit hours |
|
|
Prerequisite: CSC 460 or CSC 280 and one CSC-300 or -400 level course |
||||
|
This course provides a methodical approach to project management in the context of an information system organization. The theory and practice of project management are studied and applied. Topics include system life cycle planning, organizational structures, team building, interview techniques, management functions, project management software, project evaluation and control, and technical writing. |
||||
|
CSC |
470 |
SENIOR INTERNSHIP |
Three credit hours |
|
|
Prerequisite: Permission of instructor |
||||
|
This course is designed to be a senior capstone experience in which the student is expected to demonstrate mastery of the skills and concepts acquired throughout the major curriculum. The internship is required to match the individual’s major program and have an emphasis on the application of classroom knowledge to actual practice. All internships must be approved by the faculty of the department. Due to the capstone nature of the course, senior status within the major is a required pre-requisite. |
||||
|
CSC |
471 |
SENIOR PROJECT |
Three credit hours |
|
|
Prerequisite: Permission of instructor |
||||
|
This course provides a project-oriented experience and is intended primarily for those students who are seeking a research experience or who for logistical reasons are unable to participate in an internship experience. Students seeking to pursue this option must submit a detailed project proposal to the computer science faculty for approval. Project proposals must demonstrate that the project is of significant breadth and depth to be considered a capstone experience, integrating multiple aspects of the student’s background coursework and extending the student’s knowledge in at least one aspect of their area of concentration. |
||||
|
CSC |
480&481 |
SENIOR SOFTWARE ENGINEERING PROJECT I&II |
Three credit hours |
|
|
Prerequisite: CSC 480 requires CSC 311 and CSC 481 requires CSC 480 |
||||
|
This two-semester sequence is designed to be a capstone experience in the software engineering major that provides the opportunity to analyze, design, develop, and test a large software system. The projects undertaken will be large-scale and complex, requiring students to apply the engineering principles learned in previous courses. Project will be completed by teams of students. At the end of the experience a technical paper and presentation will be required. |
||||
