Master of Science (Software Engineering)
The MS Software Engineering curriculum has been designed to give the students a good understanding of best software engineering methodologies and practices, emerging technologies, and their application in various industries. The goal of the program is to teach students to become leaders in engineering high quality computing solutions to solve real life problems by conducting high quality applied research.Recommended Courses
The following core courses are recommended to be completed before entering the MS (SE) program.
- Computer Programming
- Software Engineering
- Software Quality Engineering
- Data Structures
- Object Oriented Analysis and Design
- Human Computer Interaction
A student selected for admission having deficiency in the above stated courses may be required to study a maximum of FOUR courses. These courses must be passed in the first two semesters. Deficiency courses shall be determined by the Graduate Studies Committee, before admitting the student. No fee is charged for studying deficiency courses. A student cannot take MS courses unless all specified deficiency courses have been passed.
Typical course load in a semester is four courses. However, NUCES staff cannot register for more than two courses in a semester. For successful completion of the MS SE degree, the student must undertake a 6 credit hour MS Project, spread over two regular semesters.Award of Degree
For the award of MS degree, a student must have:
- Passed courses totalling at least 30 credit hours, including all those courses which have been specified as Core courses
- Obtained a CGPA of at least 2.5
- Degree in relevant subject of Science or Engineering, earned from a recognized university after 16 years of education AND
- At least 60% marks or CGPA of at least 2.0(on a scale of 4.0).
- Past Academic Record (Bachelor): 50%
- Performance in NU MS Admission Test: 50%
Typical course load in a semester is four courses. However, NUCES staff cannot register for more than two courses in a semester. In the second semester, a student has the option to pursue MS by undertaking either a 6 credit hour MS Thesis or Project, spread over two regular semesters.
Note 1: Applied Programming course is of No Credit (NC), but it must be passed.
Note 2: Registration in “MS Thesis - I” is allowed provided the student has:
- Earned at least 15 credits
- Passed the “Research Methodology” course
- CGPA is equal to or more than 2.5
Program Educational Objectives (PEO)
- Prepare students who can critically apply concepts, theories, and practices to provide creative solutions to complex computing problems.
- Prepare students to effectively communicate their ideas in written and electronic form and prepare them to work collaboratively in a team environment.
- Prepare students with theoretical background of software engineering concepts, and train them on applied research of the field, needed to secure a doctorate position in the future.
- Prepare students to join a dynamic and diverse career position in a computing-related field, and to maintain a growing career in a rapidly evolving field.
- Prepare students who can define, plan, implement, and test a medium-sized software project using appropriate software engineering processes, methods, and techniques.
- Theories and practices to provide creative solutions to complex computing problems.
- To respond to the current and emerging industrial needs utilizing modern trends for building complex software systems.
Program Learning Outcomes (PLOs)
- To have the ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability.
- To understand the impact of engineering solutions in a global, economic, environmental, and societal context.
- To use the techniques, skills, and modern software engineering tools necessary for developing resilient software.
- To demonstrate an understanding of and apply current theories, models, and techniques that provide a basis for the software lifecycle
- To Communicate effectively with different audiences. 1
- To change the world for the better through research and development– in areas like healthcare, transportation, education, etc.