Bachelor of Software Engineering (BSE)

Programme Background and Rationale

In the earlier era, the disciplinary focus served the engineering demands well. However, with technological advancements in manufacturing, information, communication, and transportation technologies reshaping the society in unparalleled ways, software engineers are now facing unprecedented challenges. In a global competitive marketplace, consumers are demanding highly sophisticated products, which drive design innovation towards enhanced functionality, and shorter-life-cycle-products. These dynamics now require that software engineering education takes place in cooperative, active-learning environments with participants from diverse backgrounds. Moreover, the evolving market needs require that software products evolve at an even higher rate in order to meet and shape those demands. Further, software engineering has become a popular career choice for skilled programmers the world over. The industry offers wide career choices and opportunities which gives it an edge over other fields. Using the creative side of coding, software engineering is like an art, with a creative side. Therefore this course is designed to produce problem solvers, which itself requires creative skills. The world is now heavily technology dependent: there is unsatisfied need for software engineers due to increasing reliance on mobile technology, venture capital-backed start-ups, growing complexity of technology and emerging industries – all which demand highly skilled and well qualified software engineers.

The development of many physical devices that are connected to the internet further amplify the need for software engineers. Amoud University, in realization of this global need and cognizant of the need for software engineers in the local market, views the mounting of this bachelor of software engineering programme as a means for creating the right personnel to solve the software problems in the country and beyond. The need for reliable and effective software products need not be overstated: emerging issues in all fields created by new conditions that require software solutions will continue to emerge. This software engineering programme is a response to such needs and shall continuously respond to such needs at all times. This programme has been developed with reference to the Joint Task Force on Computing Curricula IEEE Computer Society Association for Computing Machinery (Software Engineering, https://www.acm.org/education/curricula-recommendations, 2014). It therefore meets the international standards of software engineering curriculum.

Programme Objectives
General Objective

The general objective of this programme is to prepare students for professional careers and graduate studies with a balance between computing theory and practical application of software engineering concepts, methodologies, tools and technologies for use in the modern software development environments.

Specific Objectives

By the end of the programme, students should:

  1. Acquire professional knowledge and a continuing professional acumen through mastery of software engineering knowledge, skills and professional standards expected of a software engineer. They should be familiar with new models, techniques, and technologies and learn them as they emerge, appreciating the necessity of such continuing professional development.
  2. Exhibit technical knowledge and demonstrated understanding and application of appropriate theories, models, and techniques to identify a problem, analyze, design software, develop, implement, verify, and document.
  3. Be able to work individually and as part of a team develop and deliver quality software artifacts.
  4. Be able to develop end-user awareness, understand and appreciate the importance of negotiation, effective work habits, leadership, and good communication with stakeholders in a typical software development environment.
  5. Be able to design appropriate solutions in specific contexts and perform trade-offs in one or more application domains using software engineering approaches that integrate ethical, social, legal, and economic concerns; reconcile conflicting project objectives and find acceptable compromises within the limitations of cost, time, knowledge, existing systems, and organizations.