Client side scripting is coming to DOORS Next Generation. If you go to the jazz.net downloads you can get an early release candidate of version 4.0.5 which has a technology preview of client side scripting. This is not a fully comprehensive feature yet, but this is a good start.
The API documentation is here and some technical details of how to set things up here. Bear in mind that this is a developer preview, so the API might change, support is limited and this shouldn’t be used on production environments. Still, no reason not to get excited about the potential…
- What is provided allows you to create an OpenSocial gadget in the MiniDashboard. You can also manipulate data.
- You can’t just create code like you did in DXL, you have to store it somewhere where it has a web server to dish it up to DNG, but anywhere will do so long as it is accessible by a URL. This gives options of reusable gadget repositories.
- You can use your browser as a half-decent debugger
Mini Dashboard pops out of the left hand side of the browser when you touch those four colored squares
- Visualization – graph the data from the module you are viewing
- Attribute checking – for example where several attributes combine to give a level of risk or cost that is calculable by formula, check and report errors.
- Attribute setting – for the above example, use the code to set the values
- Process management – manage transitions of a status attribute by only setting it through the gadget – not an ideal mechanism because it can be defeated by anyone who doesn’t install the gadget on their mini dashboard, but it might work for agile teams.
- Create or delete links – although I don’t have a situation in mind where that wouldn’t be better done in the standard user interface.
- I have the same issue with this as I had with DXL, it is great but there is potential for it to be overused.
- Any code that hits a production environment should be properly tested, written to coding standards and configuration controlled
- Any code in place when there is an upgrade needs to be regression tested to ensure that it is still working properly. Too often I have seen DXL code find its way into a DOORS Classic environment and then cause problems because it was ill thought out, or improperly tested.