Hasso Plattner about Composite Applications – and their major issues August 20, 2007
Posted by technologydriven in SAP, Software-Architecture, Software-Development.1 comment so far
Already last year Hasso Plattner had a lecture at his “Hasso Plattner Institute” (HPI) about the so called composite applications, applications “that sit on other applications” as he said, with no own data storage.
He gave an overview of what composite applications are and illustrated this with the example of Duet, a joint project of Microsoft and SAP to integrate Microsoft Office and SAP applications. I would say this is more an example of an integration of two systems than an example of a composite application, but at least it shows how relatively easy applications can be built with the help of standardized services, on top of web-based platforms (NetWeaver and .Net).
Technically an integration has always been possible Plattner outlined, but nowadays it is easier because of the standardized protocols (e.g. SOAP) and the systematization of application integration.
Nevertheless, there are some issues to consider when composite applications are built (and just as well when systems are integrated):
- User-experience consistency: which UI-guideline is to use, e.g. that of Microsoft or that of SAP?
- Data model overlaps: the data of which system is to use, when there are overlaps?
- Process overlaps: every software has some functionality, perhaps overlapping with other systems, and will obtain new functions in the future. So only the core-processes have to be combined.
- Joint configuration: to stay in the example of Duet: MS Office has extensive configuration options, and there are thousands of customizing tables in SAP. To bring the two systems together the configuration has to match.
- Life-cycle synchronization: every software has a release-cycle, perhaps one system changes and the other does not change accordingly.
Finally, as he likes to do very often, Plattner brought an example from the automotive industry, pointing the way for the software industry: in earlier days there were radios with their own brand in cars, nowadays the radios have the “user-interface” of the cars, but the car-manufacturers still don’t produce radios on their own. This would also occur in software-industry, Plattner predicted, software would consist of services (= components) of different manufacturers, and there would be a consistent UI on top the respective application-suite.
A video of the lecture (in German) can be found here:
http://www.hpi-potsdam.com/index.php/2006/07/05/summer-term-2006-composite-applications/
Getting Started with Web-Dynpro ABAP January 29, 2007
Posted by technologydriven in ABAP, SAP, Software-Development.17 comments
I played around with the first beta-versions of WebDynpro Java (WDJ) already some years ago, now that NetWeaver 2004s (AS ABAP 7.0) is available I also had the chance to go in for WebDynpro ABAP (WDA). This is the version we will probably work the most with, as it doesn’t need a separate runtime environment, is directly integrated into the ERP-system and thereby makes developing business applications based on ERP-functionality much easier.
I am approaching the topic by working through the book “Web Dynpro for ABAP” by Ulli Hoffmann, which treats the subjects with hands-on examples, various source-code excerpts and screenshots rather than abstract descriptions.
The WebDynpro-framework, development tools and runtime environment apparently bring a lot of advantages to (web-)application developers (and users):
- Declarative and graphical tools speed up the development of UIs
- The MVC-model leads to a clear separation of layout and business-logic
- Data-binding makes it easier to bring the data to the frontend and enables automatic type-checking
- The componentization-options allow reuse on the presentation-level of applications
- The runtime generates highly interactive, “flicker-free” screens running within a standard-browser
But I have to say that I also like programming BSP’s with HTMLB and the MVC-model very much. This concept has most of the mentioned advantages too, but offers more flexibility I would say, especially when it comes to dynamically generating screens or parts of screens. WebDynpro becomes slightly complex there.
Those are also good starting-points to WebDynpro ABAP (besides the mentioned book):
AJAX Design Strategies January 5, 2007
Posted by technologydriven in Software-Development.add a comment
This article from Sun gives a nice overview of the various possibilities a software developer has if he wants to incorporate AJAX-functionality into his application.
In short, the options are:
- Do it yourself, when you need fine-grained control over your web application’s AJAX functionality.
- Use a client-side JavaScript technology library (like Dojo or Prototype), when it can simplify the JavaScript technology code you would need to write for your web application.
- Use a client-server framework (e.g. Ajax4jsf), when you want to take advantage of tools such as the Sun Java Studio Creator IDE to build web applications by dragging and dropping components, or if you’re already using JavaServer Faces technology to build web applications.
- Do the “wrap thing”, i.e. wrap JavaScript widgets with JSP-tags or JSF-components (e.g. jMaki), when you already use JSP or JavaServer Faces technology in your web applications and need to access widgets from client-side JavaScript technology libraries.
- Go remote (e.g. with Direct Web Remoting), when you have business logic in server-side Java objects that you want to use to process AJAX requests.
- Go all Java technology (e.g. Google Web Toolkit), when you want to develop AJAX-enabled applications using the Java programming language exclusively.
Chances and Risks of AJAX in Enterprise Applications January 2, 2007
Posted by technologydriven in Software-Development.add a comment
Markus Eisele did an interesting speech at the W-JAX conference last year about “Chances and Risks of AJAX in Enterprise Applications”.
Here you can find the presentation:
http://technologydriven.files.wordpress.com/2007/01/w-jax_eisele.pdf
Unfortunately it’s only available in German, so I try to give you the key-points in the following.
First, Markus described the characteristics of (inter-)”enterprise” applications, compared to e.g. public web-applications like flickr or Google:
- Instrument for business performance
- Robustness and reliability
- Cost-effectiveness (TCO)
- Performance requirements
- Handling of mass data
- Testability
- Proven tools, methodologies and software-architectures for software-development (e.g. MVC)
- …
Concerning all this, a new technology like AJAX offers some chances but also some challenges, namely:
- Centralized administration of clients (perhaps browser-versions 4.x) and security settings which prohibit the extensive use of JavaScript
- Heterogeneous client-infrastructure (PCs, hand-helds, kiosk-systems, …)
- Lack of tools to develop, debug and test AJAX- (or JavaScript-)based applications
- Danger to do business-logic within the presentation layer
- AJAX is there to increase usability, but it not always does (print web-page, bookmarking, browser back-button, …)
To encounter those challenges, Markus recommended the server-side development and generation of AJAX-code within standardized frameworks like J2EE/JSF or .Net. As suitable areas to use AJAX within enterprise apps he identified:
- Asynchronous loading/update of worklists within workflow-systems
- Complex forms (dynamic loading of page-fragments instead of clicking through a lot of pages)
- Dynamic, on-demand loading of data-records for tree-structures and similar
- Client-side sort and filtering of datasets
- Automatic text-completion in input-fields (e.g. Google Suggest)
He finished with a quote from Ray Valdes (Gartner):
“The bottom line is it [AJAX] can result in an
improved user experience, which offers
significant business value, but that is not
automatic. Many developers will do what they
always do—they don’t understand user-centric
design. We’ve seen this with Java applets.
We’ve seen this with Flash.”
Software Development Frameworks, Processes, Methods, and Philosophies December 30, 2006
Posted by technologydriven in Software-Development.add a comment
You can find a nice reference list here.
New Version of Google Web Toolkit available August 27, 2006
Posted by technologydriven in Google, Java, Software-Development.add a comment
Google released a new version 1.1.10 of their AJAX- and Java-based Google Web-Toolkit (GWT), which fixes some bugs.
Besides, a fist book on GWT is available from the Pragmatic Programmers.
(from Ed Burnette’s Dev Connection)