Nothing Special   »   [go: up one dir, main page]

Ilodiuba Harrison IT Defense Report

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 35

UNIVERSITY OF NIGERIA, NSUKKA

FACULTY OF PHYSICAL SCIENCES

DEPARTMENT OF COMPUTER SCIENCES

A STUDENT INDUSTRIAL WORK EXPERIENCE

SCHEME (SIWES) REPORT PREPARED IN PARTIAL

FULFILMENT OF THE COURSE: COS 374

UNERTAKEN AT:

LLOYDANT BUSINESS SERVICES, ENUGU

BY

ILODIUBA HARRISON C.

2017/242461

OCTOBER, 2021

1
CHAPTER ONE

INTRODUCTION

1.1 Overview

Nigerian students in every practical discipline are required to carry out an

exercise, usually in their penultimate session, to gain work experience and

implement most of the theoretical concepts they have learnt. Computer Science

continues to thrive, to expand, and to grow rapidly especially with the current

trends and demands for computing, automation and technological involvement.

Consequently, this broadens the scope of application for any computer science

student, and it can be said that practical experience in computing and its

applications can be gained in almost any field, from the entertainment industry

to the FIN-TECH domain. This chapter will be treating the basis for the

Industrial Training as well as its essence.

1.2 Understanding SIWES

The Students Industrial Work Experience Scheme (SIWES) is a skills training

programme designed to expose and prepare students of Universities,

Polytechnics/Colleges of Technology/Colleges of Agriculture and Colleges of

Education for the industrial work situation they are likely to meet after

graduation (Mafe, 2009). Consequently, the SIWES programme is a compulsory

2
graduation requirement for all Nigerian university students offering certain

courses (NOU, 2021).

According to Adeolu (2021), the scheme also affords students the opportunity

of familiarizing and exposing themselves to the needed experience in handling

equipment and machinery that are usually not available in their institutions. It is

a cooperative industrial internship program that involves institutions of higher

learning, industries, the Federal Government of Nigeria, Industrial Training

Fund (ITF), and Nigerian Universities Commission (NUC).

Prior to establishing the Scheme, industrialists and other employers of labour

felt concerned that graduates of Nigeria Universities were deficient in practical

background studies preparatory for employment in Industries and other

organizations. The employers thus concluded that the theoretical education

being received in higher institutions was not responsive to the needs of the

employers of labour. Consequently, the rationale for initiating and designing

the scheme by the Industrial Training Funds ITF, in 1973.

1.2.1 Objectives of SIWES

SIWES was set us to satisfy the following:

1. To provide an avenue for students in the Nigerian universities to acquire

industrial skills and experience during their course of study;

3
2. To prepare students for the work situation they are likely to meet after

graduation;

3. To expose the students to work methods and techniques in handling

equipment and machinery that may not be available in their universities;

4. To allow the transition phase from school to the world of working

environment easier and facilitate students’ contact for later job

placements;

5. To provide students with an opportunity to apply their theoretical

knowledge in real work situation thereby bridging the gap between theory

and practice.

1.2.2 Involved Organizations

Organisations involved in the management of SIWES programme include: The

Federal Government, the Industrial Training Fund (ITF), the Supervising

Agency, National Universities Commission, NUC, and Employers of labour.

1.3 Place of Attachment

I was attached to Lloydant Business Services, Enugu for my Industrial Training

Experience. The company is registered with the Corporate Affairs Commission

(CAC) in Nigeria under software and general merchandise with the business

number RC. 1079238. The business facility is located at 26 Chukwuka Utazi

Street, Liberty Estate, Enugu State.

4
Fully functional for close to a decade, Lloydant is recognized for their

innovative approach towards service delivery and commitment to integrity,

business value and sustainability.

Lloydant provides flexible end-to-end solutions that assist firms and individuals

meet their business objectives by giving the best possible service at an

affordable fee to realize the highest net dollar from their assets.

1.3.1 Services at Lloydant Business

Lloydant is a renowned software company, specializing in Enterprise

Application Development, Business and IT Consulting, Business Process

Engineering, and Project Management.

A. Enterprise Application Development

Our Application Development Team provides innovative solutions to exceed

the expectations of our customers. Solutions are based on our long-term and

deep knowledge of our focused industry, combined with world-of-class

technology expertise in our selected domains. We always take into account and

pro-actively implement solutions to best suit your unique requirements.

Innovative Software Systems are developed using our full stack development

capabilities. The aim is to deploy solutions that enhance efficiency, enable

quicker ROI, lead to lower OPEX, accentuate transparency, minimize revenue

loss or address whatever unique needs our clients present.

5
All this is implemented by proven agile project & implementation

methodologies and standards, proven by a track record of sustainable solutions

and excellent deliveries.

B. Business and IT Consulting

Does your business require increased agility to take advantage of opportunities

in the market? Is your company prepared for more than one future? Are you

looking for new and innovative ways to increase top lines? There is an

increasing number of various types of cloud services available for businesses,

let us be your partner in business transformation.

We drive the re-evaluation and redesign of the IT environment ensuring a

strategic alignment with your business goals. We offer a full range of business

and IT consulting services and help in bringing together all the players needed

in developing a winning service portfolio.

We also drive advisory assignments with limited scope all the way to full scale

integration projects supporting your continuous planning and governance

process in all levels needed. Lloydant provides Enterprise IT Solutions designed

specifically to meet the individual business needs of our Public and Private

sector clients

6
C. Business Process Engineering

We study our clients’ current business processes and develop new methods to

improve productivity, efficiency, and minimize operational costs. Our focus

here is, how to diagnose problems with our clients' current methodology, and

how to redesign, reconstruct, and monitor processes to ensure they are effective.

Proper execution of Business Process Reengineering can be a game-changer to

any business. If properly handled, business process reengineering can perform

miracles on a failing or stagnating company, increasing the profits and driving

growth.

D. Project Management

We leverage our experience to manage projects on behalf of our clients. This

involves the planning and organization of the clients' resources to move a

specific task, event, or duty towards completion.

It could involve a one-time project or ongoing business activity. Our processes,

methods, skills, knowledge and experience to achieve specific project objectives

according to the project acceptance criteria within agreed parameters.

1.3.2 Careers at Lloydant Business

The company recruits interns in the following categories:

1. Back End Development

2. UI/UX Development

7
3. Helpdesk / Technical Support

4. Mobile Development

5. Business Development

After some hours of practical classes and mentorship in these fields, I majored

in the User Interface and Experience (UI/UX) Development especially for web

based applications.

1.3.3 Company Organogram

In order to accomplish the objectives stated above, Lloydant has a chain of

officers who foresee different sectors of the organization.

Figure 1.1: Lloydant Organogram Illustration

8
CHAPTER TWO

INUSTRIAL EXPERIENCE

2.1 Experience Overview

Working in a profit-oriented company exposes one to not only technical

experience, but managerial and otherwise as well. At Lloydant, I learnt about

pitching of business ideas, stress management and of course, software

development. These will be detailed in subsequent subsections.

2.2 Business Experience

Through frequent interaction with the managers and directors, a lot was learnt

by imitation and practice as well as mentorship. In staff meetings, I noted the

devotion of management to the core values of the company. I was also carried

along on negotiation meetings where I took notes. It is worthwhile to say that

continuous involvement during negotiations with prospective clients of the

company boosted my confidence and prepared me for future similar meetings. I

also observed rotation of staff schedules and company-paid trainings for

employees to widen their scope gradually.

2.3 Technical Experience

We were introduced to web technologies, web programming concepts /

languages and web securities. I was educated on the tools and programming

9
languages, and environments that are needed to get a web software application

running effectively. The software requirements for my section are as follows:

1. Web Browser: This interprets the source code and represents it in a

readable/graphical format as the rules in the source code specify. Any web

browser can handle this feature. However, some program constructs in many

mark-up languages and their styling sheets are misinterpreted or even ignored

by some browsers. For this reason, the Chrome browser is chosen. It is made

with many built-in extensions and plug-ins that allow for universality and

portability of code such as CSS ‘webkits’. A sample browser interface is shown

in Figure 2.1 below.

Figure 2.1: Chrome Browser Interface

2. Source Code: This requirement is the sauce in the whole work. Source codes

usually have a language in which they are written. In the case of the online
10
tutorial system for learning programming, different languages are required for

the mark-up, styling, interactivity, scripting, form-processing, and database

queries. The source code is written on a text-editor which makes the codes

readable and understandable through the use of comments, colour distinction

and other innovative features, depending on the language being used at any

moment in time. Figure 2.2 shows a typical text editor platform for code

writing.

Figure 2.2: Sublime Text Editor Interface

3. Connection to the server: Without this connection, a user would lack access

to the root folder where all the program codes and media files that are required

to run on a web application are located. The server could be local, or live. Live

servers allow devices to connect to the resources it offers, regardless of their

geographical location. However, they require funding to maintain, usually an

11
annual token to retain the domain name space for website resources. Due to this

financial constraint, the local server was considered. The local server allows

limited access to the website’s resources. Only the computer on which it is

domiciled, has access to the files. Conversely a larger range of users can be

accommodated, with the right configurations on networking devices such as

router. A selected server is interface result is shown below.

Figure 2.3: Wamp Server Homepage Result Interface on Chrome Browser

The languages, tools and ideologies learnt about are discussed as follows.

2.3.1 Mark Up Notation

The mark-up shows the skeletal framework of any website. It clearly defines the

basic elements and some of their attributes. To a limited extent, it has the

capacity to decide their appearance. HTML (Hyper Text Mark-up Language) is

12
the most popular language for this job. The features that justify choosing this

language are shown as follows:

1. Web Workers: Certain web applications use heavy scripts to perform

functions. Web Workers use separate background threads for

processing and it does not affect the performance of a web page.

2. Video: You can embed video without third-party proprietary plug-ins

or codec. Video becomes as easy as embedding an image.

3. Canvas: This feature allows a web developer to render graphics on the

fly. As with video, there is no need for a plug in.

4. Application caches: Web pages will start storing more and more

information locally on the visitor's computer. It works like cookies,

but where cookies are small, the new feature allows for much larger

files. Google Gears is an excellent example of this in action.

5. Geolocation: Best known for use on mobile devices, geolocation is

coming with HTML5, with enables a website to pin-point a specific

location on digital maps such as Google map.

6. HTML is a platform-independent language.

7. HTML is not case and space sensitive.

2.3.2 Styling Language

Styling languages enhance the appearance of the marked-up elements. They

define to a reasonable extent, the aesthetic quality of a website. It is an

13
established norm in Internet users to repel from websites that have lowly

developed visual enhancement. CSS (Cascading Styling Sheets) is the selected

language for this job. Despite, its variants and long period of use in the web

styling industry, the developers continue to improve its features and usability,

thereby maintaining its relevance in web designing. The following are its

unmatched features:

1. Browser Compatibility: CSS style sheets increase your website's

adaptability and ensure that more visitors will be able to view your

website in the way you intended no matter the web browser they are

using to view it.

2. Device Compatibility (Viewing Options): CSS enables all device to

view a website in its own unique way by the means of responsiveness

(adjusting to all screen sizes and resolution), which means the way a

mobile phone can view a website is different from the way a computer

system and a tablet would view that same website.

3. Consistency: By making one change to your website's CSS style sheet,

you can automatically make it to every page of your website. The bigger

your website, the more time CSS saves you. And not only does CSS save

time, it also ensures that your web pages have consistent styling

throughout your site.

14
4. Bandwidth Reduction: When CSS separates your website's content

from its design language, you dramatically reduce your file transfer size.

Your CSS document will be stored externally, and will be accessed only

once when a visitor requests your website.

5. CSS Animations and Transitions: This is the feature of CSS that

enable developers to create animated images and objects on a website

using CSS for more description on a site.

6. Web fonts: CSS avails users the abilities to use an online font to design

and give their web documents unique looks.

7. Colour: CSS have the ability to give divers colours to different elements

on a webpage.

2.3.3 Scripting Languages

Scripting languages ensure site interactivity and also do form processing. They

validate input data and also analyse them just before any interaction with the

database. The scripting languages to be learnt in the course of this experience

are divided into client-side and server-side scripting languages. The client-side

scripting languages work are immediately interpreted by the DOM parser on the

web browser. They are executed without the presence or involvement of server

connections. JavaScript is handle this part of the work. Its features are as

follows:

1. JavaScript is an object-based scripting language.

15
2. It gives user more control over the browser.

3. It handles dates and time.

4. It detects the user's browser and Operating System.

5. It is light-weighted.

6. JavaScript is a scripting language and it is not java.

7. JavaScript is interpreter-based scripting language.

8. JavaScript is case sensitive.

9. JavaScript is object based language as it provides predefined objects.

10. Every statement in JavaScript must be terminated with semicolon (;).

11. Most of the JavaScript control statements syntax are same as syntaxes

of control statements in C language.

12. An important part of JavaScript is the ability to create new functions

within scripts.

On the other hand, the server-side scripting languages cannot work without the

presence of a web server, whether live or locally hosted. They also have the

extension for integration database queries such as MySQL (My Structured

Query Language). For this project, PHP is the selected server-side scripting

language. Below are its features:

1. It is very simple and easy to use, compare to other scripting language

it is very simple and easy, and widely used all over the world.

2. It is an interpreted language, i.e. there is no need for compilation.

16
3. It is faster than other scripting language e.g. ASP and JSP.

4. Open source means you no need to pay for use PHP, you can free

download and use.

5. PHP code can be run on every platform, Linux, UNIX, Mac OS X,

and Windows.

6. PHP is case sensitive scripting language in terms of variable

declaration. In PHP, all keywords (e.g. if, else, while, echo, etc.),

classes, functions, and user-defined functions are NOT case-sensitive.

7. PHP have some predefined error reporting constants to generate a

warning or error notice.

8. PHP provides access logging by creating the summary of recent

accesses for the user.

9. PHP supports variable usage without declaring its data type. It will be

taken at the time of the execution based on the type of data it has on

its value.

2.3.4 Database Concerns

MySQL (Structured Query Language) is a freely available open source

Relational Database Management System (RDBMS) that uses Structured Query

Language (SQL). SQL is the most popular language for adding, accessing and

managing content in a database. It is most noted for its quick processing, proven

reliability, ease and flexibility of use. The following are its features:

17
1. Relational Database System: Like almost all other database systems

on the market, MySQL is a relational database system, which mean it

stores and provides access to data points that are related to one

another.

2. Client/Server Architecture: MySQL is a client/server system. There

is a database server (MySQL) and arbitrarily many clients (application

programs), which communicate with the server; that is, they query

data, save changes, etc.

3. SQL compatibility: MySQL supports as its database language, as its

name suggests, SQL (Structured Query Language). SQL is a

standardized language for querying and updating data and for the

administration of a database.

4. Triggers: Triggers are SQL commands that are automatically

executed by the server in certain database operations (INSERT,

UPDATE, and DELETE). MySQL has supported triggers in a limited

form from version 5.0, and additional functionality is promised for

version 5.1.

5. Full-text search: Full-text search simplifies and accelerates the search

for words that are located within a text field. If you employ MySQL

for storing text (such as in an Internet discussion group), you can use

full-text search to implement simply an efficient search function.

18
6. Replication: Replication allows the contents of a database to be

copied (replicated) onto a number of computers. In practice, this is

done for two reasons: to increase protection against system failure (so

that if one computer goes down, another can be put into service) and

to improve the speed of database queries.

7. Transactions: In the context of a database system, a transaction

means the execution of several database operations as a block. The

database system ensures that either all of the operations are correctly

executed or none of them. This holds even if in the middle of a

transaction there is a power failure, the computer crashes, or some

other disaster occurs.

8. Platform independence: It is not only client applications that run

under a variety of operating systems; MySQL itself (that is, the server)

can be executed under a number of operating systems. The most

important are Apple Macintosh OS X, Linux, Microsoft Windows,

and the countless UNIX variants, such as AIX, BSDI, FreeBSD, HP-

UX, OpenBSD, Net BSD, SGI Iris, and Sun Solaris.

9. Speed: MySQL is considered a very fast database program. This

speed has been backed up by a large number of benchmark tests

(though such tests -- regardless of the source -- should be considered

with a good dose of scepticism).

19
2.4 Extramural Experience

Part of the garnered experience bordered on the importance of team work, social

bonding, stress management, psychological completeness, and in fact,

maintaining an all-round balance.

2.5 Task Performed / System Developed

During the course of this training cum work experience, practical tasks were

assigned and graded. One of them was the use of web technologies to create a

UI/UX for specific7entertainments, a sub-client of the firm. The site was

successfully developed and deployed on a web host at

www.specific7entertainments.com. A screenshot of the interface is shown

below.

Figure 2.4: Specific7entertainments Home Page Interface – Project

The code listing for the website will be shown in appendices.


20
Also, a command line interface for ATM protocols was also developed in the

first week of the experience. It is minute, but however, due to report purposes, it

has been included as part of projects and assignments. Below is a snapshot of

the program when it was run.

Figure 2.5: ATM Protocol Output

The above was achieved using a series of nested if-statements to verify if ATM

pin matches, and if selected account type is correct. However, due to the

absence of a database connection, the pin had to be manually set by the

21
programmer, as well as the account type. The code listing will appear under

appendices.

Figure 2.6: ATM Complete Function

In the figure 2.6 above, it is very clear that the code block not only identifies

whether the account type is correct, but also detects when a wrong ATM pin has

been inputted. The crème de la crème is found in its capability to detect whether

amount entered for withdrawal is above or below existing balance, and thus

supplying the user with the respective response accompanied by account

balance.
22
CHAPTER THREE

LIMITATIONS

3.1 The Nature of Internship Challenges

Indulging in practical business-oriented applications of one’s discipline can

come with numerous challenges ranging from financial to time constraints. This

particular experience is not an exemption. However, it did not inhibit the work

from being done. This chapter is dedicated to the description of challenges

encountered before/during the process, and how they were handled.

3.2 Securement of an Industrial Training Placement

A student without practical knowledge is more like a liability to an industrial

firm because they would expend resources to impact such a student. This is a

viable reason why top-ranking Information Technology companies are quick to

reject interns. I struggled with submission of letters and interviews until

Llyodant discovered my potential and decided to take me.

3.3 Job Roles Disparity

Settling in after being taken by the company, was a hard nut to crack. This was

also bolstered by the fact that the skilled staff were mostly too busy to offer

23
technical assistance to my learning process. This resulted in an adaption of my

learning methods; most of the experience was gathered by imitation in addition

to the practical assignments being given.

3.4 Financial Challenges

As part of the non-technical limitations, the issue of finance stayed afloat for a

while. Transportation to and fro the place of primary assignment was cost-

intensive and time consuming. Conversely, the company paid little stipends to

support snack and transport, thereby managing this problem to a reasonable

extent.

3.5 Time Constraints

While lessons were rushed to complete the first twelve weeks of Industrial

Training, the COVID-19 pandemic’s lockdown totally consumed a great chunk

of the time required for the last twelve. At the end of the day, reasonable time

was lost. Consequently, most parts of PHP and Advanced JavaScript for web

scripting were not properly learnt.

24
APPENDIX A – SOURCE CODE LISTING
A1: ATM PROTOCOL JAVA CODE

25
26
A2: SPECIFIC7ENTERTAINMENTS INDEX.PHP CODE
27
28
A3: SPECIFIC7ENTERTAINMENTS ACCESS.PHP CODE

A4: SPECIFIC7ENTERTAINMENTS CONNECTION.PHP CODE

29
A5: SPECIFIC7ENTERTAINMENTS LOGIN.PHP CODE

30
A6: SPECIFIC7ENTERTAINMENTS SIGNUP.PHP CODE

31
APPENDIX B - SAMPLE OUTPUT
B1: SPECIFIC7ENTERTAINMENTS HOME PAGE

32
33
B2: SPECIFIC7ENTERTAINMENTS ABOUT PAGE

B3: JAVA ATM OUTPUT


34
35

You might also like