+ All Categories

Univ

Date post: 14-Dec-2015
Category:
Upload: harsha
View: 214 times
Download: 0 times
Share this document with a friend
Description:
univ
Popular Tags:
66
WEB APPLICATION DEVELOPMENT USING JAVA 1 Table of Contents Methodology.................................................... 6 What is Action Research?......................................6 History of Action Research....................................7 Applications of Action Research................................7 Action Research Process.......................................8 Action Research Approach for Internship......................11 Literature Review............................................. 11 Java Programming.............................................11 Web-Application..............................................12 Unit Testing.................................................14 Agile Implementation.........................................15 Proposal...................................................... 16
Transcript
Page 1: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 1

Table of Contents

Methodology....................................................................................................................................6

What is Action Research?............................................................................................................6

History of Action Research.........................................................................................................7

Applications of Action Research.....................................................................................................7

Action Research Process..............................................................................................................8

Action Research Approach for Internship.................................................................................11

Literature Review..........................................................................................................................11

Java Programming.....................................................................................................................11

Web-Application........................................................................................................................12

Unit Testing...............................................................................................................................14

Agile Implementation................................................................................................................15

Proposal.........................................................................................................................................16

Iteration 1: Organization Orientation.........................................................................................16

manager and project lead while explaining the policies and application functionality and will

acquaint myself with the company procedures..........................................................................16

Iteration 2: Knowledge Transfer................................................................................................16

Page 2: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 2

Iteration 3: Involve in Project Development.............................................................................16

Iteration 4: Provide Support for Testing....................................................................................18

Iteration 5: Deploy the Application...........................................................................................18

Conclusion.....................................................................................................................................38

References......................................................................................................................................39

Page 3: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 3

List of Figures

Figure 1. The seven-step process for conducting action research...................................................8

Figure 2. Architecture for the development of web applications..................................................14

Figure 3. Iteration Flow proposal for development.......................................................................17

Page 4: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 4

Rite Software is a leading software provider company located in Texas, USA. The

company provides specialized solutions to clients globally. Core competency and the building

block of the company is the technical focus and client satisfaction. The company gives at most

importance to its customers by its proven methodologies, global talent and by continued focus on

research and development. The company has expertise in various fields such as mobile

applications, remote support, knowledge management and software application development. It

provides services ranging from outsourced application development, managed services and

professional services. It always strives to accomplish excellence in high-end technology and

creates groundbreaking products and services to its clients (“Rite Software,” 2015).

The main objective of the company is to provide a one-stop destination for its clients. The

company helps its clients to understand complex business difficulties. The vision of the company

is to be a prevalent supplier of imaginative business results, leveraging key innovations to

enhance our clients' aggressiveness, development and productivity. The company helps its clients

in achieving and maintaining their mission critical applications at peak performance and

scalability levels. The company employs effective methodologies for predicting system behavior

and performance under real life stress conditions and helps its clients to achieve their bottom line

(“Rite Software,” 2015).

Rite Software consists of skilled professionals who are capable of finding out the cause of

the problems, helps its clients in solving the problems of time, and saves money. They know all

the potential causes of the problem and provide a detailed report on what needs to be fixed to its

clients. The strengths of the company include in-depth expertise and experience in wide range of

technologies, platforms, tools and business solutions; proactive, repeatable performance

framework consisting of in-house tools and solutions; and reduction of licenses cost through

Page 5: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 5

alliance with SAP. The predictive performance framework of the company predicts the

application performance before deployment into production and performs analysis of potential

hardware configuration (“Rite Software,” 2015).

Rite Software offers anticipatory application solutions to help its business clients to stay

ahead of the competition. The company studies and understands the unique and distinct

processes of its client and develops applications specific to them. The company enables its

clients to leverage IT to realize their business strategies, and to explore new opportunities. Rite

Software delivers innovative solutions across number of technology platforms. Java/J2EE is one

of the technologies used in the company. Java is used in the development of various applications

in many companies because of its benefits such as security, performance improvement,

efficiency, and internationalization (P. Madhubala, personal communication, May 23, 2015).

The internship program offered to me at Rite Software is a Java Developer role. The main

responsibilities of the role include (P. Madhubala, personal communication, May 23, 2015)

Designing and coding programs, creating and running unit tests and assisting with user

acceptance testing to find errors and to revise programs.

Writing and reporting the documentation describing the design, installation steps, and

system constraints and operating procedures.

Writing programs of moderate complexity and scope, working with web based Java

applications.

Interaction with the designers, business clients and other developers in the team to

design, code, test and implement application programs.

Developing code for web pages that are available in the front-end applications.

Page 6: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 6

Through this project, I will be able to improve my programming skills as the internship deals

with developing code for the programs and have an opportunity to work with experienced

professionals, through which I can conduct some informational interviews with them and gather

data about the industry. It also helps me to gain real-world experience. This project involves

participation in meetings and discussions, which helps me to gain more information from other

team members and improve my skills. Furthermore, it helps me to understand the structure and

procedure for building and deploying any web application.

Methodology

What is Action Research?

Brighton & Moon (2007) emphasizes that “Action research is a systematic, disciplined

inquiry focused on addressing a specific, identifiable research question using the appropriate

methods; quantitative and/or qualitative to answer that question” (p. 24). It is a systematic and

rigorous process involving question formation, data collection, analysis, implementation and

reflection of the implementation (Koch, Kiener & Gitchel, 2009). Action research differs from

other forms of research mainly by an emphasis on scientific study, which means the researcher

studies the problem systematically. Apart from the emphasis on scientific study, AR differs from

other researchers in turning the people to researchers; willingly applying the things learnt, as

they do the research themselves; solving real-world problems; and openly expressing their bias

with other participants, at the same time remaining objective. A significant part of the

researcher’s time during AR is spent on refining the methodological devices that suit the urgency

of the circumstances, and on collecting, analyzing, and presenting information on a progressive,

cyclical basis (O’Brien, 2001).

Page 7: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 7

History of Action Research

Action Research came into presence on account of social analyst Kurt Lewin, yet behind

its existence a number of social activists, legislative and nongovernmental associations, and

scientists having direct and indirect influences were present (Glassman, Erdem, & Bartholomew,

2013).

According to Barton, Stephens, & Haslett (2009), Action Research mainly consists of

two stages (a) Diagnostic stage, where the problem is analyzed and hypotheses are developed

and (b) Therapeutic stage, where the hypotheses are tested by a change experiment, in a life

social situation. AR can be treated as a relationship between social action and research to

discover a transformative social change. In AR, members of social groups connect, participate in

discussions about the group relationships and participate together in a learning methodology to

make social change within their community. The change implies that AR is not an individual

effort but rather a change in entire community framework to work collectively for shared goals.

AR consists of a series of standards and procedures that depict how the events are to be

sequenced to initiate progress in human communities. Research acts as a driving force for

making a social action and to get out of the habitual thought process. AR insists that the ideal

approach to change goal-driven activity is by changing the interactional patterns of the

community. These new patterns in the community drive in the direction of democratic decision-

making to think of new possibilities for an action (Glassman et al., 2013).

Applications of Action Research

According to Brighton & Moon, action research has the potential to:

Page 8: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 8

Provides the basis for evaluating faculty teaching, student academics, and clinical

performance, and educational program improvement using systematic and rigorous

procedures (Koch, Kiener & Gitchel, 2009).

Solves issues that are of prompt concern for instructors, counselors, directors, and other

educators without holding up for others to intercede on their behalf. (as cited in Mills,

2000 &Tomlinson, 1995).

Places instructors in a dynamic part in the school change process and shapes school

culture that supports data-driven change (as cited in Mills, 2000 &Tomlinson, 1995).

Enables individuals through a coordinated effort with others and fosters them to reflect

on practice (as cited in Mills, 2000 &Tomlinson, 1995).

Enables individuals to explore issues or problems, and serves as a model for evaluating

learners, curriculum, or some aspect of program delivery. It has everything to offer those

in the “real world” (N. Padak & G. Padak, 2014).

Action Research Process

According to Brighton & Moon (2007), Action Research process consists of seven steps,

which are explained in detail below:

Figure 1. The seven-step process for conducting action research. Adapted from Step-by-Step: A

tool for educators to change their worlds by Brighton & Moon, 2007.

Page 9: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 9

Identify an area of focus. This step involves gathering information to understand the

area of study. Data gathering includes finding, inspecting writings on the topic to determine how

specialists view the phenomena; getting inputs from other partners in the group; refining the

topic to a specific research question that is to be answered in the ongoing action research process

(Brighton & Moon, 2007). A good research question consists of three major characteristics. First,

the issue chosen is to be important, and the issue should be either a problem or a new program

that is to be evaluated. The second quality is that the question should directly related to the

problem chosen to investigate, if there are multiple questions, each needs to be related to each

other and the questions together should solve the overall problem. Third quality is that the

question posed is to be answerable and answers are to be based on descriptions or observations,

which implies that a good question begins with ‘why’, ‘how’ or ‘what’ (N. Padak & G. Padak,

2014).

Write an action plan to guide the inquiry process. In this step, researchers create an

action plan for carrying out the inquiry process and start investigating. In some cases, this phase

includes a specific timeline for collecting data, sharing findings and enacting action. A document

that outlines the steps in the action research process is developed in this step (Brighton & Moon,

2007).

Collect data to address the research question. Data collection is made to understand

better the identified area of topic. The quality and the quantity of the data collected as a part of

the inquiry process assists the researcher to find an action to be made (Brighton & Moon, 2007).

Good data directly answers the posed question. It is good to collect data from more than one

source of information for a question to get valid results. Furthermore, readily available

Page 10: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 10

information can serve as a good source to answer questions, which is not only efficient but also

saves time (N. Padak & G. Padak, 2014).

Organize data. In this stage, the data that has been collected is to be organized and

managed effectively. Data that is not organized properly may affect the quality of the data

collected and thus affects the actions. This stage is sometimes regarded as unnecessary but is

critical in analyzing unorganized data takes a lot of time and might miss some required

information to answer the question (Brighton & Moon, 2007).

Analyze and interpret data. This phase involves examination of the data that is gathered

and organized in the previous stages to interpret the results (Brighton & Moon, 2007). Analysis

of data involves sorting the entire data into different categories. The sorting is made such a way

that each category shares some broader characteristic. Then a summary is developed for each

category that captures the essence as a whole (N. Padak & G. Padak, 2014).

Share findings with identified stakeholders. This phase involves sharing the findings

from the analysis stage with some specified stakeholders. This helps to get opinions in different

perspectives from the stakeholders in the design, analysis, and findings, which offer valuable

service before determining the final course of action (Brighton & Moon, 2007). Sharing can be

done either formally or informally through discussions and conversations. Writing about the

research in this phase provides additional insights into the research, and it serves as a material for

further analysis and interpretation. Also, documenting the research helps to have a permanent

record of the research, which can be used by others to learn from the project (N. Padak & G.

Padak, 2014).

Develop the action plan. An action plan is developed based on the analysis made on the

findings to create a change (Brighton & Moon, 2007).

Page 11: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 11

Action Research Approach for Internship

Action Research provides a framework for systematic inquiry process for an individual’s

practice. It can be conducted for any business projects or for academic works to find a solution to

a specific question. Action research is considered local and focuses directly on the issues faced

by students, individuals or anyone who conducts the research. It is not appropriate to generalize

the findings from the action research as opposed to formal researchers. The results or findings

from the Action research after conducting analysis are specific only to a particular circumstance.

Literature Review

As a Java developer, my responsibilities at internship include writing Java programs,

designing front-end web pages, and performing unit testing for the web-applications. For

developing the software applications, Rite Software follows agile software development

methodology (M. Shankar, personal communication, June 4, 2015). A detailed description of the

topics related to my responsibilities is presented in this paper.

Java Programming

Java was introduced to support object-oriented programming in 1995 by Sun

Microsystems and Java programming became popular with the slogan ‘write once, run

anywhere’ (Pancake & Lengauer, 2001). This slogan implies that Java provides application

developers an opportunity to write the code in a single language once and execute it virtually on

any operating system without making any modification to the code. Because the portability of

Java in multiple platforms is that the Java source code is compiled into bytecodes. Bytecode is

platform independent, and this bytecode is interpreted by a virtual machine that is platform

specific that converts the bytecode into platform-specific instructions at run time. A (Just in

Page 12: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 12

Time) JIT compiler is present which converts the bytecodes into native machine instructions for

faster execution (Pancake & Lengauer, 2001).

Authors Singhal & Nguyen (1998) emphasizes that, “Java language is rapidly becoming

an integral part of the enterprise environment. The environment provides the glue between

transaction monitors, persistent storage, concurrency, object life cycle, and naming services” (p.

36). Java provides a wide-range of features for interactive and internet programming (Pancake &

Lengauer, 2001). Java provides support for web applications through servlets. Servlets are the

Java applications that are invoked in response to the HTTP requests, and they provide web users

the access to manipulate the enterprise data. Servlets can also use Java Database Connectivity

(JDBC) technology to access SQL databases (Pancake & Lengauer, 2001).

An object-oriented methodology using Java EE technologies provides support for

efficient web-based applications. Because of the vulnerability of the web applications to various

risks, servlet security consists of authentication, authorization, confidentiality, and data

integration to prevent risks. Unified Modelling Language (UML) based methodology is used for

integrating object-oriented analysis along with agile methodology to provide security measures.

In this methodology, use cases are created with all the safety measures for the business

requirements collected (Kyung-Soo & Jung-Woong, 2014).

Web-Application

Web-application is a distributed application that runs on more than one system and

communicates with a network or server. These web-applications are popular because of their

user-friendly nature that allows the user to access the application through client browser instead

of installing and deploying the software in the systems of the clients. Nowadays web applications

Page 13: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 13

are used for e-commerce, online banking, emails, blogs, and many more. Millions of users can

access one web application that is deployed on a server through the internet (Nourie, 2006).

A single web-application consists of various programs, such as designing front-end web

pages, getting connections with the databases. For designing the user interface web pages,

markup or scripting languages such as HTML, CSS, or JavaScript are used. Java programming

language is used for back-end applications. Examples are to get a request from the client,

perform some business logic, and get some details from the database to provide the response

back to the customer for the application (Nourie, 2006). According to Mašović, Saračević,

Kamberović, & Kudumović (2012), creating web-applications with Java is simple in terms of

implementation and provides the better speed of execution for the developed product. The

architecture of a simple web-application described by them can be seen in figure 1 (Mašović et

al., 2012). There are several Java related technologies that are used to build a web application

such as Servlet API for writing the business logic, Java Server Pages (JSP). Writing the

presentation logic, Java Server Pages Standard Tag Library (JSTL) which contains core

functionality of common JSP applications, Java Server Faces (JSF) framework for providing a

rich user interface and many more. All of these technologies need not be used in a web

application, but there are various technologies apart from the technologies mentioned above that

can be used within a web application. Once the web application is developed using required

technologies, a web server is needed to deploy the application (Nourie, 2006).

Page 14: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 14

Figure 2. Architecture for the development of web applications. Adapted from Java technology

in the design and implementation of web applications by Mašović, Saračević, Kamberović, &

Kudumović, 2012, Technics Technologies Education Management.

Unit Testing

Unit testing occupies a significant role in object-oriented software development.

Development is adopted in Agile methodology, which helps to detect the bugs while coding for

the programs rather than performing testing after the completion of the coding (Pasternak,

Tyszberowicz, & Yehudai, 2009).This is regarded as a test driven development (TTD) method

that focuses on effective software development to avoid bugs by writing test and source codes at

the same time. A test code is a program used to verify whether the code of origin satisfies the

required specification and helps to change the source code if necessary to meet the test results.

(Funabiki, Matsushima, Nakanishi, Watanabe, & Amano, 2013). It provides a safety net for

performing regression and validation tests. Unit testing provides the below advantages:

Facilitates change. Unit testing fosters the developers to refactor code safely and ensure

that the code meets the expectations. Providing test cases for all the methods helps to identify

quickly the regression bug caused by a change and encourages fixing it (Pasternak et al., 2009).

It also helps the developers to change the code for a better program structure, as testing for the

changed code can be made instantly (Funabiki et al., 2013).

Page 15: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 15

Simplifies integration. The test process helps to test all the functionality individually

(Funabiki et al., 2013). This helps in simplifying the integration of the units that have already

been tested and ensures that the application developed so far is error free (Pasternak et al., 2009).

Documentation. Unit tests document the use of the units thus providing the developers

with the functionality of the program (Pasternak et al., 2009).

Managing, executing and analyzing the unit tests frequently is a tedious and complex

process. The difficulty level of a unit test depends on the number of units and the complexity of

the state of the class under test. It is an open-source framework to support and is designed in an

user-friendly manner for easy programming. Junit supports various methods for code testing and

the method’s name start with ‘assert’ keyword (Funabiki et al., 2013). It automates the unit tests

execution in a secure and efficient manner (Pasternak et al., 2009).

Agile Implementation

A software development methodology is critical for an effective integration of web

applications within an organization (Aken, 2008). Agile is a software development model that

enforces to deliver the application to the user quickly by accepting changes and with minimal

documentation. It also delivers best performance application that satisfies the user needs

(Warnars, 2011). Scrum methodology is the one among the agile software development

methodologies that enable developers to produce high-quality software in a limited period. It

improves the development process and accepts new requirements rather than locking of the

business requirements before developing as in waterfall is not necessary (Livermore, 2008).The

agile approach strives to accomplish and accept the changes while maintaining awareness of the

consequences, rather than resisting the changes (Aken, 2008). In Agile Scrum methodology, the

entire project is divided into sprints with a specific number of tasks allotted in each sprint. Its

Page 16: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 16

main focus is on management of the development process rather than coding techniques

(Livermore, 2008).

Proposal

Iteration 1: Organization Orientation

In the orientation phase, the manager gives an overview of the organization structure,

policies and the procedures of the company. The manager then explains the roles and

responsibilities of architect, developer, quality assurance, and database teams that are involved in

the development of the application that is assigned to my internship. A project lead is assigned to

assist the interns to understand their roles and responsibilities. I would pay close attention to the

manager and project lead while explaining the policies and application functionality and will

acquaint myself with the company procedures.

Iteration 2: Knowledge Transfer

Project lead explains the overview of the application, describing the business

requirements and the functionality of the application. The lead also provides an overview of the

coding used for the application and discusses the IT procedures that are to be followed such as

whom to contact when a problem occurs, and when to contact the security team. I will be

provided with access to all the required applications, servers, and all the necessary software are

installed on my local machine.

Iteration 3: Involve in Project Development

After understanding the functionality of the application, I will be assigned to work on

making enhancements for the application. Project lead explains the functioned that is to be added

in the application.

Page 17: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 17

Figure 3. Iteration Flow proposal for development. According to M. Shankar, personal

communication, June 4, 2015.

Iteration 3Involve in Project Development

Iteration 4Provide Support for Testing

Iteration 2 Knowledge Transfer

Iteration 1Organization Orientation

Plan Act Observe Reflect

Plan Act Observe Reflect

Plan Act Observe Reflect

Plan Act Observe Reflect

Plan Act Observe Reflect

Iteration 5Deploy the Application

Page 18: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 18

Iteration 4: Provide Support for Testing

After the completion of developing the code, I assist the quality assurance team in testing

the developed code. Rigorous testing is made to test the effectiveness of the developed code and

a demo is provided to the business users to get their approval for the developed code.

Iteration 5: Deploy the Application

Once the code gets approval from the business users, the application is ready to be

deployed on the web server. I am supposed to work with the middleware team to deploy the

application properly into the server.

Iteration 1-Orientation

Iteration 1- Orientation focuses on the introduction for the newly hired employees at the

Rite Software LLC.

Plan

My Internship at Rite Software LLC starts from June 24, 2015. An orientation session has

been scheduled on June 23, 2015, for all the interns from 9 a.m. to 5 p.m. It is a two level

orientation where the first is at the company level and the second is at the project level. The

company level orientation is a 4-hour session from 9 a.m. to 1 p.m. It will be delivered by the

HR manager, Joseph, and the project level orientation is a 3-hour session from 2 p.m. to 5 p.m.

by the project manager, Sandy. Furthermore, the project manager said that he will be offering

lunch from 1 p.m. to 2 p.m. for all the team members so that everyone can get acquainted with

each other. The company level orientation will take place in a seminar hall with all the interns

present and will be delivered by the HR manager through a power point. She introduces the

topics such as the vision and mission, history of the company, organization policies, and the

Page 19: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 19

business description of the company. Later, the project level orientation will be a one-on-one

session with the project manager. He covers topics such as organization structure, the number of

members of a team, high-level project description, my responsibilities and my action plan for the

entire duration of the internship. The main goal of the two-level orientation sessions is to gain an

understanding of the organization rules and the project in which I will be involved (S. Prabhakar,

personal communication, June 19, 2015).

From my side, I have scheduled a personal interview with the project manager over the

phone before the orientation session to gather some information about the project. Through this

interview I got an overview of the project, the technologies used, and tools involved. I also came

to know that the project mainly uses Java and J2EE technologies such as Core Java, Servlets, JSP

(Java Server Pages) and JDBC (Java Database Connectivity). All the information that I gathered

helped me to prepare myself and get acquainted with the tools and technologies before my actual

involvement in the project.

Action

On the day of orientation, I reached the office at 8:45 a.m. and went to the seminar hall

where the orientation session has been scheduled. HR manager and some other company officials

were already present in the seminar hall, and they were making the arrangements for the

orientation session. There were about 20 newly hired employees along with me at the seminar

hall. HR manager, Joseph began the session by introducing himself to all the interns. Then, he

started to explain about the vision, mission, policies, procedures, business description, and

benefits to the employees and the history of the organization through a power point presentation.

The presentation took place for around 2 hours, until 11 a.m. Then a 20-minute break has been

given until 11:20 a.m. for refreshments. Later, the newly hired employees raised some questions

Page 20: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 20

to which the HR manager explained very clearly. Then, all the employees in the hall were given

new employee forms to be filled. An employee identification number has been issued for each

new employee. Some of the officials present in the seminar hall assisted us in filling the forms.

The process of filling the forms and submitting them to the officials ended at 1 p.m. Then after

the HR manager introduced the new employees to their respective project managers. The project

manager, Sandy was assigned to me, and he introduced me to the team members of the project in

which I will be involved. After introducing everyone in the team, the project manager took all

the team members to lunch at a nearby restaurant. During the lunch, everyone shared their

interests and past experiences with each other. After the lunch, we returned to the office at 2:30

p.m. The project manager and I had a one-on-one session in the project manager’s cabin, as I am

the only new member of the team. In the one-on-one session, the manager discussed the project

at a high level, detailed my daily responsibilities and provided me an action plan for the entire

internship period. He also said that I will be involved in the development of the web application

by using Java technologies such as Servlets, JSP (Java Server Pages) and JDBC (Java Database

Connectivity). He suggested me to read the documents about the project that are present in the

company’s internal portal. Furthermore, he said that the company offered online training sessions

and suggested me to join them to gain more in-depth knowledge about the projects and

technologies. The one-on-one session took place until 4 p.m.

Observation

The orientation session helped me to familiarize myself with the working process of the

company, understand the terms and conditions and acquaint myself with the people I will be

working with. The session helped me to get relief from stress and get acquaint with the people

and policies before involving in the actual work and at the same time it is welcoming for the new

Page 21: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 21

employees. It provided me knowledge about how my responsibilities relate to the achievement of

the vision and goals of the company. I got a clear understanding of what the company is

expecting from me and the benefits that I get out of the internship. It also gave me an idea of

what to expect from others also to learning about the values and attitudes of the organization. I

feel that the orientation program is perfectly planned, and it helps the new employees to avoid

potential and unnecessary damages.

The project manager of the project for which I am assigned explained my responsibilities

as a Java Developer in the company. I came to know that I will involve in the development of the

web application and the enhancement of the existing modules. I will be working with the

business analysts and architects team to gather the business and functional requirements to

design the use cases. I will then be involved in writing Java code in the development

environment and after the completion of development part, I will be writing unit test cases to test

the code’s accurateness. After that, I will be supporting the quality assurance team in performing

regression and integration testing in the testing environment. Once the code has been tested, the

development team works with the middleware and database team to deploy the application on the

server. I gained information about the tools used for the application development so that I can

install those required software on my local machine.

Reflection

Through the orientation session, I have learned many things that I can adapt to myself to

improve my skills. The entire session took place according to the scheduled timings and

everyone in the company arrived on time to the session and everything is perfectly planned.

Through this, I learned that everyone is very disciplined, responsible and initiative. I am very

much impressed by the organization of the whole orientation session. I learned about the history

Page 22: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 22

of the company and how each department’s work in the organization is related to the company’s

mission. I noticed that the work environment is very friendly and welcoming.

By closely observing my project manager, I noticed that he had good leadership qualities

and problem-solving skills. Through this, I learned that to lead a team one has to possess

excellent skills to tackle the problems and run the team in a smooth manner. Moreover, I learned

that apart from the technical skills, interpersonal and communication skills are essential when

working in a team. Various departments have to coordinate with each other in finding the source

of the problem in the case of any issue. However, I did not have much interaction with the other

teams who will be working with such as the business analysts, architects, and the database team.

I hope I will get along with them during my internship and understand their role and importance

in the application building.

Iteration 2 – Training

Plan

The second iteration is training. As part of the internship program, Rite Software has set

up a training session to train the new joiners with the technologies they will be using in the

application and to provide them with the end-end flow of application. This iteration is planned to

take place from 10 am to 4pm for 10 days and it takes place under the supervision of a trainer

who is assigned to provide all the support and guidance for new joiners. All the details of the

training program will be given to the new joiners beforehand detailing the concepts that will be

covered during each day. The training session also covers various topics such as the tools and

software required for the application development, procedure for setting up the workspace in the

local workstations, techniques used for the team collaboration, assigning tasks to the team

members, managing the incidents and the detailed process of placing the code from the

Page 23: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 23

development environment to production environment. A workstation will be provided for all the

interns to perform their jobs and the instructions for setting up the workspace in their local

machines will be provided during the session and a document will also be provided that details

all the steps and the necessary software that are to be installed in their machines. Once the

machine gets set up and gets the application running in the local server, we can look at the code

and understand the application. The process to debug the application in the local machines will

also be discussed in the session so that we get to know about the application flow in various

scenarios.

As said by manger, the project that we will be working on is an ‘Eligibility and

Enrollment’ project for a Health Insurance Company. This is an existing project and we will be

involved in the enhancement of various modules and in incident and defect fixing. As the

application is built by using the Java based technologies such as Spring, Hibernate, JSP, Maven

and Servlets, we will be trained on these technologies and how these technologies are used in

various scenarios for efficient functionality. The entire training process which is scheduled for 10

days helps all the interns to get an idea of what they can get from the internship and what they

should prepare beforehand to gain the best out of the internship. This acts as a bridge between

the concepts that one has learnt during their education and how they are adopted in real-time

projects (K. Nukaraju, personal communication, June 22, 2015).

Action

All the new joiners gathered together and joined the training session in the conference

room. Mr. Kumar, who is the supervisor of the training program introduced himself to the team

and asked everyone in the room to introduce themselves. After the introductions, he has given a

presentation on security measures such as HIPPA, FTI (Federal Tax Information) and PHI

Page 24: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 24

(Protected Health Information), as it is a health care domain. Then after documents regarding the

topics covered in the presentation are provided to everyone in the room and he has given some

time to read the documents and asked everyone to take an assessment on the topics discussed by

the end of the day. We are also provided with some documents that are to be filled in, which we

filled and handed over to the trainer. A laptop is provided to everyone and a unique user id and

password are provided to open the system and credentials to connect to the company network.

The company is using IBM Lotus Notes for emails and each new intern is provided with an

email id to communicate with the team members. After that, we are given a small break of 10

minutes and when we returned, Kumar has given a brief overview of the application and the

module that our team will be working on. Then we were given a lunch break for 45 minutes from

12:30 to 1:15 pm. In the afternoon session, we are given a photo id, which we use to enter into

the office, and an hour is given for taking the security assessment which was discussed in the

morning session. After that, we had a discussion with the team members about the application

and Kumar has clarified all of our doubts. The training session for that day ended at 4 pm.

For the next two days, we worked on setting up the workspace according to the

documents provided for us. I was able to complete the entire process by taking help from the

team members and gained access to required applications and databases by installing all the

necessary software. Simultaneously along with the installation process, we were also having a

knowledge transfer session for about 2 hours each day about the concepts of Java and their

importance in the application development. We were given some documents for the topics

discussed and we were assigned some tasks for practice.

The training for the next two days took place on ORM framework Hibernate that is used

by the company in the ‘Eligibility and Enrollment’ application for integrating with the database.

Page 25: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 25

We are also trained about the concepts of the database DB2 that is used in the project and about

SQL for DB2 as we have to work on writing some SQL queries to get the required data stored in

the database. We were given some tasks to practice during the weekend and the trainer said that

he would clarify the doubts about the tasks assigned when we come back on Monday.

The trainer started the session by clarifying the doubts about the tasks assigned last week.

Then after he continued with the training session and explained about the Spring framework, all

the concepts required for the project functionality were explained during this session. He

discussed how these concepts and used in the project and clearly explained when to use them for

efficient functionality. And he explained about the web application, the project structure, Eclipse

IDE which is used to write the Java code and develop the project and about various streams in

which the code is available and the process of flow of the code across various streams such as

Dev, UAT (User Acceptance Testing) and Production. He said that these streams are very

essential and we normally write the code in the development environment and the code is

reviewed by the manager. After the proper working of the code, it is moved to the UAT

environment where the testers test the functionality of the application and assign the defects back

to the developers if there are any.

For the last three days of the training session, we were given the task of creating a simple

login application using all the technologies and topics discussed during the entire training

session. The trainer assisted everyone in performing his or her tasks and he gave some idea of

how to create the web application. Moreover, during these three days, we got sufficient

information about the project ‘Eligibility and Enrollment’ and how all the topics discussed

during the training were used. He discussed with us about the business rules of the project and

about the end-to-end flow of the application by reviewing the code and explained about the flow

Page 26: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 26

that takes place in various scenarios. The training session ended with a group discussion among

all the team members. At the end, the trainer mentioned about the tasks that we would be

working on in the next iteration that is the development iteration.

Observation

The training program helped me to gain knowledge from both technical and professional

perspective. The technical aspects that I grasped from the training session are that, I was able to

understand the importance of the Spring framework by means of the tasks that we performed and

that practical experience helped us a lot as we were able to come across various errors that we

experience and how to solve them. The training was very helpful because, once we get to start

working on the actual development; we would be able to easily solve the issues when we face

them. I also came to know that however big the application might be, the basic concepts are very

crucial and fundamental for the development. Some of the research that I made before the

beginning of the internship helped me a lot during the training session as without that homework

that I have done it would have been very difficult for me to grasp the concepts covered during

the training session. When we were asked to create a Login application with the technologies

discussed during the training session, I came to know the practical usage of the concepts and

how the basics play a key role in writing the code. The simple application that we created was

very challenging and at the same time, it was very interesting as it was like a small project where

all the team members worked together when there were issues and we were also provided with

some business requirements that are to be fulfilled. By this I came to know how the real time

projects would be and how the team members collaborate with each other and try to figure out

the issue by considering all the possible scenarios and getting ideas from all the team members.

Page 27: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 27

Apart from the technical perspective, I was able to gain knowledge on various things that

are essential in a professional career. Some of the important things are to understand the business

requirements before starting the development, problem solving skills when we face an issue,

organizing the data, documents and files properly and working in a team cooperatively. All these

things are very essential as they determine the quality of work that we perform. For example, the

purpose of IT is to satisfy its clients, so we need to understand the business requirements and

what the clients are expecting and then the development should start, if not the entire time spent

on wrong requirement would be unproductive. Of course, it is common that some requirements

may change during the course of time, but one should make sure that the requirements collected

are up to date before the development process. In addition, when we start to work on the actual

project we end up having lot of documents, software, different login credentials to access the

databases in different environments and various software. Proper organization of all these files,

documents and login credentials are essential as one may end up misplacing them and consumes

a lot of time when trying to search for them when required. Furthermore, team collaboration and

problem solving skills are very essential as we come across various errors when working on the

actual application, at that times team collaboration helps to gather ideas from the team members

and solve the problem rather than spending lot of time at an error and trying to solve it

individually.

Reflection

Through the training phase that took place during the internship, I was able to learn many

new things about the technology and health insurance, as this project deals with the eligibility

and enrollment of the users for the health insurance plans. I am not much aware about the

terminology related to the health Insurance before, but after the training, I am able to get an idea

Page 28: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 28

of health insurance plans and the rules that determine the eligibility of a person to a particular

healthcare program. About the technology, now I am confident that I can create a simple

application of my own and able to solve a problem if there is any issue with the code.

I also became familiar with the work environment, the company policies and attending

the daily standup meetings in an agile environment where the team members update their status

on the tasks they are performing. I learnt about various software tools used for different purposes

such as the email communication software INotes, and Jazz for assigning the defects to the

employees and for tracking the status of the progress of the team members on the tasks assigned

to them. I think that the training conducted provides both the company as a whole and the

individual employees with benefits that make the cost and time a worthwhile investment.

Iteration 3- Development

Plan

The third iteration of the Internship is a development phase, where we will be

involved in the development of the application. As this is the main phase of the internship

program, it continues for 5 weeks. In addition, as the application is already an existing one the

team lead said that he will be assigning us the tasks related to enhancement of the modules and

bug fixing. Enhancement is adding a new feature to the existing system, where bug fixing is

identifying the flaws in the existing system and rectifying them. We were said that in order to

complete these tasks we should have a very clear understanding of the system and the business

flow. Moreover, as this is a Healthcare application related to the Insurance we need to be very

clear about all the terms related to the insurance, without that it would be very difficult when one

tries to understand the code and the database tables. Initially I discovered that there are many

terms that I am unfamiliar with related to Insurance, so I decided to gather information about the

Page 29: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 29

Health Insurance and become familiar with its terminology as part of my plan during this

iteration. For performing the enhancements, we are advised to communicate with the Business

Analysts and with the Architects and participate in meetings with them. In the meetings,

discussions take place about the business and functional requirements for the enhancement. After

rigorous discussions, the requirements will be finalized and will be approved from the higher

authorities. Then after documentation of those requirements will be made. In this phase, we will

also be involved in the defect fixing tasks. Team lead asked few of the new joiners to work with

Mr.Rohit, Sr. Java Developer in making some defect fixes. The Rohit said that he will be

discussing about the some of the issues that the system is facing now. Then we need to make an

analysis and find out the root cause of the problems. After identifying the root cause of the

problem, we need to discuss it with Rohit and decide if that is the root cause for the problem,

else we need to continue on our analysis. Once the root cause has been identified and confirmed

that it is the one, then proper steps are to be made to resolve and fix the issue. Fixing of the issue

can be made either by simulating the same scenario that is causing the problem and debugging it

in your local machine to find where exactly in the code there is a flaw and fix it or if the issue is

a minor one and its fixing takes a lot of time, then it can be resolved temporarily by data

correction process. Data Correction is solving the problem for short-term by correcting the data

in the database instead of completely fixing the issue (B. Rajneesh, personal communication,

June 24, 2015).

Action

The main phase of my internship, which is development, started with an analysis task.

The purpose of the analysis is to identify the activity or circumstances that constitute a potential

security incident or concern. A Security Incident is defined as any irregular or potentially

Page 30: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 30

adverse event or circumstance that could have a negative impact on the system, and/or its assets

or clients. It is important to remember that if one encounters an irregular issue out of the

ordinary, it needs to be reported whether it is potentially adverse or a breach. I gathered all the

information and the procedure for doing the analysis and started my task. I began my analysis

process by looking at the database tables and analyzed all the details for the record that is given

to me which is having an issue. I did the analysis from my side and discussed it with Rohit if I

my going in the right direction. He suggested me to investigate further and gave me advice from

where to start by considering the same scenario. After careful analysis, I found out that there is a

flaw, that the values in the database are not as expected and I found out the actual reason, which

is responsible for causing that error. When I looked at the code, I found out that there is not code

written to handle the situations of that kind. I shared my observations with Rohit. He said that

fixing this issue would take a lot of time, so he suggested me to temporarily solve the issue by

making Data Correction for those kinds of records in the database. The company to make the

Data Corrections to the database records follows a standard procedure. A document was given to

me detailing the steps to raise an Incident and make the Data Correction for the records. For

raising an Incident the tool, RTC client is used by the company. In that tool, we can create a new

Incident describing all the details such as the number of records affected, the name of the

reviewer of the script, and the description of the incident. One can attach the file where you have

written the script to make the data correction. The script written for the Data Correction needs to

be reviewed and approved before it is executed in the production database. After the approval,

DBA’s execute the script in the database that is replication of the production and once the script

is executed successfully in that database, the DBA’s then execute the script in the actual

Production database. As the fix has not been made for the instance, Rohit suggested me to spend

Page 31: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 31

some time for fixing the issue in my free time. He said that would be a good learning experience

for me even though it is not required to fix the issue urgently.

Observation

The initial task that was given to me during the development iteration which is the

analysis task to figure out the issue that is causing the problem. I came to know that it is not an

easy task as this is the basic step that determines the potential incident or the concern. In order to

make this analysis it requires complete knowledge of the entire application flow. As this is a

project related to Health Insurance and I am not much familiar with the terms and usage of the

health insurance, so as part of my plan I decided to spend some of my time to understand the

terms and its terminology. Learning those concepts and getting familiar with those terms helped

me a lot to grasp the end-to-end flow of the application easily. All the research that I made and

the training together fostered me to make the analysis in a systematic process and determine the

problem’s root cause.

The standard procedure followed by the company to raise an incident through the RTC

client tool is very useful to keep track of the incidents and the employee who is responsible for

the incident. The tool also helps to keep track of all the incidents that are in progress and the ones

that are completed. There are also lot of benefits with the RTC client tool, such as the team

members can share their workspaces with other team members can share the code and the fixes

made by them. Moreover, the changes made to the code by one team member can be shared

across all of the team members, so that the code can be shared among everyone by accepting the

changes made by others. By this way all the workspaces of all team members remains same.

Another task in which I am involved is the defect fixing, where I am required to find out

the root cause of the problem for the Auto Enrollment failures. Auto Enrollment is a process to

Page 32: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 32

automatically enroll the people for the health insurance plans as opposed to user directly

enrolling through the user interface. However, there is some issue with the auto enrollment

process in some scenarios. During these scenarios, the accounts are not able to enroll

automatically. There are about 3000 accounts that are facing this problem. The errors are similar

for most of the accounts, so fixing the issue for a single error can clear lot of accounts and they

can be enrolled automatically. To find out the reason for the problem, I started my process

beginning from the logs. I am able to find out the logs for a particular account facing the

problem, and able to locate that code where that exception is being caused. By looking at the

code, I am able figure out the actual reason for the code. Now we are clear what is the causing

the problem, the challenge before us now is to fix that issue. However, we temporarily solved it

by data correction, but I am doing research from my side with the help of other team members to

simulate the same scenario in my local machine and find out a solution to fix it. Through the

entire process, I came to know how to resolve a problem.

Reflection

During this Development iteration, I have gained many experiences and I would like to

use all of them to strengthen my career. One thing that was at most useful to me was how to

solve a problem. Whatever the case it might be either in your education or in the profession

whenever a problem arises, the first thing one need to do is to identify and understand the

problem. Only when the problem is understood clearly it can be solved. If you were not clear

about the problem and are trying to solve it, then the time spent on it would be unproductive.

While assigning as the tasks, Rohit clearly explained what the problem is, so that we are on the

right track and we know exactly what the problem is. Once we are clear about the problem, the

first step that we took is to explore the errors that we are getting. The errors for the production

Page 33: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 33

are stored in the logs file. We took a particular account for which there is a problem in the Auto

Enrollment and then started to look into the logs to find out the error for that account. Then

understanding the error clearly and exploring it in the right direction is the next step I have taken.

The entire process of solving the problem is procedural and I think this is a very crucial skill that

an IT professional should have.

Furthermore, the standards and the procedures followed by the company to track the

progress of the tasks, to follow the security standards and gain the customer satisfaction helped

me understand how important the policies are for a company. There are many standard

procedures that every employee should follow such as to attend the security training sessions for

every three months, to destroy the documents that contain confidential information about the

customers and to fill in the forms if one requires access to the Production databases and the

applications. I filled in the forms to get the Production database, as I require the data to perform

certain analysis on the data in the Production.

In addition, different software tools are used by the company such as RTC Client, Jazz

Repository to keep track of the defects assigned to various team members and the status of the

each defect. I understood that a defect is to be approved by the project manager before it can be

assigned to anyone. Moreover, a lot of analysis takes place before confirming that it is a proper

defect or not. Initially an incident is created when one is working on the analysis to find out the

problem, then after a decision is taken whether the incident is a defect or else it is not considered

a potential threat to the system. Once the defect is confirmed, a solution is determined to fix the

issue. For fixing it, the same scenario that is facing the issue is recreated and debugging is

performed to understand the step by step flow of the process. As part of my task, I performed

such a task to recreate a scenario and debug it, and that was very great experience as I have come

Page 34: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 34

to know how the flow takes place and I tried to understand how the code is written and what

technologies were used to achieve that functionality. Overall, it was a great experience to involve

in the development of a real world application.

Iteration 4 – Testing

Plan

The fourth iteration at our internship is the testing phase, where we have Unit Testing and

end to end testing which is the Regression Testing. The plan for this phase is to write the unit test

cases for the defect fixing code I have made and once the unit testing is successful for all the

scenarios the testing team has to perform the regression testing where they perform the end-to-

end flow of the application. While writing the unit test cases each scenario is to be considered so

some discussions are to be performed before writing them. After deciding all the test case

scenarios, they will be documented. After completion of writing the test cases in the document

other senior developer in our team will review them. After reviewing, they execute each test case

in the document and mentioned whether it is success or failed. I will then have to re-verify the

failed test cases and update them. Once unit testing is successful for all the test cases, I need to

work with the quality assurance team and assist them is performing the end to end testing.

For performing the unit testing and writing the unit test cases I was asked to use the

JUnit framework. During the training, I learnt the basics of this framework, but have not used

them practically, so I decided to practice writing the unit test cases with the help of some

examples. I also asked my project manager to provide some documents regarding the framework.

I gathered all the necessary documents required for performing the task and spent some time for

practicing the concepts. I also took advice from the senior team members (B. Rajneesh, personal

communication, June 24, 2015).

Page 35: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 35

Action

After the development phase, this is the phase where I need to perform the unit testing

and assist the testing team to perform the regression testing. With the help of the concepts I have

learnt and by taking the advice from my scenarios, I have written the test cases and got it

reviewed it with one of the senior developer in the team. He gave me some suggestions and

asked to modify the test cases for some of the scenarios. I followed his advice and modified them

according to his suggestions. After the completion of all the test cases, I have prepared the test

document detailing all the test case scenarios. For preparing, the document and I took a sample

document from the manager and used it as a reference. Once everything from my side is

complete, I handed over the documents to a senior developer in our team and asked him to

review the teat cases. He executed all the test case scenarios present in the document and updated

the result as either success or failure in the document. He gave me some suggestions and asked

me to modify the test cases that have failed. I have updated the test cases that have failed by

considering his suggestions and modified the test document according to the new changes and

got them verified with him again. Now everything is successful, so I got the document approved

from the manager.

After the completion of the Unit Testing, I was asked to assist the Testing team to

perform the Regression Testing. This phase can also to termed as User acceptance Testing. I

explained the testing team different scenarios and asked them to perform the end-to-end flow

testing for all the scenarios explained. They performed the testing and reported me some issues

with a particular scenario. I looked at the issue and figured out the root cause of the problem.

There was some small issue with the code where a particular condition has not been mentioned. I

reported the issue to my manager, he asked the Incident management team to create a defect and

Page 36: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 36

assign it to me. I took the help of other developers in my team to perform that task. I used

conditional if else statements in Java to resolve the issue.

Observation

Unit Testing is a level of the software testing process where individual units/components

of a software/system are tested. The purpose is to validate that each unit of the software performs

as designed. A unit is the smallest testable part of software. It usually has one or a few inputs and

usually a single output. In procedural programming, a unit may be an individual program,

function, procedure, etc. In object-oriented programming, the smallest unit is a method, which

may belong to a base/super class, abstract class or derived/child class. Unit testing frameworks,

drivers, stubs and mock or fake objects are used to assist in unit testing. The developers perform

this testing phase before the quality assurance team performs the end-to-end testing which the

regression is testing.

I observed that this Testing phase plays a very important role after the development. It

determines the users the developed code is deployed into the production approve the proper

functionality of the application and only after the acceptance of the functionality. If there are any

issues during the phase, the code is to be re verified by the development team and have to fix the

issue. I also observed that while performing the Unit Testing by the developers, each scenario is

to be considered and many discussions take place to finalize all the test cases. Here it is also

important to document the test cases; I think that the documentation is very useful as it can be

used as a reference in future.

Reflection

Working on testing phase was a very great experience as I have gained knowledge on the

process to test the functionality of the code written such as writing the unit test cases. Here while

Page 37: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 37

writing the unit test cases each scenario is to be considered and a test case has to be written for

each scenario. The discussion among the team members for gathering the test case scenarios was

helpful as everyone contribute their ideas and within a limited time all the scenarios can be

gathered. The documentation that I have created for the test cases gave me an idea of how to

document the test cases and I came to know about the procedures for the approval of the

documentation from the project manager and the higher officials. As we have used the Junit

framework for writing the unit test cases, I became familiar with that technology and now I will

be able to write unit test cases for different scenarios. I came to know that the testing team

performs the testing in such a way that the developers will not be able to find such cases, when

the they said that there was some problem for a particular scenario. When I looked at that issue, I

realized the mistake and tried to write the code for that case. This experience helped me to

understand that knowledge of business rules and conditions is very essential, as while I wrote the

code for the first time I have missed to write code for a particular scenario.

I realized that testing is a vital part of software development, and it is important to start it

as early as possible, and to make testing a part of the process of deciding requirements. To get

the most useful perspective on the project, it is worthwhile devoting some thought to the entire

lifecycle including how feedback from users will influence the future of the application. Testing

is part of a lifecycle. The software development lifecycle is one in which you hear of a need, you

write some code to fulfill it, and then you check to see whether you have pleased the

stakeholders—the users, owners, and other people who have an interest in what the software

does. I hope that they like it, but would also like some additions or changes, so you update or

augment your code; and so the cycle continues. This cycle might happen every few days in case

of agile software development lifecycle.

Page 38: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 38

Conclusion

Thus, the Action research can be applied to the internship in findings results for any

specific research question posed while performing the internship. Initially, a topic that one likes

to investigate is selected. For example, one could look at the strategies and procedures follow to

develop an application. Action research can be used to investigate how a change in the strategies

affects the developing efficiency and what new programming techniques can be used for better

development of the application. After selecting the topic to investigate, a research question is

posed, and the goal is to develop a situation to improve it. Then after, a plan is designed for

carrying out the investigation, gathering and organizing the data, analyzing the information to

reflect on and improve the application development process. The results help to reflect on, to

learn from the mistakes and to plan for the next iteration effectively.

Page 39: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 39

References

Aken, A. (2008). CHUNK: An Agile Approach to the Software Development Life Cycle.

Journal of Internet Commerce, 7(3), 313. doi:10.1080/15332860802250385

Barton, J., Stephens, J., & Haslett, T. (2009). Action Research: Its foundations in open systems

thinking and relationship to the scientific method. Systemic Practice & Action Research,

22(6), 475-488.

Brighton, C. M., & Moon, T. R. (2007). Step-by-Step: A tool for educators to change their

worlds. Gifted Child Today, 30(2), 23-27.

Funabiki, N., Matsushima, Y., Nakanishi, T., Watanabe, K., & Amano, N. (2013). A java

programming learning assistant system using test-driven development method. IAENG

International Journal of Computer Science, 40(1), 38-46. Retrieved from Computers &

Applied Sciences Complete.

Glassman, M., Erdem, G., & Bartholomew, M. (2013). Action research and its history as an adult

education movement for social change. Adult Education Quarterly, 63(3), 272-288.

Koch, L., Kiener, M. S., & Gitchel, D. (2009). Action Research in rehabilitation education:

Curricular applications. Rehabilitation Education, 23(3/4), 205-213.

Kyung-Soo, J., & Jung-Woong, W. (2014). Development of object-oriented analysis and design

methodology for secure web applications. International Journal of Security & Its

Applications, 8(1), 71-80. doi:10.14257/ijsia.2014.8.1.07

Livermore, J. A. (2008). Factors that significantly impact the implementation of an agile

software development methodology. Journal of Software (1796217X), 3(4), 31-36.

Retrieved from Computers & Applied Sciences Complete.

Page 40: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 40

Mašović, S., Saračević, M., Kamberović, H., & Kudumović, M. (2012). Java technology in the

design and implementation of web applications. Technics Technologies Education

Management. Retrieved from

https://www.academia.edu/3248045/Java_technology_in_the_design_and_implementatio

n_of_web_applications

Mills, G. E. (2000). Action research: A guide for the teacher researcher. Upper Saddle River,

NJ: Merrill.

Nourie, D. (2006). Java technologies for web applications. Retrieved from

http://www.oracle.com/technetwork/articles/javase/webapps-1-138794.html

O’Brien, R. (2001). An overview of the methodological approach of action research. Retrieved

from http://www.web.net/~robrien/papers/arfinal.html

Padak, N., & Padak, G. Research to practice: Guidelines for planning action research projects.

Retrieved from http://literacy.kent.edu/Oasis/Pubs/0200-08.htm

Pancake, C. M., & Lengauer, C. (2001). High-performance Java. Communications of the ACM,

44(10), 98-101. Retrieved from Business Source Complete.

Pasternak, B., Tyszberowicz, S., & Yehudai, A. (2009). GenUTest: A unit test and mock aspect

generation tool. International Journal on Software Tools for Technology Transfer, 11(4),

273-290. doi:10.1007/s10009-009-0115-4

Rite Software (2012). Rite Software. Retrieved on May 22, 2015 from http://www.Rite

Softwaregroup.com/

Singhal, S., & Nguyen, B. (1998). The Java Factor. Communications of the ACM, 41(6), 34-37.

doi:10.1145/276609.276616

Page 41: Univ

WEB APPLICATION DEVELOPMENT USING JAVA 41

Tomlinson, C. A. (1995). Action research and practical inquiry: An overview and an invitation to

teachers of gifted learners. Journal for the Education of the Gifted, 18, 467–484.

Warnars, H. S. (2011). Object-oriented modeling with unified modeling language 2.0 for the

simple software application based on agile methodology. Behavior & Information

Technology, 30(3), 293-307. doi:10.1080/01449290903186231


Recommended