4.1  Introduction

The discipline of Software Engineering focuses on producing graduates who are ready to develop and maintain quality software systems of scale for organizations and businesses within the constraints of time, budget and other requirements. In addition to its core computer science technical foundation, Software Engineering also involves human processes that are harder to formalize than the logical abstraction of computer science. The discipline therefore borrows and adapts from traditional engineering practice as well as from the field of project management. A focus of a Software Engineering specific curriculum must be able to develop students into software engineers through course work, practical’s and applied project experience.

4.2  Philosophy

Nigeria (and indeed sub-Saharan Africa) represents virgin territory for the software industry and the field, in turn, presents huge opportunities for the region within the context of an expanding global economy. It is well known that the software industry is the only one that wealth can be created from zero or near-zero capital – only intellectual capital is needed. There is therefore the need for Nigeria to grow its crop of software engineers as a force for sustainable socio-economic development. The Philosophy and Mission Statement underlying the programmes in Software Engineering is achieving the goals and objectives of the National Policy on Industrialisation and Self-Reliance. This is to be achieved through:

  1. Broad-based foundation in Computing, Science and Engineering and Technology as well as specialized knowledge and practice in Software Engineering.
  2. Practical exposure to the application of Software Engineering to problem-solving.
  3. Adequate training in human and organisational behaviour and management in the software development life-cycle.
  4. Developing in the students’ entrepreneurial knowledge, a sense of public responsibility and a spirit of self-reliance.
  5. Nurturing of a partnership between the institution and the software industry for effective programme delivery.
  6. Creating awareness and understanding of the moral, ethical, legal, and professional obligations needed to function as part of the computing ecosystem while protecting human health and welfare and the environment in a global society.
  7. Creating awareness and understanding of the need to develop leadership and team-building skills to maximize the benefits of Software Engineering education and its application to solving problems.

The general philosophy, therefore, is to produce graduates with high academic and ethical standards and adequate practical exposure for self-employment as well as being of immediate value to the software industry and the community in general.

4.3  Aim and Objectives

The general goal and objectives of Software Engineering education and training should align with the realization of national needs and aspirations vis-à-vis industrial development and technological emancipation.   The graduates must therefore be resourceful, creative, knowledgeable and able to perform the following functions:

  1. To appreciate the importance of computer science (as a base) in such areas as principles of programming, algorithm, data structures, databases and programming languages
  2. To develop and utilize the practical skills acquired in software architecture and design, software metrics, verification and validation, requirements and analysis and the software engineering process for the production of software-based systems
  3. To develop expertise in programming in several different languages with emphasis on the production of robust, reliable, cost-effective and secure codes that are based on sound design and development principles adapted to the needs of a developing and emerging economy such as Nigeria in a technically professional manner
  4. To be able to exercise original thought, have good professional judgment and be able to take responsibility for the execution of important tasks as programmers, system analysts, software developers, web developers, software consultants, system administrators, IT project managers, system engineers and entrepreneurs, etc.
  5. To be able to produce and manage high-quality software-based solutions with long life-cycles, especially for large or complex systems
  6. To develop the understanding, engineering and entrepreneurial skills needed to become the architects and project leaders building systems in which software plays a critical role
  7. To leverage on Software Engineering as the driving force behind the new technologies that are transforming the way we live and work
  8. To have the requisite knowledge and skill base for further academic and professional development in Software Engineering

The programme in Software Engineering will focus on imparting the knowledge and practical skills to enable students to understand the principles and practice of software systems design, development and maintenance. This should enable them to be able to balance software system design and development with safety, reliability, cost and schedule, especially for large scale systems.

 

4.4  Admission and Graduation Requirement

The entry requirements shall be at least credit level passes in five subjects including English Language, Mathematics, Physics to form the core subjects with credit in any other two relevant science subjects, at the Senior Secondary School Certificate or its equivalent. In addition, an acceptable pass in the Unified Tertiary Matriculation Examination (UTME), with the relevant subject combination is required for Admission into 100 Level.

Candidates with two A level passes (graded A-E) at the GCE/IJMB/JUPEB Advanced Level in relevant subjects (Chemistry, Mathematics and Physics) may be admitted into 200 level. This is in addition to fulfilling the requirement of a minimum of credit level passes in five relevant subjects at SSCE or WASCE/GCE ‘O’ Level as indicated above

4.5  Course Structure for BSc Software Engineering

100 Level: Software Engineering

FIRST SEMESTER
Course Code Course Title Units Status LH PH
BIO 101 General Biology I 3 C 45
BIO 107 General Biology Practical I 1 C 45
CHM 101 General Chemistry I 3 R 45
CHM 107 General Chemistry Practical I 1 R 45
SEN 101 Introduction to Computing and Applications 3 R 30 45
GST 101 Communication in English I 2 C 30
GST 123 Logic, Philosophy and Human Existence 2 E 30
MTH 101 General Mathematics I 3 R 45
PHY 101 General Physics I 3 R 45
PHY 107 General Physics Practical I 1 R 45
CRM 105 Introduction to Sociology 0 R 30
Subtotal 22      
SECOND SEMESTER
Course Code Course Title Units Status LH PH
GST 102 Communication in English II 2 C 30
GST 104 Nigerian Peoples and Culture 2 C 30
GST 122 Use of Library, Study Skills and ICT 2 C 30
MTH 102 General Mathematics II 3 R 45
PHY 102 General Physics II 3 R 45
PHY 108 General Physics Practical II 1 R 45
SEN 102 Principles of Programming 3 C 45
SEN 104 Introduction to Web Technology 2 C 15 45
STA 102 Statistics for Physical Sciences and Engineering 3 R 45
Subtotal 21      
GRAND TOTAL 43      
             

200 Level: Software Engineering

FIRST SEMESTER
Course Code Course Title Units Status LH PH
SEN 201 Introduction to Software Engineering 3 C 30 45
SEN 203 Discrete Structures 3 C 45
SEN 205 Software Requirements and Design 3 C 45
SEN 207 Computer Architecture and

Organisation I

3 C 45
SEN 209 Data Structures and Algorithms 3 C 45
GST 107 Introduction to Entrepreneurship 2 R 30
MTH 203 Set, Logic and Algebra    2 E 30
Subtotal 19      
 
SECOND SEMESTER
Course Code Course Title Units Status LH PH
SEN 202 Principles of Programming II 3 C 30 45
SEN 204 Logic and Its Application in

Computer Science

2 C 15 45
SEN 206 Software Construction 2 C 15 45
SEN 208 Design and Analysis of Computer Algorithms 2 C 15 45
SEN 210 Principle of Operating Systems 2 C 15 45
SEN 212 Software Engineering Process 2 C 30
SEN 290* Industrial Training (12 Weeks) 3 C    
GST 126 Contemporary Health Issues 2 R 30
GST 210 Environment & Sustainable Development 2 R 30
Subtotal 20      
GRAND TOTAL 39      
             

*Course(s) to be held during Long Vacation

 

 

300 Level: Software Engineering

FIRST SEMESTER
Course Code Course Title Units Status LH PH
SEN 301 Object-Oriented Analysis and Design 3 C 30 45
SEN 303 Software Testing and Quality Assurance 2 C 45
SEN 305 Web Application Development 3 C 45
SEN 307 Database Systems 3 C 45
SEN 309 Concepts of Programming Languages 2 C 45
GST 211 Entrepreneurship 3 R 30
STA 343 Operation Research I 3 C 30
Subtotal 19      
 
SECOND SEMESTER
Course Code Course Title Units Status LH PH
SEN 306 Queuing Systems Performance Evaluation 3 E 45  
SEN 308 Computer System Performance Evaluation 3 E 45  
SEN 318 Modelling and Computer Simulation 2 E 30
CSC 318 Computer Architecture and Organisation II 3 R 45
GST 221 Peace Studies and Conflict Resolution 2 E 30
GST 222 Leadership Skills 2 R 30
SEN 390* Industrial Training (12 Weeks) 3 C    
Sub Total 18      
GRAND TOTAL 37      
             

*Course(s) to be held during Long Vacation

400 Level: Software Engineering

FIRST SEMESTER
Course Code Course Title Units Status LH PH
SEN 401 Software Configuration Management and Maintenance 2      C 15 45
SEN 403 Software Engineering Project Management 2 C 30  

SEN 405 Research Methodology 2 C      30
SEN 407 Software Engineering Professional Practice 2 C 30
SEN 409 Software Engineering Security 2 C 30
SEN 491 Final Year Student’s Project  I 3 C   135
  Elective 4 E 30
Sub Total    17      
SECOND SEMESTER
Course Code Course Title Units Status LH PH
SEN 402 Software Engineering Economics 2 C 30
SEN 404 Human-Computer Interaction 2 C 15 45
SEN 406 Open Source Software Development and Applications  2     C  15   45
SEN 408 Distributed, Parallel and Cloud

Computing

2     C     30      –
SEN 410 Software Architecture and Design 2 C   30   –
SEN 492 Final Year Student’s Project  II 3 C   135
  Elective 4 E 30
Sub Total 17      
GRAND TOTAL 34      
             

 

Electives

FIRST SEMESTER
Course Code Course Title Units Status LH PH
SEN 411 AI and Expert Systems 3 E 45
SEN 413 Engineering Mobile Applications 2 E 30
SEN 415 Embedded Systems 2 E 30
SECOND SEMESTER
Course Code Course Title Units Status LH PH
SEN 412 Special Topics in Software Engineering 2 E 30
SEN 414 Fault-Tolerant Computing 2 E 30
SEN 416 Game Design and Development 2 E 30
             

 

REQUIREMENTS

4.4  Admission and Graduation Requirement

The entry requirements shall be at least credit level passes in five subjects including English Language, Mathematics, Physics to form the core subjects with credit in any other two relevant science subjects, at the Senior Secondary School Certificate or its equivalent. In addition, an acceptable pass in the Unified Tertiary Matriculation Examination (UTME), with the relevant subject combination is required for Admission into 100 Level.

Candidates with two A level passes (graded A-E) at the GCE/IJMB/JUPEB Advanced Level in relevant subjects (Chemistry, Mathematics and Physics) may be admitted into 200 level. This is in addition to fulfilling the requirement of a minimum of credit level passes in five relevant subjects at SSCE or WASCE/GCE ‘O’ Level as indicated above

COURSE STRUCTURE

4.5  Course Structure for BSc Software Engineering

100 Level: Software Engineering

FIRST SEMESTER
Course Code Course Title Units Status LH PH
BIO 101 General Biology I 3 C 45
BIO 107 General Biology Practical I 1 C 45
CHM 101 General Chemistry I 3 R 45
CHM 107 General Chemistry Practical I 1 R 45
SEN 101 Introduction to Computing and Applications 3 R 30 45
GST 101 Communication in English I 2 C 30
GST 123 Logic, Philosophy and Human Existence 2 E 30
MTH 101 General Mathematics I 3 R 45
PHY 101 General Physics I 3 R 45
PHY 107 General Physics Practical I 1 R 45
CRM 105 Introduction to Sociology 0 R 30
Subtotal 22      
SECOND SEMESTER
Course Code Course Title Units Status LH PH
GST 102 Communication in English II 2 C 30
GST 104 Nigerian Peoples and Culture 2 C 30
GST 122 Use of Library, Study Skills and ICT 2 C 30
MTH 102 General Mathematics II 3 R 45
PHY 102 General Physics II 3 R 45
PHY 108 General Physics Practical II 1 R 45
SEN 102 Principles of Programming 3 C 45
SEN 104 Introduction to Web Technology 2 C 15 45
STA 102 Statistics for Physical Sciences and Engineering 3 R 45
Subtotal 21      
GRAND TOTAL 43      
             

200 Level: Software Engineering

FIRST SEMESTER
Course Code Course Title Units Status LH PH
SEN 201 Introduction to Software Engineering 3 C 30 45
SEN 203 Discrete Structures 3 C 45
SEN 205 Software Requirements and Design 3 C 45
SEN 207 Computer Architecture and

Organisation I

3 C 45
SEN 209 Data Structures and Algorithms 3 C 45
GST 107 Introduction to Entrepreneurship 2 R 30
MTH 203 Set, Logic and Algebra    2 E 30
Subtotal 19      
 
SECOND SEMESTER
Course Code Course Title Units Status LH PH
SEN 202 Principles of Programming II 3 C 30 45
SEN 204 Logic and Its Application in

Computer Science

2 C 15 45
SEN 206 Software Construction 2 C 15 45
SEN 208 Design and Analysis of Computer Algorithms 2 C 15 45
SEN 210 Principle of Operating Systems 2 C 15 45
SEN 212 Software Engineering Process 2 C 30
SEN 290* Industrial Training (12 Weeks) 3 C    
GST 126 Contemporary Health Issues 2 R 30
GST 210 Environment & Sustainable Development 2 R 30
Subtotal 20      
GRAND TOTAL 39      
             

*Course(s) to be held during Long Vacation

 

 

300 Level: Software Engineering

FIRST SEMESTER
Course Code Course Title Units Status LH PH
SEN 301 Object-Oriented Analysis and Design 3 C 30 45
SEN 303 Software Testing and Quality Assurance 2 C 45
SEN 305 Web Application Development 3 C 45
SEN 307 Database Systems 3 C 45
SEN 309 Concepts of Programming Languages 2 C 45
GST 211 Entrepreneurship 3 R 30
STA 343 Operation Research I 3 C 30
Subtotal 19      
 
SECOND SEMESTER
Course Code Course Title Units Status LH PH
SEN 306 Queuing Systems Performance Evaluation 3 E 45  
SEN 308 Computer System Performance Evaluation 3 E 45  
SEN 318 Modelling and Computer Simulation 2 E 30
CSC 318 Computer Architecture and Organisation II 3 R 45
GST 221 Peace Studies and Conflict Resolution 2 E 30
GST 222 Leadership Skills 2 R 30
SEN 390* Industrial Training (12 Weeks) 3 C    
Sub Total 18      
GRAND TOTAL 37      
             

*Course(s) to be held during Long Vacation

400 Level: Software Engineering

FIRST SEMESTER
Course Code Course Title Units Status LH PH
SEN 401 Software Configuration Management and Maintenance 2      C 15 45
SEN 403 Software Engineering Project Management 2 C 30  

SEN 405 Research Methodology 2 C      30
SEN 407 Software Engineering Professional Practice 2 C 30
SEN 409 Software Engineering Security 2 C 30
SEN 491 Final Year Student’s Project  I 3 C   135
  Elective 4 E 30
Sub Total    17      
SECOND SEMESTER
Course Code Course Title Units Status LH PH
SEN 402 Software Engineering Economics 2 C 30
SEN 404 Human-Computer Interaction 2 C 15 45
SEN 406 Open Source Software Development and Applications  2     C  15   45
SEN 408 Distributed, Parallel and Cloud

Computing

2     C     30      –
SEN 410 Software Architecture and Design 2 C   30   –
SEN 492 Final Year Student’s Project  II 3 C   135
  Elective 4 E 30
Sub Total 17      
GRAND TOTAL 34      
             

 

Electives

FIRST SEMESTER
Course Code Course Title Units Status LH PH
SEN 411 AI and Expert Systems 3 E 45
SEN 413 Engineering Mobile Applications 2 E 30
SEN 415 Embedded Systems 2 E 30
SECOND SEMESTER
Course Code Course Title Units Status LH PH
SEN 412 Special Topics in Software Engineering 2 E 30
SEN 414 Fault-Tolerant Computing 2 E 30
SEN 416 Game Design and Development 2 E 30