Professional Documents
Culture Documents
TRAINING
TRAINING IN - JAVA
ORGANIZATION - Cybrain Software Solutions
MENTOR - Mr Puneet Verma
TIME PERIOD - 19th Jan – 5th Feb
The first two weeks of the industrial training involved the process of familiarization with the
work environment, the tools as well as the colleagues I was to work with. The initial period
had me revisiting the concepts of core Java that had been learnt during my time at college,
and which would form the foundation in further study of the new concepts at hand. This
included a closer look at the now familiar topics of the control statements, inheritance,
applets, classes and methods. The whiteboard was our instructors preferred medium of
instruction and all candidates were required to carry personal laptops. Java 2 – A Complete
Reference by Herbert Schmidt proved useful.
The foray into Advanced Java started in this period with an introduction to the notions
beginning with the use of Serblets and JSPs. This involved a study if the role of web servers
and web clients and a briefing on HTML and HTTP, HTTP responses, and the use of GET
and POST. The Hypertext Transfer Protocol is designed to enable communications between
clients and servers. HTTP works as a request-response protocol between a client and server.
A web browser may be the client, and an application on a computer that hosts a web site may
be the server. GET requests a representation of the specified resource. GET may be used
arbitrarily by robots or crawlers, which should not need to consider the side effects that a
request should cause. POST submits data to be processed (e.g., from an HTML form) to the
identified resource. The data is included in the body of the request. This may result in the
creation of a new resource or the updates of existing resources or both.
The use of Servlets in comparison to CGI was studied. The process of creating a
servlet via (i) building a directory (ii) coding in a java file (iii) creating a deployment
descriptor was elucidated upon. CGI are usually executables that are native to the server’s
operating system, though servlets can also be compiled to the native OS it can be compiled to
Java bytecode which is then run on a JVM. CGI programs are platform dependent while
servlets are platform independent. CGI can directly process scripts while it needs to be
translated and compiled to before it can be run as a servlet. Servlets are Java classes which
service HTTP requests and implement the javax.servlet.Servlet interface. Web application
developers typically write servlets that extend javax.servlet.http.HttpServlet, an abstract class
that implements the Servlet interface and is specially designed to handle HTTP requests.
I was required to conceptualise the project which would culminate in my completion of the
training process. Further studies involved the Model-View-Container Design Pattern. The
architecture and deployment environment were examined. I was tutored in the use of Adobe
Dreamweaver for the time efficient creation of jsp files. I also charted an SDLC and
architecture on which my project would be based. MVC is a software architecture - the
structure of the system - that separates domain/application/business (whatever you prefer)
logic from the rest of the user interface. It does this by separating the application into three
parts: the model, the view, and the controller.
The inventors of
HTTP saw them as very different however. GET operations must be "idempotent" which just
means they have no side effects and repeated calls should give the same result. A pure query
in other words. POST operations should be used to send information to the server that will
change the state of some object or data store.
TIME PERIOD - 17TH MARCH – 31TH MARCH
The web server needs a JSP engine i.e. container to process JSP pages. The JSP container is
responsible for intercepting requests for JSP pages. This tutorial makes use of Apache which
has built-in JSP container to support JSP pages development. A JSP container works with the
Web server to provide the runtime environment and other services a JSP needs. It knows how
to understand the special elements that are part of JSPs.
Once the design phase was over, coding commenced. Coding is natural consequence of
design. Coding step translate a detailed design representation of software into a
programming language realization. Main emphasis while coding was on style so that the
end result was an optimized code. The structured programming method was used in all
the modules the project. It incorporated the following features
• The code has been written so that the definition and implementation of each function is
contained in one file.
• A group of related function was clubbed together in one file to include it when needed and
save us from the labour of writing it again and again.
Naming Convention
• As the project size grows, so does the complexity of recognizing the purpose of the
variables. Thus the variables were given meaningful names, which would help in
understanding the context and the purpose of the variable.
• The function names are also given meaningful names that can be easily understood by the
user.
The manual system is time-consuming, inefficient in large projects, requires ample amount of
manual labour and resources. Moreover, the tracking of data to be updated becomes tedious
job. Even the communication between the members of the project team is in person which is
not feasible sometimes and may cause a pause in the project development. In case of large
projects, it becomes difficult to view or refer to the bugs and their details that have already
occurred in the record.
TIME PERIOD – 15TH APRIL – 24TH APRIL
Even well designed and technically elegant systems can succeed or fail because of the way
they are used. Therefore the quality of the training received by the personnel involved with
the system in various ways helps or hinders, and may even prevent, the successful
implementation of an information system.
Since, Human Resource Recruitment Process is web-based and user friendly, not much effort
was required in training process.
So far, all the milestones that were identified initially have been successfully overcome, by
clearly defining all the roles of the users , namely, admin, project manager, tester, developer.
Their roles have been best possibly designed so that the Bug Tracking Tool works more
efficiently and it successfully overcomes all the limitations and drawbacks of the manual
system. Thereby, it gives an organisation a best possible platform for tracking of the bugs
occurring in software since even a single bug can create great havoc in the whole system.
Therefore, the bug tracking system, Bugster, is a software application that is designed to help
quality assurance and programmers keep track of reported software bugs in their work. It is
extremely valuable in software development, and can be used extensively by companies
developing software products.
•For a better communication and interactivity between team members, emailing concept has
to be added, wherein the user can communicate with other users then and there and get the
required information.
•Module for “forgot password” is also to be added, where the user on forgetting the password
need not communicate with the admin but simply answer to a question and gets logged in.
•Bugster can be integrated with other with other software project management application.
•It can be further enhanced to make it work like an Issue Tracking System.