Nigel Cheshire

Subscribe to Nigel Cheshire: eMailAlertsEmail Alerts
Get Nigel Cheshire: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Related Topics: Java Developer Magazine

Java Developer : Article

Using Java Development Tools to Enforce Best Practices

Part Two of a Two-Part Article

As I highlighted in Part I of this article, the importance of implementing Java development tools, best practices and processes can have a significant impact on the quality of your code and the efficiency of your development team.

Quality Java code results from the talent and experience of Java developers, coupled with the consistent usage of best practices, tools and processes.

In the previous article, I discussed what constitutes software development best practices; and I will now explore in the benefits of implementing the following Java development ‘best practice’ tools:

• Source code control systems
• Static code checking software
• Testing frameworks
• Coverage tools

Source Code Control Systems
A well-run source code control system helps control the software release cycle. It can reduce the risk of application failure, the costs associated with delivering new or improved application features, as well as the risk of exceeding schedules and budgets. Most developers support the structure provided by a source control system; and that a good system can help improve their performance and morale.

Source code control’s primary task is to enable a team of developers to work on source code without overwriting each other’s changes. It also acts as a repository for the source code and other files related to a software product. Developers retrieve source code from the repository, make changes, and check the source code back in. The repository tracks the changes made to each file as developers check in new versions. Additionally, the history of each file is saved to show all the changes that have occurred, which helps developers locate bugs that appear after a known “good” release.

Another key benefit of implementing a source code control system is that it helps to identify the components required for successful builds, and as a result improves the success of testing and deployment. Version numbering (tagging or labeling) is a system of assigning a version or release number to a project or set of files. When problems are found, developers can quickly identify the exact set of files used when the software was built.

Source code control also provides development teams with the ability to branch. The concept of branching is where a developer wants to create a new version (for example, Edition 1.3.1) based on a stable version; and yet other developers need to continue working on the main project (for example, Edition 1.3). The source code control system allows a merge of all the changes at a later time.

More Stories By Nigel Cheshire

Nigel Cheshire is CEO of Enerjy Software, a division of Teamstudio Inc. He oversees product strategy and has been driving the company's growth since he founded it in 1996. Prior to founding Teamstudio, Inc., Nigel was co-founder and principal of Ives & Company, a CRM solutions consultancy. He holds a Bachelor of Science degree in computer science from the University of Teesside, England.

Comments (2)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.