Software Engineering Concentration -Carnegie Mellon University Africa - Carnegie Mellon University

Software Engineering Concentration

Software engineering is the study and application of engineering to the design, development, and maintenance of software [ACM]. In the African context especially, but more and more also world-wide, software engineering includes the design and development of mobile applications.

What skills will the student accquire?

A student who concentrates in Software Engineering will aquire technical, hands-on experience in the area of software development, including how to design/write/test code, how to manage and organize a technical project, and how to use a systematic approach to problem-solving in the technical realm of software engineering.

This concentration can be studied in different manners depending on the aspired position. Please consult with your adviser to map out the courses that match your specific interest.

What kind of jobs can students expect after graduation?

Typical careers supported by the Software Engineering Concentration include: Software Engineer, Mobile App Developer, IT Consultant, IT Manager, Software Tester/Analyst, Cloud Computing Engineer, Software Architect, Database Manager

Recommended Courses

Course Units
04-330 Fundamentals of Software Development & Problem Solving 12
18-652 Fundamentals of Software Engineering 12
15-619 Cloud Computing 12
17-653 Managing Software Development 12
18-640 Foundations of Computer Architecture 12
18-641 Java Smart Phone Development 12
18-645 How to Write Fast Code 6
18-732 Secure Software Systems
94-813/B3 Project Management 6
95-706 Object Oriented Analysis & Design 6

This concentration combines one or more Core cores with one or two electives.

  • Core course: 04-630 Computer Science Principles for Practicing Engineers
  • Core Course: 18-652 Foundations of Software Engineering
  • Core Course: 15-619   Cloud Computing

Electives:

04-630 Computer Science Principals 
18-652 Foundation of Software Engineering
15-619  Cloud Computing
05-499/B   Mobile Service Innovation
17-653  Managing Software Development
17-655  Architectures for Software Systems
18-640 Foundations of Computer Architecture
18-641  Java Smart Phone Development
18-645  How to Write Fast Code
18-732   Secure Software Systems
17-602  Introduction to Personal Software Process
18-648 Real-Time Embedded Systems
94-813/B3 Project Management
95-706  Object Oriented Analysis & Design
95-808   IT Project Management
95-808/A4 IT Project Management
17-654 Analysis of Software Artifacts
17-653 Managing Software Development
17-655 Architectures for software Systems
18-640 Foundations of Computer Architecture