Veteran Project Manager and user of Enterprise Architect in 100+ projects since 2001, Herminio Lourenço has recently published some illuminating articles regarding toolsets for systems development.
This article was orginally published on Mr. Lourenço's LinkedIn profile on November 22nd, reprinted on the Sparx Systems Community site with permission from the author.
Firstly, tool is something that enables, facilitates, gives bigger productivity to one or more activities. The tool works for us. We dedicate some effort and as a result we have a lot of work done. That said, I will suggest a set of tools to give productivity and quality to systems development.
A concept being introduced is the ALM: Application Lifecycle Management. According to Wikipedia, is the marriage between business management with software engineering, which became viable thanks to tools that facilitate and integrate processes such as requirements analysis, architectural modeling, code development, change management, test management and managing of versions of products accomplished. Each one of these processes is part of a stage of a software life cycle.
This can be achieved through a framework, as the Jazz from IBM or Microsoft TFS, among other options, which integrates specialized tools to manage: requirements; code repository; construction; architecture and coding; tests and quality, versions and components.
In that effort to implement multiple tools, the company may have to invest hundreds of thousands of dollars and dozens of months in software settings and in training.One of the options that brings fastest return in productivity and quality is the Enterprise Architect (EA) from Sparx Systems. With this tool you can manage and analyze requirements, with automatic control of traceability of the requirements until the code and vice versa, besides producing the models of analysis and design and code as much classes as databases.
Support for testing and integration with configuration and release managers practically complete the required skills. Furthermore, EA has tools like KANBAN and task planning that help you plan and control the progress of work.
Other tools like Jira and Subversion can help complete the spectrum.
Of course that the biggest suppliers will try to convince IT managers that this solution may not be as good and complete as their offers, but this solution has more than 300,000 users developers across the planet. Theirs might have a few hundred followers. I will not discuss what is the perfect solution because it doesn't exist.
The adoption of a good, solid and tested set of tools is crucial to obtain the desired productivity in systems development.