Literature Review on Java Development
Berzal (2005) investigated on the tools and frameworks that are available for Java application development. This was to explore the merits and demerits of tools and frameworks. This researcher made good review of various frameworks in Java platform. The frameworks include Struts, Tapestry, WebWork, InternetBeans Express, Velocity and Cocoon. The purpose of these frameworks is to help developers build web applications systematically. They all support the design pattern Model-View-Controller (MVC) (Berzal, 2005).
Leff & Reyfield (2001) explored MVC more in the context of web application developing using Servlets and JSP technologies. They investigated the usage, advantages of using MVC in web application development. MVC can provide clear separation of layers promoting reusability, scalability and availability besides minimizing maintenance costs.
Figure 1 – MVC design pattern (Leff & Reyfield, 2001)
As shown in Figure 1, it is evident that there are three distinct parts in the web application. Presentation can be seen with the help of view layer. Controller is responsible to coordinate the Model and View layers. Business logic and data is encapsulated by the model layer. It is used to interact with relational database using JDBC or Hibernate (Leff & Reyfield, 2001).
Patel & Cassou (2015) explored high-level application development and enabling such application development for Internet of Things (IoT). It is very challenging to have such development environment that expects separation of concerns, high-level abstractions and heterogeneity. These researches proposed a comprehensive framework that is capable of addressing issues pertaining to IoT. Their framework includes development methodol...
... middle of paper ...
...lly in three-tier architecture.
Iteration 5 – Achieving Java Developer Position in the Industry
Once the learning process is completed in the previous iterations, this iteration is meant for achieving the ultimate goal of the researcher. The goal is to secure Java developer position in the industry. Towards this end, the researcher will involve in activities such as preparing resume to reflect his skills, to upload resume into job portals, to receive mails from prospective employers, attending interviews, and securing his dream job in the software industry.
Figure 4 – My project iterations in action research
As shown in Figure 4, there are different phases in each iteration. The five iterations are used to complete action research and achieve the aim of the project. The aim is to acquire skills required by Java developer and secure such position in the industry.
Stage 2 involves dividing viewpoints documented in the first stage into clusters. This allows experts to organize functions/non-functions based on viewpoints. Which makes it easier to read of the page and neater. Furthermore, it helps the expert create a CORE viewpoint hierarchy. Example Below:
A framework is a set of classes that supports reuse at larger granularity. It defines an object-oriented abstract design for a particular kind of application which enables not only source code reuse, but also design reuse [Johnson & Foote, 1988]. The framework abstract structure can be filled with classes from its own library or application-specific ones, providing flexibility for the developer to adapt its behavior to each application. Besides flexibility, a good framework also increases the team productivity and makes application maintenance easier [Fayad et al. 1999].
So there are four stages to this cycle: 1. Concrete Experience - (CE) 2. Reflective Observation - (RO) 3. Abstract Conceptualization - (AC) 4. Active Experimentation - (AE)
During the past fifty years, some new software development approaches were introduced according to software development companies. Most of software companies try to produce valuable software in short time period with minimal costs and changing environments. Agile is one of them which are use in software development companies. This paper presents a review of agile methodology and describes the differences between them and when we use them.
Through diploma years I learnt, fundamentals of object oriented programming, web page designing, relational databases and understand the scope of information processing. I worked on a chat server project in which we developed a communication tool for isolated networks where existing web communication technologies, such as Jabber, MSN Messenger, Yahoo Messenger, etc, would not be feasible. We used the incremental model. Initially the project was developed in C#, later, to understand the implementation differences between Java and C#, we developed the project in Java. This project widened my understanding in programming languages, as well as strengthened my object oriented concepts. We studied the Client-Server interaction using sockets, Swing, Messag...
As technology advances, employers ask for new skills. Computer software engineers must continue to learn such skills if they hope to remain in this field. To help them keep up with the technology changes, continuing education and professional development seminars are offered by employers and software vendors, colleges and universities, private training institutions, and professional computing societies.
Given the time, it takes to develop large sophisticated software systems it not possible to define the problem and build the solution in a single step. Requirements will often change throughout a projects development, due to architectural constraints, customer’s needs or a greater understanding of the original problem. Iteration allows greater understanding of a project through successive refinements and addresses a projects highest risk items at every stage of its lifecycle. Ideally each iteration ends up with an executable release – this helps reduce a projects risk profile, allows greater customer feedback and help developers stay focused.
At present we are facing many problems in our cities such as structural health of buildings, waste management, air and noise pollution, energy consumption and traffic congestion. Our goal is to monitor these problems and provide a solution. By using an IOT, monitoring becomes quite easy as from anywhere we can monitor it. In our project, we will work on problems of waste management, air and noise pollution, street lighting and make a city “The Smart City”. The Internet of Things (IOT) is a system of interconnected computing devices, mechanical and digital machines, and the ability to transfer data over a network without requiring human-to-human or human-to-computer interaction.
Learning is a continuous process and the day that you stop learning is the day that you start decreasing your rewards and lower levels of satisfaction. My ardent desire to acquire knowledge has motivated me to pursue higher studies at graduate level, and to take up a career in research in industry. I have taken this decision after carefully considering my academic background, profound interest in research and strong aptitude for problem solving.
Within this report is information on how Java Script is used on the Internet. This report will contain information that will help you learn about Java Script and its uses on the Internet. It mentions what Java Script is, where it originated and what some of its uses are.JavaScript is a loosely typed scripting language that resembles the programming language C. It is designed to be an extension to HTML and is usually included within HTML scripts. Java Script is object-oriented and has block-structuring features. The main feature of Java Script is that it lets you build interactive web pages.
The Internet of Things (IoT) is the network of physical objects accessed through the Internet. The Network of interconnected objects harvests information from the environment (sensing) and interacts with the physical world (actuation/command/control), uses existing Internet standards to provide services for information transfer, analytics, applications and communications (Jiong et al. 2012).
de Boer have proposed four primary views on architectural knowledge [3]. In pattern centric view, Patterns serve two purposes, patterns are reusable solutions that can be applied to recurring problems and they also form a vocabulary that provides a common frame of reference, which eases sharing architectural knowledge between developers. Requirements are the roots of a software architecture, so in requirement-centric view of architecture, requirements and the architecture need be co-developed and all the possible solutions must be specified. It requires traceability in the transition from requirements to architecture as well as root-cause analysis of architecture design. In decision centric view of architecture, the researchers have started to consider not only the resulting architecture but also the rationale behind the architecture which is as important to consider. All such architectural knowledge needs to be managed to guide system evolution and prevent knowledge vaporization. Systems that exhibit dynamism can dynamically adapt their architecture during runtime which can be referred as dynamism centric view. Based on these architectural view the software itself must understand the architectural knowledge, architecture based adaptation has to rely on rather formal ways of codification. A dynamic software architecture must provide a specification of how the architecture of the software system can change at
Lastly, this stage looks at how ideas come to life through production. Therefore, implementation must ensure that design details are put into effect and that the client is satisfied with the final product.
(Advameg, n.d.) In developing teams it is a good idea to have a basic sense of the various stages