Program #20: Computer Engineering and Software Systems Program
Program Description
The systematic development of high-quality software systems that are concerned with quality, cost, time, and a number of other requirements requires well-qualified engineers in this field. Targeted at software engineering apply engineering principles in each phase of software development life-cycle; requirements analysis, design, validation, implementation, testing, documentation, and management. Software engineering is one of the most promising fields in engineering and is considered an important milestone in the ever-growing information technology sector. Therefore, the main objective of this program is to graduate highly qualified engineers in the field of computer engineering and software industry that have the qualification requirements in the field of computer engineering and software engineering. This program focuses on modern methodologies in software industry that represents, without a doubt, an important sector of the national economy. Students study in this program a variety of courses that complement each other to produce a world-class qualified engineer
Career Prospects
The graduate of this program will establish technical leadership in the area of computer engineering and software systems. In addition to his contributions as a professional engineer who is able to participate and cooperate productively in his respective fields. The skills of the graduates of this program that include computer engineering, software engineering, distributed and mobile computing, embedded systems, computer security, multimedia systems, data science, and others will lead to high-level positions in leading the engineering projects in these areas. Therefore, this program will meet the increasing demand for this specialization to meet the market needs at the national, regional, and international levels.
Program Concentrations
Elective courses are distributed in fours concentrations:
- Multimedia and Computer Graphics
- Distributed and Mobile Computing
- Software Product Lines
- Data Science
The student has to select seven technical elective courses for a total of (18) credit hours with at least five of these courses from one of the mentioned fields.
- Multimedia and Computer Graphics: This concentration prepares the graduate to work in the field of graphics software development including image processing, vision, computer animation, and games development.
- Distributed and Mobile Computing: This concentration prepares the graduate to work in the field of distributed systems and networking including cloud computing, wireless and mobile networks, digital forensics, IOT, and parallel computing.
- Software Product Lines: This concentration prepares the graduate to work as a full-fledged software engineer who deeply understands all software development processes and aspects including financial, managerial, and design, security, and performance aspects.
- Data Science: This concentration prepares the graduate to work as a data scientist by covering a wide range of topics including big-data, machine learning, deep learning, and various application such as bioinformatics and business intelligence.
Agreements with another University
The program is in partnership with the University of East London (UEL), United Kingdom for a Bachelor Dual Degree. Students joining this agreement will pay an additional fee, to substitute expenses for the external Quality Audits/Moderation Boards that will take place in Egypt. The Graduates should receive two B.Sc. certificates, one from the University of East London, and one from Ain Shams University. Students are allowed to study a full year or more in London with a 10% reduction in the UK tuition fees.
Program Competences
In addition to the competences for all Engineering Programs (A-Level), the Computer Engineering and Software Systems Program graduate must be able to (D-Level):
- Design and implement elements, modules, sub-systems or systems using technological and professional tools.
- Select and analyse appropriate design techniques for computer engineering and software systems.
- Estimate and measure the performance of a digital system and circuit under specific input excitation and evaluate its suitability for a specific application.
- Identify needs, plan and manage resources, and gather information for solving a specific digital problem and document and communicate this solution efficiently.
- Carry out design, development, testing, debugging, operation and maintenance of digital systems/services such as computer systems, circuit boards, software systems, and mixed (embedded) systems.
- Establish an environment to build, test and release digital systems in a more rapid, frequent and reliable manner by emphasizing the collaboration and communication of developers and operations team members.
- Select the most suitable technologies to deploy solutions to various kinds of problems and develop solutions using them
- Abide to software engineering standards and best practices
- Demonstrate additional abilities related to the field of the concentration within Computer Engineering and Software Systems as listed below:
Concentration |
Graduate attributes |
Multimedia and Computer Graphics |
D9a. Demonstrate additional abilities to model, analyse, and design multimedia and computer graphics systems potentially including pattern recognition, computer vision, computer animation, gaming, visualization, and/or human-computer interaction |
Distributed and Mobile Computing |
D9b. Demonstrate additional abilities to model, analyse, manage, and design secure distributed and mobile computing systems potentially including cloud computing systems, distributed embedded systems, and/or various forms of parallelism |
Software Product Lines |
D9c. Demonstrate additional abilities to analyse, evaluate, design, and integrate secure, reliable, and high-quality software solutions including managing the necessary software engineering processes and the corresponding business model |
Data Science |
D9d. Demonstrate additional abilities to model, design, and implement intelligent data science applications potentially requiring data mining, machine learning, deep learning, analytics, and text understanding |
Required Courses
In order to get a Bachelor of Science Degree in this program, and to satisfy the Program Competences, the following set of courses need to be completed.