Computer Science: Software Engineering
Core Major Learning Ooutcomes
Core 1CST 300 Major ProSeminar
This is an introductory programming course to develop problem-solving techniques for numerical and non-numerical problems from various disciplines. Students will design the solution to each problem and implement it in the C++ programming language. Coverage includes introduction to computer system, C++ basics, flow control, functions, I/O streams, arrays, strings, and classes. ![]()
|
Core 2 CST 337 Computer Architecture
Provides students with the fundamental knowledge of computer architectures, hardware and software components of computer systems, interrelationship among different components. Coverage includes introduction to data representation, CPU, assembly programming, memory systems, input/output devices, pipelining, multi-processing systems, operating systems and network architecture. |
Core 3CST 231 Problem Solving and Programming with C++
This is an introductory programming course to develop problem-solving techniques for numerical and non-numerical problems from various disciplines. Students will design the solution to each problem and implement it in the C++ programming language. Coverage includes introduction to computer system, C++ basics, flow control, functions, I/O streams, arrays, strings, and classes. |
Core 3CST 238 Introduction to Data Structures
Provides students with intermediate-level programming skills to make it possible for them to write clear, efficient, and high-quality code. Students learn basic data structures such as array, list, stack, queue, and tree. They also acquire several basic algorithms in programming such as searching, sorting, and recursion. Furthermore, students learn in-depth knowledge of C++ programming language such as classes, pointers, and dynamic memory management. |
|
Core 4MATH 370: Logic and Computation
An advanced study of logic and discrete structures that have application in computer science. Includes logic, propositional and predicate calculus, proof structures, algorithms, and complexity. Emphasizes applications to core areas of computer science, such as computer architecture, programming languages, the theory of computation, artificial intelligence, software engineering, and relational databases. |
Core 5CST 205 Multimedia Design and Programming
Introduces design, creation, and manipulation of interactive applications and electronic media for communication purpose. Focuses on creating media, understanding media concepts, and manipulating the created media using basic programming concepts of control flow, functions, expressions and data types in the Python language. Students acquire a basic understanding for digital media formats, how to design, create such media using basic programming skills. |
Culmination Outcomes
CULM 1CST 462S: Computer Science and Community
We will explore the impact that access to information technology has on the opportunities available to people in different parts of our society. The inclinations and prejudices leading to lack of women and minorities in computer science will be studied; short and long term activities to address them will be developed. Students will implement components of the activities they identified by serving at community sites including high schools, community centers and non-profit organizations. |
CULM 2 & 3CST 499: Directed Group Capstone
Students will work on a project in large groups (up to 5 students in each group), developing requirements specification, a solution plan followed by design and implementation of the solution. The problem statement for the projects will be selected by the faculty. Faculty will also play the role of a project manager directing the schedule and deliverables for these projects. |
CULM 4CST 311: Intro to Computer Networks
Survey of Telecomm and Data Comm Technology Fundamentals, Local Area Network, Wide Area Network, Internet and internetworking protocols including TCP/IP, network security and performance, emerging industry trends such as voice over the network and high speed networking. Designed as a foundation for students who wish to pursue more advanced network studies including certificate programs. Includes hands-on networking labs that incorporate Cisco CCNA lab components. |
CULM 4CST 320 Intro to Digital Games
Focuses on the fundamental issues in the development of digital games. Discusses components of modern digital gams and their relationships, historical development of contemporary video and computer gaming, team member roles and tasks within the production process. Covers relationships of the conceptual creative and technical production to overall game development and analyzes the business, marketing and industry components of game development. |
CULM 4CST 334 - Operating Systems
Provides students with the major functions and components of an operating system. In this course, Linux is used as an example operating system. Main topics include OS basics, Linux file system, essential Linux utilities and commands, shell scripting, process creation and control, system programming, and text utilities. |
CULM 4CST 370 - Design & Analysis of Algorithms
Students learn important data structures in computer science and acquire fundamental algorithm design techniques to get the efficient solutions to several computing problems from various disciplines. Topics include the analysis of algorithm efficiency, hash, heap, graph, tree, sorting and searching, brute force, divide-and-conquer, decrease-and-conquer, transform-and-conquer, dynamic programming, and greedy programming. ![]()
|
CULM 5
CST 373 Ethics in the Major
Investigates through an ethical perspective how communication technology affects our lives. Discusses individual and institutional values represented through technological choices. Using case studies and current events, explores such issues as intellectual property rights, information access and privacy, and the digital divide.
Investigates through an ethical perspective how communication technology affects our lives. Discusses individual and institutional values represented through technological choices. Using case studies and current events, explores such issues as intellectual property rights, information access and privacy, and the digital divide.
Emphasis: Major Learning Outcomes
SE 1CST 338 Software Design
Provides students with the fundamental concepts to develop large-scale software, focusing on the object-oriented programming techniques. Coverage includes the introduction to Java programming language, object-oriented programming, software life cycle and development processes, requirements analysis, and graphical user interface development. |
SE 2CST 336 Internet Programming
Provides students with dynamic web application development skills, focusing on the PHP, MySQL, and JavaScript. Coverage includes the Internet architecture, XHTML, CSS, programming with PHP, database and MySQL, and client-side programming with JavaScript. |
SE 3CST 438 Software Engineering
Prepares students for large-scale software development using software engineering principles and techniques. Coverage includes software process, requirements analysis and specification, software design, implementation, testing, and project management. Students are expected to work in teams to carry out a realistic software project. ![]()
|
![](http://www.weebly.com/weebly/images/file_icons/pdf.png)
software_engineering_ilp.pdf | |
File Size: | 2170 kb |
File Type: |