System Engineer-Intern, InFOSYS
System Engineer-Intern, InFOSYS
System Engineer-Intern, InFOSYS
INFOSYS
This is to certify that the above statement made by the candidate is true to the best of my
knowledge.
Dr Pankaj Dhiman
Assistant Professor (Grade–II)
Computer Science & Engineering and Information
Technology
Dated:
I
Acknowledgement
This is a matter of pleasure for me to acknowledge my deep sense of gratitude to Jaypee
University and my college, Jaypee University of Information Technology for giving me an
opportunity to explore my abilities via this internship program. We would like to express
our sincere gratitude to our Training and Placement officer, Mr. Pankaj Kumar and our
faculty Coordinator, Dr. Nafis U Khan for this opportunity. We also wish to express my
gratitude to my internship supervisors, for their valuable guidance and advice towards our
internship/project.
We would like to record my sincere appreciation and gratitude towards all the officials,
coaches, trainers, mentors and employees of Infosys Ltd., without whose kind assistance,
my internship program would not have been proceeding in a swift direction. The facts and
other vital information provided by them have contributed towards making this report as
comprehensive as possible. We are indeed thankful to them.
Last but not the least, we would like to express our sincere thanks to all my family members,
friends and well-wishers for their immense support and best wishes throughout the
internship duration and the preparation of this report and I wish they would continue to
contribute towards my well-being.
We believe that this report will be a valuable asset not only for academic institution, but
will also be useful for all those who are interested to learn about internship/project
experiences in auditing and consulting firm.
II
Table of Content
Acknowledgement .............................................................................................................. II
1.1 Organization............................................................................................................... 1
1.2.1 Mission................................................................................................................ 2
III
2.4 Domain Specific Training .......................................................................................... 8
IV
3.5.2.1 Class Identification ........................................................................................ 26
Chapter 4 Conclusion......................................................................................................... 40
V
List of Figures
Figure 1: Login Portal .......................................................................................................... 4
Figure 2: Portal Home Page ................................................................................................. 4
Figure 3 ................................................................................................................................ 5
Figure 4:Curriculum ............................................................................................................ 6
Figure 5 ................................................................................................................................ 7
Figure 6: Lex Portal ............................................................................................................. 8
Figure 7: Mysql Architecture ............................................................................................. 10
Figure 8: Entity Framework Data Flow ............................................................................. 11
Figure 9: API data Flow..................................................................................................... 12
Figure 10: Architecture ...................................................................................................... 16
Figure 11User Case Diagram1 ........................................................................................... 18
Figure 12:User Case Diagram 2......................................................................................... 18
VI
Certificate of Completion of Internship
VII
Abstract
At Infosys, each selected intern is allotted a system engineer trainee domain with each
domain having specific amount of training period varying from 12 weeks to 15 weeks.
Internship includes various events such as educational workshops, webinars, Lex courses,
Integrated Capability Test and group work assignments.
A large IT company based in the India, Infosys employees a large number of Indians, to be
exactly about 3 lac employees. Infosys Corporation having set foot in more than 46
countries and also recruits and hires international workers from all around the globe.
Infosys provides various services to a large number of clients in the IT industry. They also
have ties with one of the fastest growing companies like Cisco, Amazon Web Services,
Microsoft, McAfee, etc. Work culture in Infosys is just as professional as expected and it
values ethical notes towards the progress of its employees and raises concern regarding
physical and mental issues faced by its’ employees.
We have been placed under the domain of system engineer trainee, where we were trained
in Angular, .Net Core, Entity FrameworkCore and Microsoft SQL.
VIII
Chapter–1 Organization
1.1 Organization
Infosys is a multinational business enterprise that operates in a range of industries.
The company is a world leader in digital carrier and consulting. Consultation, next-
generation technology, and outsourcing offerings are the company's predominant
business lines. Infosys is a world chief into digital purposes and consulting because
of the subsequent generation. They aid clients of upstairs 50 worldwide places into
navigating their digital transformation. They expertly information our purchasers
thru their digital journey, having spent over three many years managing the
structures and operations of world enterprises. They accomplish this by way of
supplying the organisation with an AI-powered core that aids in the prioritization
of exchange execution.
They additionally empathize with the enterprise through handing over extraordinary
levels of overall performance and consumer satisfaction via agile digital at their
non-stop enchantment through constructing and transferring digital skills, expertise,
and ideas from innovation ecosystem. Their merchandise assists corporations
improve deeper connections along stakeholders, rule continuous innovation yet
accelerate increase among the digital world. The power their clients’ boom into
unexpectedly evolving areas kind of banking, digital marketing, interactive
commerce, distributive trade, credit servicing, consumer service. The company
offers various role like developer, designer, tester and manager in the company, but,
before becoming the associate every person should complete the intern period and
after the intern period there is one year of probation period in the company for the
associate to join the company.
Infosys tagline is “Powered by Intellect, Driven by Values”.
Established in 1981, Infosys was founded by a core team of seven members with a
main lead of N.R Narayan Murthy and Nandan Nilekani.
Infosys is a NYSE listed global consulting and IT services organization with greater
than 310k employees. From a capital of US$250, we have grown to become a US$
16.31 billion (FY22 revenues) enterprise with a market capitalization of about US$
104.71 billion.
1.2 Mission, Vision, Values and Objectives
1.2.1 Mission
The Infosys mission is to achieve objective under a set of ethics in an environment
which has values like even-handedness, obeisance and righteousness toward its
customer, people of Infosys, dealers and society.
In particular to its newly appointed employees is mandated to undergo internship.
The internship is given to provide best information in order to train trainee with the
best of their ability for their associate role. It spends an ample amount of time effort
and money in training before introducing people to actual work in a real
environment.
1.2.2 Vision
The Infosys vision is to be a respectable corporation all around the world and to
provide best of class answers weather for business breakthrough or leveraging
technologies which is delivered by best-in-class people.
In terms of training and internship Infosys vision is to provide an ideal education to
all the trainee irrespective to college the person come from.
1.2.3. Values
The values of the organization are as follows:
1.2.3.1 Valuing People
Infosys believes so much its advancement is principally based about people
They wish improve or hold high-quality, together excellent relationships
along their clients, expert colleagues, referral sources, vendors,
neighbourhood members, and each other if he honours human beings
between the whole thing employee do.
1.2.3.2 Building Client Relationships
Infosys seeks in conformity with acquire long-term consumer loyalty by
means of thriving a deep understanding concerning each client's commercial
enterprise and personal goals, by demonstrating firm reliability and honour
2
between their assignment and stability by performing namely an unbiased
or objective guide after their clients.
1.2.3.3 Upholding Quality and Integrity
Infosys choice maintain surroundings where a dedication in imitation of
quality, permanency, longevity, honesty, respect, fidelity then professional
principle governs the moves yet selections regarding everyone inside the
firm.
1.2.3.4 Key to Success
• Complete the work with honesty.
• Complete the action on time.
• Complete the gauging.
• Complete the assignment in schedule time.
• Try to reach out learn and research.
• Open mind to learn new things.
1.2.4 Objective
The Infosys mission is to achieve objective under a set of ethics in an environment
which has values like even-handedness, obeisance and righteousness toward its
customer, people of Infosys, dealers and society.
Moreover, the overarching objective is to instruct the performance of the company
toward its specialised services and to become a national leader in this niche.
As well as to grow the business at a pace that would be both difficult and
manageable, while providing the industry with innovation and adaptability.
1.3 Work from home procedures
Due to the COVID-19 disease outbreak, the entire internship is planned to be done from
home. To achieve results, Infosys has teamed up with Microsoft Office to expand its online
business. Aside from that, Infosys provides laptops to its staff with proper EDR, MDR, and
XDR policies, making it less vulnerable to zero-day attacks.
Infosys has proposed that interns should use personal laptops during the internship's
training and learn period. Infosys has created a special portal for staff members and interns
to access software plug-ins and access new applications, for various functional applications
3
such as technical support, Human resource support, project plans, assignment details, leave
approvals, and so on. The portal is self-sufficient to provide all the feature to make trainee
undergo training smoothly as the virtual machines provided are powerful enough to support
trainees throughout the training. The company provide with a temporary email to access
these functionalities.
The above entrance portal for users is developed in collaboration with Microsoft to provide
a better security as the portal works on the internal server of Infosys only accessible to the
one associated or connected with the company. So, the security is much more required so
a collaborated effort is needed to provide a higher end security.
The above image depicts the landing or home page of portal which contains only the
applications which are important or marked favorite by the trainee. The portal has two
sections one is home page and the other is applications. The Infosys uses Microsoft
application as well for official employee mail the company uses outlook. The portal is
4
designed in a way that all the applications stated in the portal are accessed a virtual machine
deployed at the Infosys.
Figure 3
The portal provides all the functionalities from applying for leave to personal information
access and edit also. The portal comprises of various web applications even a virtual
machine access portal is also made accessible via remote access. Infosys has created a
special portal for staff members and interns to access software plug-ins and access new
applications, for various functional applications such as technical support, Human resource
support, project plans, assignment details, leave approvals, and so on.
5
Chapter-2 Internship Program Sequence
2.1 Overview
The internship program is divided into three basic categories on the basis of
duration i.e., 6-week, 27-week and of 6 months. The internship is divided into three
streams of data analyst, java programmer and web application development. The
allotment to these streams is purely based on luck and companies’ requirement of
employees in a particular field after the allotment of streams each individual will
follow a certain time bounded schedule specifically created according to the
duration of training. The session starts after a week of HR rounds where they brief
about course syllabus that one need to study and how to access company web
applications and some other functionalities required for day-to-day operations.
Figure 4:Curriculum
The above picture depicts the course syllabus and schedule for 27-week internship
of Web app development using Model View Controller. The course was designed
to support and use Microsoft resources as well as to train pupils to be able to develop
6
web application. There were two evaluation tests in between and one project
included in order to evaluate the candidate for successful completion of internship
2.2 Pre Domain-Assignment
The Pre Domain-Assignment refers to the time before the start of training proper
induction agenda were created to start the training or proper onboarding. It lasted for a
week from 7th February to 14th February 2022. During this period, organizational
introduction began, as well as an ice-breaking workshop for the new recruits. Academic
lessons in Web Application Development and C# have also been assigned for corporate
training. Heartfulness discussions were conducted to keep the mind and body agile in the
era of mounting corporate pressure. The HR department conducted leader connects and
ethical policy connects.
Figure 5
The above picture shows the different session to be conducted during the Pre domain
Assignment. Infosys is concerned about corporate security. The Infosys Ethics &
Compliance programmed promotes an ethical culture, protects the business from harm,
ensures customer confidence, reduces uncertainty in business decisions, and protects the
company's reputation. The Infosys Code of Conduct outlines the values of the company for
all accomplices to act with dignity and enforce an ethical corporate culture. Infosys
Worldwide Policies and Practices provide additional, specific instructions on how to
protect collaborators' privacy, use company resources responsibly, avoid fraud, and more.
2.3 Learning Platform
Infosys Introduced their own platform for employee learning and guidance for upcoming
technologies to provide a practical powered information for the courses and for particular
technologies introduction and practice for the employee.
7
Lex is their modular, configurable learning platform, which allows trainees and employees
access curriculum from any device and from any location. The platform includes a
recommendation engine, which suggests appropriate learning paths and material to
workforce based on their interests, skill sets, and job description. Management teams can
layout and share their own learning journey with their teams. On Lex, the company has
over 700 courses
The above picture shows the layout of lex. Since its inception, the framework has received
over 1 million downloads. According to the corporation, the average user spends 30-40
minutes per day on it, and one-third of users do that in their leisure moments. This
framework was made accessible to other institutions last year with the label Infosys
Wingspan. The framework fosters a culture of continuous learning and collaborative effort
and allows leaders to gain actionable insight into skill. Learners can now converse with a
voice-enabled learning aide in the improved version. The framework is regularly updated
with content aggregation.
2.4 Domain Specific Training
2.4.1 Week 1
The program started with the domain specific training from Day 1. The program
commenced with a basic introduction to the C# and its advance level programming.
8
C# is a language of programming that is object-oriented and component-oriented. C#
includes syntax that actively support those certain concepts, making it a suitable language
for developing and deploying software components. C# has evolved to support new
workflows and starting to emerge software design procedures since its inception. C# is an
object-oriented language of programming at its fundamental. Types and their actions are
defined by you. C# helps to create robust and long-lasting applications.
In the first week we learned and discussed about the basic structure to develop an
application in C# as well as about the C#. The first week consists of only introduction to
the language which consists of its various introductory topics like variables and data type
and other. Till the end of week various topic were also introduced related to object-oriented
programming and data structures like Encapsulation, Polymorphism, Classes and with
respect to data structures arrays and list was also introduced. With this the First week was
concluded.
2.4.2 Week 2
The second week was started with the topics of advanced C# programming which only
concluded with the topics and functionalities related to object oriented programming. The
topics. The contents covered in the day were also entangled with the assignments of
particular topic to help better understanding. The topics that were included for the week-2
were like Prelude, Exception Handling, Generics, Delegates, LINQ
A delegate is a type that holds pointers to procedures that have a certain parameter list and
return values. You can link a delegate's instances with any method that has a suitable
declaration and return value when you construct it. The function can be called (or called)
using the delegate instance. Delegates are being used to pass functions to the other
functions as parameters. Event handlers are just procedures that are called by delegates.
You write a customized method, and a class like a windows component can call it when a
specific event happens.
The week 2 was completed along with the C # programming interaction as this was must
needed to study the entity framework in the future.
2.4.3 Week 3
In the third week the topics covered were related to Structured Query Language. Infosys
stated to use Microsoft Structured Query Language.
9
MySQL software provides a multi - threading, multi-user, as well as rigorous Query
(Structured Query Language) database server. MySQL Server is configured for quest, large
production processes and also embedding in widely disseminated software. Oracle is an
emblem of Oracle Corporation and/or its affiliated companies. MySQL is a trademark of
Oracle Corporation and/or its affiliates and may not be used by Customer without the
express written permission of Oracle.
The above diagram is the Microsoft Structured Query Language Architecture of the engine.
Those certain names could be registered trademarks of their rightful entities. MySQL
Database Software is just a customer system that includes a concurrency SQL server which
supports multiple back ends, a variety of client programmers and library resources, system
admin, and a broad range of programming interfaces (APIs). MySQL software has a double
license. Consumers can just use the MySQL software as just an Open - sourced item
underneath the terms of the GNU General Open Source, or they can purchase an Oracle
standard commercial license.
10
As the whole stream works with interrelated to Microsoft technologies so the SQL taken
into consideration was Microsoft Structured Query language. The queries syntax is similar
to other languages there are only certain number of queries syntax that are different and
some restrictions to other syntax like INDEX etc.
2.4.4 Week 4
During this we were introduced to the entity framework core. This framework core is used
as a bridge to connect the database with the Application Interface. The flow of data is
handled via the framework core. Some business logic is implemented in the database
queries and the other can be implemented on this framework as the data manipulation can
be taken place on this level. So, the entity framework is as follows.
The above diagram shows an abstract level of flow of data. Entity Framework is a
Microsoft-supported open-source ORM structure for.NET implementations. It allows
participants to develop with data using property objects rather than the actual database
related tables in which the information is recorded. When working with data, developers
work at an abstract level with the MVC Architecture, allowing them to create as well as
preserve data-oriented implementations with a little less code than native apps. The only
thing in this is to be concerned is to create function for the stored procedures for smooth
flow of data
11
2.4.5 Week 5-6
The next layer that we studied in the time for week 5 was application programming
interface and developing presentation layer. The API (Application Programming Interface)
is the key feature by which data is moved from one system to another. The API main
functionality is to transfer the data from a database to the presentation layer we can also
say that when a system needs to access some data it requests it from the API. The first use
of API was only to show graphical representation. It not only acts as an intermediate bridge
but also helps to provide an abstract level view of the data only to provide security.
There are three types of API:
• Private
• Partner
• External
The above image depicts the working of an API how it takes and give response.
Later during this we were introduced with the primary blocks of website i.e., HTML, CSS
and some portions of Java script.
HTML: They were first known as tags and later many functionalities were added like mark
up the latest version that is being used in the industry is HTML 5.HTML stands for
hypertext markup language. The term "hypertext" makes reference to linking various
website content, within either a single website either between websites. Links are an
essential element of the World wide web. You get to be an active contributor with in World
Wide Web by submitting content on the Web and connecting it to webpage created by
12
many others. HTML annotates message, photos, as well as other subject matter for
showcase in an Internet browser by using "markup.".
CSS stands For Cascade Spread Sheet. It is used to render data and elements on a website
which also helps the website to look more interesting. cascading CSS is a stylesheet
language that is being used to characterize the demonstration of an HTML or XML file
(including XML dialects such as SVG, MathML or XHTML). CSS specifies what
components must be displayed on computer monitor, paper, during speech, and in other
media. CSS is one of the accessible internet's fundamental languages.
JS or the more profound word is Java Script it is used to make the content more interactive
or we can say that it makes the website dynamic as it presents the real time data needed by
the users or we can say make the data available.
JavaScript (JS) is a first-class language of programming that can be interpreted or compiled
just-in-time. Although it is best known as a scripting programming language for Internet
pages, is also used in numerous quasi environments including such Node.js, Apache
CouchDB, and Adobe Acrobat. JavaScript is a multi-paradigm, single-threaded, dynamic
language that supports entity, essential element, and exclamatory (e.g., functional
programming) programmer styles.
2.4.6 Week 7
The Java script that we learned to make the system dynamic is Angular. JavaScript (JS) is
a first-class language of programming that can be interpreted or compiled just-in-time.
Although it is best known as a scripting programming language for Internet pages, is also
used in numerous quasi environments. The angular is based on type script so to have a good
grasp over angular one should must have an understanding of type script.
13
The angular also supports and is based on model view controller. Create a component-
based application using Angular components Enhance the functionality of components
using Angular directives Create Angular forms and bind them with model data using data
binding Validate forms using Angular built-in or custom validators Format the rendered
data using Angular built-in or custom pipes Communicate with remote server using
Angular Http class with RxJS Observables Build a single page application by using routing.
2.4.7 Week 8
In last learning week of the internship, we learned about how to make our project available
to the other system via cloud and in the end, we learned about agile method for management
of the project production.
Cloud computing is a paradigm that uses mass data hubs that accommodate thousands of
server farms, storage systems, as well as other crucial elements for many various types of
organizations. These information facilities are located in secure areas and hold a huge
amount of data. Users can connect to such data centers to gather or use data as needed.
Users can use a range of services; for example, if users want to be notified whenever anyone
sends user a text or an electronic mail, cloud services help. The greatest feature about cloud
applications is that you only pay for the services users use, with no service charges.
Azure is just a cloud - based platform as well as a web platform that allows users to access
and handle Microsoft's cloud resources and services. Such services and resources involve
stockpiling and transforming your data depending on needs. All you need to access these
resources and services is indeed an energetic internet service and the able to link to the
Azure portal.
Then in the last study section of the internship we learned about the agile framework for
the management of the project work. Agile software lifecycle methodology is an iterative
approach that helps teams produce value to clients faster with fewer hassles.
14
Adaptive planning, developmental growth, early delivery, continually improve, and
flexible reactions to changes in requirements, ability, and comprehension of the problems
to solve are among the practices that include requirements revelation and solution
improvement through the cooperative process of self-organizing and pass teams with their
client end user, responsive planning, developmental growth, early delivery, continually
improve, and adaptable reactions to changes in demand, capacity, and comprehension of
the problems to solve.
15
Chapter-3 Project Development and deployment
In the last few weeks of internship projects were assigned by dividing the interns into
groups. Each group consist of 5-6 people. The group that I was assigned received a project
titled “Infy_Notes”. The general overview of the project was to create a web application
with a basic functionality to transfer notes from one person to another.
3.1 Logical Architecture
The following diagram shows the big picture of the Infy_Notes Architecture.
16
Front end development Angular Angular CLI, Node Js
environment
17
3.2.2 Use Case diagram
18
3.3.3 Modelling
Based on the use case model defined in the requirement engineering face. The following
models need to be developed:
• Object Model.
• Deployment Model.
3.3.4 Layering and Partitioning
This application follows three-tiered architectural approach.
The architectural followed has 3 layers:
• Front end or Presentation Layer
• Service Layer
• Data Access Layer
Following are the functionalities implemented in each of these layers:
• Presentation Layer: Responsible for displaying the data and interacting with the end
user.
• Service Layer: Responsible for designing and implementation of the user-defined
APIs.
• Data access Layer: Responsible for reading/writing data from/to database.
3.3.5 Coding and UI Standards
Coding standard of Question Generator development is also based on the dotnet coding
standards.
3.3.6 Development Environment
For the development of the Question Generator system of the following specification are
used:
• RAM: 8 GB
• HDD: 100 GB
• Network: Above 1 MBps
• Operating system: Windows 10
3.3.7 Software
• Visual Studio 2019 IDE
• Dot NET Core
19
• Microsoft SQL Server 2019
3.3.9 Deployment
For the deployment of the Question Generator system of the following specification are
used:
• RAM: 8 GB
• HDD: 100 GB
• Network: Above 1 MBps
• Operating system: Windows 10
20
5. The faculty can make 1,3 The faculty account holder
announcements in their particular can only make
folder for the other user. announcement moreover the
number of words that can be
posted in a particular
announcement is limited.
6. The faculty can also share the 1,3 The joining link can only be
joining link of the folder as well sent by the creator of folder.
as of files and announcements The links can only be sent via
email.
7. The 3rd user i.e., Trainee can only 1 The user should be a Trainee
read documents as well as account holder and must
announcements, but can only have joining link of the
share the document link folder.
8. The Trainees can also preview the 1,8 The file for preview must be
files uploaded and download it. of .doc or .docx extension.
9. As a user the user data should be 1,2,3,8 The data should be uploaded
retained and no data loss should and of the particular size.
be seen.
10. As a user one should be able to 1,2,3,8 The user must be registered
log in and log out of the profile. with the system and logged in
to log out from the profile.
An automatic log out can be
experienced if no activity is
seen for a particular time
period.
11. A user should be able to change 1,2,3,8 The user must be registered
password of the particular as well as holder of the
account. designated email id of the
account.
21
12. A user should be able to give 1,2,3,8 The user must be registered
feedback to make further and logged in to send
improvements. feedback to the team.
13. A user should get a notification 1,2,3,8 The user must be registered
whenever something is posted. as a trainee.
14. The users can contact the support 1,2,3,8 The user must be registered.
team for any technical issues
15. The user should be able to upload 1,2,3,8 The users must be logged in
the data by drag and drop for fast to upload.
access
16. As a user one should be able to 1,3 The user must be uploading a
view the upload progress of the valid size file.
Files uploaded
17. As a user one should be able to 1,3,8 The user must be log in with
view the document type and a valid user Id.
preview it if it is a word document
18. As a user one should be able to 8 The user should be login with
have a chat with the instructor. a trainee account.
19. The mentors and trainees have 1,3 The users must be registered
user profile section to better with a valid account
describe and brief about
themselves.
20. The mentors can view the no of 3 The user must have
participants visited the notes. Facultyuser ID and should
have posted a file
21. The user should have the retry 1,3 The user must be uploading a
button if there is an error during valid size file
22
an upload along with error
message.
22. The user cannot upload the 1,3 The user must have uploaded
similar name file within 24hours. a similar name file.
23. The user can replace an existing 1,3 The user should have
file with a file. uploaded a file before and
should have login with
mentor account.
24. A user will be able to upload up 1,3 The user can only upload a
to a particular size of file limited size of file.
25. A user highlighter option for 3,8 The data must be uploaded
important files and first to highlight.
announcements by the mentors
26. One should also be able to see the 3,8 The notification will be
notification about the latest uploaded when the file is
uploaded material. shared.
27. An email notification will be sent 8 The notification must be sent
when any material is uploaded or to the email only when the
an announcement by the mentor. file is uploaded.
28. The files should be automatically NIL NIL
deleted after 1 year of non-
viewing.
29. The files should be sorted by the NIL NIL
date they are uploaded.
23
3.5 Class Design Specification
3.5.1 Data Access Layer
Class Name NotesDBRepo
Class It contains the DAL logic and acts as an intermediate between the
Description database and the service layer.
Class NA
Inheritance
Classes Models.Feedback, Models.History, Models.Paper, Models.PapaerId,
Referenced Models.Quest, Models.Notes, Models.ResetPassword, Models.User,
Models.NotesDB1Context.
Sub-system NA
Class Type Complete
3.5.1.1 Methods
Method public bool AddUser (string firstname, string lastname, string email, string
password)
Purpose To register user details using stored procedure from database.
Returns Status indicating if the logic is executed successfully or not.
24
Method public List<Notes> GetNotes ()
Returns Notes with Notes if the logic is executed successfully and null if not executed.
Method public bool AddNewNotes(string category, string Notes, string option1, string
option2, string option3, string option4, string answer)
Purpose To give user functionality of adding Notes according to their choice.
25
3.5.2 Service Layer
3.5.2.1 Class Identification
Sub-system NA
Class Type Complete
3.5.2.2 Methods
26
Purpose To validate the credentials prompted by the user and updating the new
password by invoking the DAL method.
Returns Status indicating (true if yes and false if error is there).
Returns Message indicating (if successful true else false if any error occurs).
Purpose To show previews of user selected Notes by invoking the DAL method.
27
3.5.3 Presentation Layer
3.5.3.1 Components
3.5.3.1.1 User Components
User Registration.
Method addUser(firstName: string, lastName: string, emailId: string, password:
string):Observable<boolean>
Purpose To register the user details provided by the user using the User Service method.
Returns Success redirects to login and error gives alert.
User Login.
Method login(emailId:string,password:string):Observable<string>
Purpose To login the userby the credentials provided by the user using the User Service
method.
Returns Success redirects to View Notes in app and error gives alert.
Save Notes.
Method SaveNotes(emailId: string,quesId: string ): Observable<boolean>
Purpose To save the selected Notes of user using the User Service method.
Returns Success gives an success alert and error gives error alert.
Reset Password.
Method resetPassword(email: string, oldPassword: string, newPassword: string ):
Observable<boolean>
Purpose To change password of the user using the User Service method.
28
Delete Selected Notes from Preview.
Method deleteCartProduct(quesId: string, emailId: string): Observable<boolean>
Purpose To delete the user selected Notes from preview by user using the User Service
method.
Returns Success gives alert and error gives error alert.
Feedback
Method Feedback (feedback: string): Observable<boolean>
Purpose To store the feedback provided by the user using the User Service method.
Error Handler
Method errorHandler(error: HttpErrorResponse)
Purpose To handle any error, occur to the user while using application using the User
Service method.
Returns Error gives error alert.
Get Notes
Method getNotes(): Observable<any>
Purpose To get all Notes from the database using the Preview Service method.
Returns Return tempVar.
Preview Notes
Method previewNotes(emailId: string): Observable<any>
Purpose To get all Notes from the database using the Preview Service method.
Returns Return tempVar.
29
Set Notes
Method previewNotes(emailId: string): Observable<any>
Purpose To get all Notes from the database using the Preview Service method.
Returns Return tempVar.
Save Preview
Method view(Notes: any)
Purpose To get all user saved Notes from the database using the Preview Service
method.
Returns Return preview list of Notes.
Error Handler
Method errorHandler(error: HttpErrorResponse)
Purpose To handle any error, occur to the user while using application using the User
Service method.
Returns Error gives error alert.
Get Notes
Method getNotes(): Observable<INotes[]>
Purpose To view all Notes from the database using the API Service method.
Returns Return tempVar.
30
Fetch Notes
Method getNotes(): Observable<INotes[]>
Purpose To view specific searched Notes from the database using the API Service
method.
Returns Return INotes array.
Error Handler
Method errorHandler(error: HttpErrorResponse)
Purpose To handle any error, occur to the user while using application using the User
Service method.
Returns Error gives error alert.
31
3.6 Database Design Overview
• Name : Category
• Synonym name : none
• Description : This table is used to keep a record of the no. of courses
No Field Description Size Type Optional/ Default values
. Name Mandatory?
1 CID Course ID 4 int mandatory None
2 CName Course Name 100 nvarchar mandatory None
• Name : Feedback
• Synonym name : none
• Description : This table is used to keep a record of the feedback
No Field Description Size Type Optional/ Default values
. Name Mandatory?
1 FID Feedback ID 4 int mandatory None
2 Email Email 100 nvarchar mandatory None
32
• Name : Message
• Synonym name : doubt
• Description : This table is used to keep a record of the doubts asked
No Field Description Size Type Optional/ Default values
. Name Mandatory?
1 MID ID 4 int mandatory None
2 FName (From) 100 nvarchar mandatory None
Email
address
3 Tname (To) 100 nvarchar mandatory None
Email
address
4 messag Doubts asked 1000 nvarchar Mandatory None
e
5 Status Delivery/ 4 int Mandatory None
Read status
6 Edate Date and 8 datetime mandatory None
time
• Name : Registeration
• Synonym name : none
• Description : This table is used to keep a record of the no. of trainee
No Field Description Size Type Optional/ Default values
. Name Mandatory?
1 RID Registration 4 int mandatory None
ID
2 Name Name 100 nvarchar mandatory None
33
5 City City 100 Nvarchar mandatory None
Name : Staff
Synonym name : none
Description : This table is used to keep a record of the no. of Educator
No Field Description Size Type Optional/ Default values
. Name Mandatory?
1 SID Staff ID 4 int mandatory None
2 Name Name 100 nvarchar mandatory None
34
Name : Student
Synonym name : none
Description : This table is used to keep a record of the no. of trainee
No Field Description Size Type Optional/ Default values
. Name Mandatory?
1 SID Student ID 4 int mandatory None
2 Name Name 100 nvarchar mandatory None
Name : Upload
Synonym name : none
Description : This table is used to keep a record of the upload pdf
35
4 Title Title 500 nvarchar mandatory none
Name : File
Synonym name : none
Description : This table is used to keep a record of the upload file
No Field Description Size Type Optional/ Default values
. Name Mandatory?
1 VID File ID 4 int mandatory None
2 Staff Staff 50 nvarchar mandatory None
36
3.7 Snaps of Project
The above screenshot is the photo of home page of the project create during internship in
this both the two type of user i.e., Staff and Student have different log in section as well as
admin also.
The above screen shot is of the student registration section. Student can add themselves on
their own but the staff members will only be added via the admin.
37
Figure 15 Project Snap3
The above screen shot is of admin portal in which he/ she can add and delete staff members,
user and notes. The admin can also view the uploaded notes.
38
Figure 18 Project Snap 6
The user portal section of staff member with the visible functionalities
39
Chapter 4 Conclusion
The internships task and assignments assigned by the company’s mentor has been
completed in the given time. The assignment and project were asked so that we could get
familiarize with the topics that we learned during the internship period.
This internship provided a wealth of knowledge; not just to did I gain knowledge in Full
Stack Development, but I also learned about how a project is developed, how a team is
working, how another employee's task is tracked, how work is distributed among different
members of the team, what are the various developmental stages, what are the technical
problems that one may encounter during the development of a project, and what is required
before development begins. During the internship, I will have the opportunity to work with
some of the industry's best software engineers.
40