Software Engineering (up to 2021)

  • Software Engineering |
  • English

Program Description

Software systems should be affordable to develop, maintain and satisfy all the requirements that are defined by customers. More recently, it has evolved in response to factors such as the growing impact of large and expensive software systems in a wide range of situations and the increased importance of software in safety-critical applications. Software engineering is different in character from other engineering disciplines due to both the intangible nature of software and the discontinuous nature of software operation. It seeks to integrate the principles of mathematics and computer science with the engineering practices developed for tangible, physical artifacts. Degree programs in computer science and in software engineering have many courses in common. Software engineering students learn more about software reliability and maintenance and focus more on techniques for developing and maintaining software that is correct from its inception. SE students learn how to assess customer needs and develop usable software that meets those needs. Knowing how to provide genuinely useful and usable software is of paramount importance.

Learning Outcomes

  • The graduates of the Software Engineering program at CCIT, within a few years of graduation, are expected to: 1. (PEO1) To develop software systems of varying size and complexity through the use of appropriate software engineering processes, methodologies, tools, technologies, and quality practices. 2. (PEO2) Have a sufficient understanding of the field of software engineering to be successfully employed, pursue graduate studies, or continue their professional education. 3. (PEO3) Be effective as both individual contributors and members of a development team working in modern environments where they apply and further develop their communication skills, teamwork capabilities, critical thinking, and managerial and leadership skills, while committing to professional, ethical, legal, and societal considerations. The program educational objectives (PEOs) support the missions of both the institution and college.

Markets and Career

  • Software Engineer
    A software engineer is responsible for developing, and maintaining software systems, applications, and solutions. They collaborate with teams, utilize programming languages and tools, and ensure the functionality and quality of the software they create

    Software Architect
    A software architect is responsible for designing the overall structure and framework of software systems, including defining key components, modules, and their interactions. They analyze requirements, establish technical standards, and make critical design decisions to ensure the scalability, reliability, and performance of the software architecture

    Software Quality Engineer
    A software quality engineer is responsible for ensuring the overall quality, reliability, and performance of software products. They design and implement quality assurance processes, conduct testing and analysis, and collaborate with development teams to identify and address software defects and issues

Admission Requirements

Data will be available soon!

Tests & Prerequisites

Data will be available soon!




Software engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software..

Code Title Prequisites
LH136 English for Specific Purposes II (ESP II) English For Specific Purposes I
BA102 Calculus 2 Calculus I
GM311 Introduction to Multimedia Intro. to Computers
EC134 Fundamentals of Electronics Physics
CS143 Introduction to Problem Solving and Programming Introduction to Computers
NC133 Communication Skills English For Specific Purposes I
Code Title Prequisites
CE216 Digital Logic Design Introduction to Computers
CS243 Object Oriented Programming Introduction to Problem Solving and Programming
BA201 Calculus III Calculus II
CS202 Discrete Structures Introduction to Computers
BA203 Probability and Statistics Calculus II
BA216 Advanced Physics Physics
Code Title Prequisites
SE291 Introduction to Software Engineering Object-Oriented Programming & Intro. to Information systems
CS212 Data Structures and Algorithms Object-Oriented Programming
IS273 Database Systems Intro. to Problem Solving and Programming
CS244 Advanced Programming Applications Object-Oriented Programming
CE243 Intro. to Computer Architecture Digital Logic Design
CE231 Introduction to Networks Intro. to Problem Solving and Programming
IT291 Professional Training in Entrepreneurship None
Code Title Prequisites
SE392 Software Requirements and Specifications Intro. to Software Engineering
BA304 Linear Algebra Calculus II
SE391 Project Management Intro. to Software Engineering
SE396 Software Engineering Process Intro. to Software Engineering
CS333 Web Programming Database Systems
BA301 Advanced Statistics Probability and Statistics
Code Title Prequisites
CS322 Operating Systems Intro. to Comp. Architecture & Data Structures & Algorithms
CS366 Introduction to Artificial Intelligence Data Structures & Algorithms & Discrete Structures
CS312 Computing Algorithms Data Structures & Algorithms
SE393 Principles of Software Architecture Intro. to Software Engineering
CS451 Human Computer Interaction Intro. to Software Engineering
Code Title Prequisites
SE491 Software Component Design Introduction to Software Engineering
CS481 Computers & Society 96 CR or more
SE401 Project I GPA>=2.0 & 96 CR or more
Major 1 Major Elective N/A
Major 2 Major Elective N/A
Minor 1 Minor Elective N/A
Code Title Prequisites
SE497 Software Verification and Validation Introduction to Software Engineering
CS421 Computer System Security Operating Systems & Introduction to Networks
SE402 Project II Project I
Major 3 Major Elective N/A
Major 4 Major Elective N/A
Minor 2 Minor Elective N/A

Start your Application

Start The Journey to your Career.