Application Development Tools and Frameworks

Author(s):  
Valentin Cristea ◽  
Ciprian Dobre ◽  
Corina Stratan ◽  
Florin Pop

Large scale distributed systems are used for executing a wide variety of applications; while the first distributed applications were from the scientific area, today many of them are dedicated to businesses or even to home users. The constantly increasing demand for large scale distributed applications has brought on a need for tools and frameworks that ease their development. The main role of these tools and frameworks is to assist the developer in implementing some common functionalities and patterns that are specific to distributed applications – for example, dividing a large computational task into smaller subtasks to be executed on multiple machines, or sending e-mails automatically, or managing the access to resources in a secure way. One of the most important issues that the application development frameworks have to address is the abstraction of the underlying middleware: their main objective is to relieve the application programmer from the effort of dealing with lowerlevel components. Another important aspect is the performance of the communication among the application components; hence, some development tools are specifically targeted to optimizing the communication performance. We also observe an increasing interest in the interoperability among applications developed with different platforms, which has led to many standardization initiatives. This chapter discusses the issues introduced above, and makes an overview of the current tools and frameworks for developing various types of distributed applications. We start with web applications, which are the most frequently used nowadays; we introduce some general design issues, and present tools for server-side and client-side programming. Then, we discuss about developing applications in grids, clouds and peer-to-peer systems; we present the specific aspects of programming applications in these types of systems and introduce some of the most widely used tools and frameworks. The last section is dedicated to distributed workflows – complex applications that are composed of multiple smaller applications or services; the development and execution of workflows poses more challenges compared to traditional applications, requiring specific tools and runtime environments.

2010 ◽  
Vol 8 (1) ◽  
pp. 54-68
Author(s):  
Neil Simpkins

The growth of E-business has made experience in server-side technology an increasingly important area for educators. Server-side skills are in increasing demand and recognised to be of relatively greater value than comparable client-side aspects (Ehie, 2002). In response to this, many educational organisations have developed E-business courses, but their approaches cannot generally be applied in the distance learning context. Providing server-side infrastructure is important to allow students to gain an appreciation of concepts as well as experiencing aspects like network operation, time delays and failure and ‘just-in-time’ collaboration, which are basic characteristics of distributed applications. Here, the development of a scalable architecture and successful provision of access to a set of server applications for a very large number of students is described. A key objective is to establish a framework that can be applied in education and commerce to support very large-scale deployment of web applications and services for applications with varying properties.


2014 ◽  
Vol 496-500 ◽  
pp. 2057-2060
Author(s):  
Shuang Zhu Zhao ◽  
Ting Zhang ◽  
Xiao Na Liu

This article aims at designing and implementing a mood release system based on Android, with the result that, whenever and wherever possible, the users can release their moods. The key technologies of the system are the way the client terminator submitting parameters for Web applications and the mode to realize the communication between the client and the server. In our developed system, the client terminator receives the message from the server terminator, using thread technology and get access to the page source that server-side specifies, and investigation shows our system has a promising application prospect.


Author(s):  
San Murugesan ◽  
Athula Ginige

Web-based systems and applications now deliver a complex array of functionality to a large number of diverse groups of users. As our dependence and reliance on the Web has increased dramatically over the years, their performance, reliability and quality have become paramount importance. As a result, the development of Web applications has become more complex and challenging than most of us think. In many ways, it is also different and more complex than traditional software development. But, currently, the development and maintenance of most Web applications is chaotic and far from satisfactory. To successfully build and maintain large, complex Web-based systems and applications, Web developers need to adopt a disciplined development process and a sound methodology. The emerging discipline of Web engineering advocates a holistic, disciplined approach to successful Web development. In this chapter, we articulate and raise awareness of the issues and considerations in large, complex Web application development, and introduce Web engineering as a way of managing complexity and diversity of large-scale Web development.


Author(s):  
Lei-da Chen ◽  
Gordon W. Skelton

In the previous chapter, we created an m-business application using ColdFusion. Besides ColdFusion, many other development tools can be used to develop m-business applications. Visual Studio .NET, an integrated development environment by Microsoft, has become an increasingly popular corporate applicationdevelopment tool due to its ease of use and support for a wide range of programming languages. Besides traditional Windows and Web applications, Visual Studio .NET also allows developers to build mobile and wireless applications with relative ease. The focus of this chapter is to discuss the tools and techniques for developing wireless applications using Visual Studio .NET. Wireless applications are developed using the ASP .NET Mobile Web Application template. The template provides developers with WYSIWYG tools for creating user interfaces for various mobile devices. These tools work seamlessly with ASP.NET, which uses a form-based approach to build server-side applications for processing user requests and interacting with databases. In this chapter, we will develop a business-to-consumter wireless application using Visual Studio .NET.


2020 ◽  
Vol 8 (6) ◽  
pp. 4952-4957

The main objective and scope of this project are to overcome the practical problem of project submission and approval in educational institutions. This will cut down the physical efforts of students, staff and also the time frame period of completing this part of the project work. Students can streamline their project status every week and provide a report regarding the progress, which will be monitored by all the relevant professors. The application provides an interface to both the faculty and students to easily communicate about the project work with no difficulties. This portal integrates numerous features like student updating the progress of their project online to their guide; where the guide can verify it and can accept/reject the students' note; this response would be reflected in each student's dashboard; a guide can also post the information about his mentees weekly progress to the class in charge. This portal prominently serves as a repository of students' work as they are presenting in one place, and this reduces a lot of actual toil for both students and faculty. Thus, thereby automating the process of project management in educational institutions. This implementation can be achieved by making use of android application development tools like the Android Studio IDE, Java JDK, SDK tools and an emulator or a smartphone to test the working of this application. We make use of Google's Firebase for back-end support which allows us to build applications that need authentication, database, file storage, and server-side functionality without having to hold and handle infrastructure and software needed for server-side support.


2005 ◽  
pp. 1-30 ◽  
Author(s):  
San Murugesan ◽  
Athula Ginige

Web-based systems and applications now deliver a complex array of functionality to a large number of diverse groups of users. As our dependence and reliance on the Web has increased dramatically over the years, their performance, reliability and quality have become paramount importance. As a result, the development of Web applications has become more complex and challenging than most of us think. In many ways, it is also different and more complex than traditional software development. But, currently, the development and maintenance of most Web applications is chaotic and far from satisfactory. To successfully build and maintain large, complex Web-based systems and applications, Web developers need to adopt a disciplined development process and a sound methodology. The emerging discipline of Web engineering advocates a holistic, disciplined approach to successful Web development. In this chapter, we articulate and raise awareness of the issues and considerations in large, complex Web application development, and introduce Web engineering as a way of managing complexity and diversity of large-scale Web development.


Author(s):  
Vojtěch Toman

With the growing interest in end-to-end XML web application development models, many web applications are becoming predominantly XML-based, requiring XML processing capabilities not only on the-server-side, but often also on the client-side. This paper discusses the potential benefits of using XProc for XML pipeline processing in the web browser and describes the developments of a JavaScript-based XProc implementation.


Author(s):  
Gregory Murray

XQuery is widely known as a query language for XML, but it’s also a full-fledged, functional programming language which, with a limited number of implementation-provided extensions, can serve in a web development context as both the query language and the programming language. When you have data in XML form that needs to be delivered in some way on the web, using XQuery as the server-side programming language has significant practical advantages. After briefly describing those advantages, this paper will lay out techniques for developing web applications in XQuery—techniques that will reduce complexity and help developers produce well-organized, testable, portable code that will be comparatively easy to build upon and maintain over time. Topics include using MVC, keeping functions testable, and facilitating code portability by using available standardizations like RESTXQ and by isolating implementation-specific functions into separate modules.


Author(s):  
Hongqing Song ◽  
Stephen Huang

Abstract The purpose of this tool, Rapid Web Application Generator (RWAG), is to allow a user to create a database-driven web application without the knowledge of DBMS and server-side programming. RWAG automatically generates database definitions and ASP pages for manipulating the data. The advantages of using RWAG are as follows: first, a user can create web applications in minutes without ever having to write any code (no need to know ASP, Perl, or Java); secondly, an advanced user can leverage his knowledge of ASP, Perl, Java, JavaScript, HTML, XML and DBMS to expand and customize the web application; thirdly, RWAG allows a user to own a record in the database, which means a record can only be edited by the user who creates it; finally, RWAG provides multiple user access levels. RWAG is ideal for a group of users to share information on the web.


Sign in / Sign up

Export Citation Format

Share Document