Motto: Innovation Drives Transformation

Software Engineering

Course ID
Department of Software Engineering (SEN)

Software engineering is a critical discipline within the realm of technology, encompassing principles, methods, and tools for designing, developing, testing, and maintaining software systems. In today’s fast-paced and interconnected world, software engineering plays a pivotal role in shaping our daily lives, influencing everything from communication and commerce to entertainment and healthcare.

Key elements of software engineering include requirements analysis, where the needs of users and stakeholders are identified and documented; design, which involves creating a blueprint for the software solution; implementation, where code is written according to the design specifications; testing, to ensure the software behaves as expected and meets quality standards; and maintenance, to address bugs, add new features, and adapt to changing requirements over time.

Agile methodologies have gained widespread adoption in the software industry, emphasizing iterative development, close collaboration between cross-functional teams, and continuous feedback from customers. This approach allows for greater flexibility and responsiveness to changing market demands, leading to faster delivery of high-quality software products.

Furthermore, the rise of DevOps practices has revolutionized the way software is deployed and operated, promoting closer alignment between development and operations teams, automation of infrastructure provisioning and deployment processes, and a culture of continuous integration and delivery.

As technology continues to evolve rapidly, software engineers must stay abreast of emerging trends and tools, such as artificial intelligence, cloud computing, and microservices architecture, to remain competitive and deliver innovative solutions. Additionally, the increasing importance of cybersecurity highlights the need for robust security measures to protect sensitive data and mitigate risks of cyber attacks.

In conclusion, software engineering is a dynamic and multifaceted discipline that is central to the success of modern businesses and organizations. By leveraging best practices, embracing new methodologies, and staying attuned to the evolving technological landscape, software engineers can continue to drive innovation and create value in the digital age.

Some examples of the courses offered for this programme:

Course structure at 300-Level Software Engineering Course Code

Course Title


FAEN 301

Numerical Methods


SWEN 301

Signals and Systems


SWEN 303

Computer Architecture


SWEN 305

Computer Networks


SWEN 307

Operating Systems


SWEN 309

Programming Language Fundamentals


FAEN 302

Statistics for Engineers


SWEN 302

Computer Systems Engineering


SWEN 304

Digital Signal Processing


SWEN 306

Microelectronic Devices and Circuits


SWEN 308

Fundamentals of Information Transmission


SWEN 312

Object Oriented Programming with Java


SWEN 314

Industrial Practice


Total Credits





Course structure at 400-Level Software Engineering Course Code

Course Title


FAEN 401

Law for Engineers


SWEN 400

Independent Project


SWEN 401

Control Systems Analysis and Design


SWEN 403

Embedded Systems


SWEN 405

Artificial Intelligence


Electives I

SWEN 407

SWEN 409

SWEN 411

SWEN 413

SWEN 415

SWEN 417

A1. Software Systems

Software Engineering

Computer Graphics

B1. Hardware Systems

VLSI Systems Design

Microprocessor Systems and Integration

C1. Computer Systems

Distributed Computing

Applications for Parallel Processors







FAEN 402

Principles of Management and Entrepreneurship


SWEN 400

Independent Project


SWEN 402

Advanced Computer Architecture


SWEN 404

Computer Vision and Robotics


SWEN 406

Wireless Communication Systems


Electives II

SWEN 408

SWEN 412

SWEN 414

SWEN 416

SWEN 418

SWEN 422

A2. Software Systems

Human Computer Interface

Web Software Architecture

B2. Hardware Systems

DSP System Implementation

Integrated Circuit for Communication

C2. Computer Systems

Security in Computer Systems

Multimedia Systems







Total Credits




Ten career paths that software engineers commonly pursue:


1. Software Developer/Engineer: This is the most traditional career path for software engineers, involving designing, developing, testing, and maintaining software applications or systems.

2. DevOps Engineer: DevOps engineers focus on streamlining the development and deployment processes, automating infrastructure provisioning, and fostering collaboration between development and operations teams.

3. Quality Assurance (QA) Engineer: QA engineers are responsible for testing software applications to ensure they meet quality standards and perform as expected, often through manual and automated testing techniques.

4. Data Engineer: Data engineers design, build, and maintain systems for storing, processing, and analyzing large volumes of data, often using technologies like Hadoop, Spark, and data warehousing solutions.

5. Machine Learning Engineer: Machine learning engineers develop algorithms and systems that enable computers to learn from and make predictions or decisions based on data, with applications in areas like natural language processing, computer vision, and predictive analytics.

6. Security Engineer: Security engineers focus on protecting systems and data from cybersecurity threats by implementing security measures, conducting vulnerability assessments, and responding to security incidents.

7. Cloud Engineer: Cloud engineers specialize in designing, implementing, and managing cloud-based infrastructure and services, leveraging platforms like Amazon Web Services (AWS), Microsoft Azure, or Google Cloud Platform (GCP).

8. Full-Stack Developer: Full-stack developers have expertise in both front-end and back-end development, allowing them to work on all layers of a software application, from user interfaces to databases.

9. Site Reliability Engineer (SRE): SREs combine aspects of software engineering and operations to ensure the reliability, availability, and performance of large-scale, distributed systems, often through automation and monitoring.

10. Technical Architect: Technical architects are responsible for designing the overall structure and framework of software systems, making high-level design decisions, and ensuring that the architecture aligns with business objectives and technical requirements.

These career paths represent just a sample of the diverse opportunities available to software engineers, with each offering its own unique challenges, responsibilities, and opportunities for growth and advancement.

Entry requirements

Basic Admission Requirements and Expected Duration of the Programmes


Candidates can be admitted into any of the degree programmes in Science by one of the following three ways:


  1. The Unified Tertiary Matriculation Examination (UTME)
  2. Direct Entry
  3. Inter-University Transfer


UTME Entry Mode

The minimum academic requirement is credit level passes in five (5) subjects at O’Level innationally recognised examination including English Language, Mathematics and three other Science subjects which are relevant to the intended programme at not more than two sittings. In addition, an acceptable pass in the Unified Tertiary Matriculation Examination (UTME) with relevant subject combination is also required for admission into 100 Level.


Direct Entry Mode

Candidates seeking admission into a programme in Science through Direct Entry must havepasses at GCE ‘A’ Level/IJMB or its equivalent in a minimum of two (2) Science subjects relevant to the intended programme to be considered for admission into 200 Level. This isin addition to fulfilling the requirement of a minimum of credit level passes in five (5) relevant subjects at ‘O’ Level as indicated above.


Inter-University Transfer Mode

Students can transfer into 200-Level courses provided they have the relevant qualifications.Universities are to certify that students meet the minimum requirements for the Inter- University Transfer.


Minimum Duration

The minimum duration of science programmes is four (4) academic sessions for candidates whoenter through the UTME Mode. Direct Entry candidates admitted into the 200 level of their programmes will spend a minimum of three (3) academic sessions.