Revised Blueprint, Software Engineering
Revised Blueprint, Software Engineering
PROGRAM:
Compiled By:
1. Girma Neshir, Ph.D, Assistant Prof., Addis Ababa Science and Technology
University(AASTU)
2. Birhanu Sisay, M.Sc. Lecturer, Arba Minch University(AMU)
December, 2023
Ministry of Education
Bonga, Ethiopia
0
Table of Contents
1. Introduction .................................................................................................................................... 2
2. Objective of test blueprint .............................................................................................................. 3
3. Steps to develop test blueprint....................................................................................................... 3
4. Issues to consider in test blueprint preparation ............................................................................. 4
5. Required documents to prepare the test blueprint ....................................................................... 4
i. Knowledge ................................................................................................................................. 4
ii. Skill ............................................................................................................................................. 5
iii. Attitude ...................................................................................................................................... 6
6. Conclusion ..................................................................................................................................... 20
1
1. Introduction
The Ministry of Education of Ethiopia has announced the implementation of exit exam
for all undergraduate program students (public and private), beginning with the
2023/2024 academic year, in order to improve the quality of graduates produced by
higher learning institutions. The exit exam aimed at checking whether students have
acquired the required knowledge, skills and attitudes or not. To implement this, it
requires determining competency areas for a specific program, which is already
completed. Based on the competency areas prepared, it needs to plan the construction of
tests.
Planning of a test is a first and vital step in the construction of an achievement test. An
achievement test demands very systematic and careful planning, as a fact that good
planning is a symbol of success. Tests are the tools that provide scores that measure level
of student learning and study program learning outcomes. In order to achieve the valid
and reliable measurement of student learning and program learning outcomes, the
development of valid and reliable test is the mandatory. Test should be able to measure
student performance in all dimensions of knowledge, skill and attitude. The carefully
planned test construction contributes to improve the overall quality of the test in terms of
test content validity, difficulty level, discrimination power and test reliability. Test
preparation is not an easy task; it requires a careful planning and guideline to make the
task simple. Test construction needs the preparation of test blue print. Test blueprint is
defined as a complete plan that explains how to develop a test. The term refers to a map
or specification of assessment to ensure that all aspects of the curriculum and educational
domains are covered by the assessment programs over a specified period of time. It helps
curriculum developers/test constructors to match various competencies with the course
content and the appropriate modality of assessment.
Generally, test blueprint will help to ensure tests: 1) Appropriately assess the achievement
of instructional objectives of the course; 2) Appropriately reflect key course goals,
objectives and the material learned or covered during the instruction period; and 3)
Include the appropriate item formats along with the knowledge and skills being assessed.
2
Keeping this in mind, the team has prepared this test blueprint document in order to help
the test developers or content specialists in their process of valid and reliable test
construction. The major points considered in the process of preparing this test blue print
guideline were the core competencies that have been already identified for the themes of
courses, the course contents, course credit hours, and the learning outcomes with their
corresponding levels of achievement by learning domains. In line with these, the number
of test items that should adequately assess the performance of students in all the content
topics will be determined through discussion with the content specialists who construct
the blueprint and test for their corresponding study program.
Therefore, the main purpose of this manual is to give direction on how to develop
blueprint for content specialists so that they can develop a test blueprint for their
respective program.
Test blueprint preparation is generally opted to assist the preparation of a test that is
representative, broadly sampled, and consisting of complete knowledge domain expected
of the Ethiopian higher education students on completion of their study program. The
specific objectives of test blueprint are to:
Facilitate the construction of a representative and balanced test items for the
selected courses in accordance with the competencies identified.
Guide test developers or writers to write or set appropriate test items.
3
v. Determination of the test format
vi. Content weighting - Experts judge the weight to be given to the listed learning
outcomes and their corresponding contents.
vii. Identifying the categories of learning domains to which each of these learning
outcomes belongs using their action verbs.
viii. Construction of test blueprint table
ix. Allocating the number of test items for each learning outcomes by their
corresponding types and levels of learning domains.
x. Determination of the sub-total and total test items by their categories of learning
domains and learning outcomes.
4. Issues to considered in test blueprint preparation
i. Curriculum details
ii. Course outlines/guidebook details, lists of learning outcomes, lecture notes,
textbooks, and other curricular materials
iii. Course contents pertinent to the respective learning outcomes
iv. Time devoted to cover the content with in a course (course credit hour)
v. Total test length (i.e., total number of test items)
vi. Number of questions allocated to each content area using the proportion
calculated
vii. Weight for each item
viii. Relevance of the content to students future career
In addition to these, following the template mentioned below will help to prepare the
blueprint.
i. Knowledge
Conduct investigation of complex problems using research-based knowledge
and research methods including design of experiments, analysis and
4
interpretation of data, and synthesis of information to provide valid
conclusions
Adopt, innovate, select, and apply appropriate state of the art software design
and development tools, methodologies, resources, and emerging technologies
including simulation, prediction and modeling for complex business process
with understanding of their potential capabilities, limitations and associated
risks.
Identify, formulate, research literature, and analyze complex problems,
reaching substantiated (justifiable, validated) conclusions using software
development principles, methodologies, and tools.
Apply logical reasoning and informed decision to assess societal, health,
safety, privacy, security, legal and cultural issues, and the consequent
responsibilities relevant to software engineering application
Understand the impact of software applications in societal and environmental
contexts and apply the principle of green computing for sustainable
development.
ii. Skill
Design integrated and efficient software solutions, component, or processes to
address complex problems and implement them to meet the specified needs
with appropriate consideration for public health and safety, cultural, societal
(local and international) and environmental considerations.
Communicate effectively on complex business and system activities with the
software engineering community and with a society at large; such as being
able to comprehend and write effective reports, articles and design
documentations using various tools, make effective presentations and give and
receive clear instructions.
Demonstrate knowledge and skill on software project management principles
and apply these to manage software development processes and its resource
requirements, costs in multidisciplinary projects
Apply knowledge of mathematics, and software engineering specialization to
address complex and large-scale problems.
5
iii. Attitude
Apply ethical principles and commit to professional ethics and responsibilities
and norms of software engineering practice.
Function effectively as an independent software engineer, as a member or as a
leader in a diverse team and multidisciplinary settings.
Recognize the need for and have the preparation as well as ability to engage in
an independent and lifelong learning in the information and knowledge
economy.
2. Curriculum of the program
See Appendix B of Curricula of BSc in Software Engineering of Addis Ababa
Science and Tech. University and Arba Minch University
General objective
The software engineering program shall have the following general objectives:
6
To produce large scale software developers, project managers and leaders who
has an ability to address complex and large-scale problems.
To produce digital innovators and entrepreneurs.
To nurture professionally qualified software engineers with the potential to
become consultant, trainer, software requirement engineer, software architect,
system analyst, software quality assurance and tester.
To produce software engineers who incorporate standards and security in
software development with appropriate consideration of socio-cultural and
environmental safety.
To produce researchers and software engineers who will develop dynamic and
smart software solutions using emerging technologies to address complex
national and global challenges and demonstrate lifelong learning and
continuing professional development.
7
Distinguish complexity, efficiency of searching and sorting algorithms using
Empirical and Theoretical analysis
Design algorithms to solve real-life problems
Discuss major concepts of object-oriented programming, object technology and
programming environment.
Use inheritance, encapsulation, polymorphism exception handling and I/O
functionality
Create event-driven GUI containers and components within an integrated
development environment
Design and develop object-oriented software
Recognize a web protocol, design and development of web-based application
Use modern tools and techniques for developing web-based applications
Develop a websites, web frameworks using basic HTML, CSS, JavaScript,
AJAX and Server-Side scripting
Create dynamic and interactive web pages as well as ability to connect to a wide
range of databases
Assess web-based solution and engage in an independent and lifelong learning in
the broad scope of Internet programming as well as web application
State the basic components of an Android application and mobile computing
Demonstrate basic skills mobile computing of using an integrated development
environment
Evaluate the security concerns of the mobile computing technologies and mobile
networks.
Choose, the legal and ethical principles mobile application framework for
designing, and constructing mobile Software application
Explain fundamentals of database system concepts, technology, models of
database and optimization.
Write SQL statements for data creation and manipulation purposes
Design the database models from specifications using a popular DBMS
Manage the possible problems that may occur in securing data.
Recall the structure and functionality of modern Operating Systems
Explain conditions that lead to deadlock and memory management, I/O, mass
storage and file management issues
Describe security and protection measures used in operating systems
Use knowledge of process management and synchronization for software
development
8
Compare the various algorithms on which the core functions of the Operating
Systems are built on
Identifies the basic principles of Software Engineering
Describe software process and state-of-the-arts software process models
Explain fundamental concept of data communication, computer networks, and
computer system security as well as setup and configure small-area network.
Demonstrate installation and configuration of system software, and make use of
software engineering tools.
Be aware of the professional, ethical, and norm of software engineering practice.
Describe the role of requirement engineering in software development
Use the appropriate requirements elicitation techniques to identify requirements.
Develop effective functional and non-functional requirements document that are
complete, concise, correct, consistent, testable and unambiguous.
Manage the change to software requirements.
Explain the role of software architecture and software design principles
Apply the different types of design patterns in software development
Evaluate various architectural styles and solutions based on quality attributes
Design a large-scale software system that reflects and balances the different
needs of its stakeholders
Develop work breakdown structure, schedule and cost for software projects.
Use project management tools, techniques, and skills
Prepare plan documents for software project management, risk management,
software quality management and assurance
Apply modern software testing processes in relation to software development
and project management
Create test strategies and plans, design test cases, prioritize and execute them.
Manage incidents and risks within a project
Become competent expert in designing, implementation and development of
Quality software systems and IT processes
Examine the major software defects, bugs and code smells
Estimate the maintenance cost, efforts, size and time for software maintenance.
Apply the best practices and models in software maintenance process
Maintain a software based on the reengineering and refactoring methods and
principles.
9
Describe concepts of network fundamentals.
Analyze the different networking layers
Design appropriate computer network services based on a given requirement
Identify malicious code functions, threats, vulnerabilities possible propagation,
and mitigation methods
Assess computing cryptography and cryptanalysis
Develop mechanisms for authentication and access control in a domain.
Compare types of firewall and intrusion detection methods
Explain fundamental concepts of artificial intelligent agents
Compare the basic search strategies used in an intelligent agent.
Apply the law of logic to represent knowledge for an expert system
Engage in independent and lifelong learning with the broad application area of
Artificial Intelligence.
Explain the distinction between supervised and unsupervised learning, as well
the interests and difficulties of both approaches.
Implement the major machine learning algorithms for data analytics
Formulate research on a personal project using machine learning techniques
10
4 Networking and Software 14. *Fundamentals of Networking, and Software and information 7
Security security
5 AI and related Areas 15. *Fundamentals of Artificial Intelligence and Machine 6
Learning
11
Ministry of Education (Table 2)
Higher Education Sub-sector
Test Blueprint (Table Specification) for BSC in Software Engineering
Learning outcomes
Creation/Synthesi
Themes objective Name of
Outcome
Understanding
/ Share of /competencies Courses /Share Specific objectives/Learning
Remembering
Psychomotor
No. of items
Credit hour
Application
the themes of the course in outcomes
Evaluation
Affective
Analysis
in % %
s
Problem = Conduct Fundamental 8 Identify the basic concepts of 1
analysis and investigation of of Programing programming with its 1
programmin complex problems program development process
g using research- =8/31*49% Apply the basic programming 3
based knowledge =11 Items constructors’ and the various 3
=31/64 and research programming techniques
=49% methods including
Demonstrate problem solving 2
design of
skills by analyzing a variety
experiments,
of real-world problems using
analysis and 2
program solving techniques
interpretation of
data, and synthesis Analyze modular 2
of information to programming, user defined 11
provide valid data type; file stream handling 2
conclusions and vectors by solving variety
programming problems.
= Apply Develop, debug and test 2 2
knowledge of medium scale applications by
mathematics, and analysing a variety of real-
software world problems
engineering Follow the ability of self- 1 1
specialization to education and life-long
address complex learning needed by computer
and large-scale programming
problems.
Fundamental of 4 State how data is organized in 1
= Conduct Data structure and a computer, how it can be
1
investigation of Algorithm retrieved, and how it can be
complex problems =4/31*49% used
using research- =6 items Explain the basic techniques 1
based knowledge for the design and analysis of 1
and research efficient Algorithm
methods including Apply various data structures 2 2
12
design of including Linked lists, Queues,
experiments, Stacks, Binary trees, Search trees
analysis and and Graphs 6
interpretation of
data, and synthesis Distinguish complexity, 1
of information to efficiency of searching and
provide valid sorting algorithms using 1
conclusions Empirical and Theoretical
analysis
= Design Design algorithms to solve 1 1
integrated and real-life problems
efficient software
solutions,
component, or
processes to
address complex
problems and
implement them to
meet the specified
needs with
appropriate
consideration for
public health and
safety, cultural,
societal (local and
international) and
environmental
considerations.
= Apply ethical
principles and
commit to
professional ethics
and responsibilities
and norms of
software
engineering
practice.
= Apply logical Fundamentals of 4 Explain fundamentals of 1
reasoning and Database Systems database system concepts,
informed decision =4/31*49% technology, models of 1
to assess societal, =6items database and optimization.
health, safety, Write SQL statements for 2
privacy, security, data creation and 2
legal and cultural manipulation purposes
issues, and the 6
consequent Design the database models 2 2
responsibilities from specifications using a
relevant to popular DBMS
software Manage the possible problems 1 1
engineering that may occur in securing
application data.
= Understand the Operating Systems 4 Recall the structure and 1
impact of software =4/31*49% functionality of modern 1
applications in =6items Operating Systems
societal and
Explain conditions that lead 2
environmental
to deadlock and memory
contexts and apply
management, I/O, mass 2
the principle of 6
storage and file management
green computing
issues
for sustainable
development. Describe security and 1
= Apply ethical protection measures used in 1
principles and operating systems
commit to Use knowledge of process 1
professional ethics management and
1
and responsibilities synchronization for software
and norms of development
software Compare the various 1
engineering algorithms on which the core
practice. functions of the Operating 1
Systems are built on
15
Software =Identify, Fundamentals of Identifies the basic principles 1 1
requirement, formulate, research Software 4 of Software Engineering
Design, and literature, and Engineering
Describe software process and 1 1
Architecture analyze complex =4/10*16%
state-of-the-arts software
=10/64% problems, reaching =6items
process models
=16% substantiated
(justifiable, Explain fundamental concept 1 1
validated) of data communication,
conclusions using computer networks, and
software computer system security as 6
development well as setup and configure
principles, small-area network.
methodologies, Demonstrate installation and 2 2
and tools. configuration of system
software, and make use of
software engineering tools.
Be aware of the professional, 1 1
ethical, and norm of software
engineering practice.
Communicate Software Describe the role of 1 1
effectively on Requirement 3 requirement engineering in
complex business Engineering software development
and system =3/10*16% Use the appropriate 1 1
activities with the =5items requirements elicitation
software techniques to identify 5
engineering requirements.
community and
Develop effective functional 2 2
with a society at
and non-functional
large; such as
requirements document that
being able to
are complete, concise, correct,
comprehend and
consistent, testable and
write effective
unambiguous.
reports, articles
and design Manage the change to 1 1
software requirements.
documentations
using various
tools, make
effective
presentations and
give and receive
clear instructions.
=Design Software 3 Explain the role of software 1 1
integrated and Architecture and architecture and software
efficient software Design design principles
solutions, =3/10*16% Apply the different types of 1 1
component, or =5items design patterns in software 5
processes to development
16
address complex Evaluate various architectural 1 1
problems and styles and solutions based on
implement them to quality attributes
meet the specified Design a large-scale software 2 2
needs with system that reflects and
appropriate balances the different needs
consideration for of its stakeholders
public health and
safety, cultural,
societal (local and
international) and
environmental
considerations.
Software =Demonstrate Software Project 3 Explain software project 1 1
project knowledge and Management management tasks
management, skill on software =5 items 5
maintenance Develop work breakdown 2 2
project
and quality structure, schedule and cost
management
assurance for software projects.
principles and
= 9/64*100 Use project management 1 1
apply these to
= 14 tools, techniques, and skills
manage software
development Prepare plan documents for 1 1
processes and its software project management,
resource risk management, software
requirements, costs quality management and
in assurance
multidisciplinary
projects
= Function
effectively as an
independent
software engineer,
as a member or as
a leader in a
diverse team and
multidisciplinary
settings.
=Recognize the Software Testing 3 Apply modern software 1 1
need for and have and Quality testing processes in relation to
the preparation as Assurance software development and
well as ability to =5 items project management 5
engage in an Create test strategies and 2 2
independent and plans, design test cases,
lifelong learning in prioritize and execute them.
the information
and knowledge Manage incidents and risks 1 1
within a project
17
economy. Become competent expert in 1 1
designing, implementation
and development of Quality
software systems and IT
processes
= Apply Software 3 Examine the major software 1 1
knowledge of Evolution and defects, bugs and code smells 5
mathematics, and Maintenance
Estimate the maintenance 1 1
software =5 items
cost, efforts, size and time for
engineering
software maintenance.
specialization to
address complex Apply the best practices and 1 1
and large-scale models in software
problems. maintenance process
Maintain a software based on 2 2
the reengineering and
refactoring methods and
principles.
Networking Apply logical Fundamentals of 4 Describe concepts of network 1 1
and Software reasoning and Networking fundamentals. 6
Security informed decision =4/7*10.9%
Analyze the different 3 3
=7/64*100 to assess societal, =6items
networking layers
=10.9% health, safety,
privacy, security, Design appropriate computer 2 2
legal and cultural network services based on a
issues, and the given requirement
consequent
responsibilities
relevant to
software
engineering
application
Apply ethical Software and 3 Identify malicious code 2 2
principles and information functions, threats, 5
commit to security vulnerabilities possible
professional ethics =3/7*10.9% propagation, and mitigation
and responsibilities =5items methods
and norms of
Assess computing 2 2
software
cryptography and
engineering
cryptanalysis
practice.
Develop mechanisms for 1 1
authentication and access
control in a domain.
Compare types of firewall and 1 1
intrusion detection methods
AI and Adopt, innovate, Fundamentals of 3 Explain fundamental concepts 1 1
related Areas select, and apply Artificial of artificial intelligent agents
18
=6/64*100 appropriate state of Intelligence Compare the basic search 2 2 5
=9.4% the art software =3/6*9.4% strategies used in an
design and =5items intelligent agent.
development tools, Apply the law of logic to 1 1
methodologies, represent knowledge for an
resources, and expert system
emerging
technologies Engage in independent and 1 1
including lifelong learning with the
simulation, broad application area of
prediction and Artificial Intelligence.
modeling for
complex business
process with
understanding of
their potential
capabilities,
limitations and
associated risks.
Key: In the cells/boxes there are numbers that indicate the number of items that correspond to the levels of domains.
19
6. Conclusion
Exit examination can have a vital role in producing knowledgeable, skillful and attitudinally matured
graduates. It contributes to prepare competent graduates as it can serve as a quality check for
effectiveness. It also helps in improving academic programs quality and effectiveness. Furthermore, it
can create the platform for cooperation among academic programs at different universities to work
jointly to improve the programs quality.
In view of this, this document is produced to assist the setting of the exit examinations for all programs,
which is being delivered by Ministry of Education. To meet the graduation profile, competency and
learning outcome, exit exam competency selection and identifying core course is done for 2016 EC
graduating students. As a result, preparing test blueprint is necessary to prepare fairly distributed items
based on the above criteria.
20
Appendix A:
Table 3: Calculation of share of themes, courses and items from a course from a total of 100 test
items for one program
Themes Course Credit Weight of Number of test Cognitive
Name hour course or items from
Psychomotor
Understand
proportion each course
Remember
outcomes
Affective
Learning
Evaluate
Analyze
Create
Apply
Total
Theme One 1 8 8/31 = 0.26 0.26*49 = 11 - 1 3 2 - 4 1 - 11
2 4 4/31 = 0.13 0.13*49 = 6 1 1 2 1 - 1 - - 6
Share = 49 3 3 3/31 = 0.1 0.1*49 = 5 - 1 2 - - 2 - - 5
items from 4 6 6/31 = 0.194 0.194*49 = 9 - 2 2 - 1 4 - - 9
the total 5 3 3/31 = 0.1 0.1*49 = 5 1 - 2 - 1 - 1 - 5
6 4 4/31 = 0.13 0.13*49 = 6 - 1 2 - - 3 - - 6
7 4 4/31 = 0.13 0.13*49 = 6 1 3 1 1 - - - - 6
Theme one 31
total credit
Theme Two 1 4 4/10 = 0.4 0.4*16 = 6 - 3 2 - - - 1 - 6
2 3 3/10 = 0.3 0.3*16= 5 - 1 1 - - 3 - - 5
3 3 3/10 = 0.3 0.3*16 = 5 - 1 1 - 1 2 - - 5
Share = 16 Theme two 10
items from total credit
the total
Theme Three 1 3 3/9 = 0.333 0.333*15 = 5 - 1 1 - - 3 - - 5
2 3 3/9 = 0.333 0.333*15 = 5 - - 1 - - 3 1 - 5
Share = 15 3 3 3/9 = 0.333 0.333*15 = 5 - - 1 1 1 2 - - 5
items from Theme three 9
the total total credit
Theme Four 1 4 4/7 = 0.57 0.57*11 = 6 - 1 - 3 - 2 - - 6
2 3 3/7 = 0.43 0.43*11 = 5 - 2 - - 2 1 - - 5
Share = 11 Theme three 7
items from total credit
the total
Theme Five 1 3 3/6 = 0.5 0.5*10 = 5 - 1 1 2 - - 1 - 5
2 3 3/6 = 0.5 0.5*10 = 5 - 2 - - - 3 - - 5
Share = 10 Theme three 6
items from total credit
the total
Total for the program 64 3 21 22 10 6 33 5 - 100
Note: The number of items assigned in the levels of domains is based on the nature of learning
outcomes/objectives.
21
Appendix B: See Curricula of B.Sc. in Software Engineering Program of AASTU and AMU.
22