Industrial Training Report For Ayobami
Industrial Training Report For Ayobami
UNDER THE
AT
BY
TO
OCTOBER 2024.
CERTIFICATION
I hereby certify that the work recorded as contained in this Student Industrial Work Experience Scheme
(SIWES)
report was carried out and submitted by FALOLA AYOBAMI EBENEZER with matriculation number
20203467 within five months at ICPD FUNAAB, ABEOKUTA, OGUN STATE. In partial fulfillment of the
requirements for the award of bachelor’s degree in the Department of PHYSICS of Federal University of
______________________ ____________________
ACKNOWLEDGEMENT
My profound gratitude goes to God Almighty, the giver of life for his never-ending grace and guidance during
My sincere appreciation goes to my father, Late Chief Dr S.A Falola and my mother Chief Mrs Falola who
sponsored my educational
pursuit unceasingly till this moment, and to the entire physics student of the Federal University of Agriculture,
I also express my sincere appreciation to my Industry based Director, Mr. Akinola and the IT team; Mr.
Maduka, Mr. joseph, Mr. Adebalogun, Mr. Olapade, Mr. Niyi, Dr. Olatunbosun, for all their efforts then also
their concise, constructive criticism and assistance during the course of my training at ICPD FUNAAB,
Abeokuta.
REPORT OVERVIEW
In the present world, it is significant to note that the practical training is very important in our day-to-day
activities, irrespective of discipline or area of specialization. There is need for individuals to be practical-
oriented in order to be fully equipped and broaden their horizon or
The students` Industrial Work Experience Scheme (SIWES) program has gone a long way in exposing students
(undergraduates) across various levels to the practical world, which has also accorded me the opportunity to
deal with real life situation that are in line with PHYSICS likewise how to relate socially with other workers in
an organization, how the organization is
This report made mention of the objectives of SIWES, and also gave a concise and detailed of the
establishment of place of attachment, experience gained so far, challenges faced and
The students` Industrial Work Experience Scheme (SIWES) is an accepted skills program which forms part of
the approved academic standards in the degree program for Nigerian universities. The Federal Government of
Nigeria introduced the national policy on industrial training called the students` Industrial Work Experience
Scheme (SIWES). This program is under the umbrella of the ministry of education through the Industrial
Training Fund (ITF), was designed to help students acquire the necessary practical education /experience in
their fields of study and other related professions. It is also intended that the students through a process of
relation to academic knowledge and practical industrial application would understand the underlying
principles and become better focused and acquire the practical applications towards excellence in his or her
discipline.
Students` Industrial Work Experience Scheme (SIWES) introduction, initiation and design were done by the
Industrial Training Fund (ITF) in 1974 to acquaint students with the skills of handling employer`s equipment
and machinery. The ITF solely funded the scheme during its formative years. However, due to financial
constraints, the fund withdrew from the scheme in 1978.
The federal government, noting the significance of the skills training handed the management of the structure
to both the National Universities Commission (NUC) and the National Board for Technical Education (NBTE) in
1979. The management and implementation of the scheme was reverted to the ITF by the Federal
Government of Nigeria in November, 1984 and the administration was effectively taken over by ITF in July
1985, with the funding solely borne by the Federal Government.
The main objective or aim of SIWES is to provide the students with the feel of the actual working environment
and to gain practical knowledge and skills, which in turn will motivate, develop and build their confidence.
The specific objectives of SIWES were summarized by the government in its Gazette of April, 1978 as follows;
❖ Prepare students for the industrial work situation they are to find themselves after graduation.
❖ Provide an avenue for students in institutions of higher learning to acquire industrial skills and
experience in their course of study, which are restricted to Engineering and Technology including
Environmental studies and other courses that may be approved. Courses of NCE (Technical), NCE
(Agriculture), NCE (Business), NCE (Fine and Applied Arts) and NCE (Home Economics) in Colleges of
Education are also included.
❖ Expose students to work methods and techniques in handling equipment and machinery that may not
be available in their institutions.
❖ Make the transition from school to the world of work easier and enhance students` contacts for later
job placement.
❖ Provide students with the opportunity to apply knowledge in real work situation thereby bridging the
gap between theory and practical.
❖ Enlist and strengthens employers` involvement in the entire educational process and prepare students
for employment after graduation.
CHAPTER TWO
Brief History
The International Centre for Professional Development (ICPD) was established on 13th
April, 2014. This was based on the proposal by the Bright sword Technologies (BST) Limited, Singapore for
mounting of training program in Information and Communication Technology certifications. It was a welcome
development for the University and a Memorandum of
Understanding was consequently signed between Federal University of Agriculture, Abeokuta (FUNAAB) and
BST Singapore accordingly. The Centre had since its establishment been making concerted effort at ensuring
the attainment of its goals and objectives.
Vision
Mission
Objectives
The objectives of the International Centre for Professional Development are as follows:
1. Creation of a unique, upscale, innovative environment that will differentiate ICPD from other
local IT Training Corporations operating in its environs;
2. Establishment of an environment that will bring people with divers interests and background
together in a common forum;
4. To add more value to the goodwill, image and increase the Internally Generated Revenue (IGR)
of the University.
Services
The International Centre for Professional Development (ICPD) provides consultancy services in IT to
Universities and industries, we also offer hands-on-training in the following areas:
1. The first and the only Test Venue for Test Of English as Foreign Language (TOEFL) in Nigeria
Universities;
15. Test Preparation in GMAT, SAT, TOEFL, IELTS, PTE, GRE;16. Gaming and Animation
development for young learners;
ICPD partners with distinguished organizations and industries across Asia, Europe and North America. The
Centre administers professional trainings with global certifications in Information Technology, Business
Management and Executive Leadership. ICPD runs local and international workshops, conferences and
symposia, jointly organized with her allied partners from Singapore, India, UK and the USA.
CHAPTER 3
An operating system acts as an intermediary between the user of a computer and computer hardware. The
purpose of an operating system is to provide an environment in which a user can execute programs in a
convenient and efficient manner.
An operating system is a software that manages the computer hardware. The hardware must provide
appropriate mechanisms to ensure the correct operation of the computer system and to prevent user
programs from interfering with the proper operation of the system.
This type of operating system does not interact with the computer directly. There is an operator which takes
similar jobs having same requirement and group them into batches. It is the responsibility of operator to sort
the jobs with similar needs.
• It is very difficult to guess or know the time required by any job to complete. Processors of the
batch systems know how long
• The other jobs will have to wait for an unknown time if any job fails.
Examples of Batch based Operating System: Payroll System, Bank Statements etc.
Each task is given some time to execute, so that all the tasks work smoothly. Each user gets time of CPU as
they use single system.
These systems are also known as Multitasking Systems. The task can be from single user or from different
users also. The time that each task gets to execute is called quantum. After this time interval is over OS
switches over to next task.
• Reliability problem
• One must have to take care of security and integrity of user programs and data
Various autonomous interconnected computers communicate each other using a shared communication
network. Independent systems possess their own memory unit and CPU. These are referred as loosely
coupled systems or distributed systems. These system’s processors differ in size and function. The major
benefit of working with these types of operating system is that it is always possible that one user can access
the files or software which are not actually present on his system but on some other system connected within
this network i.e., remote access is enabled within the devices connected in that network.
• Failure of one will not affect the other network communication, as all systems are independent
from each other
• These systems are easily scalable as many systems can be easily added to the network
• To establish distributed systems the language which are used are not well defined yet
• These types of systems are not readily available as they are very expensive. Not only that the
underlying software is highly complex and not understood well yet Examples of Distributed Operating
System are- LOCUS .
Historically operating systems with networking capabilities were described as network operating system,
because they allowed personal computers (PCs) to participate in computer networks and shared file and
printer access within a local area network (LAN).
This description of operating systems is now largely historical, as common operating systems include a
network stack to support a client–server model.
• New technologies and hardware up-gradation are easily integrated to the system
• Server access are possible remotely from different locations and types of systems
These types of OSs are used in real-time systems. The time interval required to process and respond to inputs
is very small. This time interval is called response time.
Real-time systems are used when there are time requirements are very strict like missile systems, air traffic
control systems, robots etc.
These OSs are meant for the applications where time constraints are very strict and even the shortest possible
delay is not acceptable. These systems are built for saving life like automatic parachutes or air bags which are
required to be readily available in case of any accident. Virtual memory is almost never found in these
systems.
These OSs are for applications where for time-constraint is less strict.
Advantages of RTOS:
• Maximum Consumption: Maximum utilization of devices and system,thus more output from all
the resources
• Task Shifting: Time assigned for shifting tasks in these systems are very less. For example in
older systems it takes about 10
• micro seconds in shifting one task to another and in latest systems it takes 3 micro seconds.
• Focus on Application: Focus on running applications and less importance to applications which
are in queue.
• Real time operating system in embedded system: Since size of programs are small, RTOS can
also be used in embedded systems like in transport and others.
• Error Free: These types of systems MUST be able to deal with any exceptions, so they are not
really error free, but handle
Disadvantages of RTOS:
• Limited Tasks: Very few tasks run at the same time and their concentration is very less on few
applications to avoid errors.
• Use heavy system resources: Sometimes the system resources are not so good and they are
expensive as well.
• Complex Algorithms: The algorithms are very complex and difficult for the designer to write
on.
• Device driver and interrupt signals: It needs specific device drivers and interrupt signals to
response earliest to interrupts.
• Thread Priority: It is not good to set thread priority as these systems are very less prone to
switching tasks.
1. Security
The operating system uses password protection to protect user data and similar other techniques. it also
prevents unauthorized access to programs and user data.
Monitors overall system health to help improve performance. records the response time between service
requests and system response to have a complete view of the system health. This can help improve
performance by providing important information needed to troubleshoot problems.
Operating systems also coordinate and assign interpreters, compilers, assemblers and other software to the
various users of the computer systems.
4. Memory Management
The operating system manages the primary memory or main memory. Main memory is made up of a large
array of bytes or words where each byte or word is assigned a certain address. Main memory is a fast storage
and it can be accessed directly by the CPU. For a program to be executed, it should be first loaded in the main
memory. An operating system performs the following activities for memory management:
It keeps tracks of primary memory, i.e., which bytes of memory are used by which user program. The memory
addresses that have already been allocated and the memory addresses of the memory that has not yet been
used. In multi programming, the OS decides the order in which process are granted access to memory, and for
how long.
5. Processor Management
In a multi programming environment, the OS decides the order in which processes have access to the
processor, and how much processing time each process has. This function of OS is called process scheduling.
An operating system performs the following activities for processor management.
6. Device Management
An OS manages device communication via their respective drivers. It performs the following activities for
device management.
Keeps tracks of all devices connected to system. designates a program responsible for every device known as
the Input/Output controller. Decides which process gets access to a certain device and for how long. Allocates
devices in an effective and efficient way. Deallocates devices when they are no longer required.
7. File Management
A file system is organized into directories for efficient or easy navigation and usage. These directories may
contain other directories and other files. An operating system carries out the following file management
activities. It keeps track of where information is stored, user access settings and status of every file and more…
These facilities are collectively known as the file system.
Whether you use the internet to learn about a certain topic, complete financial transactions online, order
food, etc., data is being generated every single second. The use of social media, online shopping and video
streaming services have all added to the increase in the amount of data. And in order to utilize and get
insights from such a huge amount of data - data processing comes into play. Moving forward, let us
understand what is data processing.
Data in its raw form is not useful to any organization. Data processing is the method of collecting raw data and
translating it into usable information. It is usually performed in a step-by-step process by a team of data
scientists and data engineers in an organization. The raw data is collected, filtered, sorted, processed,
analyzed, stored, and then presented in a readable format.
Data processing is essential for organizations to create better business strategies and increase their
competitive edge. By converting the data into readable formats like graphs, charts, and documents,
employees throughout the organization can understand and use the data.
Now that we’ve established what we mean by data processing, let’s examine the data processing cycle.
The data processing cycle consists of a series of steps where raw data (input) is fed into a system to produce
actionable insights (output). Each step is taken in a specific order, but the entire process is repeated in a cyclic
manner. The first data processing cycle's output can be stored and fed as the input for the next cycle, as the
illustration below shows us.
Generally, there are six main steps in the data processing cycle:
Step 1: Collection
The collection of raw data is the first step of the data processing cycle. The type of raw data collected has a
huge impact on the output produced. Hence, raw data should be gathered from defined and accurate sources
so that the subsequent findings are valid and usable. Raw data can include monetary figures, website cookies,
profit/loss statements of a company, user behavior, etc.
Step 2: Preparation
Data preparation or data cleaning is the process of sorting and filtering the raw data to remove unnecessary
and inaccurate data. Raw data is checked for errors, duplication, miscalculations or missing data, and
transformed into a suitable form for further analysis and processing. This is done to ensure that only the
highest quality data is fed into the processing unit.
The purpose of this step to remove bad data (redundant, incomplete, or incorrect data) so as to begin
assembling high-quality information so that it can be used in the best possible way for business intelligence.
Step 3: Input
In this step, the raw data is converted into machine readable form and fed into the processing unit. This can
be in the form of data entry through a keyboard, scanner or any other input source.
In this step, the raw data is subjected to various data processing methods using machine learning and artificial
intelligence algorithms to generate a desirable output. This step may vary slightly from process to process
depending on the source of data being processed (data lakes, online databases, connected devices, etc.) and
the intended use of the output.
Step 5: Output
The data is finally transmitted and displayed to the user in a readable form like graphs, tables, vector files,
audio, video, documents, etc. This output can be stored and further processed in the next data processing
cycle.
Step 6: Storage
The last step of the data processing cycle is storage, where data and metadata are stored for further use. This
allows for quick access and retrieval of information whenever needed, and also allows it to be used as input in
the next data processing cycle directly.
Now that we have learned what is data processing and its cycle, now we can look at the types.
There are different types of data processing based on the source of data and the steps taken by the
processing unit to generate an output. There is no one-size-fits-all method that can be used for processing raw
data.
Type Uses
There are three main data processing methods - manual, mechanical and electronic.
This data processing method is handled manually. The entire process of data collection, filtering, sorting,
calculation, and other logical operations are all done with human intervention and without the use of any
other electronic device or automation software. It is a low-cost method and requires little to no tools, but
produces high errors, high labor costs, and lots of time and tedium.
Data is processed mechanically through the use of devices and machines. These can include simple devices
such as calculators, typewriters, printing press, etc. Simple data processing operations can be achieved with
this method. It has much lesser errors than manual data processing, but the increase of data has made this
method more complex and difficult.
Data processing occurs in our daily lives whether we may be aware of it or not. Here are some real-life
examples of data processing:
• A stock trading software that converts millions of stock data into a simple graph
• An e-commerce company uses the search history of customers to recommend similar products
• A self-driving car uses real-time data from sensors to detect if there are pedestrians and other cars on
the road
CHAPTER 4
A programming language is a set of instructions and syntax used to create software programs. Some of the
key features of programming languages include:
1. Syntax: The specific rules and structure used to write code in a programming language.
2. Data Types: The type of values that can be stored in a program, such as numbers, strings, and
booleans.
4. Operators: Symbols used to perform operations on values, such as addition, subtraction, and
comparison.
5. Control Structures: Statements used to control the flow of a program, such as if-else statements,
loops, and function calls.
6. Libraries and Frameworks: Collections of pre-written code that can be used to perform common tasks
and speed up development.
7. Paradigms: The programming style or philosophy used in the language, such as procedural, object-
oriented, or functional.
Examples of popular programming languages include Python, Java, C++, JavaScript, and Ruby. Each language
has its own strengths and weaknesses and is suited for different types of projects.
A programming language is a formal language that specifies a set of instructions for a computer to perform
specific tasks. It’s used to write software programs and applications, and to control and manipulate computer
systems. There are many different programming languages, each with its own syntax, structure, and set of
commands. Some of the most commonly used programming languages include Java, Python, C++, JavaScript,
and C#. The choice of programming language depends on the specific requirements of a project, including the
platform being used, the intended audience, and the desired outcome. Programming languages continue to
evolve and change over time, with new languages being developed and older ones being updated to meet
changing needs.
Are you aiming to become a software engineer one day? Do you also want to develop a mobile application
that people all over the world would love to use? Are you passionate enough to take the big step to enter the
world of programming? Then you are in the right place because through this article you will get a brief
introduction to programming. Now before we understand what programming is, you must know what is a
computer. A computer is a device that can accept human instruction, processes it, and responds to it or a
computer is a computational device that is used to process the data under the control of a computer program.
Program is a sequence of instruction along with data.
1. Input unit
3. Output unit
Memory unit
Control unit
Most of us have heard that CPU is called the brain of our computer because it accepts data, provides
temporary memory space to it until it is stored(saved) on the hard disk, performs logical operations on it and
hence processes(here also means converts) data into information. We all know that a computer consists of
hardware and software. Software is a set of programs that performs multiple tasks together. An operating
system is also software (system software) that helps humans to interact with the computer system.
A program is a set of instructions given to a computer to perform a specific operation. or computer is a
computational device that is used to process the data under the control of a computer program. While
executing the program, raw data is processed into the desired output format. These computer programs are
written in a programming language which are high-level languages. High level languages are nearly human
languages that are more complex than the computer understandable language which are called machine
language, or low level language. So after knowing the basics, we are ready to create a very simple and basic
program. Like we have different languages to communicate with each other, likewise, we have different
languages like C, C++, C#, Java, python, etc to communicate with the computers. The computer only
understands binary language (the language of 0’s and 1’s) also called machine-understandable language or
low-level language but the programs we are going to write are in a high-level language which is almost similar
to human language.
The piece of code given below performs a basic task of printing “hello world! I am learning programming” on
the console screen. We must know that keyboard, scanner, mouse, microphone, etc are various examples of
input devices, and monitor(console screen), printer, speaker, etc are examples of output devices.
main()
clrscr();
getch();
At this stage, you might not be able to understand in-depth how this code prints something on the screen. The
main() is a standard function that you will always include in any program that you are going to create from
now onwards. Note that the execution of the program starts from the main() function. The clrscr() function is
used to see only the current output on the screen while the printf() function helps us to print the desired
output on the screen. Also, getch() is a function that accepts any character input from the keyboard. In simple
words, we need to press any key to continue(some people may say that getch() helps in holding the screen to
see the output).
Between high-level language and machine language, there are assembly languages also called symbolic
machine code. Assembly languages are particularly computer architecture specific. Utility program
(Assembler) is used to convert assembly code into executable machine code. High Level Programming
Language is portable but requires Interpretation or compiling to convert it into a machine language that is
computer understood.
Hierarchy of Computer language –
There have been many programming languages some of them are listed below:
C Python C++
C# R Ruby
Turbo GO ALGOL
Pascal
Matlab F F#
TCL D CPL
C
Python
C++
Java
SCALA
C#
R
Ruby
Go
Swift
JavaScript
A programming language must be simple, easy to learn and use, have good readability, and be human
recognizable.
Abstraction is a must-have Characteristics for a programming language in which the ability to define
the complex structure and then its degree of usability comes.
Programming language’s efficiency must be high so that it can be easily converted into a machine code
and its execution consumes little space in memory.
A programming language should be well structured and documented so that it is suitable for
application development.
Necessary tools for the development, debugging, testing, maintenance of a program must be provided
by a programming language.
Data Type: A classification that specifies what type of data a variable can hold, such as integer, string,
or boolean.
Function: A self-contained block of code that performs a specific task and can be called from other
parts of the program.
Control Flow: The order in which statements are executed in a program, including loops and
conditional statements.
Syntax: The set of rules that govern the structure and format of a programming language.
Comment: A piece of text in a program that is ignored by the compiler or interpreter, used to add
notes or explanations to the code.
Statement: A single line or instruction in a program that performs a specific action or operation.
Here the basic code for addition of two numbers are given in some popular languages (like C, C++,Java,
Python, C#, JavaScript etc.).