How Does AnthillPro Help Me Reuse My Software Assets?
Any organization engaged in software development will accumulate, over time, software assets that can (and should) be reused/leveraged during the development of new projects. However, anyone that has been faced with this task realizes that this is much easier said than done. Amazingly, even at this stage in our industry, there are technical challenges that stand in the way of achieving widespread reuse. AnthillPro provides a solution to this technical challenge.
One of the big challenges with reuse is simply managing the reusable artifacts. Where are reusable artifacts stored? How does an artifact become available for reuse? And how does one retrieve all required artifacts? These may seem like simple questions, but until now developers have not had access to a single tool that provides all the answers. The demand for solutions has been there, as evidenced by the popularity of tools such as Maven (along with it's artifact repository), and IDEs such as Eclipse and VisualStudio that allow the developer to set up dependencies between projects during development. AnthillPro provides one uniform tool that removes the biggest technical challenges to really starting to reuse software assets.
In terms of artifact storage, AnthillPro provides a repository for reusable artifacts. Any build performed by AnthillPro can produce and store artifacts in the repository and make them available for future use. AnthillPro provides full traceability along with an audit trail, allowing the specific build that produced a set of artifacts to be identified. And, of course, AnthillPro provides full traceability from a build to the specific sources used for the build, thus providing true source-to-build-to-artifact traceability.
Surprisingly, providing a uniform way of making the artifacts available for reuse is one of the more challenging pieces of the puzzle. The reason is that the method of retrieving artifacts has to be the same for every environment. There must be a uniform way of retrieving artifacts for use by developers on their machines during development and local build, and for use by AnthillPro when performing authoritative builds. AnthillPro achieves this by providing a client application for the artifact repository. By providing a command line client, as well as Ant tasks, artifact retrieval is easily integrated with any development environment.
What Constitutes Reuse?
When we talk about reuse, we are talking about opportunities for reuse within an organization. For example, a project last year created some code that represents an order within the organization. This code was used in a CRM application. Now, this year, a project tasked with providing visibility into the manufacturing process for each order should be able to reuse the already existing code rather than having to write it from scratch. But how does the new project team even find out that this code exists? And once they know about this code, how do they gain access to it in order to reuse it? These are questions to which AnthillPro provides answers.