20 courses with the subject CSC, each shown exactly as we captured it from the college's catalog, with every element we hold. Where the wording looks broken, that is our reading of the catalog, not the college's text.
CSC 125Introduction to Computer Science,4
An introduction to an object oriented programming language, algorithm design, structured and object-oriented programming techniques. No prior programming experience is assumed. Prerequisite: higher algebra.
Intermediate data structures and techniques of object-oriented and structured programming. Discrete data types and structures, including arrays, files, sets, lists, trees, hash tables, sorting and recursion. Small to medium-scale programs are developed.
Basics of programming techniques for the World Wide Web. Provides an introduction to several web design methodologies including methodologies for data access and presentation. PEAK DESCRIPTION: Students will seek out an organization of their choosing (non-profit, commercial business, political campaign, internal to Concordia College group, etc.) and build a web application for that organization as a final project for the course. Students will be required to work in groups to complete this project in order to draw upon user interface design, writing, client relations, advertising and marketing, project management, and programming skills present among students from different academic backgrounds, promoting interdisciplinary collaboration and teamwork.
Basics of software development for mobile devices. Provides an introduction to programming techniques for mobile devices including mobile web access and mobile access to databases. PEAK DESCRIPTION: Students will seek out an organization of their choosing (non-profit, commercial business, political campaign, internal to Concordia College group, etc.) and build a mobile application (iOS and/or Android) for that organization as a final project in the course. Students will be required to work in groups to complete this project in order to draw upon user interface design, writing, client relations, advertising and marketing, project management, and programming skills present among students from different academic backgrounds, promoting interdisciplinary collaboration and teamwork.
An introduction to database theory and practice. Topics include relational database design, ER modeling, normalization, SQL/embedded SQL, concurrency control, data warehousing and other emerging database technologies. Practical software engineering principles are emphasized through student projects.
An introduction to the theory and practice of quantitative modeling and optimization, with applications to computer simulation and business resource management. Possible topics include linear and nonlinear programming, network analysis, game theory, deterministic and probabilistic models. PEAK DESCRIPTION: Students will seek out an organization of their choosing (non-profit, commercial business, political campaign, internal to Concordia College group, etc.) and complete an optimization consulting project. Students will work in groups of 2-4 members to translate the project requirements into mathematical language, solve the optimization problem, and deliver solutions and recommendations to the client. Students will also complete a postmortem report documenting their skills gained and how their perspective was changed by the project. Examples of past projects include optimal potato selection for RDO Farms, truck routing for Great Plains Food Bank, and sports scheduling for the MIAC.
An overview of the systems development process. Includes: tools/techniques for describing processes, data flows, data structures, file designs, input/output designs, program specifications and prototyping for systems. Discovery, problem-solving and communications skills as employed by the systems analyst are also covered.
This course is an introduction to the fundamental concepts in the design and implementation of computer networks. Topics include network topologies, OSI and TCP/IP reference models, local area networks, Wi-Fi, and routing. Examples and projects will focus primarily on TCP/IP protocols.
This course is intended to give a wide exposure to the history and current state of the field of Artificial Intelligence. Students will be introduced to the different Artificial Intelligence methodologies and familiarized with the relative strengths and weaknesses of these technologies.
A study of how computers manage their resources. Highlights include concurrency, memory management, process and processor management and scheduling, device control, performance evaluation and system security. Several operating systems are compared.
An introduction to principles of programming language design. Topics include regular and context-free grammars, parsing, static and dynamic scoping, and type checking. Students will explore the dimensions of computer languages drawn from several different programming paradigms.
This course will allow the students to apply all their knowledge from the computer science major to implement a real world software project. Students will simultaneously learn techniques for insuring quality software and will apply these techniques among other techniques to implement a software project with direct applicability to a large problem situation. PEAK DESCRIPTION: Students will seek and secure an organization or individual external to the class to serve as a client with which to plan and build a significant database-driven software application. Students must regularly meet and collaborate with their client throughout the semester to understand project requirements, expectations, change requests, and provide status updates while experiencing the full software development lifecycle.
This course provides an opportunity for individual students to conduct in-depth study of a particular topic under the supervision of a faculty member. Contact the department or program chair for more information.
A study of the mechanisms for interaction (i.e. user interfaces) between users and computing equipment whether this computing equipment comes in the form of a computer or of a computing system embedded within any other system (manufacturing machinery controllers, medical equipment, aircraft, traffic lights, home appliances...etc.) Human computer interaction focuses on user satisfaction as well as ensuring user interfaces that avoid erroneous use of computing equipment that may at times have catastrophic results.
This course provides an opportunity for individual students to conduct research in a specific area of study, completed under the direction of a faculty mentor. Specific expectations of the research experience to be determined by the faculty. Repeatable for credit. Prerequisite: consent of instructor.