File - Department of Information Technology-SRIT

advertisement
EX. NO.:
Date:
STUDY OF MULTI-TIER SOFTWARE ENVIRONMENT
AIM:Study of Multi-tier software environment
Environment
In close relation to our testing context, Environment is defined as combination of
three layers, namely Presentation Layer, Business Layer and Database Layer. Let’s
understand what these layers mean how does an environment affect or testing.
A tier is an abstract concept that defines a group of technologies that provides one
or more services to its clients. In multi-tier architecture each tier contains services that
include software object or DBMS. Multi-tier architecture is composed of clients,
resources, components (service), and containers.
Clients, Resources and Components
A client refers to a program that requests a service from a component. A resource
is anything a component needs to provide a service, and a component is part of tier that
consists of a collection of classes or a program that performs a function to provide the
service. A container is software that manages a component and provides a component
with system services. The relationship between a container and a component is
sometimes referred to as a contract, whose terms are governed by an application
programming interface (API). An API defines rules a component must follow and the
services a component will receive from the container.
Layers & Logics :
Logic:
Logic is defined as ' The sequence of functions performed by hardware or
software. Hardware logic is made up of circuits that perform an operation. Software logic
is the sequence of instructions in a program.' Or in simple terms to understand It is the
reasoning to make simple circuit components to perform some action.
In general, there are three types of logics, Presentation logic generally means the
user interface, business logic relates to the whole transaction between the user and the
application and database logic is the design to establish proper storage and retrieval of
any data whenever needed by the other two logics.
Layer:
It is the hardware necessity to support the functions of logic, In other terms the
logics of an application need to have the layers present to perform the functions or tasks
effectively. Generally the Server that is responsible for executing the functions present in
the logics of the application are known as the environmental layers of the application. So
like logics, there are three types of layers such as Presentation Layer, Business Layer, &
Database Layer.
Improvising on the previous concepts we can come to a conclusion that, Application
= Presentation logic + Business logic + Database logic. Environment = Presentation
layer + Business layer + Database Layer. System = Application + Environment
Now that we have an idea of what an environment means in our testing scenario,
let’s move and understand how many types of environmental components exist and what
are the testing related environments needed to be learnt. There are primarily 4 basic
environments.
Standalone Environment
In this type of environment all the three layers i.e., presentation, business and
database will be present in one tier/block of area. (e.g. A Desktop PC or Home PC has
the capacity to support all the logics of an application which are built for them, like
windows operating system is providing the presentation, business and database layer
support for complex applications like SQL server and Animation, photo-video editing
software’s etc. )
This is also the reason why Standalone environments are also known as ' I tier or
Single tier' structure. If at all the application is to be used by a single user, then this will
be the best suitable environment.
Client Server Environment
This type of environment contains 2 tiers (sections). One is for the clients (end
users) and the other is for server. Presentation layer, business layer will be present in each
and every client, but the database layer will be present in the server.
If at all the application or data need to be accessed in a single organization or a
network located at one place, then this type of environment is most recommended. The
benefits include speed and security within the network. But when the network increases
geographically, then we have to go beyond this kind of ' II tier architecture' to a bigger
environment.
Web Environment
This kind of arrangement is also known as 'III tier architecture’. One tier is
provided for each kind of layer. The presentation logic will be available in the clients
system, another tier will act as the application server (where updates can be quick and can
be shared by every client quickly, In other terms whenever the software version changes
or new features are added, you don’t need to buy a new CD or DVD, you can log on to
internet, connect to the application server, and download the updated version and new
features are automatically installed in your system.)
If the application needs to be used all over the world by limited number of people then
this is the best suited environment. It overcomes the drawback of location when
compared to II tier structure. But when the users are huge in numbers then we need to opt
for the next option.
Figure 1.1 Tiered Architecture
Distributed Environment or Multi tier or Entire Structure
This is similar to the web environment but the difference is that the number of
application servers is increased.
Even though the number of client machines increase, the database logics also
need to be increased but the entire database logics will be in on tier and all the
presentation logics in one tier. To understand better let’s take this picture
Figure 1.2 Multitier
Thick Client & Thin Client:
If the client machine has both the presentation and business logic then it is called
'thick client’. For example, Computers in a workgroup share the same application in a
bank but all the customers’ data is accessible only after an authorized entry into the
database server.
Thin client is the system which only has the access to presentation logic of the
application, most of the applications on web like talk or messenger programs have an
interface which can be customized according to each user, which is the presentation
logic. The secure application is present in the application server where all the changes
take place in the application and data is maintained separately in a database server.
Once we understand this environments chapter, we can now link the types of
testing and combinations of different environmental components. Moving forward we
will see the different life cycle approaches of Software Industry.
J2EE ARCHITECTURE
The J2EE platform uses a multitiered distributed application model. Application logic is
divided into components according to function, and the various application components
that make up a J2EE application are installed on different machines depending on the tier
in the multitiered J2EE environment to which the application component belongs. Figure
1-1 shows two multitiered J2EE applications divided into the tiers described in the
following list. The J2EE application parts shown in Figure 1-1 are presented in J2EE
Components.




Client-tier components run on the client machine.
Web-tier components run on the J2EE server.
Business-tier components run on the J2EE server.
Enterprise information system (EIS)-tier software runs on the EIS server.
Although a J2EE application can consist of the three or four tiers shown in Figure 1-3,
J2EE multitiered applications are generally considered to be three-tiered applications
because they are distributed over three different locations: client machines, the J2EE
server machine, and the database or legacy machines at the back end. Three-tiered
applications that run in this way extend the standard two-tiered client and server model
by placing a multithreaded application server between the client application and back-end
storage.
Figure 1.3 - Multitiered Applications
J2EE Components
J2EE applications are made up of components. A J2EE component is a selfcontained functional software unit that is assembled into a J2EE application with its
related classes and files and that communicates with other components. The J2EE
specification defines the following J2EE components:



Application clients and applets are components that run on the client.
Java Servlet and JavaServer Pages (JSP ) technology components are Web
components that run on the server.
Enterprise JavaBeans
(EJB ) components (enterprise beans) are business
components that run on the server.
J2EE components are written in the Java programming language and are compiled
in the same way as any program in the language. The difference between J2EE
components and "standard" Java classes is that J2EE components are assembled into a
J2EE application, verified to be well formed and in compliance with the J2EE
specification, and deployed to production, where they are run and managed by the J2EE
server.
J2EE Clients
A J2EE client can be a Web client or an application client.
Web Clients
A Web client consists of two parts: dynamic Web pages containing various types
of markup language (HTML, XML, and so on), which are generated by Web components
running in the Web tier, and a Web browser, which renders the pages received from the
server.
A Web client is sometimes called a thin client. Thin clients usually do not do
things like query databases, execute complex business rules, or connect to legacy
applications. When you use a thin client, heavyweight operations like these are off-loaded
to enterprise beans executing on the J2EE server where they can leverage the security,
speed, services, and reliability of J2EE server-side technologies.
Applets
A Web page received from the Web tier can include an embedded applet. An
applet is a small client application written in the Java programming language that
executes in the Java virtual machine installed in the Web browser. However, client
systems will likely need the Java Plug-in and possibly a security policy file in order for
the applet to successfully execute in the Web browser.
Web components are the preferred API for creating a Web client program because
no plug-ins or security policy files are needed on the client systems. Also, Web
components enable cleaner and more modular application design because they provide a
way to separate applications programming from Web page design. Personnel involved in
Web page design thus do not need to understand Java programming language syntax to
do their jobs.
Application Clients
A J2EE application client runs on a client machine and provides a way for users
to handle tasks that require a richer user interface than can be provided by a markup
language. It typically has a graphical user interface (GUI) created from Swing or Abstract
Window Toolkit (AWT) APIs, but a command-line interface is certainly possible.
Application clients directly access enterprise beans running in the business tier.
However, if application requirements warrant it, a J2EE application client can open an
HTTP connection to establish communication with a servlet running in the Web tier.
JavaBeans
Component Architecture
The server and client tiers might also include components based on the JavaBeans
component architecture (JavaBeans component) to manage the data flow between an
application client or applet and components running on the J2EE server or between server
components and a database. JavaBeans components are not considered J2EE components
by the J2EE specification.
JavaBeans components have instance variables and get and set methods for
accessing the data in the instance variables. JavaBeans components used in this way are
typically simple in design and implementation, but should conform to the naming and
design conventions outlined in the JavaBeans component architecture.
J2EE Server Communications
Figure 1.4 shows the various elements that can make up the client tier. The client
communicates with the business tier running on the J2EE server either directly or, as in
the case of a client running in a browser, by going through JSP pages or servlets running
in the Web tiers.
Your J2EE application uses a thin browser-based client or thick application client.
In deciding which one to use, you should be aware of the trade-offs between keeping
functionality on the client and close to the user (thick client) and off-loading as much
functionality as possible to the server (thin client). The more functionality you off-load to
the server, the easier it is to distribute, deploy, and manage the application; however,
keeping more functionality on the client can make for a better perceived user experience.
Figure 1.4- Server Communications
Web Components
J2EE Web components can be either servlets or JSP pages. Servlets are Java
programming language classes that dynamically process requests and construct
responses. JSP pages are text-based documents that execute as servlets but allow a more
natural approach to creating static content.
Static HTML pages and applets are bundled with Web components during
application assembly, but are not considered Web components by the J2EE specification.
Server-side utility classes can also be bundled with Web components and, like HTML
pages, are not considered Web components.
Like the client tier and as shown in Figure 1.5, the Web tier might include a
JavaBeans component to manage the user input and send that input to enterprise beans
running in the business tier for processing.
Business Components
Business code, which is logic that solves or meets the needs of a particular
business domain such as banking, retail, or finance, is handled by enterprise beans
running in the business tier. Figure 1.6 shows how an enterprise bean receives data from
client programs, processes it (if necessary), and sends it to the enterprise information
system tier for storage. An enterprise bean also retrieves data from storage, processes it
(if necessary), and sends it back to the client program.
Figure 1-5 Web Tier and J2EE Application
Figure 1.6- Business and EIS Tiers
There are three kinds of enterprise beans: session beans, entity beans, and message-driven
beans. A session bean represents a transient conversation with a client. When the client
finishes executing, the session bean and its data are gone. In contrast, an entity bean
represents persistent data stored in one row of a database table. If the client terminates or
if the server shuts down, the underlying services ensure that the entity bean data is saved.
A message-driven bean combines features of a session bean and a Java Message Service
("JMS") message listener, allowing a business component to receive JMS messages
asynchronously. This tutorial describes entity beans and session beans. For information
on message-driven beans,
Enterprise Information System Tier
The enterprise information system tier handles enterprise information system
software and includes enterprise infrastructure systems such as enterprise resource
planning (ERP), mainframe transaction processing, database systems, and other legacy
information systems. J2EE application components might need access to enterprise
information systems for database connectivity, for example.
RESULT:
Thus the above study experiment was successfully studied.
EX. NO. :
STUDY OF WEB SERVERS/ WEB BROWSER AND TOOLS
DATE:
FOR ENTERPRISE DEVELOMENT AND DEPLOYMENT
AIM:Study of web servers / web browser and tools for enterprise development and
deployment
WEB BROWSER
A web browser is a software application for retrieving, presenting, and traversing
information resources on the World Wide Web. An information resource is identified by
a Uniform Resource Identifier (URI) and may be a web page, image, video, or other piece
of content. Hyperlinks present in resources enable users to easily navigate their browsers
to related resources.
Although browsers are primarily intended to access the World Wide Web, they
can also be used to access information provided by Web servers in private networks or
files in file systems. Some browsers can be also used to save information resources to file
systems.
List of Web Browsers
Notable browsers :(In order of release)









Worldwide Web, February 26, 1991
Mosaic, April 22, 1993
Netscape Navigator and Netscape Communicator, October 13, 1994
Internet Explorer 1, August 16, 1995
Opera, 1996, see History of the Opera Internet suite
Mozilla Navigator, June 5, 2002
Safari, January 7, 2003
Mozilla Firefox, November 9, 2004
Google Chrome, September 2, 2008
Browsers for the Java platform









Bitstream ThunderHawk
BOLT Browser
HotJava (discontinued)
Lobo (formerly Warrior)
Opera Mini
uZard Web
X-Smiles (experimental)
Flying saucer, a Java library for rendering XML, XHTML, and CSS 2.1
content.
UCWEB
Web Page Retrieval:
The browser application retrieves or fetches code, usually written in HTML
(HyperText Markup Language) and/or another language, from a web server, interprets
this code, and renders (displays) it as a web page for you to view. In the majority of
cases, user interaction is needed to tell the browser what web site or specific web page he
or she would like to view. One way this is done is via the browser's address bar.
The web address or URL (Uniform Resource Locator), that you type into the
browser's address bar tells the browser where to obtain a page or pages from. For
example, let's say that you typed the following URL into the browser's address bar:
http://about.com/compute/.
In this case, you're attempting to reach the Computing & Technology section of
About.com. The browser looks at this particular URL in two main sections. The first is
the protocol, which in the address shown is "http://". HTTP, which stands for HyperText
Transfer Protocol, is the standard protocol used to request and transmit files on the
Internet, mostly web pages and their respective components. Since the browser now
knows that the protocol is HTTP, it knows how to interpret everything located to the right
of the forward slashes. It now looks at "about.com", which tells the browser the location
of the web server it needs to retrieve the page or pages from.
Next, once it reaches this web server, it retrieves the index page of the "/compute"
directory. Once this page is retrieved by the browser, it is interpreted and rendered in the
browser's main window for you to view.
WEB SERVER
A web server is a computer programs that delivers (serves) content, such as web
pages, using the Hypertext Transfer Protocol (HTTP), over the World Wide Web. The
term web server can also refer to the computer or virtual machine running the program. In
large commercial deployments, a server computer running a web server can be rackmounted with other servers to operate a web farm.
A web server is a piece of software that enables a website to be viewed using
HTTP. HTTP (HyperText Transfer Protocol) is the key protocol for the transfer of data
on the web. You know when you're using HTTP because the website URL begins with
"http://" (for example, "http://www.quackit.com").
Some high-powered computers are referred to as web servers as they have been
built with web hosting in mind. But in most cases, when someone refers to a web server,
they are referring to a piece of software that you install on a computer.
Advantages
There are many advantages to using a web server within your development
environment. Of course, in a production hosting environment, a web server is essential.
And, depending on your website, a web server could indeed be essential in your
development environment.
Here are some advantages of using a web server within your development environment:




Your local website behaves more like the live one. For example, you can
configure directory security, test your custom error pages etc before committing
them to the production environment.
You can use server-side scripting languages such as PHP and ColdFusion.
Allows you to standardize your coding. For example, you can use root-relative
paths for your image references and hyperlinks (i.e. "/directory/image.gif"). In
other words, your paths can represent the website structure, rather than the
directory structure of your computer.
Knowledge. The knowledge you gain from using your own web server will help
you understand how it works in the live environment. This will most certainly
help you when you need to communicate with your hosting provider - you'll be
able to use terminology that makes it easier for them to understand your
request/issue.
Viewing HTML Files with a Web Server
When you view a web page via a web server, the URL begins with "http://". Also,
the URL will consist of either an IP address or a domain name/host name.
Here are some examples of what the URL could look like when viewing a web page
via a web server:




http://127.0.0.1
http://localhost
http://www.quackit.com
http://dev.quackit.com
Web Servers – Features
There's a common set of features that you'll find on most web servers. Because web
servers are built specifically to host websites, their features are typically focused around
setting up and maintaining a website's hosting environment.
Most web servers have features that allow you to do the following:







Create one or more websites.
Configure log file settings, including where the log files are saved, what data to
include on the log files etc. (Log files can be used to analyze traffic etc)
Configure website/directory security. For example, which user accounts are/aren't
allowed viewing the website, which IP addresses are/aren’t, allowed to view the
website etc.
Create an FTP site. An FTP site allows users to transfer files to and from the site.
Create virtual directories, and map them to physical directories
Configure/nominate custom error pages. This allows you to build and display user
friendly error messages on your website. For example, you can specify which
page is displayed when a user tries to access a page that doesn't exist (i.e. a "404
error").
Specify default documents. Default documents are those that are displayed when
no file name is specified. For example, if you open "http://localhost", which file
should be displayed? This is typically "index.html" or similar but it doesn't need
to be. You could nominate "index.cfm" if your website is using ColdFusion. You
could also nominate a 2nd choice (in case there is no index.cfm file), and a 3rd
choice, and so on.
How Web Servers Work:
Whenever you view a web page on the internet, you are requesting that page from
a web server. When you type a URL into your browser (for example,
"http://www.quackit.com/html/tutorial/index.cfm"), your browser requests the page from
the web server and the web server sends the page back:
The above diagram is a simplistic version of what occurs. Here's a more detailed version:
1. Your web browser first needs to know which IP address the website
"www.quackit.com" resolves to. If it doesn't already have this information stored
in it's cache, it requests the information from one or more DNS servers (via the
internet). The DNS server tells the browser which IP address the website is
located at. Note that the IP address was assigned when the website was first
created on the web server.
2. Now that the web browser knows which IP address the website is located at, it can
request the full URL from the web server.
3. The web server responds by sending back the requested page. If the page doesn't
exist (or another error occurs), it will send back the appropriate error message.
4. Your web browser receives the page and renders it as required.
When referring to web browsers and web servers in this manner, we usually refer to
them as a client (web browser) and a server (web server).
Multiple Websites
A web server can (and usually does) contain more than one website. In fact, many
hosting companies host hundreds, or even thousands of websites on a single web server.
Each website is usually assigned a unique IP address which distinguishes it from other
websites on the same machine. This IP address is also what the DNS server uses to
resolve the domain name.
It is also possible to configure multiple websites without using different IP
addresses using host headers and/or different ports. This can be useful in a development
environment and is quite easy to do.
Page Not Found
If the requested page isn't found, the web server sends the appropriate error
code/message back to the client.
You can create user friendly error messages, then configure your web server to
display that page instead of the usual error page. This can add a nice touch to your
website. How many times have you (or even worse, your visitors) encountered a plain
white page with some cryptic error message on it?
Default Documents
If you've ever created a website, you may have found that if you have an "index"
file (index.html for example), you don't need to specify the name of the file. For example,
the following URLs both load the same page:
1. http://www.quackit.com/html/tutorial
2. http://www.quackit.com/html/tutorial/index.cfm
In this example, "index.cfm" is the default document. You can configure your
web server so that any file name can be the default document. For example, you could
configure your web server to use "index.cfm" in the event no filename has been specified,
or if you use PHP, "index.php". You could even specify different default documents for
different directories if you like.
SSL Certificates
You can apply SSL certificates against a website via the web server. First you
need to generate the certificate either by yourself (i.e. using a certificate generator), or by
a Certificate Authority (CA). Then, once it has been generated, you apply it to your
website via your web server. Applying an SSL certificate to a website is a straight
forward task.
Once you've applied an SSL certificate against a website, you can navigate it
using HTTPS (as opposed to HTTP). HTTPS encrypts any data that is transferred over
the internet. This reduces the possibility of some malicious person being able to read your
users' sensitive information.
Apache HTTP Server
Apache HTTP Server (also referred to as simply "Apache") has, at the time of
writing, been the most popular web server on the web since 1996. Apache is developed
and maintained by the Apache Software Foundation, which consists of a decentralized
team of developers. The software is produced under the Apache licence, which makes it
free and open source.
Apache is available for a range of operating systems, including Unix, Linux,
Novell Netware, Windows, Mac OS X, Solaris, and FreeBSD.
Microsoft Internet Information Services (IIS)
IIS is, at the time of writing, the second most popular web server on the web. It is
however, gaining market share, and if the current trend continues, it won't be long before
it overtakes Apache.
IIS comes as an optional component of most Windows operating systems. You
can install IIS by using Add/Remove Windows Components from Add or Remove
Programs in the Control Panel.
Sun Java System Web Server
Based on the Sun One Web Server, the Sun Java System Web Server is designed for
medium to large business applications. Sun Java System Web Server is available for most
operating systems.
Tools for enterprise software
Enterprise software, also known as enterprise application software (EAS), is
software intended to solve an enterprise problem (rather than a departmental problem)
and often written using an Enterprise Software Architecture. Due to the cost of building
or buying what is often proprietary software, only large enterprises attempt to implement
such enterprise software that models the entire business enterprise and is the core IT
system of governing the enterprise and the core of communication within the enterprise.
As business enterprises have similar departments and systems in common,
enterprise software is often available as a suite of programs that have attached enterprise
development tools to customize the programs to the specific enterprise. Generally, these
development tools are complex enterprise programming tools that require specialist
capabilities.
Enterprise-level application
Enterprise level software is software which provides business logic support
functionality for an enterprise, typically in commercial organizations, which aims to
improve the enterprise's productivity and efficiency.
Services provided by enterprise software are typically business-oriented tools
such as online shopping and online payment processing, interactive product catalogue,
automated billing systems, security, content management, CRM, ERP, Business
Intelligence, HR Management, Manufacturing, EAI, Enterprise Forms Automation etc.
Characteristics of enterprise software are performance, scalability, and robustness.
Enterprise software typically has interfaces to other enterprise software (for example
LDAP to directory services) and is centrally managed (a single admin page for example).
Enterprise Application software
Enterprise application software is application software that performs business
functions such as order processing, procurement, production scheduling, customer
information management, accounting, etc. It is typically hosted on servers and provides
simultaneous services to a large number of users, typically over a computer network. This
is in contrast to single-user application that execute on a user's personal computer and
serve only one user at a time. :)
Enterprise software developers
Major organizations in the enterprise software field include IBM, HP, JBoss (Red
Hat), SAP, Microsoft, Adobe Systems, Oracle Corporation, and Computer Associates but
there are thousands of competing vendors.
In addition, a great deal of enterprise software is now available through the free
software movement, notably operating systems, web servers and databases. Many other
types of enterprise software are also being introduced, such as application servers, portal
servers, and even productivity software that is well suited for large-scale adoption by
enterprises. While most open source software is available freely for use and further
development, several companies provide enterprises with open source enterprise software
for free and charge for software maintenance, modifications, support and additional
functionality.
Cross-platform RAD tools








Boa constructor is a cross-platform, wxPython based Python RAD IDE
Code: Blocks is a cross-platform C/C++ RAD IDE using wxWidgets; the latest
developmental builds have a built-in form designer wxSmith, so it's similar to
Embarcadero C++ Builder and Microsoft Visual C++/MFC now.
HyperNext is a freeware cross-platform software development system for Mac
OS X & Mac OS 9, and Microsoft Windows XP & Vista. It has many similarities
with HyperCard and can compile to both stand alone applications and stacks for
the cross-platform HyperNext Player.
IBM Rational Business Developer Extension is a cross-platform, Rapid
Application Development IDE for creating enterprise and web applications and
services for Windows, Linux, Unix (Solaris, HPUX, AIX), System z and System i
IBM Rational Application Developer is a cross-platform, Rapid Application
Development IDE for creating enterprise and web applications and services for
Windows, Linux and Unix (Solaris, HPUX, AIX)
LANSA is a development environment for generating applications on multiple
platforms. One of the main features of LANSA is its high level programming
language, called RDML (Rapid Development and Maintenance Language). It is
classified as a 4GL (4th generation language). LANSA-developed applications
run on many systems including MS Windows, IBM i and Linux.
Lazarus is a cross-platform IDE similar to Embarcadero Delphi.
NetBeans is a cross-platform, RAD IDE for creating visual desktop, mobile, web,
and SOA applications for Linux, Windows and Mac OS X. The IDE officially
supports Java, Ruby, PHP, JavaScript and C/C++ programming languages.



Squeak is an open-source, cross-platform Smalltalk system which can be used to
develop applications for desktop, mobile, server-based, and web platforms.
Squeak supports Windows, Linux, Mac OS X, Mac OS Classic, many flavors of
Unix, and a handful of other operating systems. Squeak is the home of the Seaside
RAD web app framework and multiple GUI toolkits, some of which allow the
building of GUIs by drag and drop.
Visual FoxPro With its local cursor engine, tight coupling between language and
data, and powerful features, Visual FoxPro 9.0 is a great tool for building
database solutions of all sizes. Its data-centric, object-oriented language offers
developers a robust set of tools for building database applications for the desktop,
client–server environments, or the Web. Developers will have the necessary tools
to manage data—from organizing tables of information, running queries, and
creating an integrated relational database management system (DBMS) to
programming a fully-developed data management application for end users.
VisualWorks is a cross-platform Smalltalk RAD for creating desktop, mobile,
enterprise, and web-based applications for Windows, Linux, Mac OS X, Mac OS
Classic, and a number of Unix systems. The system supports popular protocols
and frameworks like ODBC, Seaside, and GemStone/S. Commercial and free
non-commercial versions available.
Cloud Based RAD tools



Coghead
Wavemaker is an open-source, visual, drag and drop development studio that
runs in a browser and generates standard Java applications for deployment. Cloud
version is available at [Cloud].
Zoho Office Suite
Desktop RAD Tools




C++Builder .
Clarion is a data-centric Advanced Rapid Application Development (ARAD) tool
featuring roundtrip code generation that preserves all of your own hand-written
code while allowing you to re-generate your application as often as needed. It
provides reusable metadata to quickly create "corporate quality" applications to
manage business data
Delphi .
Microsoft Visual Basic .
Database RAD Tools


Base One Foundation Component Library (BFC) is a RAD framework for
building .NET applications using SQL Server, Oracle, DB2, Sybase, and
MySQLdatabases.
Clarion is a data-centric Advanced Rapid Application Development (ARAD) tool
featuring roundtrip code generation that preserves all of your own hand-written
code while allowing you to re-generate your application as often as needed. It
provides reusable metadata to quickly create "corporate quality" applications to
manage business data

IBM Rational Application Developer supports database application
development for IBM DB2, IBM Informix, Oracle database, Microsoft SQL
Server and other JDBC compliant relational databases
Embedded Control RAD Tools


VisSim is a block diagram language for model based embedded system
development
LabVIEW is a graphical programming language that allows you to program
embedded off-the-shelf systems, FPGAs, custom designs
Web Based RAD Tools






ASPRunner\PHPRunner is a data model based code generator that can generate
either PHP or ASP Web pages based on the data model relationships, it also
includes WYSIWYG web page customization.
Caspio is a platform-as-a-service framework that uses wizards instead of coding
for RAD.
MyEclipse for Spring is a RAD tool for developing Java-based Spring
applications. It runs within the MyEclipse IDE.
Oracle Application Development Framework uses Oracle's JDeveloper a
FREE IDE that supports ADF's J2EE based framework.
Visual WebGui (VWG) is an open-source rapid application development (RAD)
framework for AJAX & Silverlight GUIs. The platform presents a new approach
to applying desktop usability to the web by viewing it as an extension to a desktop
rather than web
Sculpture is a 100% free .NET based Platform for designing and delivering cross
platform web applications.
Components based on RAD paradigm


Add-in Express – Visual RAD tool for developing COM add-ins, smart tags,
RTD servers and Excel user defined functions in Visual Studio .NET and Delphi.
Panther is a cross-platform (Windows, UNIX, Linux; TUI, GUI, Web), crossdatabase RAD toolset for development of n-tier component based database
oriented applications. It builds native components employing the same visual
paradigm used for client screens. Editions for middleware from IBM, BEA and
Microsoft exist (and can be combined).
RESULT :
Thus the above study experiment was successfully studied.
Download