Software Engineering Programs

 

Software Engineering Programs

Software Engineering Programs

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. Therefore, developing and maintaining reliable and efficient software systems is the primary concern of software engineering professionals. Software systems should be affordable to develop and maintain and satisfy all the requirements that customers have defined. 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.

Software Engineering Program Objectives:

The software engineering program at CCIT graduates distinguished members in the field of computer science, who, within a few years of graduation, fulfill societal needs and:

  1. Be successful professionals in the field by exhibiting solid foundations in Software Engineering and utilizing the appropriate methodologies, principles, and processes, and quality practices.
  2. Advance their technical skills in Software Engineering through continuous learning, research, and/or graduate studies.
  3.  Further extend their communication skills, teamwork capabilities, critical thinking, and time management abilities, as well as operate in line with professional, ethical, legal, and societal considerations.

Software Engineering Learning Outcomes:

The graduates of the Software Engineering program at CCIT will have an ability to:

  1. Identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics.
  2. Apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors.
  3. Communicate effectively with a range of audiences.
  4. Recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts.
  5. Function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives.
  6. Develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions.
  7. Acquire and apply new knowledge as needed, using appropriate learning strategies.

Career Opportunities:

Software Engineering prepares graduates to a number of highly required jobs in the market. The following are examples of some of the career opportunities for Software Engineering graduates:

  • Software Developer
  • Web Developer
  • Mobile App Developer
  • Technical Architect
  • Requirements Engineer
  • Software Test Engineer
  • Software Quality Assurance (QA) Engineer
  • Software Project Manager
  • Security Software Engineer
  • DevOps Engineer
  • Embedded Systems Software Engineer

Upon the completion of the bachelor's program in Software Engineering, graduates have the opportunity to broaden and deepen their academic skills by pursuing post-graduate (master's and doctoral) studies.

Program Plan:

Course Descriptions

Course Code Course Name Course Description
 Admission Exam English Proficiency
GLA 0001 Remedial English Click Here
1.1 University Requirements
1.1.1. Compulsory Courses
UNR2101 Communication and Presentation Skills Click Here
UNR1403 Academic English Click Here
UNR1407 Academic Writing Click Here
1.1.1  Elective Courses by University (College Compulsory)
UNR1302 Fundamentals of Business Click Here
1.1.2 Elective Courses
UNR1102 Creativity and Innovation Click Here
UNR1103 ICT Skills Click Here
UNR4201 Professional Ethics and Practice Law Click here
UNR4301 Introduction to Entrepreneurship Click Here
UNR2303 Engineering Economy Click Here
UNR2304 Introduction to Leadership Click Here
UNR2305 Contemporary Issues in Society Business and Economics Click Here
UNR1306 Basics of Logistics Management Click Here
UNR1401 Introduction to Mass Communication  
UNR1402 Arabic Language Click Here
UNR1404 French Language Click Here
UNR1405 German Language Click Here
UNR1406 Spanish Language Click Here
UNR1501 Art Appreciation Click Here
UNR1502 History of Egyptian Art Click Here
UNR1503 Music and Civilization Click Here
UNR2504 Introduction to Photography Click Here
UNR2505 Introduction to Cinematography Click Here
UNR1601 Climate Change and Water Management Click Here
UNR1602 Sustainable Development Click Here
UNR2603 Environmental Sciences and Technology Click Here
UNR2604 Safety and Risk Assessment Click Here
UNR1605 History of Engineering and Technology Click Here
1.2 College Requirements
1.2.1 Basic and Applied Science Courses (EBA)
1.2.1.2 Compulsory Courses
EBA0201 Precalculus (for science section students) Click Here
EBA1110 Physics Click Here
EBA1203 Calculus I Click Here
EBA1204 Calculus II Click Here
EBA2203 Probability & Statistics Click Here
EBA2204 Linear Algebra Click Here
1.2.1.1 Science Elective Courses
EBA1106 Advanced Physics Click Here
EBA1107 Quantum Physics Click Here
EBA1300 Biochemistry Click Here
1.2.2 Computer Science Courses (CCS)
CCS1001 Discrete Structures Click Here
CCS1101 Introduction to Computing Click Here
CCS2102 Digital Logic Design Click Here
CCS1302 Problem Solving and Programming Click Here
CCS2103 Introduction to Computer Architecture Click Here
CCS2201 Introduction to Networks Click Here
CCS2303 Object-Oriented Programming Click Here
CCS2304 Advanced Programming Applications Click Here
CCS2305 Web Programming Click Here
CCS2401 Data Structures and Algorithms Click Here
CCS3203 Operating Systems Click Here
CCS3002 Numerical Methods Click Here
CCS3403 Computing Algorithms Click Here
CCS4204 Computer System Security Click Here
1.2.3 Information System Courses (CIS)
CIS1000 Introduction to Information Systems Click Here
CIS2101 Database Systems Click Here
1.2.4 Software Engineering Courses (CSE)
CSE2001 Introduction to Software Engineering Click Here
1.2.5 Cybersecurity Courses (CCY)
CCY2001 Introduction to Cybersecurity Click Here
1.2.6 Artificial Intelligence Courses (CAI)
CAI3101 Introduction to Artificial Intelligence Click Here
1.2.7 Non-Computing Courses (CNC)
CNC1401 Entrepreneurship Skills Click Here
1.3 Program Requirements
1.3.1 Compulsory Courses
EBA3202 Differential Equations Click Here
EBA3201 Advanced Statistics Click Here
CSE3101 Software Requirements and Specifications Click Here
CSE3402 Project Management Click Here
CSE3201 Designing Human Centered Software Click Here
CSE3202 Software Component Design Click Here
CSE4301 Software Verification and Validation Click Here
CSE4203 Principles of Software Architecture Click Here
CSE4401 Software Engineering Process Click Here
CSE4901 Project I Click Here
CSE4902 Project II Click Here

You can find the major electives here: https://aast.edu/getData/pdf_retreivefileNew_open.php?unit=530&filename=/mediafiles/530/Document/187057.pdf