Assembly Language/Machine Architecture |
CSCI 150 |
- CS students feel they have the resources necessary for their success.
- Students will feel that computer science is a beneficial part of their education
- Explain different number systems and manipulate bits and bytes.
- Identify the components of a computer and the organization of those components.
- Use assembly language instructions to write programs.
- Map statements and constructs in a high-level language into a sequence of machine instructions.
- Construct internal representations of simple data types.
- Identify the basic principles of the operating system.
- Utilize procedures in assembly programs.
- Analyze disk operations and compare different file systems.
|
C++ Language and Object Development |
CSCI 140 |
- Students will be able to analyze problems and design algorithms in pseudo code.
- Students will be able to use given classes and virtual functions in a class hierarchy to create new derived classes and the code that uses them.
- For a given algorithm students will be able to write modular C++ code using classes in an OOP approach.
- Students will be able to read, understand and trace the execution of programs written in C++ language.
- CS students feel they have the resources necessary for their success.
- Students will feel that computer science is a beneficial part of their education
|
Data Structures I |
CSCI 220 |
- CS students feel they have the resources necessary for their success.
- Students will feel that computer science is a beneficial part of their education
- Analyze problems and select the appropriate data structure.
- Design the most efficient data structure for solving a problem.
- Implement the data structure through effective C++/Java code.
- Utilize effective search, insertion and deletion algorithms.
- Demonstrate effective debugging techniques.
- Write and organize documentation for data structures.
- Estimate running time for the algorithm studied in class or new algorithms.
- Students will be able to implement and use linear data structures including lists.
|
Data Structures II |
CSCI 230 |
- CS students feel they have the resources necessary for their success.
- Students will feel that computer science is a beneficial part of their education
- Analyze algorithms and select the most efficient one to solve a problem.
- Implement sorting algorithms.
- Implement hashing algorithms.
- Use self-organizing lists in problem solving.
- Students will be able to represent graphs and implement well-known graph algorithms.
- Estimate running time for sort, search, and graph algorithms.
- Identify main memory access and disk access costs.
- Utilize object-oriented techniques in design of data structures and algorithms.
|
Discrete Mathematics Applied to Computer Science |
CSCI 190 |
- Use Prim’s algorithm to find a spanning tree of minimum weight. Caution: there may be more rows in the table than the number of edges required to construct a spanning tree. The vertices are labeled A, B, C, D, …H, and the numbers on the edges are the weights.
- x^ 5 <- -> 2(mod13)
- Utilize the appropriate mathematical tool in algorithm design
- Define problems in mathematical terms using the language of sets, logic, arithmetic, combinatorics
- Compose proofs using truth tables or predicate calculus
- Develop algorithms using recursion
- Utilize modular arithmetic and integer arithmetic in problem solving with computers
- Demonstrate elementary counting techniques
- Solve problems using mathematical induction
- Utilize the language of graphs in problem solving and algorithm design
- Classify problems according to mathematical aspect that is relevant to it
- Utilize discrete probability for practical problems.
|
Fundamentals of Computer Science |
CSCI 110 |
- CS students feel they have the resources necessary for their success.
- Students will feel that computer science is a beneficial part of their education
- Define computer terminology.
- Describe various data representations.
- Demonstrate number system conversion to and from binary, decimal and hexadecimal.
- Discuss fundamental units of digital computers.
- Describe instruction set, computer organization and operating system features.
- Analyze and design efficient algorithms for problem solving.
- Utilize text editors, compilers and IDEs.
- Utilize appropriate data types and structures.
- Write, organize and assemble program documentation.
- Create correct code, and debug simple errors in one of the higher level languages (C, C++ or Java.)
- For a given algorithm students will be able to write the C++ code using a modular approach.
|
Java Language and Object Oriented Programming |
CSCI 145 |
- Analyze problems and design appropriate algorithms.
- Code algorithms into the Java language.
- CS students feel they have the resources necessary for their success.
- Students will feel that computer science is a beneficial part of their education
- Recognize and produce proper Java syntax.
- Utilize recursion, iteration and arrays.
- Demonstrate the paradigm of object oriented programming.
- Write, organize and assemble program documentation.
- Develop standards for comparing the efficiency of various algorithms.
- Demonstrate debugging techniques.
|