![]() |
|||
|
|||
| Web-based Training Services | |||
|
Web 2.0 to 4.0 Training |
RIA, APIs, and Scalability |
Infrastructure Evaluation and Application Design for Coding
|
Industry studies project that Web 2.0 technologies will constitute a $4.6 billion software market by 2013. In all likelihood, mashups, podcasts, wikis, and RSS will increasingly need to be integrated into workstation desktops and mobile devices. Accordingly, there will be strategic implications for CIO's, enterprise architects, system architects, web architectures, and IT developers.
Changing the interface will not be as straightforward as adding RSS feeds or blogs to make business applications more interactive and targeted to specific visitors. There are consequences when layering Web 2.0 technologies on existing applications; an application modernization strategy will be required. An organization's information technology infrastructure will need to be able to support a Web 2.0 modernization effort and extend beyond mapping the applications. Web services and SOA: Service Oriented Architecture also will be utilized and coded. RIA: Rich Internet application platforms have emerged; however, there is no universal best approach to building RIAs. The issues being debated include whether applications should be:1- Deployed on the desktop or in a browser. 2- Developed from an API framework. 3- Coded with open source software AJAX or Java. 4- Repurposed and extended as part of a SOA: Service Oriented Architecture strategy from an existing investment in proprietary software companies: IBM, Microsoft, or Oracle.
The separation of presentation and content has become increasingly important as web pages are being rendered on more and more devices: 3270 workstations, personal computers, laptops, smartphones, and tablet PCs. The client/server model is the foundation for the interaction between web browsers and web servers. HTML is a fault tolerant language in which errors are ignored; it is the predominant markup language for the creation of web pages. HTTP is a protocol for getting a request for a page from a client to a web server and getting the requested page in a reply back to the browser. An HTML document is allowed to have scripted code embedded. HTML increasingly is generated programmatically by applications. An online database will rely on the assumption that no layout information needs to be stored for its content; this information will be added as its content is being accessed for display. In HTML, presentation can be specified within a document or separately within CSS: Cascading Style Sheet files. There also is XML, a W3C recommendation for a general-purpose markup language, which supports a wide variety of applications and has no predefined tags. Client-side scripting typically is performed with JavaScript and makes use of the fact that a web browser can both render HTML pages and execute programs. This allows for some tasks in a website to be offloaded onto the client. With Server-side scripting, such as PHP, user requests are fulfilled by running a script directly on the web server to generate dynamic HTML pages. It provides the capability to develop interactive web sites that interface databases or other data stores as well as local or external sources. A significant advantage associated with server-side scripting is the ability to customize the response and presentation based on a user's requirements, access rights, or query results returned by a database. Both client-server and server-side scripting is based on the client/server paradigm with synchronous interaction and processing of data, the sending of data directly to the server for processing, and responses being received from the server without the need to reload an entire page. In order to enhance web programming, the HTML creation and its dynamic modification has been extended to provide the HTML generation on the client. This further separation of the user interface logic from business logic is known as AJAX: Asynchronous JavaScript and XML. AJAX is a web development technique that allows developers to build rich applications that are similar in functionality to desktop applications, the difference being that they execute in a web browser. Its main functionality stems from an exploitation of XMLHttpRequest, a JavaScript class with specific properties and methods supported by the web browser which allows HTTP requests to be send from inside JavaScript code. HTML5 represents the next significant phase in the progress of the world wide web. HTML5 provides the capability to develop web applications which are visually rich and comparable to the native applications that are that are designed to run on a specific device such as an iPad or an Android-based tablet. Prior to HTML5, it would not be not reasonable to assume that the HTML will work the same way as the HTML in a desktop operating system web browser. However, with HTML5 this is about to change. HTML5 will provide the capability to browse multimedia content without downloading extra software to check e-mail offline, access web search, and perform transactions on a smartphone. APIs: Application Programming Interfaces are used in native HTML5 by application developers to develop web apps for execution in a web browser. With HTML5 it will not be necessary to write new code to reach multiple platforms. Important new facilities in HTML5 include:
Organizational enterprise is increasingly dependent on real-time flow of information across systems to improve the way they operate. Accordingly, the rapid growth of the application- and mobile-driven Internet has made the APIs: Application Programming Interfaces increasingly important. Well designed APIs make it easier to create apps and language-specific API frameworks provide the foundation for creating usable APIs such as Grape for Ruby and FRAPI for PHP. The API is an abstraction provided to the developer to interact with the platform; it is the platform that translates the high-level API calls to the low-level system calls. Cloud computing and new device platforms are being driven by specialized APIs and protocols in order to communicate and access data and events:
The REST architectural style was developed in parallel
with HTTP/1.1. REST is the framework which defines and constrains the
macro-interactions of the four components of the web: origin servers,
gateways, proxies and clients. REST governs the proper behavior of
participants without imposing limitations on individual participants.
Restful API: Application Programming Interfaces have been designed for conformance with the architectural standards of the Representational State Transfer. Scale ability. APIs provide the specialization and flexibility to code applications which utilize the open source standards of HTML5. There has been an enormous increase in the number and variety of APIs. To a significant degree the development of web apps for mobile devices is being driven by Restful APIs. Organizational enterprise with a substantial information technology infrastructure in place: mainframe system software and applications, web servers, and enterprise database will be evaluating whether their inventory of code can be accessed or repurposed utilizing a SOA: Service Oriented Architecture framework. |
Information Technology in Transition
Longstanding Consultancy Experience
Technology Updates
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Web services extend the client/server paradigm through the use of an explicit registry; thereby solving the problem of locating a service in a way that is appropriate for the web. A service requester, the client, looks for a service to send a corresponding query to a service registry. If the requested service is found, the client can contact the service provider and use the service. The provider has previously published its services in the registry. The web services hide all details concerning their implementation and the platforms they are based on; they essentially come with a unique URI that point to the provider. Since web services are generally assumed to be interoperable, they can be combined with other services to build new applications with more comprehensive functionality than any single service involved. To achieve these goals, web services are commonly based on standard, in particular on the XML-based specifications - SOAP: Simple Object Access Protocol, UDDI: Universal Description, Discovery, and Integration, and WSDL: Web Services Description Language. In order to communicate with a web service, an application adds a web service consumer code. This code uses UDDI to locate the code in the web service in the directory or registry and then send a SOAP/REST communication to invoke the web service. The web service receives the invocation from the web service provider interface and returns the results of the calling application to the provider interface and SOAP/REST. An environment in which call applications are web services providers and consumers is the SOA: Service Oriented Architecture .
SOA: Service Oriented Architecture functions both as a software development environment and a delivery framework. It provides a mechanism for defining business services and operating models as a information technology infrastructure that can be used to meet enterprise business requirements and to modernize their legacy environments. In a SOA environment, network nodes makes resources available to other network participants as independent services, which participants can access in a standardized way through well-defined service interfaces. SOA is constructed as a shared network of web services linked by distributed intermediaries. Incremental SOA for a mainframe environment needs to be a services network. This means that a software infrastructure must be in place to enable reliable, manageable, secure, and high performance communication between consumers and providers of services. Successful execution of an SOA strategy, combined with the release of the business value contained in legacy systems, can bring significant value and return on investment by 1- leveraging existing software assets to create new applications. 2- Enabling business processes to be modified without rewriting code. 3- Providing interoperability with modern web-based systems, extends the practical life of legacy routines and processes. 4- Lowering the overall informational technology cost structure by sharing business services across multiple applications. 5- Decreasing complexity through a reduction in redundancy across the enterprises. When SOA is done correctly, it supports many-to-one standardization with a loosely coupled interface to many types of user interfaces. An efficient implementation will be built upon an information technology infrastructure and middleware software which has been web-servicized. Web servicization is utilized by IBM mainframe systems to integrate with other platforms and applications. IBM WebSphere MQ is the industry leading message queuing middleware platform. It is used in a SOA environment to route and transport messages among nodes and manage services in the enterprise. A message queuing infrastructure built upon and extended with WebSphere MQ is scalable and secure. In addition to IBM WebSphere MQ middleware and Rational Development platform there are commercial and open source Service Oriented Architectures that support web services and message-based technologies. The shaded grey cell indicates open source software.
SYS-ED staff and CETi Technology Partners have been benchmarking Web 2.0 to RIA based upon REST principles and industry-specific SOA-based middleware frameworks. SYS-ED software specific websites have been organized to demonstrate how an informational website can be changed into an e-commerce website utilizing hybrid combinations of commercial and FOSS: free open source software. The SYS-ED web app and mobile device curriculum teaches and provides guidelines on design techniques, coding methodologies and testing. As part of qualifying a prospective web apps and mobile device programming training assignment, we will review client project specifications and incorporate that information into code snippets, sample programs, and hands-on exercise portion of the a class or training program.
|
||||||||||||||||||||||
| SYS-ED's websites compile, organize, and present software specific and established operational categorizations of information technology. They provide a framework for assessing knowledge transfer in a variety of delivery formats: web-based training, classroom instruction, courseware, training aids, learning paths, and validation assessment. | ||
| www.databasetrainingbysysed.us | www.dotnettrainingbysysed.us | www.javatrainingbysysed.us |
| www.mainframetrainingbysysed.us | www.msnetworkstrainingbysysed.us | www.mqseriestrainingbysysed.us |
| www.programmingbysysed.us | www.unixtrainingbysysed.us | www.xmltrainingbysysed.us |
Sources:
Online New York Times, 5 Predictions for APIs in 2011, Shanley Kane Apigee Product Team and GigaOm.UnLocking the Mainframe: Modernizing Legacy Systems in a Service-Oriented Architecture, June 2008.
A Guide to Deploying Application-enabled Phones in the Enterprise, A.J. Gold Associates White Paper, 2010.
The Importance of an Information Strategy, Philip Howard, A White Paper by Bloor Research, December 2008.