Heiko Braun Software Engineer

Red Hat Integration and BPM week

Check out he Red Hat Integration and BPM Week virtual event – October 15-18, 2012.

In addition to overviews on how Red Hat will integrate technologies from FuseSource and Polymita into the JBoss middleware portfolio, this virtual event will deliver 16 sessions on the latest lightweight integration framework and BPM technologies. Learn directly from the project leads how to fully leverage these technologies.

Sessions include:
* Fuse IDE makes integration easy – James Strachan (formerly FuseSource)
* Getting Started with Apache Camel – Claus Ibsen (formerly FuseSource)
* Enterprise integration at scale – Keith Babo
* Business rules and event modeling made easy – Edson Tirelli
* Simplify the complexity of your business processes – Kris Verlaenen
* ActiveMQ in the cloud – Dejan Bosanac
* Fuse Fabric and Fuse Management Console – Stan Lewis (formerly FuseSource)

The virtual event is FREE. Sessions will be delivered live, and will also be available on-demand afterwards. One registration gets you access to everything!

For more information on the agenda and sessions, please go to: http://www.redhat.com/promo/jboss_integration_week

Using AS7 the web console behind a proxy

Aleksandar has written a quick introduction how to use the web management interface behind an apache proxy: https://community.jboss.org/wiki/ApacheHttpdJBossAS7AdminConsoleProxy

JBoss AS7: Tackling the next generation OA&M feature set

Lock step development

So far the management tools we ship with AS7 did build on strict requirements. The development did mostly move lock step with the management API enhancements, which allowed us to build, verify and improve the management layer as whole (CLI, Web, API) on a topic by topic base.

If a new feature has been added to the API it has been implemented and thus verified by both the CLI and the web interface at almost the same time. Once it was sufficiently provided by all clients we did move on to the next topic.

This model has been very successful and did yield excellent results. The different stakeholders did not drift apart too far, questions could be answered immediately and changes be implemented in a timely manner.

Succinct development topics

Thinking about future enhancements to the AS7 management layer, I think this model should be retained. It can be enhanced by creating more succinct topics to focus on. Some ideas that came up in the past, but not limited to that:

  • Initial server setup and customisation: choice of modules, subsystems, etc
  • Application setup: preparing the runtime dependencies (datasources, queues, ets) and differences across environments (development, staging, production)
  • Day to day administrative tasks: system health, etc
  • Cloud/Domain use cases: challenges when hosts cannot be accessed (log files, etc)

Putting an emphasis on development topics would greatly simplify collaboration across teams: product management, development, QA, docs. It would allow us to get from a requirement to minimum viable feature (ready for UAT) in a short amount of time, without much context switching required by any participant. IMO this is one of the main points that allowed to deliver AS7 in such a short amount time.

Enhancing the OA&M feature set

Although this model would make sense for other engineering areas as well, I would like to focus on the OA&M feature set of AS7. When comparing AS7 to other vendors offerings or talking to customers we end up with a plethora of features that could be provided. The key point however is to figure the important ones that will actually improve real user needs.

Product management does already a great job of figuring out what that could actually be, but I think it does as well require engineering feedback, UX input and especially verification if the features provided actually serve the users needs.

The topic based approach would be simple, but efficient way to provide new features and verify if they fit their purpose.

Iterations and change requests

I am writing this from the point of view of the web management interface. Being the last item in the development food chain (dependencies) and a very exposed one at the same time, this model makes perfect sense. However it might not be the case for everyone else. Hence I would like to outline what it takes to add new management features to the platform from our point view:

  1. A management use case is identified and described
  2. A subsystem provides the management API to enable the use case
  3. The tools represent the use case according to their capabilities and context (interacting the API)
  4. UAT verifies if it serves the user need (community, engineering, sales, product management)

Typically the transition between each of these steps identifies several issues that need to be fixed before moving on. If this happens in a timely manner it’s no big deal. But if that gap between handover and feedback becomes to big, stakeholders working on the previous step are already focusing on something else. The iterations become bigger, the context switch more expensive and the overall result can be verified very late in the game, if at all.

Value and usability

If we turn around the way of looking at product development, the actual users needs should matter most. It’s not the amount of features neither the question if the competition does provide it, that makes a product useful. The questions are:

  • Does the product provide value to the user?
  • Can the users tasks easily be accomplished?
  • How hard is it to start using it?
  • Do people like to use it?

I believe that an ordered, topic based approach to the development of new management features is crucial to the overall success. It will guarantee that not only we enhance the current feature set, but we also improve on it.

With that in mind: Let’s figure out what’s important to you.

JBoss AS7 Console 1.4.0: Improvements and bugfixes

We just released an updated version of the AS7 console. Besides several bug fixes and minor improvements this release also contains a number of notable changes that I would like to outline in this post.

Revamped deployments in domain mode

We’ve been getting a lot of requests for enhancement from the community. Hence we took some time to revisit the domain deployment use cases within the console.

They basically boil down to two approaches:

– Managing the contents in the repository
– Assigning deployments to server groups

While the former has been provided in a reasonable way, the later has been really awkward to use. With the new user interface you can now chose to approach deployments from either the content repository or a server group. In both cases you’ll find the ability to assign and remove deployments to and from server groups.

Atop of that we’ve added some filename filters that should greatly simplify working with a large set of deployments.

Configuration Browser

The configuration browser is the first all purpose tool we are throwing into the mix. It allows you to browse the actual model descriptions easily (learning purposes) and to inspect actual configuration values of node within the tree. We had this pending for quiet some time and it can be considered a first step towards something like an expert mode within the console (imagine forms being added). But we think it’s valuable on it’s own, hence we added it to 1.4.0.

 

Expression Resolver

We’ve had support for expression values as part of the model for quiet some time, but the ability to resolve the actual values has been missing so far. To complement expression support we’ve added a tool that allows you to resolve expressions from within the console.

It’s opened directly from attributes that carry expression values (i.e. “${tx.node:1}”) and will automatically resolve values on all servers (in case you are running domain mode).

Managing JBossAS 7 using your iPhone

Christos Vasilakis has just published his iPhone app for JBossAS 7. It currently supports the following features:

**Subsystem Metrics Monitoring
**The metrics currently exposed are for Configuration, JVM, Data Sources, JMS Destinations, Transactions and Web subsystems (similar to those shown in the JBoss built-in web console).

**Deployments Management
**You can upload an artifact (installed on your iPhone through iTunes file sharing mechanism) and then enable/disable it on the server.

**Browse the management tree
**The whole management tree is exposed for you to configure, similar to the JBoss-cli {-gui} tool provided by the server. You can easily modify attributes and execute operations. Documentation of attributes and operation parameters (as provided by the JBoss 7 server) is easily accessed for you to refer.

Congrats to the first release Chistos. Great job!

You can find his public announcement here:
https://community.jboss.org/thread/199446 

The iPhone app is available through the app store: http://itunes.apple.com/us/app/jboss-admin/id523516060?ls=1&mt=8

Don’t forget to give him some credits.

Have fun,
Heiko