Report 2
Report 2
AN INTERNSHIP REPORT ON
“Dot Net Application (JAIMS)”
Submitted to:
Department of Computer Application
Everest College
Submitted By:
Kushal Dhamala
(TU Reg. No: 6-2-355-1-2019)
(TU Symbol No: 35502006)
May 2024
Certificate of Completion
i
Mentor’s Recommendation from Company
I am writing to highly recommend KUSHAL DHAMALA for any future opportunities in
the field of Technology Solution Nepal Pvt. Ltd As his mentor during his internship at
Technology Solution Nepal, I had the pleasure of working closely with him and observing
his growth and development as a professional.
KUSHAL DHAMALA consistently demonstrated a strong work ethic and dedication to his
work. He was always eager to learn and took on new tasks and challenges with enthusiasm.
He was an asset to our team and made valuable contributions to our projects.
In addition to his technical skills and work ethic, KUSHAL DHAMALA is a highly
personable and collaborative individual. He was able to effectively communicate and work
with team members and stakeholders at all levels. His positive attitude and ability to work
well with others made him a pleasure to work with.
Sincerely,
.........................
Internship Mentor
ii
TRIBHUVAN UNIVERSITY
Everest College
Supervisor’s Recommendation
I hereby recommend that this “Internship Report” prepared under my supervision by Mr.
Kushal Dhamala (Regd. No. 6-2-355-1-2019) in partial fulfilment of the requirements for
the degree of Bachelor in Computer Application is recommended for the final evaluation.
_____________________________
SUPERVISOR
iii
TRIBHUVAN UNIVERSITY
Everest College
LETTER OF APPROVAL
This is to certify that this Internship Report prepared by Kushal Dhamala (Regd. No: 6-2-
355-1-2019) entitled “INTERNSHIP ON JAIMS at Technology Solution Nepal” of
Bachelor in Computer Application has been evaluated. In our opinion it is satisfactory in
the scope and quality as an internship report for the required degree of Bachelor in
Computer Application.
iv
ACKNOWLEDGEMENT
I would like to sincerely thank Tribhuvan University, Faculty of Everest College for
providing the opportunity to carry out this internship project that helps to enhance our
knowledge, stills and capabilities.
I would like to thank “Technology Solution Nepal” for providing me with the opportunity
to be a part of organization as an Intern. I was a great experience to practically learn and
closely observe the organization. It was a great experience to practically learn and closely
observe the organization environment and work culture. I had the greatest opportunity to
share views and ideas with different people in the organization environment and work
culture during my internship period.
I would like to take this opportunity and show my gratitude towards Mr. Babu Ram
Chapagain (Principal) and Mr. Kamal Pathak (BCA Coordinator and Supervisor) for
providing me the necessary guidance and supervision.
I would like to express my greatest gratitude towards Mr. Santu Deula (Project Supervisor,
Technology Solution Nepal) as well as Mr. Dilli Adhikari (Team leader, Technology
Solution Nepal) for providing direction in the intern process, guidance, suggestions and
timely help during the internship period. Finally, I am very much thankful towards all the
teachers, teammates and friends who supported me as well as provided all the facilities for
the successful completion of this report.
Kushal Dhamala
v
ABSTRACT
This report contains the details of the activities carried out during the internship conducted
for the 8week duration. During my tenure as a C# developer intern for both frontend and
backend at Technology Solutions, I provided support to the team for designing simple User
Interface and some backend logics like CRUD operations, implementing, and maintaining
the software. Throughout my internship, I was actively involved in designing the forms
required for the development of the project, backend logic, debugging some bugs in the
project. Apart from enhancing my technical knowledge, my communication and teamwork
capabilities were also sharpened through effective collaboration with other members. I
assisted them in resolving some bugs and implementing the forms in the system as well as
providing the ideas on how the code structure worked in a timely and efficient manner. My
internship also exposed me to the efficient use of the tools in the DotNet Framework as
well as resolving the conflicts while pushing the project into the dev branch. My C#
internship at Technology Solutions was a valuable opportunity that enabled me to develop
practical skills, gain industry knowledge, and appreciate the significance of providing high-
quality and efficient accounting software to individuals and businesses.
vi
Table of Contents
Mentor’s Recommendation from Company ................................................................................. ii
Supervisor’s Recommendation ................................................................................................... iii
LETTER OF APPROVAL................................................................................................................. iv
ACKNOWLEDGEMENT ................................................................................................................. v
ABSTRACT .................................................................................................................................. vi
Table of Contents .......................................................................................................................vii
List of Abbreviations .................................................................................................................. viii
List of Figures ..............................................................................................................................ix
List of Tables................................................................................................................................ x
Chapter 1: INTRODUCTION .......................................................................................................... 1
1.1 Introduction (Introduce the project/work done during internship) ..................................... 1
1.2 Problem Statement............................................................................................................ 2
1.3 Objectives.......................................................................................................................... 3
1.4 Scope and Limitations ........................................................................................................ 4
1.4.1 Scope .......................................................................................................................... 4
1.4.2 Limitations .................................................................................................................. 4
1.5 Report Organization ........................................................................................................... 5
Chapter 2: Introduction to Organization ...................................................................................... 6
2.1 Organization Details ........................................................................................................... 6
2.2 Organizational Hierarchy .................................................................................................... 8
2.3 Working domains of Organization ...................................................................................... 9
2.4 Description about Intern Department/Unit ........................................................................ 9
CHAPTER 3: Background Study and Literature Review................................................................ 10
3.1 Background Study ............................................................................................................ 10
3.2 Literature Review............................................................................................................. 11
CHAPTER 4: INTERN ACTIVITIES ................................................................................................. 12
4.1 Roles and Responsibilities ................................................................................................ 12
4.2 Weekly log (Technical Details of Activities) ....................................................................... 13
4.3 Description of the Project(s) Involved During Interns ....................................................... 18
4.4 Tasks/ Activities Performed .............................................................................................. 19
CHAPTER 5: Conclusion and Learning Outcomes ........................................................................ 20
5.1 Conclusion: ...................................................................................................................... 20
5.2 Learning Outcome ........................................................................................................... 20
References ................................................................................................................................ 21
APPENDIX.................................................................................................................................. 22
vii
List of Abbreviations
viii
List of Figures
ix
List of Tables
x
Chapter 1: INTRODUCTION
Since internships are becoming more widely used as learning tools for students to help fill
the gap between classroom learning and the practice of business, it is important to
understand what aspects of these experiences make them the most worthwhile (P, 2009).
As an intern at “Technology Solution Nepal Pvt.Ltd.” I was given the opportunity to work
with Dotnet a popular platform for writing C# programs. The project I worked on during
my internship was “JAIMS (Jewellery Account and Inventory Management System for
Retailers)” I gained valuable experience and knowledge about how to build desktop
applications and UI efficiently and effectively.
One of the first project I worked on with .Net was a simple CRUD (create, read, update,
delete) application that allowed users to manage records in a database.
My experience working with .Net as extremely positive. The platform made it easy to build
applications quickly and efficiently, and I feel like I gained a lot of valuable knowledge and
experience during my internship.
1
1.2 Problem Statement
There are many potential problems that can arise when using Dotnet to develop a project.
Lack of experience with Dotnet: Lack of experience with .NET can hinder project
development, as navigating its extensive features, libraries, and best practices
requires time. This steep learning curve can impact efficiency and increase the
likelihood of errors or subpar solutions. To overcome these challenges, leveraging
support resources like documentation and community forums is vital for smoother
project progression and better outcomes.
Complexity of the project: Project complexity in .NET development presents
substantial challenges, especially with intricate requirements or architectures. As
projects expand, managing dependencies, ensuring code maintainability, and
orchestrating component interactions become more daunting. Additionally,
complex business logic or integration needs may prolong development cycles and
raise the risk of bugs or inconsistencies. To address these issues, thorough planning,
modular design approaches, and the use of frameworks or design patterns are
essential for streamlining project execution.
Compatibility issues: Compatibility issues in .NET development stem from
disparities in framework versions, operating systems, and third-party dependencies.
Migrating between .NET Framework versions can introduce challenges due to API
differences, while disparities in runtime environments may cause unexpected
behavior. Integration of external libraries or tools can also lead to version conflicts
or platform-specific issues. Vigilant testing, adherence to best practices, and staying
current with platform changes are crucial for addressing these compatibility
concerns and ensuring project success.
Performance issues: Performance issues in .NET projects stem from factors like
inefficient code, resource-intensive operations, and suboptimal database queries.
These can lead to sluggish application responsiveness or increased resource
consumption. Inadequate caching strategies or scalability planning can exacerbate
bottlenecks, especially under high loads. Addressing these issues involves profiling
and analyzing application behavior, optimizing critical paths, implementing
caching mechanisms, and utilizing performance monitoring tools to detect and
resolve bottlenecks proactively.
2
1.3 Objectives
The main objective of the internship project is to get practical experience of the theoretical
knowledge gained in the classroom. The main task is to get enrolled into the organization
and do tasks as required by the organization as well as the course of study. My primary
objectives for this internship are:
To gain hands-on experience working with .Net and onion architecture: Gain
practical experience working with the .NET framework, focusing on understanding
the principles and implementation of onion architecture in backend development.
To improve my skills in C# and Database Management: Enhance my proficiency in
C# programming language by contributing to various application functionalities
and components. I'll also focus on improving my database management skills,
working with databases like SQL Server or SQLite to store and retrieve data
efficiently.
Familiarize Myself with Tools and Technologies in .NET: Learn how to use
essential tools and technologies in .NET development, including Visual Studio IDE,
NuGet package manager, Entity Framework Core, and ASP.NET Core.
Additionally, I'll gain hands-on experience with other tools and libraries for specific
tasks, such as data visualization and dependency injection.
Integrate Custom Elements and Develop UIs: Explore integrating custom UI
elements like GridView and GroupBox into desktop applications using .NET
technologies like WPF or Windows Forms. I'll focus on mastering UI design
principles, organizing layout elements, and enhancing user interaction for better
user experience.
Understand Data Flow in Onion Architecture: Delve into the intricacies of data flow
between different layers in an onion architecture. I'll study how data moves through
layers like presentation, application, domain, and infrastructure, understanding the
interactions and dependencies that facilitate the desired functionality.
3
1.4 Scope and Limitations
1.4.1 Scope
The .Net developer Intern will work with our experienced team of developers to gain hands-
on experience in desktop application development using C# as a programming language.
The intern will have the opportunity to learn about various aspects of desktop application
development, including front-end design, back-end development, database management.
Write clean, well-documented, and maintainable code that follows industry best
practices and standards.
Participate in code reviews and contribute to improving the overall quality of the
codebase.
Troubleshoot and debug issues reported by end-users or detected during testing.
Keep up-to-date with emerging trends and technologies in application development
and contribute to the team’s knowledge base.
1.4.2 Limitations
Limited Access to Real Projects: Depending on the size and nature of the company,
interns may not have access to the same level of project as full-time developers.
They may be given smaller, more straightforward tasks that do not provide a
comprehensive view of how the company operates.
Limited Exposure to Advanced Concepts: Although interns will be given the
opportunity to learn about .Net, they may not have exposure to more advanced
concepts due to time and resource constraints.
Limited opportunity for Team Collaboration: Due to the fast-pace nature of software
development, interns may have limited opportunities to collaborate with other
developers or work on team project. This can limit their ability to learn from others
and gain experience in a team environment.
Limited exposure to Industry Trends: Inters may not have access to the same level
of industry events, conferences, or other learning opportunities as full-time
developers, which can limit their exposure to industry trends and new technologies.
4
1.5 Report Organization
This study has been organized into the following five chapters.
The first chapter covers the introduction of the internship work and includes details such
as problem statement, objectives, and scope.
In the second chapter, the report discusses the organization’s introduction, including details
on its hierarchy, working domains, and the Intern department or unit.
The third chapter focuses on the background study and literature review of related works.
The fourth chapter elaborates on the internship activities, including the roles and
responsibilities, a weekly log of technical details, and a description of the project involved
during the internship.
Finally, the last chapter concludes the results by summarizing the deductions of the
internship and outlining the learning outcomes from the experience.
5
Chapter 2: Introduction to Organization
Company Overview:
The IT organization Technology Solution Nepal is the software development company that
focuses on building and deploying all shorts of applications i.e. Web, Android, iOS,
Desktop. Founded in 2002 with the aim of providing software services on every platform
Technology Solution Nepal has obtained a large amount of favor from its valuable
customers. The services provided by this company is not only limited to personal business
but also government businesses as well.
It has since grown to become one of the leading IT service providers in the region. The
organization employes a team of highly skilled and experienced IT professionals who are
dedicated to delivering the best possible service to their clients.
Services:
Technology Solution Nepal offers a wide range application to its clients, including RMS
(Web based revenue management system for local government), JAIMS (Jewellery
Account and Inventory Management System for Retailers), LGP (Web based Planning
Management System for Local Government), Inventory (Web based Assets & Inventory
Management System) on platforms like Web, Android, iOS, Desktop.
6
Performance:
Technology Solution Nepal has had a successful year, with significant growth in both
revenue and client base. The company’s manages IT service have also seen a significant
increase in demand, with many businesses seeking to collaborate with the company to
develop their own applications. The company’s customer care service has also seen a
significant increase as the customer service is available 24/7.
Challenges:
Despite the organization’s success, there have been some challenges that have been faced
over the past year. One of the biggest challenges has been the hiring and retention of highly
skilled IT professionals. The company has also faced challenges in keeping up with the
rapid pace of technological change, as new technologies and services are constantly being
introduced. Additionally, the company has faced challenge in expanding its services to new
geographics.
Conclusion:
Overall, Technology Solution Nepal has had a successful year, with significant growth in
both revenue and client base. The organization has expanded its services to include new
technologies and has seen a significant increase in demand for its services. However, the
company has faced some challenges, particularly in the hiring and retention of highly
skilled IT professionals and keeping up with the rapid pace of technological change. The
company is committed to addressing these challenges and continuing to provide its clients
with the best possible service.
Following are the contact details of the Technology Solution Nepal Pvt. Ltd.
7
2.2 Organizational Hierarchy
Branch office: A branch office is a secondary location of a company that operates under the
main headquarters. It provides services or conducts business activities in a different
location, often to reach a broader market or serve local customers more effectively.
Branch Manager: A branch manager is the individual responsible for overseeing the
operations and performance of a branch office. Their key duties include managing staff,
ensuring customer satisfaction, meeting sales and revenue targets, and maintaining the
branch's operational efficiency.
Team leader: A development team leader is responsible for guiding and managing a team
of software developers to ensure successful project completion.
Intern: An intern is a student or recent graduate who works in a temporary position within
an organization to gain practical experience in a particular field or industry.
8
HR Coordinator: An HR coordinator supports the human resources department by handling
various administrative and clerical tasks.
Sales Supervisor: A sales supervisor oversees a team of sales representatives to ensure they
meet or exceed sales targets. Their responsibilities include setting sales goals, developing
sales strategies, monitoring performance, and providing coaching and training to the sales
team.
Technology Solution Nepal Pvt. Ltd. Is a software development company based in Nepal
that offers a diverse range of applications services. The company’s working domains can
vary widely, depending on its size, focus, and expertise.
During my internship at the Technology Solution Nepal Pvt. Ltd., I work in the desktop
application development department. The desktop application development department
comprises individual who are accountable for designing, implementing, and maintaining
the desktop application. through this department, interns have the chance to collaborate
with skilled experts and acquire practical experience in software development. The interns
are assigned diverse project and tasks concerning software development, testing,
troubleshooting, design and implementation.
Additionally, interns are actively involved in maintaining the application to ensure seamless
operation. As in intern in the desktop application development department, my
responsibilities included assisting with the redesign and implementation of the software, as
well as testing and debugging to ensure it was functioning correctly.
9
CHAPTER 3: Background Study and Literature Review
.NET framework is very useful and very widely used in various frameworks, it is developed
by Microsoft with the help of .NET framework we are very easily debugging (Lin-Yan &
Chen-Xi, 2012).
During my internship, I had the opportunity to work with .Net framework and learn more
about its capabilities. The .NET Framework includes two main components: the Common
Language Runtime (CLR) and the .NET Framework Class Library. The CLR is responsible
for managing the execution of code written in any of the supported languages, while the
class library provides a large set of pre-built functions and classes that can be used to create
a wide range of applications (Introduction to .NET Framework, 2023).
The .NET Framework also provides a number of features that help improve the security,
reliability, and performance of applications. These include features such as code access
security, automatic memory management, and just-in-time (JIT) compilation, which helps
improve the speed of application execution.
10
3.2 Literature Review
11
CHAPTER 4: INTERN ACTIVITIES
During the internship, there were some challenges in accomplishing the project due to its
complexity. Due to the project's complexity, completing it during the internship presented
some difficulties. To beat the hardships, different methodologies and techniques were
embraced, which assisted with accomplishing the task in a proficient way. A few strategies
were used, including acquiring idea about onion layer, debugger devices, settling git push
clashes, freehand drawing of the plan, imagine the plan, and carrying out the ideas in
programming. The internship was successful as a result of these efforts, and valuable
developer experience was gained. I was responsible for a range of tasks and projects,
including:
Assisting with the development of the accounting software for the company. This
involved working with the design team to create a new layout and design, as well
as implementing the changes in the application. this helped me to import forms from
other folders and reuse them to save time and resources.
Conducting research and analysis on a specific industry and presenting my findings.
This required me to gather and analyze data, identify trends and patterns, and make
recommendations based on my findings. This helped me find the markets where the
system would be more used at. Market I found to be saturated was wholesale
market.
Assisting with the backend side of the project. Here I grasped the basis concept on
onion layer and how can we implement it as well as implement basic CRUD
functions but passing them through layers which enhanced the security of the
system. the layer was predefined so I had to do some research regrading the layer
to easily navigate between the directories. This helped me to have a basis
understanding on onion layer and to understand the importance of a predefined
structure for following the development model of the software.
12
4.2 Weekly log (Technical Details of Activities)
13
Table 4: weekly log (week 3)
14
Table 6: weekly log (week5)
15
Table 8: weekly log (week 7)
16
Table 10: weekly log (week 9)
17
4.3 Description of the Project(s) Involved During Interns
18
4.4 Tasks/ Activities Performed
During the internship, I was assigned to work on various tasks and activities related to the
application development. Some of the significant tasks are listed below:
1. Form Design: The first task assigned to me was to design the form for the
application. the form demo was provided and I had to follow the instructions to
create the form.
2. Form Implementation: after the forms were designed, I implemented them into the
project.
3. After the designing and implementation phase I was assigned to write some simple
codes in the .Net Framework.
4. After that I was assigned to understand basics on onion architecture and how it
worked.
5. I was then assigned to work with the databases. Performing operations like Create,
Read, Update delete.
6. After the completion of each section, I was assigned to run and test the project to
find any potential bugs.
7. Finally, I was responsible for documenting the code base. I wrote documentation
explaining the functionalities of the application and the structure of the project.
19
CHAPTER 5: Conclusion and Learning Outcomes
5.1 Conclusion:
During my internship at Technology Solution Nepal Pvt. Ltd. I had the opportunity to gain
experience in different areas of software development. Through my time there, I was able
to learn more about .Net framework, onion architecture, I was able to create forms, export
them, implement them into the project, write some backend codes and work on databases
as well as got familiar with github and many more. These new skills and knowledge were
essential to my professional development as they helped me to expand my skill set and
become a more well-rounded desktop application developer.
Working at Technology Solution Nepal was an excellent learning experience that provided
me with a diverse range of experiences. I believe that the skills and knowledge I gained
during my time there will be valuable as I will continue my career as a software developer.
I am grateful for the opportunity to have worked with such as exceptional team, and I look
forward to applying my skills and knowledge I have gained in my future endeavors.
20
References
3. Lin-Yan, & Chen-Xi, B. (2012). Introduction to the Dotnet. Research and analysis based on
dotnet framework, 2131-2137.
21
APPENDIX
Screenshots
Figure 3: Dashboard
22
Figure 5: Item Ledger
23
Figure 8: Dhatu Samuha
24
Figure 10: IC Bills Receivable GOA
25
Figure 12: Project Directory Structure
26
Source Code:
Company Service:
namespace DesktopGold.Service
Task<List<CompanyDto>> GetCompanies();
27
Company Service Implementation:
namespace DesktopGold.ServiceImplementation
_repository = repository;
await _repository.Company.CreateCompany(company);
28
Company Repository:
namespace DesktopGold.Repository
var conString =
ConfigurationManager.ConnectionStrings["sqlCon"].ConnectionString;
FROM Companies;
";
con.Open();
29
var companies = MyDbHelper.MapCollection<CompanyDto>(reader);
return companies;
30