Project

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 27

ADDIS ABABA SCIENCE AND TECHNOLOGY

UNIVERSITY

Collage of Electrical and Mechanical Engineering


Department of Electrical and Computer Engineering
Computer Engineering Stream
Internship report at Farka ICT solution
from Oct 30, 2022 – Feb 15, 2023
Prepared by:
Name ID Section
Haile Baranto ETS0499/11 B

Company Supervisor: Mr. Michle Moges


University Advisor: Mr. Tesfaye Hagos.

Submitted to: Mr. Yonas Hagos


Submission Date: Feb 20, 2023
Declaration
I, hereby declare that the report presented here for the internship report is uniquely prepared by
me after the completion of three months of internship work at Farka ICT Solution . I have been
under guidance of my industry advisor Michel Mogos and my academic advisor, Mr. Tesfaye H.

Declared by (student)
Name Signature Date

Haile Baranto(ETS 0499/11) ___________ _______

University Advisor
Name signature Date

Tesfaye Hagos ____________ ___________


Executive Summary
Internship report is mandatory for Addis Ababa Science and Technology University and other
Ethiopia higher education institutions to complete . This document is an internship report that I
had successfully completed at Farka ICT Solution from 1-Oct, 2022 to 17-Feb, 2023.
The document consists four chapters with each chapter explains different things about the
internship and project made for the internship

First chapter of the document contains the background of Farka ICT where the internship takes
place . Farka ICT Solutions Plc is one of the most successful information and communication
technology (ICT) private firms in the horn of Africa. The company provides different ICT
solutions for different governmental and non governmental solutions

The second chapter explains about the objectives of the internship, my role on the internships
and scope and limitations of the mission that I had in the company.

The third chapter of the document consists of the benefits that I get from the internship.
Benefits that i get from the company includes
➢ Practical skills - skills related to programming, networking and others skills that are
important to computer engineer
➢ Communication skills: skills related to how to communicate with you peers and managers
➢ How to cooperate with others during projects

The fourth chapter consists about the project I made during the internship including
➢ Situation analysis of ecommerce website
➢ Problem statement, scope, objective and project design pattern i follow to build the
website

The last chapter contains recommendations and conclusion


Acknowledgement
I would like to express my sincere gratitude to Addis Ababa Science and Technology University,
AASTU, for providing this highly valuable internship opportunity. I also acknowledge the
Department of Electrical and Computer Engineering department for their good will to facilitate
all necessary administrative procedures to carry out this internship at Farka ICT Solution where I
applied my theoretical knowledge into real world scalable and practical solutions, specifically
related to Full-Stack Web Development.
I am deeply grateful to my university advisor Tesfaye Hagos. for his unreserved support and
Guidance through the internship period.
Farka ICT Solution is highly acknowledged for showing willingness and acceptance for me to be
an intern at their Full Stack Web development department. I also extend my gratitude to Mr.
Michel Mogos, senior programmer at Farka ICT Solution, for his continuous support during the
internship.
Finally, the employees of Farka ICT Solution are also duly acknowledged for allowing, showing
and guiding me in undertaking the internship through providing all necessary facilities.
Table of Contents
Chapter one: Company background 7
1.1: Introduction 7
1.1.1: Vision of Farka ICT solution 7
1.1.2: Mission of Farka ICT solution 7
1.1.3: Service provided by Farka ICT solution 7

Chapter two: About the internship 9


2.1: Objectives of the internship 9
2.2: My role on the company 9
2.3: My mission on the company and context of the mission. 10
2.4: Scope and limitations of the mission. 10

chapter three: Benefits Gained from Internship 11


3.1 Practical skill: 11
3.1.1: Programming courses related skills 11
3.1.2: Data structure and algorithm related skills 11
3.1.3: Networking and Network security related skills 11
3.1.4: Operating system related skills 11
3.2: Communication skill 11
3.3: Work Ethics 12
3.4: Cooperation with others 12

Chapter four: Ecommerce website project 13


4.1 Situation Analysis 13
4.1.1: Introduction 13
4.1.2.: Best practices of ecommerce website 13
4.1.2: Ecommerce website Internal factors 14
4.1.3: External factors influencing online purchase decision 15
4.2: Problem Statement 16
4.3: Objective 17
4.5: Scope 17
4.6: Technology used for this project 17
6.7: Project Functionality 18
6.7.1: Customer Interface: 18
4.7.2: Admin Interface 18
4.8: Project design pattern 18
4.8.1: Model: 19
4.8.2: Template: 21
4.8.3 views: 22
4.9: Screenshot of the ecommerce website 22

Chapter five: Conclusion and Recommendations 26


5.1: conclusion: 26
5.2: Recommendation 26

References: 27
Chapter one: Company background

1.1: Introduction

Farka ICT Solutions Plc is one of the most successful information and communication
technology (ICT) private firms in the horn of Africa. Currently it operates in South Sudan and
Ethiopia. The company has been undertaking major IT projects for governmental,
non-governmental and commercial organizations. It has successfully completed all projects and
hopes to do more in the future. Most of its staff are internationally certified programmers,
System architects, certified network professionals and senior experts in the field of Information
and Communication Technology.

1.1.1: Vision of Farka ICT solution

➢ To be a world class ICT solutions provider


➢ To become one of the most preferred ICT partners in Africa.
➢ To improve services for people through high quality ICT Solutions.

1.1.2: Mission of Farka ICT solution

➢ Provide world class educational solutions to learning institutions.


➢ Play a professional role in achieving universal access to ICT in Africa & beyond.
➢ Conduct comprehensive training in the ICT Sector
➢ Provide reliable and durable ICT services for our customers.

1.1.3: Service provided by Farka ICT solution

Farka ICT solution provides diverse services to its customers around ICT and software. The
following services are the most common ones.
➢ Biometric Solutions: which uses personal characteristics (directly linked to who you are)
to authenticate or identify a person. A system collects biometric characteristics unique to
every person. These biometric characteristics are then directly linked to verify or identify
the individual. The specific biometric solutions provided by our company are Attendance
Systems, Door Access Controls and Smart Cards.
➢ Networking and Automations: It provides networking automation using latest
technologies
➢ Software Development: Farka ICT solution has elite professional programmers who are
giving software solutions to different companies including ministry of education, higher
education institutes and different non governmental organizations. It is one of the best
companies in the horn of Africa which develops effective and reliable software for
customers.
➢ ICT Consultancy and Technical Support: consult and support customers on system
security network security and Database systems.
➢ IT Training: Farka ICT also provides a variety of ICT training to different organizations.
The training includes basic computer Skills & troubleshooting techniques, Database
systems, Networking and other training courses based on customer demand.
Chapter two: About the internship

2.1: Objectives of the internship

The main objectives of an internship are


➢ Industry experience and the chance to learn: Internships give you the opportunity to
experience an industry and find out about a company and job.
➢ To understand how to apply the theoretical and practical knowledge we gain from
university to solve real world problems
➢ To broaden our chances for handling a job and taking responsibility.
➢ To create a conducive atmosphere to assess professional qualification.
➢ To strengthen our professional skills and interpersonal communication.
➢ To create connections with potential employers.
➢ To understand the work ethics of a company.

2.2: My role on the company

My role in the company was an intern of both back end and front end software developer
➢ Back-end software development:
which involves building and maintaining the mechanisms that process data and perform
actions on websites. Unlike front-end development, which involves designing what a user
sees on a website, back-end software development is involved in data storage, security,
and other server-side functions that a website user can not see.
➢ Front end web developer:
Everything you see on a website, like buttons, links, animations, and more, were created
by a front end web developer. It is the front end developer's job to take the vision and
design concept from the client and implement it through code.
2.3: My mission on the company and context of the mission.

Farka ICT solution is currently using .NET framework which is a framework developed by
microsoft and that uses c sharp programming language. Now they want to use the django web
framework for some of their solutions because django has the following superiority over .NET
framework
➢ Most notably, perhaps, is that Django simply allows for quicker results. ASP.NET web
development is not always slow, but when compared to Django, developers often find
that they are able to produce results much more quickly.
➢ Django can be used in many different scenarios to produce various apps or sites and has
been used for everything from shopping platforms to supporting document management
systems, customer databases, or business-to-consumer communication portals.
➢ Django easily allows you to implement machine learning concepts because django uses
python programming language which is the main machine learning programming
language
➢ Django is fully free web framework which is not the case for .NET framework
My mission was to build a sample ecommerce website using the django framework so that the
company can use the django framework in their future web development projects.

2.4: Scope and limitations of the mission.

The scope of the mission is to show the Farka ICT solution can develop responsive web
applications using the django web framework. The limitation on achieving the missions are
➢ My prior knowledge in web development was limited. Therefore it takes me a lot of time
to understand web technologies to develop sample ecommerce websites.
➢ Time constraint to develop fully fledged ecommerce website
chapter three: Benefits Gained from Internship

3.1 Practical skill:

One of the key motivations for an internship is to get practical knowledge on the major courses
we take in university. The main practical i get from the internship includes

3.1.1: Programming courses related skills

One of the main skills I develop during this internship is how to use the programming concepts I
learned in university to practical real world problems. Some of the main programming concepts I
apply include object oriented programming, how to gather project requirements, software
engineering steps to implement those requirements.

3.1.2: Data structure and algorithm related skills

When you build software the most important thing you need to consider is its space and time
complexity. If you build software that is inefficient in terms of those requirements the software
you build will be useless. Therefore during the internship I learned how to select best data
structure and algorithm to implement projects assigned by the company

3.1.3: Networking and Network security related skills

The other technical skills I learned during this internship is networking and network security.
Because to build a secure, reliable and efficient website you have to understand how the internet
works and how to secure the data transmission between client and the web server. In addition
you have to understand how the TCP/IP protocol works.

3.1.4: Operating system related skills

I have also learned how to use command line to interact with the computer

3.2: Communication skill

During our internship time it was necessary to communicate with each other and share
information to accomplish the task assigned to you on a daily basis. So, my communication skills
have been improving from day to day, the changes were visible even to us, and that is a good
thing.Communication skill is one of the good characteristics, we should have as an Engineer

3.3: Work Ethics

Having technical skill is a very important thing to have to be a successful professional. But
having technical skills is not enough. You also need to have a work ethic. During the internship I
have learned the following work ethic requirements and try to implement them.
➢ Punctuality
➢ Obedience for manager
➢ Honesty
➢ Self confidence
➢ Trustworthiness
➢ Politeness
➢ Respectfulness

3.4: Cooperation with others

The last but not the least thing I learned during the internship is how to cooperate with others. To
better facilitate cooperation with others I learn git and github technologies.
➢ GIT(version control): is a distributed version control system that tracks changes in any
set of computer files, usually used for coordinating work among programmers
collaboratively developing source code during software development. Its goals include
speed, data integrity, and support for distributed, non-linear workflows
➢ Github: GitHub, Inc. is an Internet hosting service for software development and version
control using Git. It provides the distributed version control of Git plus access control,
bug tracking, software feature requests, task management, continuous integration, and
wikis for every project.
Chapter four: Ecommerce website project

4.1 Situation Analysis

4.1.1: Introduction

Situation analysis is basically a methodical look at the internal and external factors influencing
your business at any given moment. These factors might include customers, competitors, the
market environment, and your business’s capabilities. By examining these elements of your
business and its environment, you can identify strengths and weaknesses as well as potential
areas of growth.

4.1.2.: Best practices of ecommerce website

According to Forbes[1] the following are the best practices to design ecommerce websites.
➢ Consistent branding
The first step in ecommerce website design is to have consistent branding on both your physical
location and digital channels. This allows your customers to have consistent experience.
Clearly display your logo on your home page. If you use a template for your website design,
customize it to match your branding by selecting the same colors and fonts that you use on items
like your business cards or shopping bags.
➢ Clean design
When designing your homepage less is more. It could look good to have more text or photo
contents in your home page, but that approach can overwhelm your visitors.
Think of your homepage as your storefront. You wouldn’t put everything you sell in the front
window, right? Instead, engage and entice customers by using a few words or sentences that
convey your most important message paired with striking graphics.
➢ High-quality photos
Using high quality photos helps your users to see the products clearly. Studies[3] show that 75%
of customers said that a good photo influences them whether to make a purchase or not and 20%
of customers return a product because they think the image and the product does not look the
same.
Therefore it is recommended to use good photo qualities to your website. If you can not take
high quality photo it is recommended to use professional to take photos photos for your product
➢ Intuitive navigation
Putting things where users expect them to be is very important for your online store success.
Because this helps your users to find what they want easily, make the buyer's journey without
disruption.
The following are best practices for intuitive navigation
● Make sure your navigation bar is easy to find with a predictable position, such as in the
header, top left or right corner, or as a sidebar.
● Use sharp color contrast to improve visibility
● Use easy to understand navigation bar titles
Responsive design
Google’s research[2] found that as page load time goes from one second to 10 seconds, the
probability that a visitor on a mobile site will click away increases by 123%.
Responsive design allows your website to load across all clients (eg. pcs, smart phones) without
the user pinching the webpage to fill its screen.
Improve your load time by paying attention to the size of your website images. While retina
devices boost clarity, large image files also slow them down, and a few seconds delay could
distract visitors.

4.1.2: Ecommerce website Internal factors

The online purchase decision is highly influenced by internal and external factors (Zhang et al.,
2013). Internal factors reflect one’s personal traits and experiences which impact their
decision-making approach towards online buying and even leads to impulsive buying.
The following are the most important internal factors that influence online shopping.

➢ Ease of use
E-commerce companies provide a wide spectrum of products with multiple options keeping in
mind the expectations of the consumers (Gong et al., 2013). The fact that consumers are able to
have the option of selecting from a wide spectrum of products or services at the comfort of home
is a huge advantage that influences the online purchase decision. Consumers also have the luxury
of selecting the payment mode and in some cases, try the products before paying. For example,
retail giant Amazon offers a “try before you buy” option which caters to the current expectation
of the consumers (Amazon, 2019). There is a growing dependency on online shopping due to the
ease of use of the online medium.

➢ Personal experience
The user’s previous experience with the e-tailer also influences current purchase decisions (Wu,
2013). If the consumers have a good experience with a specific e-commerce firm then it
influences the online purchasing behavior and on the contrary. The essence of the feel-good
factor is required to impact online purchase decisions in a positive way.
➢ Personal traits
Personal traits include attitude, self image and perception of consumers.
➢ Personal attitude: represents customers believe on having feel good factor prior
purchasing
➢ Self-image: illustrates the image that the individual carries and what they think about
themselves when it comes to online shopping.
➢ The perception of the consumers also holds significant value as it is going to influence
their online purchasing decision
➢ Time management
It is one of the internal factors which influence the online purchasing decision. If the consumers
face a paucity of time then they are likely to opt for online shopping for their required products
or services (Gong et al., 2013). On the other hand, if they are not bound by any time constraints
they might select both brick and mortar outlets and online shopping. This internal factor is highly
influenced by how consumers manage their time.

4.1.3: External factors influencing online purchase decision

On the other hand, external factors are more controlled by the nature of the products or services,
recommendations and reviews from other customers, cultural and social impact.

➢ Service quality
A consumer is attracted to a particular product or service on the basis of its quality and the price
bracket it comes within (Malik & Guptha, 2013). If the customers think the quality of the product
is not their probability of buying a product is very low.

➢ Easy payment options


This is one of the most important external factors that influences customer online purchasing
options. Payment options have been never so easy with e-commerce firms adapting different
strategies regarding payment options such as cash on delivery (COD), EMI options, payment
through net banking, lazy pay options etc (Wu et al., 2014).

➢ Easy accessibility
If consumers purchase a product in person, they have to stand in a queue. But using online
shoping With a few clicks, consumers are able to get a wide variety of goods and services on
their doorsteps. This easy accessibility option facilitated by the majority of e-commerce firms
has been a key driving factor towards online purchasing (Chocarro et al., 2013).

➢ Other consumer reviews and recommendations

The reviews, ratings and recommendations of other consumers on a particular product or service
also influence the buying decision (Jiménez & Mendoza, 2013). Feedbacks from other
consumers help to get a general view of the quality of the products or services which impacts the
decision-making process. On the other hand, reviewing thousands of comments and feedback
takes a huge amount of time and can be confusing at times.

4.2: Problem Statement

Traditionally if you want to buy something you have to go to the shop center to get the product
you want to purchase. But nowadays it is very difficult purchasing things this way. Some of the
reasons that makes shopping things difficult are
➢ it waste a lot of customers time to find the product they want to purchase
➢ It is difficult to sell variety products on one place
➢ Limited accessibilty
This online shopping store will solve the above problems

4.3: Objective

The main objective of this project is to develop an ecommerce website which is a website that
allows people to buy and sell physical goods, services, and digital products over the internet
rather than at a brick-and-mortar location
6.4: Significance
Nowadays most people have internet access therefore transitioning business to the digital world
is very important due to the following reasons.
➢ It increases the company's clients because people from different region can see your
products simply on the internet
➢ Customers can purchase products from home using their smartphone or pc
➢ You can sell wide Range of Products which is difficult for offline shoping
➢ It helps your expand your brand

4.5: Scope

The project will have the following scopes


➢ Interactive front end user interface: The project will have interactive user interface for
both client and admin users.
➢ Backend server: logic to add functionality to the user interface and a database that stores
user data.
➢ The designed web application should be responsive, i.e it should work on multiple screen
size

4.6: Technology used for this project

I use the following technologies to develop this online shop project


➢ Back end technologies: Django framework with builtin sqlite database which
comes by default with django framework
➢ Front end web technology: CSS and HTML
➢ Python programming language for back end programming
6.7: Project Functionality

The project has both administrative and customer interfaces. An admin is an individual who
manages the website. Customer is an individual who visit our website and purchase products

6.7.1: Customer Interface:


➢ Customer can view products available for sale without logging or signing up
➢ Customer can search by category of products
➢ Customer can add item to cart
➢ Customer changes quantity in the cart
➢ Customer can sign up to
Checkout products- to send the products to the admin of the website
views the content he/she added to the cart
Customer can check whether his/her order is accepted by the admin

4.7.2: Admin Interface


➢ Admin logs in
➢ Admin inserts, remove and modify products
➢ Admin accept or reject customer order
➢ Admin can add other people as other a admin users

4.8: Project design pattern

To implement the above functionalities of the ecommerce website I use django MVT
(Model-View-Template) architecture. MVT is a software design pattern for developing a web
application. The over structure of the django web framework looks like the following figure
Django Design pattern

4.8.1: Model:

The model is going to act as the interface of your data. It is responsible for maintaining data. It is
the logical data structure behind the entire application and is represented by a database (generally
relational databases such as MySql, Postgres). Django models are used to create relational
database tables. Django models are python classes that inherit the django.models module of
django web framework.
Generally each django model is translated into a single database and properties of the class
become the data field of the database.
Based on the functional requirement of our document the use case and er diagram for both an
admin and customer(user) looks the following.
User ER diagram.

➢ Customer model(table): has customer_id, and customer name, email, password, address
and contact with customer id primary key.
➢ Product: Is what we want to cell in our website and has product id, description and
images as field with product_id primary key
➢ Order- is what a user wants to purchase from the website with Invoice primary key and
both product_id and customer_id as foreign keys. Order has foreign key means each
order is associated with the customer and product.
Admin ER diagram
➢ Category: represents the category of products that the user may purchase from our online
shop
➢ Admin: is built in interface provided to as by django framework
➢ Each product has a category hence category_id is foreign key for product
Both the above admin and customer ER diagrams relations are coveted to relational database
tables using the django django model built in class.

4.8.2: Template:

A template consists of static parts of the desired HTML output as well as some special
syntax describing how dynamic content will be inserted.
A template in Django is basically written in HTML, CSS, and Javascript in a .html file. Django
framework efficiently handles and generates dynamically HTML web pages that are visible to
the end-user. Django mainly functions with a backend so, in order to provide a frontend and
provide a layout to our website, we use templates.
What is HTML:
➢ stands for HyperText Markup Language
➢ Is the standard markup language for creating Web pages
➢ Describes the structure of a Web page
➢ Consists of a series of elements
➢ Elements tell the browser how to display the content
➢ Elements label pieces of content such as "this is a heading", "this is a paragraph", "this is
a link", etc.
What is CSS?
➢ CSS stands for Cascading Style Sheets
➢ CSS describes how HTML elements are to be displayed on screen, paper, or in other
media
➢ CSS saves a lot of work. It can control the layout of multiple web pages all at once
➢ External stylesheets are stored in CSS files
Additional syntax: The additional syntax in our templates allows us to include data dynamically
to our website.
Template created for this project
➢ Base_generic.html - consists comment static template for all our webpages
➢ Car.html
➢ Index.html - for home page
➢ Login.html
➢ Signup.html
➢ Search.py
➢ orders.html

4.8.3 views:

Are python functions or classes that take httprequest request as an argument and return web
response . This response can be the HTML contents of a Web page, a redirect, a 404 error, an
XML document, an image,or anything that a web browser can display.
Views created for this project
➢ Cart.py - To manage our cart
➢ Home.py - for our homepage of our website
➢ Order.py - for the order made by the user
➢ Login.py - For customer login
➢ Checkout.py - To manage how the user can send data to an admin

4.9: Screenshot of the ecommerce website


Home page

Customer login page


Customer signup page

Cart
Admin
Chapter five: Conclusion and Recommendations

5.1: conclusion:

The whole experience of working as an intern at Farka ICT Solution was a very good experience.
This organization provides high quality services to its customers and its employers have a very
good work culture, great minds and they always try to develop better solutions for their
customers.
From the internship I learned a lot about how to apply real world problems and how I can create
connections with other professionals in the field of computer engineering. I also learned how to
make decisions and take responsibility for things I do in my life

5.2: Recommendation
➢ For Addis Ababa Science and Technology university: the programs should focus on
practical knowledge. Students should focus on projects that can solve real world
problems.
➢ For Farka ICT Solution: They can use django framework for their software solution
because django is
● It’s fast and simple
● It’s secure
● It suits any web application project
● It’s well-established
References:

1. forbes ecommerce website best practices


:https://www.forbes.com/sites/square/2020/11/24/6-best-practices-for-ecommerce-websit
e-design/?sh=250b04336b7f
2. Find out how you stack up to new industry benchmarks for mobile page speed
:https://www.thinkwithgoogle.com/marketing-strategies/app-and-mobile/mobile-page-spe
ed-new-industry-benchmarks/
3. https://www.weebly.com/inspiration/online-store-product-photography/
4. Amazon, 2019. Try before you buy with Prime Wardrobe. [Online] Available at:
https://www.amazon.com/primeinsider/tips/prime-wardrobe.html [Accessed 16 February
2019].
5. Asosplc, 2019. CORPORATE RESPONSIBILITY. [Online] Available at:
https://www.asosplc.com/corporate-responsibility/our-customers [Accessed 16 February
2019].
6. Chen, J., Teng, L., Yu, Y., & Yu, X. 2016. The effect of online information sources on
purchase intentions between consumers with high and low susceptibility to informational
influence. Journal of Business Research, 69(2), pp.467-475, doi:
10.1016/j.jbusres.2015.05.003.
7. Chocarro, R., Cortiñas, M., & Villanueva, M.L. 2013. Situational variables in online
versus offline channel choice. Electronic Commerce Research and Applications, 12(5),
pp.347-361, doi: 10.1016/j.elerap.2013.03.004.
8. Gong, W., Stump, R.L. & Maddox, L.M.., 2013. Factors influencing consumers’ online
shopping in China. Journal of Asia Business Studies, 7(3), pp.214-230, DOI:
10.1108/JABS-02-2013-0006.
9. Gong, W., Stump, R.L., & Maddox, L.M. 2013. Factors influencing consumers’ online
shopping in China. Journal of Asia Business Studies, 7(3), pp.214-230, DOI:
10.1108/JABS-02-2013-0006.
10. Jiménez, F.R., & Mendoza, N.A. 2013. Too popular to ignore: The influence of online
reviews on purchase intentions of search and experience products. Journal of Interactive
Marketing, 27(3), pp.226-235, DOI: 10.1016/j.intmar.2013.04.004.
11. Malik, G., & Guptha, A. 2013. An empirical study on behavioral intent of consumers in
online shopping. Business Perspectives and Research, 2(1), pp.13-28, doi:
10.1177/2278533720130102.
12. Wired, 2019. TRY ON YOUR NEXT PAIR OF GLASSES USING JUST YOUR IPHONE.
[Online] Available at: https://www.wired.com/story/warby-parker-augmented-reality-app/
[Accessed 16 February 2019].
13. Wu, L. 2013. The antecedents of customer satisfaction and its link to complaint intentions
in online shopping: An integration of justice, technology, and trust. International Journal
of Information Management, 33(1), pp.166-176, DOI: 10.1016/j.ijinfomgt.2012.09.001.

You might also like