Software development management is supported by a wealth of tools which aid the process and provide a large degree of automation to it. The tools fall into the following categories.
Integrated Development Environments (IDEs)
The coal face of coding, IDEs are the tools into which developers write code. Although code can still be written the old-fashioned way, by typing it into a text editor, IDEs provide so much support that no professional development project does without them. IDEs help with the real-time typing of code: they spot syntax errors in real time, list the available methods for an object immediately its name is typed, instantly list the parameters required for a method and much more. Once code is typed, they integrate with the revelant compilers/linkers to build the executable. They also interface with source code control repositories so that developers can extract or insert (pull, commit) files directtly to and from the IDE. Leading IDEs include Visual Studio, Eclipse, NetBeans and IntelliJ).
Source Code Control
Source code control repositories (also known as version control or revision control systems) can be thought of as databases of code. They enable all the different versions of a software product to be stored, so that all the source code files of any particular version can be extracted whenever required. They also facilitate teams of developers to work on the same project. Each developer works on their own copy of the source code and when a development task is finished "pushes" or "checks in" their changed code to the central repository. If it conflicts with changes made by another developer, the source code repository highlights the conflicts and makes it easier for the developer to make any changes necessary to get his or her code to mesh with the changes made by the other developer.
Leading source code repositories include Git, Subversion and CVS. Git is currently the most popular system. Previously it was Subversion and before that, CVS. In addition, many of the major software vendors provide their own source code repositories, including Microsoft and IBM. Source code control systems are often built into products which provide graphical user interfaces and/or cloud storage for the code repositories. Such products include GitHub and BitBucket.
Automation Consultants sells and provides consultancy on the following leading source code tools, to help with software development management.
Project Management Tools
Developement projects must be managed, and a class of tools exists to support project management, both agile and traditional ("waterfall") methods. Project management tools now integrate with IDEs and source code repositories, so that a developer can see the development tasks assigned to them in their IDE, associate a task with certain changes to source code files in the source code repository, and mark the task as "done" on committing ("Checking in") changes to the repository. In this way, changes made by developers appear automatically as progress in the project managment tool. Project management tools can be integrated with requirements management tools so as to import stories automatically.
Automation Consultants sells and provides consultancy on the following leading project management tools