Java J2EE Portal
Enterprise Java Station
J2EE curve
Java News / Articles
Java News / Articles
Using the Java ByteCode Verifier To Prevent Malicious Access
Happenings @ IndicThreads.com Conference On Java Technology 2007
dual signature
Security and Threat Models - Secure Electronic Transaction (SET) Protocol
Processing...
Buy Java, Deals On Software Technology Store
Click here for great deals on computers, laptops, software and books
The IndicThreads Software Technology & Emerging Trends Conversation 2008 PDF Print
Written by Content Team   
Feb 27, 2008 at 04:28 AM
Experts Debate SOA, RIA, Agile, Quality, Open Source, Work Cultures & IT Education...

Project managers & architects from Cognizant, Infosys, i-flex & Persistent talk to IndicThreads about trends in software development. They discuss the changing nature of enterprise applications as well as the impact of RIA and SOA. They share their thoughts on Agile, project execution models, project irritants and also give their take on the quality of software education. Read the full discussion to gain meaninful insights into the Software Development scenario today.

Harshad Oak : Welcome to this discussion. Let me first introduce the participants to the discussion. Atul Kahate heads the technology practice, PrimeSourcing, the Services Division of i-flex solutions. Deepak Shastri is an Architect at Persistent Systems Ltd and has over 18 years of experience in designing and implementing software systems in various domains and technologies, Gaurav Awasthi is a Project Manager at Infosys Technologies Ltd and Subodh Kane is a Delivery Manager with BFS Practice of.Cognizant Technology Solutions . Thank you all.

Harshad >> Could you tell us about your current scope of work in terms of the technologies being used?

Atul : Our scope of work involves constantly looking at the current and future technologies and trends, and evaluating what seems to stay on and what is more of hype, and is therefore, likely to evaporate. Based on this, we try to map our internal as well as external technology focus in line with the other inputs received via a number of sources. The technology scope involves all kinds of technologies used to create financial applications, viz Java EE, SOA, Web 2.0, .NET, Mainframe, C++/UNIX.

Deepak : I am responsible to architect solutions by focusing on best practices and identifying patterns that can be reused. Most of the work is in J2EE including EJBs, RMI, Spring and various Presentation technologies.

Gaurav : Well, I am basically into J2EE stack of technologies. And my current profile involves application architecture, technology evaluation, performance evaluation and technical mentoring.

Subodh : The projects I manage deal with a wide range of technologies such as VB/PB, Java/J2EE, Struts, Spring, Hibernate, Oracle, Sybase and Mainframe.

Harshad >> Any trends in enterprise application development that you have noticed over the past year?

Atul : There is a lot of hype about SOA without sufficient action. Some businesses have made investments into SOA-based applications, but there still seems to be a lack of clarity overall. Java EE continues to dominate the scene, with .NET gaining focus for user-centric applications. There is a tough fight between the various RIA toolkits, and equal one between JSF, Flex, and Struts 2. On the RDBMS side, Oracle continues to be a comfortable winner. Also, EJBs seem to be making way for POJOs.

Deepak : I think the trend of building a service delivery platform seems to be gathering some buzz.

Gaurav : I think any enterprise development that is related to Web is affected by the RIA wave. The web2.0 has picked up very well too. In non-web applications and in web too, there is another trend of using open source much more that before. Open source, where multiple experts working across the globe develop collaboratively produce generally much better products that some of the best product dev organizations.

Subodh : Although not entirely new, the most conspicuous trend has been: ‘Get more development value for every $ spent’. Enterprises are trying to achieve this by (1) Improving developer productivity through the use of RAD tools, SDEs, plug-ins such as PMD, Checkstyles, and so on (2) Finding open source alternatives to licensed software (3) Adopting Agile methodologies to improve success rate of software development projects (4) Investing in PoC kind of projects to see how Web 2.0 technologies can help organizations work more efficiently, improve end-user/customer experience and thereby improve customer satisfaction

Harshad : Deepak, by noting a trend towards SDPs do you think IP based audio and video communications would be integral to most future software. Is the technology in place for such a shift?

Deepak : I would guess that IP-based multimedia communication will be a requirement in most software with a user interface. The current limitation to this is probably more to do with infrastructure than software.

Harshad >> What are customers asking for? Have requirements changed due to the Ajax, RIA, SOA or similar technology changes?

Atul : The whole focus is on better and better performance and security on the back end side, and great UI on the front end side. Of course, time to market is the chief driver, as ever. Reusability continues to be a demand as ever without knowing where and how to get there!

Deepak : Customers have asked to use Ajax and RIA without being specific. Applications are already using SOA.

Gaurav : Customers ask for everything that can exist. Yes, RIA has changed the web big time. The concentration from internet application has moved to a new level. Any web product that is launched has to be slick and swift now and that is made possible by Ajax and the like.

Subodh : There are mixed views on these technologies. Realizing the full potential (and benefit) of SOA is still on the ‘wish list’ of most of the enterprises. The experience has been that large enterprises are always cautious about adopting cutting-edge technologies. Ajax, RIA has been getting increasing acceptance. However, before recommending usage of such technologies on large projects, organizations have to think about factors such as the availability of skilled technical resources, maintainability, performance, stability, and so on.

Harshad >> What are the key things you expect from an RIA solution? Any solutions that you think already deliver on these requirements?

Gaurav : Basically a rich user experience with the agility of the desktop applications. There are a lot of things that collaborate to form a solution, and that could be Asynchronous requests, submission throttling, periodic refreshes etc. There are UI libraries and open source solutions to cater to this.

Atul : One of the key aspects that is emerging now is costs. For instance, Ajax solutions using “paid” software such as Jacbe were becoming very popular a few months back. However, now the focus is moving to free/open-source there as well. The trouble with various RIA solutions at the moment is the lack of compatibility and completely different ways of doing the same things (e.g. write Java code and we will generate JavaScript for you, or write JavaScript yourself, and so on). I think some standards have to emerge in this space for mature and consistent solutions to emerge. While it is fine to innovate, it must not be at the cost of consistency and standards.

Harshad : The RIA space sure seems chaotic. It's actually scary to think of the scenario when these 10s of different types of RIA solutions become legacy apps that nobody seems capable of maintaining. Hopefully efforts like the OpenAjax Alliance will lead to more standardization in the space and make it easier to decide the RIA path to take.

Harshad >> Whether .NET or Java EE is better for enterprise development, has been a debated issue for a long time. However now even the LAMP stack seems to have emerged as a contender. Your thoughts on which architecture you think is best suited for enterprise application development.

Atul : I have not personally worked on LAMP, so it is tough to comment. However, I have used applications based on LAMP, hosting huge amount of data, never crashing, and always providing excellent performance. However, I think there is still a lot of bias about Java EE or .NET in the minds of the corporate, from the point of view of better safe than sorry.

Deepak : There is no clear answer. However, LAMP does meet some requirements and provides better value.

Gaurav : I have generally worked in J2EE only and believe it's the strongest contender. LAMP could be a good competitor but Linux is still not as widely used as Windows is.

Subodh : The choice of technology stack for an enterprise is a strategic decision – primarily driven by the enterprise’s business need.

Harshad >>  Which software development methodology do you use currently? Any experiences with Agile and Extreme programming techniques that you can share?

Atul : No. We pretty much stick to the traditional SDLC model on most occasions. I think for Indian IT vendors working under the SEI-CMM norms, the maturity of thought process for other models is still not there.

Deepak: Agile with Scrum. We do use Continuous Integration and Test-Driven development, however the adoption has been slow.

Gaurav : Although we had been using waterfall for a long time but I think Agile is the in thing now. Yes we are following some practices of Agile in our current project. Like iterative development and Scrum meeting. But there is lot more Agile can offer.

Subodh : Of late, the use of SCRUM methodology is on the rise. My personal experience with SCRUM has been very positive. Especially in the IT services industry, where your team works with the customer teams and shares a joint responsibility for the success of the project, SCRUM is very effective. It creates a level-playing field, makes critical team-members accessible (due to 15-min daily SCRUM meetings) and expedites issue-resolution processes. Initially, the team feels that they are being micro-managed, but soon they get used to providing daily status and also see the benefits of the overall process.To make SCRUM effective, an organization needs to invest in training the teams and support the process wholeheartedly.

Harshad : That's an interesting point you make Atul about CMM influencing methodology.

Harshad >> Do you see an increase in usage of opensource tools and components in your work? How do you decide which opensource software is acceptable and which is not? Any examples you would like to mention?

Atul : Surely, yes. Wherever possible, we use open source. Some examples are Linux, NetBeans, GWT, Ruby On Rails and MySQL (wonder if it would be open source, any more though), a few testing tools, etc. Any community-backed open source is acceptable. However, if something is coming from an individual, there is some amount of doubt.

Deepak : As customers seek better value, open source is bound to catch up even more. The acceptable criteria include maturity of the software and the community, richness and completeness of documentation including samples and user support.

Gaurav : Yes, definitely. There are lot of changes that open source has brought into picture. Generally we decide on the basis of functionality and technology obviously but it also depends on their license terms. We need to use an embedded HTML editor and so we are evaluating a whole range of those available in open source world.

Subodh : As I mentioned earlier, there definitely is a trend towards finding open source alternatives to licensed software.

Atul : I think, especially for the developer community, more the open source world opens to them, the better. The end solution that is delivered to the customer may still use a lot of licensed software. However, if the development can be done using open source and then tested on the licensed software (not impossible today in many situations), that would be the best bet. It would also help the Indian IT companies save a lot of costs in software licensing investments.

Harshad >> Some believe that Java is at the end of it's evolutionary path and will soon give way to scripting languages like Ruby, Groovy, etc. Your thoughts on Java and scripting languages?

Atul : I do not think Java will go away so easily. We always have this debate about scripting languages being better than proper languages, and a few years later, we say the opposite. We have done this earlier with Java versus JavaScript/VBScript. Java has a very strong community following now, and we need to keep in mind that unlike C++ or its predecessors, Java is everywhere – on the client, in the business tier, in the database tier, and even on the mobile phone! So, it is tough to displace Java. Another point is that Java is learning from its competitors quite fast, too. Perhaps what could happen is that non-mission-critical applications may adopt ROR and so on. But I think enterprise applications would not leave their Java heritage quite easily.

Gaurav : I haven't had much hands-on with Ruby and Groovy. Can't comment on that.

Deepak : I don't know if that will happen in the near future. Scripting languages will be used in some scenarios but may not serve all enterprise software requirements.

Subodh :Personally, I have not used scripting languages such as Ruby, Groovy, etc. and will not be able to comment.  

Harshad : So can we put down the recent spurt in interest and the flood of new scripting languages to being a cyclic phenomenon and not because Java is found lacking?

Atul : As mentioned in my response earlier, I think it is not possible to think about Java disappearing from the scene so quickly. On a lighter note, we have seen Sachin Tendulkar getting “replaced” by so many younger players in our minds and in the media only to see Sachin coming back with yet another memorable innings – somewhat reminiscent of what we are talking about, here!

Harshad : Maybe JavaFX is the double hundred we have been waiting for...

Page 1 of 2



Add This Feed Button

Enter your Email


Java Expert Interviews
MarcDomenig
Swing UI is mature while Ajax is still in its infancy
Open-Source keeps me 'coding fit'
Bruce Johnson
Google Web Toolkit isn't just another way to create mediocre Ajax applications
Processing...
Go to top of page  Home |
SiteMap

Copyright 2004 to 2008 Rightrix Solutions. All rights reserved. All product names are trademarks of their respective companies. Java and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. Rightrix Solutions and IndicThreads.com are independent of Sun Microsystems, Inc.

Views expressed at IndicThreads.com reflect the views of the authors alone, and do not necessarily reflect those of IndicThreads.com. IndicThreads.com and it's authors are not responsible for reader comments and opinions.

Enterprise Java J2EE JEE Portal >> IndicThreads.com