0% found this document useful (0 votes)
38 views37 pages

apparant

Uploaded by

gosaye.woyo
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
38 views37 pages

apparant

Uploaded by

gosaye.woyo
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 37

ADDIS ABABA SCIENCE AND

TECHNOLOGY UNIVERSITY

College of Electrical and Mechanical Engineering

Department of Electrical and Computer Engineering

Internship Project Report on Design and Implementation of a Store


Management System

Prepared by:
Name ID No

Gosaye Woyo Ets 0558/13

Habib Awel Ets 0561/13

Supervisors:

[University Supervisor Name:Dr.Zelalem]

[Industry Supervisor Name:Daniel Asefw]

Submitted to Addis Ababa Science and Technology University, Department of


Electrical and Computer Engineering (Computer)
September 30, 2024
Addis Ababa, Ethiopia
Acknowledgment

We would like to express our heartfelt gratitude to our God and everyone involved in the
internship program, especially ASTU and the Department of Electrical Engineering. We
particularly thankful to those who supported us throughout this journey, helping us
identify and correct our mistakes. We want to extend a special thanks to Zelalem, our
advisor Daniel Asefw, our industry supervisor, and our industry team Berkat. Your
guidance and support have been invaluable. Thank you all so much!

1
Abstract

This internship report details a three-month program at ASTU, during which We gained
valuable experience in a company setting. The focus of our project was to develop a
store management system aimed at addressing inventory tracking and management
challenges. This was prompted by the need for improved efficiency in managing stock
levels and minimizing losses due to overstocking .

To tackle these issues, we employed a systematic approach that included analyzing


existing workflows, gathering requirements, and implementing a user-friendly software
solution. The project involved designing a database, developing a user interface, and
conducting testing to ensure functionality and reliability. Through this experience, I
learned the importance of collaboration, problem-solving, and adaptability in a
real-world context.

The implications of this project are significant, as it highlights the potential for
technology to enhance operational efficiency in inventory management. By providing a
practical solution to common problems faced by businesses, this project underscores the
importance of integrating innovative systems into traditional practices for improved
performance and sustainability.

Keywords: internship, store management system, inventory management, efficiency,


technology integration

2
Table of Content

Acknowledgment .................................................................................................................1
Abstract ............................................................................................................................... 2
Chapter One .........................................................................................................................5
Background of the company .........................................................................................5
1.1 Brief History ....................................................................................................5
1.2 Main Products and Services ............................................................................ 5
1.3 Main Customers or End Users .........................................................................6
1.4 Overall Organization and Workflow ...............................................................7
Chapter Two ........................................................................................................................ 9
Overall Internship Experience ......................................................................................9
2.1 Work Section and Workflow ...........................................................................9
2.2 Work Tasks Executed ....................................................................................11
2.3 Procedures and Methods Used ...................................................................... 11
2.4 Challenges Faced ...........................................................................................13
2.5 Measures Taken to Overcome Challenges .................................................... 14
Chapter Three .................................................................................................................... 15
Design and Implementation of Store Management System ....................................... 15
3.1 Short Summary of the Project ....................................................................... 15
3.2 Problem Statement & Justification ..............................................................15
3.3 Objective of the Project .................................................................................16
3.4 Literature Review .......................................................................................... 16
3.5 Methodology ................................................................................................. 17
3.6 Access Control and Security ......................................................................... 25
3.7 Results & Discussion ...................................................................................26
Chapter Four ......................................................................................................................27
Overall Internship Achievements and Experiences ....................................................27
4.1 Upgrading Theoretical Knowledge ............................................................... 27
4.2 Improving Practical Skills ............................................................................. 28
4.3 Enhancing Problem-Solving Capabilities ..................................................... 29
4.4 Improving Teamwork Skills ..........................................................................29
4.5 Developing Leadership Skills ....................................................................... 30
4.6 Understanding Work Ethics .......................................................................... 31
4.7 Gaining Entrepreneurship Skills ................................................................... 31
Chapter Five ...................................................................................................................... 32
Conclusion & Recommendation ................................................................................ 32
5.1 Conclusion .....................................................................................................32
5.2 Recommetions ............................................................................................... 33
Referance...........................................................................................................................35

3
List of Figures
Figure 1: web development path……………………………………………….13
Figure 2 : Entity-Relationship Diagram…………………………………..…….18
Figure 3: Use Case Diagram…………………………………………………..…19
Figure 4: Sequence Diagram……………………………………………………..20
Figure 5: Activity Diagram………………………………………………………21
List of Tables
Table 1: User Roles and Permissions……………………...…………………………….23
List of Abbreviations
 API: Application Programming Interface
 DB: Database
 UI: User Interface
 REST: Representational State Transfer
 CRUD: Create, Read, Update, Delete
 HTML: Hypertext Markup Language
 CSS: Cascading Style Sheets
 SQL: Structured Query Language
 Django: A high-level Python web framework
 HTTP: Hypertext Transfer Protocol
 JSON: JavaScript Object Notation
 NPM: Node Package Manager
 Node.js: JavaScript runtime built on Chrome's V8 engine

4
Chapter One

Background of the company

1.1 Brief History

Adama Science and Technology University (ASTU) was first established in 1993 as
Nazareth Technical College (NTC), offering degree and diploma level education in
technology fields. Later, the institution was renamed as Nazareth College of Technical
Teacher Education (NCTTE), a self-explanatory label that describes what the institution
used to train back then: candidates who would become technical teachers for TVET
colleges/Schools across the country. Currently, ASTU is setting up a Research Park, in
collaboration with stakeholders and other concerned bodies: one of a kind in Ethiopia
context. The university is also venturing out to the wider community and is currently
engaged in various joint undertakings. mission
vision
ASTU aspires to be the first choice in Ethiopia
and the premier center of excellence in applied
science and technology in Africa by 2030.
mission
M1: Produce ethical and internationally competent graduates in
applied sciences through quality education.
M2: Conduct problem solving research in sciences and related
disciplines.
M3: Provide demand driven community service.
M4: Serve as center for innovative knowledge and technology
transfer.

1.2 Main Products and Services

5
Adama Science and Technology University (ASTU) provides a variety of educational
programs and services aimed at fostering innovation and practical skills in its students
and give the following services
 Engineering Programs: Including Electrical, Mechanical, Civil, and Software
Engineering, which equip students with technical skills essential for designing and
implementing systems

 Computer Science and Information Technology: These programs focus on


software development, databases, and systems analysis, directly applicable
 Master’s programs in various fields emphasize advanced knowledge and research
skills, fostering innovation in technology and management systems.
 Applied Research Centers: ASTU has established research centers that focus on
technology transfer and innovation. These centers conduct projects that can include
developing solutions for inventory management, supply chain logistics, and other
aspects relevant to store management systems.

 Training Programs: The university offers training and workshops for industry
professionals, often focusing on software tools and management systems, including
those relevant to inventory and store management.
 Consulting Services: ASTU collaborates with local businesses to implement
technological solutions, including custom store management systems tailored to
specific organizational needs

 Internship Opportunities: Students engage in internships that often involve


developing or improving management systems for local businesses, providing
hands-on experience in real-world applications.

1.3 Main Customers or End Users

Adama Science and Technology University (ASTU) serves a diverse range of customers
and end users through its educational programs and services. The primary stakeholders
include

6
 Undergraduate and Postgraduate Students: The primary customers of ASTU
are students seeking higher education in fields such as engineering, computer
science, and technology. They benefit from academic programs that equip them
with the skills needed for future careers.
 Employers: Companies in various sectors, including manufacturing,
telecommunications, and IT, are key users of the university’s graduates. They
rely on ASTU to provide a skilled workforce that can contribute to their
operations and innovations.
 Small and Medium Enterprises (SMEs): Local businesses often collaborate
with ASTU for training, consulting services, and practical solutions tailored to
their specific needs, including store management systems.
 Government Agencies: These entities utilize ASTU's research outputs and
technical expertise to inform policy decisions and develop programs aimed at
technological advancement and economic development.
 Non-Governmental Organizations (NGOs): NGOs may engage with ASTU
for research and training initiatives that address community needs, including
sustainable development and capacity building.
 Collaborating Universities and Institutions: ASTU partners with various
international educational institutions for research projects, faculty exchange, and
student programs, enhancing its global footprint and collaborative efforts.

1.4 Overall Organization and Workflow

Adama Science and Technology University (ASTU) features a structured organizational


framework designed to facilitate effective governance, academic excellence, and
operational efficiency. The university's structure comprises several key departments and
units, each with specific functions contributing to the institution's overall mission.
Administration
University President's Office: Provides leadership and strategic direction for the
university. Responsible for overall governance and policy-making.
Vice Presidents: Oversee specific areas such as academic affairs, research and
community engagement, and administration and finance.

7
Academic Departments
Engineering Departments: Include Electrical, Mechanical, Civil, and Software
Engineering. These departments focus on delivering high-quality education, conducting
research, and engaging with industry partners.
Natural Sciences(Applied): Offers programs in disciplines like Physics, Chemistry, and
Computer Science, emphasizing theoretical foundations and applied research.
Research and Development Centers
Applied Research Centers: Focus on innovative projects that address real-world
challenges, facilitating collaboration between faculty, students, and industry stakeholders.
Technology Transfer Office: Promotes the commercialization of research findings,
ensuring that innovations developed at the university benefit society and the economy.
Support Services
Library Services: Provides access to academic resources, research materials, and study
spaces, supporting students and faculty in their educational pursuits.
Student Affairs Office: Manages student services, including counseling, career
development, and extracurricular activities, ensuring a well-rounded student experience.
Information Technology Services: Supports the university's IT infrastructure, ensuring
access to digital resources and technological tools for faculty and students.
Community Engagement
Outreach Programs: Collaborate with local businesses and organizations to provide
training, workshops, and consulting services, enhancing community relations and
practical learning opportunities for students.
Workflow
The workflow at ASTU is designed to promote collaboration and efficiency across
departments:
 Academic Program Delivery: Departments develop curricula and coordinate
teaching schedules, ensuring that students receive a comprehensive education.
Faculty members engage in research while also delivering lectures and
mentoring students.

8
 Research Initiatives: Faculty and students collaborate on research projects,
often with industry partners. The results of these projects are disseminated
through publications, conferences, and community outreach.
 Administrative Functions: The administrative office coordinates budget
planning, resource allocation, and policy implementation, supporting the
academic and operational needs of the university.
 Student Services: The Student Affairs Office manages admissions, student
orientation, and support services, facilitating a smooth transition for students and
enhancing their overall experience.

 Feedback Mechanism: Regular assessments and evaluations are conducted to


gather feedback from students, faculty, and industry partners, ensuring
continuous improvement in programs and services.

Chapter Two

Overall Internship Experience

2.1 Work Section and Workflow

During our internship at Adama Science and Technology University, We worked in the
Software Development section. This area focuses on creating, maintaining, and
improving software applications that serve various academic and administrative functions
within the university. The team is dedicated to developing solutions that enhance
operational efficiency and support educational activities.

Workflow in the Software Development Section

1. Project Initiation:

9
 Requirement Gathering: The process begins with meetings involving stakeholders,
including faculty members and administrative staff, to identify software needs. This
may include developing new applications or enhancing existing systems.

 Feasibility Study: After gathering requirements, a feasibility study is conducted to


assess the project's viability in terms of technical and financial aspects.
2.Planning:
 Project Planning: The team develops a project plan outlining timelines, resource
allocation, and milestones. This plan ensures everyone is aligned on project goals
and deliverables.

3.Design:

System Design: The team creates design documents that outline the software architecture,
database schema, and user interface (UI) components. This phase includes creating
diagrams, such as Entity-Relationship Diagrams (ERDs) and Use Case Diagrams, to
visualize system interactions.

4.Development:

 Coding: Developers begin writing the code based on the design specifications. The
software is developed in iterations, following agile methodologies to allow for
flexibility and continuous improvement.
 Version Control: All code is managed using version control systems (e.g., Git),
enabling collaborative work and tracking changes.

5.Testing:

 Quality Assurance: Once a module is developed, it undergoes rigorous testing,


including unit testing, integration testing, and user acceptance testing (UAT). This
ensures that the software functions as intended and meets user requirements.
 Bug Fixing: Any identified issues are addressed promptly, and the software is
re-tested until it meets the quality standards

10
6.Documentation:

 User Manuals and Technical Documentation: Throughout the project,


documentation is created to guide users and future developers. This includes user
manuals, API documentation, and technical specifications.

2.2 Work Tasks Executed

During our internship, we were responsible for several key tasks related to the store
management system, including:
 Developing User Interfaces: Designed and implemented user-friendly
interfaces for various functionalities, including transaction requests, store
management, and employee profiles.
 Database Management: Assisted in managing and optimizing database queries
to ensure efficient data retrieval and storage for products, employees, and
transaction requests.
 Role-Based Access Control: Implemented role-based permissions to ensure that
only authorized users (managers, storekeepers, and admins) could access certain
functionalities.
 Testing and Debugging: Conducted thorough testing of the system features to
identify and resolve bugs, ensuring a smooth user experience.
 Documentation: Created and updated documentation for the system's features
and functionalities, which included user guides and technical specifications.
 Collaboration: Worked closely with team members to brainstorm ideas for new
features and improvements, actively participating in code reviews and
discussions.
 User Training: Assisted in training sessions for staff on how to use the new
system effectively, gathering feedback for further enhancements.

2.3 Procedures and Methods Used

11
During our internship in the Software Development section at Adama Science and
Technology University, We followed a structured approach to execute our tasks
effectively. The methodology encompassed various design and implementation phases,
ensuring that the project met the requirements and functioned smoothly. Below is a
detailed description of the steps they took:

1. Entity-Relationship Diagram (ERD) Design: The first step was to visualize the
database structure and relationships between entities involved in the store management
system.It utilized diagramming tools like draw.io to create the ERD.

2. Normalization to Tables: Based on the ERD, they normalized the data to eliminate
redundancy and ensure data integrity. This involved transforming the ERD into
normalized relational tables. They created a detailed schema that included table names,
columns, data types, and relationships (primary and foreign keys) for easy reference
during implementation.

3. Use Case Design:they identified key actors, such as store managers, employees, and
customers, and outlined their interactions with the system.
4. Sequence and Activity Diagrams: they created sequence diagrams to detail the
interactions between various components of the system for specific use cases,
highlighting the order of operations.
5. Implementation: We selected Python and Django for back-end development due to
their robust frameworks and ease of use. For the front-end, I utilized HTML, CSS, and
JavaScript to create a responsive and user-friendly interface.
Development Process:
 Setting Up the Environment: Configured the Django environment and created
the project structure.
 Database Integration: Implemented the normalized tables in Django models,
ensuring relationships matched the original design.
 Frontend Development: Created views and templates using HTML and CSS,
incorporating JavaScript for dynamic interactions and improved user experience.

12
HTML: The html language was designed to an effective way of achieving
this transferring of data and was designed to be evolving as new media
format was created. We use html to develop our statically parts of our code.
Javascripts: JavaScript is very interesting language used to validate data
and develop different messages. We use it to validate our data which we use
in html code.
CSS: useful for decoration like hovering, active, list.

Figure 1.1: web development path

2.4 Challenges Faced

Throughout our internship in the Software Development section at Adama Science and
Technology University, We faced several challenges that impacted Our workflow and
learning experience. Below are the key challenges We encountered, along with how they
affected our work
 Understanding Complex Requirements: Initially, We struggled to fully grasp some
of the complex requirements from stakeholders, particularly regarding specific
functionalities of the store management system.
 Time Management:Balancing multiple tasks, including design, coding, and
documentation, proved to be challenging, especially when deadlines approached.

13
 Technical Hurdles with Frameworks: While working with Django, We
encountered technical hurdles related to configurations and integrations, especially
with the database setup and front-end interactions.
 Testing and Debugging: Testing the software thoroughly was more time-consuming
than anticipated, particularly in identifying and fixing bugs related to user
interactions and data handling.
 User Feedback Implementation: Gathering and implementing user
feedback after initial testing sessions proved to be challenging, as some
users had differing opinions on desired features.

2.5 Measures Taken to Overcome Challenges

During our internship at Adama Science and Technology University, We


encountered several challenges that required thoughtful strategies to overcome.
Below are the key challenges We faced along with the specific measures We
implemented to address them effectively.
 Improved Communication:We organized regular follow-up meetings with
stakeholders to clarify requirements and gather detailed feedback.During these
meetings, We employed techniques such as active listening and summarizing their
inputs to ensure mutual understanding.
 Task Prioritization: We adopted a prioritization framework (such as the Eisenhower
Matrix) to distinguish between urgent and important tasks, allowing me to focus on
high-priority items first.
 Leverage Resources: We engaged in extensive research through online
documentation, forums, and community discussions (such as Stack Overflow) to
troubleshoot issues We encountered with Django and integrations.
 Systematic Testing Approach: I developed a testing plan that included unit tests,
integration tests, and user acceptance tests (UAT) to cover all critical functionalities.
 Structured Feedback Collection :We organized structured feedback sessions, using
surveys and organized discussions to gather user opinions on features and
functionality. This helped in prioritizing user needs effectively.

14
Chapter Three

Design and Implementation of Store Management


System

3.1 Short Summary of the Project

The project is a comprehensive store management system developed using Django,


designed to streamline transaction handling, inventory management, and user
management in a retail environment. It allows users to submit transaction requests, which
are reviewed by store managers, with automated email notifications keeping stakeholders
informed about request statuses. The system features robust user authentication,
differentiating roles like managers and storekeepers to control access. Additionally, it
facilitates the management of stores and employees while ensuring inventory levels are
maintained and requests do not exceed stock. By automating processes and enhancing
communication, the system increases efficiency and user experience, making it a vital
tool for retailers to effectively manage operations and support informed decision-making.

3.2 Problem Statement & Justification

The company faced several specific challenges that necessitated the development of a
store management system. Firstly, manual processes for transaction requests and
inventory management led to inefficiencies, resulting in delayed responses to customer
needs and potential stock discrepancies. The lack of a centralized system made it difficult
for store managers to monitor transactions, assess inventory levels, and communicate
effectively with employees. Additionally, with multiple stores operating simultaneously,
inconsistent record-keeping increased the risk of errors and mismanagement.

Implementing a store management system is crucial as it addresses these issues by


automating transaction requests, enhancing inventory tracking, and ensuring real-time
communication between employees and management. This project not only improves

15
operational efficiency and accuracy but also empowers the company to deliver better
customer service, ultimately driving growth and profitability. By streamlining workflows
and providing valuable insights into operations, the system positions the company to
adapt to market demands more effectively.

3.3 Objective of the Project

3.3.1. General Objective

The general objective of this project is to develop automated system in order to eradicate
the manual Store management system of ASTU

3.3.2. Specific objective:

The specific objectives of our project are:-.


 Register resources:The proposed system registers all the resources that are entered
to the organization.
 Send request:The request sent from Head of colleges to get any service from the
store.
 Register Salvage resource: To register resources such as computers, furniture’s and
others. It helps to know the number of resources that are used and returned to the
store.
 Update Resources Data: It updates the resource information when needed.
 Search resource Data: To search resource data within short period of time.
 Generate report: To generate monthly as well as yearly report

3.4 Literature Review

The literature on store management systems emphasizes the importance of automation


and data-driven decision-making in retail operations. Existing solutions often incorporate
modules for inventory management, transaction processing, and customer relationship
management (CRM), highlighting the need for integration across various functions.

16
Methodologies such as Agile development and user-centered design are prevalent,
ensuring that systems are adaptable and meet user needs effectively.

Key studies reveal that automation significantly reduces operational costs and improves
accuracy in inventory tracking, as demonstrated by platforms like Shopify and Square,
which offer comprehensive solutions for small to medium-sized enterprises. Additionally,
research indicates that implementing real-time data analytics can enhance inventory
forecasting and customer insights, leading to better stock management and customer
satisfaction.

Furthermore, literature stresses the role of mobile accessibility and cloud-based solutions,
enabling staff to manage operations remotely and securely. The use of role-based access
controls is also noted as crucial for safeguarding sensitive data while ensuring employees
have the necessary tools to perform their tasks effectively. Overall, these insights inform
the development of a robust store management system that addresses existing gaps in
operational efficiency and user experience.

3.5 Methodology

The design and implementation of the store management system followed a structured
methodology to ensure effective development. The approach included the following key
steps:
Step 1 Requirements Gathering:
Initial meetings with stakeholders were conducted to identify key features and
functionalities needed for the system, such as inventory management, transaction
processing, and user roles.
Step 2 .System Design:
 Entity-Relationship Diagram (ERD): Developed to outline the database structure
and relationships between entities like stores, products, employees, and transactions.

17
Figure 2: erd
Conversion of Entity-Relationship Diagram (ERD) to Table

18
when translating an Entity-Relationship Diagram (ERD) into database tables:
 Entities in the ERD should correspond to tables in the database, with attributes
 Each table should have a primary key to uniquely identify rows.
 Relationships between entities are represented using foreign keys.
 Normalize the schema to minimize redundancy and ensure data integrity.
 Follow naming conventions for consistency and clarity.
 Apply constraints and indexes to enforce rules and optimize
performanc

Use Case Diagrams: Created to visualize user interactions and system


functionalities, ensuring all user requirements were captured.

19
Store Management System
Store Management System

Request Transaction

User

Notify Stock Levels

Manage Inventory

Storekeeper

View Transaction History

Reject Transaction Request

Manager
Approve Transaction Request

Set Work Schedules

Generate Inventory Reports

Admin Manage Users

Generate Sales Reports

Sequence and Activity Diagrams: Used to map out workflows and processes within the
system, facilitating a clearer understanding of user interactions.

20
21
Step 3 :Technology Stack:
 Backend: Python with Django framework was chosen for its robustness and
scalability, allowing for rapid development and efficient handling of database
interactions.
 Frontend:
HTML: The html language was designed to an effective way of achieving this
transferring of data and was designed to be evolving as new media format was
created. We use html to develop our statically parts of our code.
Javascripts: JavaScript is very interesting language used to validate data and
develop different messages.
CSS: useful for decoration like hovering, active, list.
While Django’s secure framework and extensive library ecosystem provided an ideal
solution for managing user and product information in our project, our team conducted
research to explore alternatives that offer a more modular and less monolithic architecture.
In this exploration, we identified Node.js as a promising candidate due to its
non-blocking, event-driven nature, which is highly efficient at handling a large number of
conscurrent connections. This characteristic is particularly advantageous for scenarios
involving real-time data processing and I/O-intensive operations. Motivated by the
potential benefits in performance and scalability, we decided to prototype the backend
using Node.js. This allowed us to demonstrate how the system could be optimized for
high concurrency use cases, offering a comparative perspective to the traditional Django
approach.
User centered Design
Mongo DB database is used For storing user profiles with different levels of detail,
preferences, and activity logs, MongoDB provides flexibility without the need for
predefined schemas.
MongoDB is optimized for read-heavy operations and can handle large volumes of
unstructured or semi-structured data efficiently. This makes it ideal for product catalogs
and user profiles that might include a large variety of attributes.
MongoDB is designed for horizontal scaling, which makes it easier to handle large
datasets and high-throughput workloads. For a system with a growing number of users

22
and products, MongoDB can distribute data across multiple servers, enhancing scalability
and performance.
MongoDB can handle high-speed data ingestion and real-time analytics, which might be
valuable for monitoring user activity and inventory levels.
By Securely hashing password and tokens using bcrypt we create a foundation of trust for
users. Users can feel confident that their personal information is protected from
unauthorized access, which leads to a more positive and stress-free experience.

Software and Tools Used

Mongo DB were used leveraging its document-oriented structure to efficiently store and
manage user information, including passwords, and product details. MongoDB’s flexible
schema allows for easy adaptation as the system grows, while its scalability ensures
efficient handling of large data volumes. This choice enables fast data retrieval and
dynamic query capabilities, critical for managing user accounts and product inventory in
a real-time Store management system.

The Backend of the project is built using Node.js, leveraging its asynchronous,
event-driven nature for efficient handling of real-time operations. Node.js’s non-blocking
I/O model enables the system to respond swiftly to user interactions, such as product
searches, inventory updates and order processing.

23
Node Package Manager played crucial role in the development. It allowed us to easily
install and manage the various libraries and packages required for the various libraries
and packages required for the project, including Express.js for building the backend API,
MongoDB drivers for database interaction, and other essential modules. This streamed
line the development process, ensuring access to a vast ecosystem of pre-built tools and
functionalities, saving time and effort while fostering code reusability and efficiency.

Insomnia served as the primary testing tool for the Backend API, its intuitive interface
enabled efficient creation and execution of API requests, simulating real-world user
interactions and validating systems functionality. The ability to define and manage
collections of requests, along with its comprehensive response analysis features.
facilitated thorough testing of endpoints and ensured the API’s reliability and robustness.

To ensure data security, bcrypt was employed to hash password before storing them in the
database. This one-way encryption method safeguards against unauthorized access to
sensitive information.
Additionally, tokens generated for frontend connection were also secured and
authenticated communication between the frontend and backend, further strengthening
the system’s security posture.

24
The project utilizes Node mailer, a powerful Node.js library, to facilitate the sending of reset password
emails to users. This allows the system to securely deliver email notifications containing unique
password reset links. By integrating with outlook, a widely used email platform, Node mailer ensures
reliable email delivery to users’ inboxes. This combination provides a seamless and efficient way to
handle password reset requests, enhancing user experience and promoting account security.

Git, a version control system, was used in managing the project codebase. It allowed tracking changes
and easy rollback to previous codes. This ensured code integrity, facilitated efficient teamwork, and
provide a robust system.

3.6 Access Control and Security

The access control and security specifies what the user can access or what the user can do.
This access control is verified by user name and password. The following table shows the
access control of our system

25
Table 1 :user permission table

3.7 Results & Discussion

The implementation of the store management system yielded significant results, aligning
closely with the project's objectives and addressing the identified challenges faced by the
company.`
 Enhanced Inventory Management: The system provided real-time tracking of
inventory levels, which significantly reduced stock discrepancies. Users can now
easily monitor product availability, leading to more efficient restocking processes
 Streamlined Transaction Requests: The project successfully automated the
transaction request workflow, allowing employees to submit requests that are then

26
reviewed and approved by store managers. This has minimized delays and improved
response times, enhancing overall operational efficiency.
 User Access and Roles: By implementing a role-based access control system, the
project ensured that employees could only access functionalities relevant to their
roles. This not only improved security but also simplified the user experience, as
employees could navigate the system without unnecessary clutter.
 Improved Communication: The notification system integrated into the transaction
workflow enabled timely communication between employees, managers, and
storekeepers. Automated email notifications for transaction approvals and rejections
fostered better coordination and accountability.
 User Feedback and Usability: Post-implementation surveys indicated high user
satisfaction, with many appreciating the intuitive interface and streamlined processes.
This feedback was instrumental in identifying areas for future enhancements, such as
mobile access and advanced reporting features.
 Data Insights: The system provided analytical tools that allowed management to
generate reports on sales trends, inventory turnover, and employee performance.
These insights facilitated data-driven decision-making, leading to more strategic
planning.

Chapter Four

Overall Internship Achievements and Experiences

4.1 Upgrading Theoretical Knowledge

The internship significantly deepened my theoretical understanding by bridging the gap


between academic concepts and real-world application. Working on the store
management system allowed us to apply principles from software engineering, database
design, and project management in a practical setting. For instance, We gained hands-on
experience in designing entity-relationship diagrams (ERDs) and translating them into
normalized tables, reinforcing my knowledge of database structure and relationships.

27
Moreover, engaging with technologies such as Django, Python, and front-end
frameworks enhanced my programming skills and understanding of full-stack
development. We learned about the importance of user authentication, role-based access
control, and how these elements contribute to secure and efficient software solutions.’

The collaborative nature of the internship also exposed us to agile methodologies and the
significance of iterative development. Working with a team, We appreciated the value of
feedback loops and continuous improvement, which are crucial for delivering
high-quality software.

4.2 Improving Practical Skills

During Our internship, We developed several practical skills essential for software
development, particularly in design, system integration, and technology application:
 Database Design: We gained hands-on experience in creating entity-relationship
diagrams (ERDs) and normalizing database tables. This skill helped me understand
data relationships and structure, ensuring efficient data storage and retrieval.
 Web Development Frameworks: Working with Django enhanced our skills in
Python programming and web application development. We learned to create models,
views, and templates, effectively implementing the Model-View-Template (MVT)
architecture.
 Front-End Technologies: We became proficient in HTML, CSS, and JavaScript,
allowing me to design user-friendly interfaces. This experience taught me the
importance of responsive design and user experience (UX) principles.
 System Integration: We learned how to integrate different components of the store
management system, including linking the front end with back-end functionalities.
This involved implementing user authentication, role-based access control, and
ensuring seamless data flow.
 Email Notification Systems: We implemented email notification features to inform
users and managers about transaction requests and updates, gaining insight into
asynchronous processing and user communication strategies.

28
 Version Control: Using Git for version control improved my collaborative skills,
enabling me to track changes, manage branches, and collaborate effectively with
team members.
 Problem-Solving and Debugging: We enhanced my problem-solving skills by
troubleshooting issues during development and debugging code, which strengthened
my ability to think critically and find solutions under pressure.

4.3 Enhancing Problem-Solving Capabilities

The internship significantly enhanced my ability to solve real-world problems by


immersing me in a practical development environment where I faced genuine challenges.
Working on the store management system required me to analyze user requirements,
identify bottlenecks in existing processes, and propose effective solutions. This hands-on
experience sharpened my critical thinking skills as We had to troubleshoot issues in real
time, often under tight deadlines.

Collaborating with team members taught me the importance of communication and


teamwork in problem-solving. We learned to gather diverse perspectives and ideas, which
often led to more innovative solutions. For instance, when faced with integrating different
functionalities, We had to research and adapt existing frameworks, enhancing my
adaptability and resourcefulness.

Additionally, We became proficient in debugging and iterating on our work,


understanding that real-world solutions often require multiple revisions and refinements.
This iterative approach not only improved my technical skills but also instilled a mindset
geared toward continuous improvement and resilience.

4.4 Improving Teamwork Skills

Our experiences working in teams during the internship were invaluable for our personal
and professional growth. Collaborating with diverse individuals allowed us to appreciate
different perspectives and skill sets, which enriched our problem-solving processes.We

29
learned the importance of clear communication, especially when discussing technical
concepts, as it ensured everyone was on the same page and facilitated smoother
workflows.

Participating in team meetings helped us develop Our ability to articulate ideas and
provide constructive feedback. We realized that listening is just as crucial as speaking;
understanding our teammates' viewpoints often led to better solutions. Additionally,
sharing responsibilities taught us about accountability and the significance of each
member’s contributions toward our common goals.

Working in a team environment also exposed us to conflict resolution strategies. When


disagreements arose, We learned to navigate them diplomatically, focusing on finding
compromises rather than getting bogged down by personal differences. This experience
strengthened my interpersonal skills and fostered a sense of camaraderie that made our
collective achievements even more rewarding.

4.5 Developing Leadership Skills

Here are a few examples of leadership roles and initiatives that might resonate:

 Group Projects: In school or work settings, We often took the lead in group projects,
organizing tasks, setting deadlines, and ensuring everyone was on the same page.
This helped streamline our efforts and improve overall collaboration.

 Mentorship: I’ve mentored new team members, guiding them through processes and
helping them acclimate to the team culture. This not only supported their growth but
also strengthened the team as a whole.

 Community Initiatives: Participating in or leading community service projects,


such as organizing food drives or clean-up events, allowed me to mobilize others
around a common cause and make a positive impact.

30
 Workshops and Training: We’ve facilitated workshops to share knowledge on
specific topics, encouraging participation and fostering a collaborative learning
environment.

 Crisis Management: During challenging situations, We’ve stepped up to coordinate


responses, keeping communication clear and ensuring that everyone knew their roles
to navigate the situation effectively.

4.6 Understanding Work Ethics

During our internship, We gained a profound understanding of the importance of work


ethics and professionalism. Adhering to strong ethical standards meant being accountable,
reliable, and transparent in all my actions. We learned that meeting deadlines,
communicating effectively, and respecting colleagues’ time and contributions are
fundamental to fostering a positive work environment.

Professionalism also extended to how We presented myself, both in appearance and in


communication. We realized that maintaining a respectful demeanor, even in challenging
situations, reflects not only on me but also on the organization as a whole. This
commitment to professionalism cultivated a sense of trust among my team members and
supervisors.

Additionally, We understood that ethical decision-making is crucial in navigating


workplace dilemmas. We was encouraged to voice concerns about practices that didn't
align with ethical standards, reinforcing the idea that integrity should guide our actions.
Overall, these lessons in work ethics and professionalism have equipped us with the
principles necessary to thrive in any professional setting, emphasizing that success is not
just about results but also about how we achieve them.

4.7 Gaining Entrepreneurship Skills

During my internship, We gained valuable insights into entrepreneurship and business


operations that have broadened my understanding of how successful businesses function.

31
We observed firsthand the importance of identifying market needs and developing
innovative solutions to address them. This experience highlighted the necessity for
entrepreneurs to remain adaptable and responsive to changes in consumer behavior and
industry trends.

We learned about the critical role of effective management in coordinating various


business functions, from supply chain logistics to customer service. Understanding how
to streamline operations and enhance efficiency is essential for maintaining a competitive
edge. Additionally, We recognized the significance of building a strong company culture
that fosters collaboration, creativity, and accountability among team members.

Financial management also emerged as a key area of focus; We observed how budgeting,
forecasting, and financial analysis directly impact decision-making and long-term
sustainability. This reinforced the idea that sound financial practices are foundational for
growth and stability in any venture

Chapter Five

Conclusion & Recommendation

5.1 Conclusion

Our internship at the company was an invaluable experience that deepened my


understanding of software development and store management systems. We gained
practical skills in designing and implementing solutions, as well as insights into
teamwork and professionalism. The opportunity to work on real-world projects allowed
us to apply theoretical knowledge in a meaningful way, enhancing my problem-solving
abilities and adaptability.

32
5.2 Recommetions

For future interns, We recommend taking advantage of mentorship opportunities and


actively seeking feedback from supervisors to maximize learning. Engaging with
different teams can also provide a broader perspective on the company’s operations.

For the company, investing in more structured on boarding and training programs for
interns could enhance their integration and productivity. Additionally, fostering a culture
of continuous improvement through regular team reviews could streamline processes and
encourage innovation. Implementing a feedback loop between departments could also
help identify areas for collaboration and efficience

33
Reference

1.W.A. Ambler, The Object Primer: Agile Model-Driven Development with UML, 3rd
ed., Ronin International, Inc., Cambridge, MA, 2004.

2.Burleson Consulting, "Oracle Tips," [Online]. Available:


http://www.dba-oracle.com/t_object_database_model.htm. [Accessed: Dec. 11, 2017].

3."Addis Ababa University," [Online]. Available: http://www.au.edu.et. [Accessed: Nov.


20, 2017].

4."Deployment Diagram," Agile Modeling, [Online]. Available:


http://www.agilemodeling.com/artifacts/deploymentDiagram.htm. [Accessed: Nov. 20,
2017].

5."Class Diagram," Agile Modeling, [Online]. Available:


http://www.agilemodeling.com/artifacts/classDiagram.htm. [Accessed: Dec. 18, 2017].

34
35

You might also like