Collaboration: At the Extremities of Extreme
Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.
Posted by Srini Penchikala on Jul 04, 2009
The latest version of SpringSource Tool Suite (STS), an Eclipse-based development environment for building Spring applications, supports Spring 3.0 and OSGi Development Tools. SpringSource development team recently announced the release of the first release candidate of SpringSource Tool Suite 2.1.0 version. The new version also supports run time integration with Amazon Elastic Cloud Computing (EC2) and VMware tools.
SpringSource Tool Suite enables Spring applications to be packaged and deployed onto a modular OSGi runtime environment as provided by SpringSource dm Server. STS also incorporates a task-focused user interface to speed development, architecture review tools to guide developers toward best practices, and runtime error analysis with automated resolution lookup to help developers solve problems in running applications.
SpringSource Tool Suite was available as a commercial tool in the past but SpringSource's founder Rod Johnson announced back in April, at the SpringOne Europe conference, that they will release STS suite as a free version. Christian Dupuis recently wrote about this announcement and the new features in the latest release.
The new features in SpringSource Tool Suite 2.1.0 RC1 and the recent Milestone releases include:
Spring Project Nature:
The new Spring Bean Definition and Web Flow Definition file wizard provides the option to automatically add the Spring Project Nature to a new project. The other visual tools like the Project Creation Wizard, rich forms-based Spring Configuration Editor, Quick Fixes and Quick Assist, Bean Creation Wizard, Namespace Configuration Dialog also aid in building Spring-based applications.
Project Templates:
The new release contains several project templates to help jumpstart new Spring-based projects. The project templates include the support for Spring Portfolio projects like Spring MVC, Spring Web Flow, Spring Faces, Spring Batch, Spring Roo and OSGi Bundle for SpringSource dm Server.
Type-aware Bean Reference Content Assist:
A long-standing feature request has been added in STS 2.1.0.M2: content assist for Spring bean references now prefers beans that match property and constructor types. Beans that match the property or constructor argument type get a higher priority and are clearly separated in the content assist proposal UI.
Spring 3.0 M3 Support:
STS has been updated to internally use Spring Framework 3.0.0.M3 to use Spring 3.0 features. The new <task:* /> and <jdbc:* /> are both now available and are integrated into STS as the other Spring namespaces with content assist, hyperlinking and validation. STS also supports @Configuration and @Bean, new annotations introduced in Spring 3.0 version. Spring beans configured by @Bean are visible within the Spring Explorer, Dependency Graph and can be referenced in Spring XML. These new annotations have also been added to the Stereotype and Annotation Grouping Support of STS providing the navigation of configuration classes and validation of the configuration classes.
Spring Roo Integration:
The developers can now configure an external Roo installation to be used inside STS instead of the bundled one. This allows usage of new Roo versions and add-ons without the need of a new STS version. In order to make the productivity advantages of Spring Roo available inside the IDE, STS integrates the Roo Shell and provides a Quick Roo Command Prompt (CTRL+R or CMD+R on Mac). The Roo installation can be configured on a per project or workspace level; this allows to target workspace projects to use different versions of Roo and a different set of addons.
Spring Batch Visual Editor:
The new STS release includes some improvements in the visual editor for Spring Batch to support a broad range of editing tasks. To access the Batch Editor open a Spring XML bean definition file with Batch jobs in it with the Spring Config Editor and select the batch-graph tab.
OSGi Development:
The Java developers now have the tools necessary to visualize, package, and deploy modular applications onto SpringSource dm Server. The OSGi development tools support in STS 2.0 includes the validation of the Bundlor template.mf file along MANIFEST.MF and TEST.MF manifest files.
tc Server Instance & Group Management:
The new release of STS allows managing of groups and singe instances of tc Server right inside the IDE. The tc Server integration, introduced with STS 2.0.2, has been extended to allow start and stop operations as well as remote application deployment on tc Server instances that are managed by SpringSource AMS. To configure a group or single instance within STS, open the WTP Servers view and create a new server. In the New Server wizard select SpringSource AMS server type and complete the wizard.
Amazon EC2 Integration:
STS allows to deploy WAR applications, OSGi bundle and PAR projects to dm and tc Server running in the Amazon EC2 cloud. Corresponding AMIs for dm and tc Server have been published by SpringSource. The EC2 integration will automatically handle the setup of the application server cluster and load balancer if required.
VMware Lab Manager:
There is also a view called "Lab Manager" which allows the developers to connect to a VMware Lab Manager installation and browse configurations. The users can start and stop configurations and open consoles for the VM instances right inside the IDE. This feature can be installed from the VMware Eclipse update site. The developers deploying Spring applications within virtualized data centers now have the tools to help with testing and debugging the applications running on VMware Workstation.
SpringSource Tool Suite new release also provides good integration with the recently released Eclipse 3.5 version. Christian Dupuis and Adam Fitzgerald recently wrote about how to install SprintSource Tool Suite 2.1.0.RC1 Eclipse plugin in Eclipse 3.5 Galileo version.
From the team collaboration and task management stand-point, STS, a TaskTop certified tool, extends Mylyn's Task-focused user interface to provide a simple workflow to make it easier for developers to navigate the complex hierarchies of modern enterprise applications. It maintains a focused browsing history for all programming elements opened in the IDE as well as Web resources accessed.
Srini Penchikala currently works as Security Architect and has 17 yrs of experience in software product management.
Monitor your Production Java App - includes JMX! Low Overhead - Free download
Using Drools? See what you're missing! Get the Power of Drools with the Assurance of Red Hat
18 agile and lean practices for effective software development governance
Any support at all for Grails and Groovy yet?
Raphael, that is a great question. STS 2.1.0 does not contain any Groovy or Grails tooling yet will do very soon: STS will include Groovy support very soon and Grails support will come a little later.
Right now the tools team is working on extending the current Groovy Eclipse plugin with incremental compilation and very tight integration into the Java editing and compilation infrastructure of Eclipse. This is an ongoing process which you can follow at andrewclement.blogspot.com/ and contraptionsforprogramming.blogspot.com/. Please note the both Andy and Andrew are working for SpringSource and we are actively investing in Groovy and Grails support. We are just not there yet.
Certainly you'll be able to install the improved Groovy plugin into STS; most likely we'll bundle it with the next version after 2.1.0.
Stay tuned for more news on that topic.
Christian Dupuis
--
Principal Software Engineer, SpringSource
Lead, Spring IDE & SpringSource Tool Suite
www.springsource.com
I just got Version: 2.2.1.200910210131-RELEASE and seems like there is still very little support beyond new-Grails project which runs the "grails create-app" command. I have these features installed:
Groovy-Eclipse Feature 2.0.0.xx-20091207-1900-M2-e35 org.codehaus.groovy.eclipse.feature.feature.group
Groovy-Eclipse JDT Patch Sources Feature 2.0.0.xx-20091207-1900-M2-e35 org.codehaus.groovy.jdt.patch.source.feature.group
Groovy-Eclipse Sources Feature 2.0.0.xx-20091207-1900-M2-e35 org.codehaus.groovy.eclipse.feature.source.feature.group
SpringSource Tool Suite 2.2.1.200910210131-RELEASE com.springsource.sts.ide
SpringSource Tool Suite Grails Support 2.2.1.200910210131-RELEASE com.springsource.sts.grails.feature.group
Is there more available for grails?
I was reading on some web posts about performance issues with Bean Validator running on large projects, have you experienced any performance degradation in the IDE when it runs the Spring specifc validators.
Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.
Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).
Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.
Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.
One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.
InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.
Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.
John Davies examines Visa’s architecture and shows how enterprises have architected complex integrations incorporating Hadoop, memcached, Ruby on Rails, and others to deliver innovative solutions.
4 comments
Watch Thread Reply