Nice Source code and Version Control tool
September 25, 2017

Nice Source code and Version Control tool

Rajesh Telampudi | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User

Overall Satisfaction with PTC Integrity

PTC Integrity was used by one of my client, and it is being used for past 8 yrs. PTC previously known as MKS Integrity, is used as a version control, source code management, change management and defect tracking tool. This tool is used throughout the IT Organization globally. I've been using this tool since 4-5 years, and comparing it with other tools in the market, I did initially have some problems using the functionality, but once I got used to it, I liked it a lot. The version controlling of the source code is very nicely organized, and helps in managing the code optimally. In one specific instance, we did see the tool help identifying an issue in code which was checked-in about 2 years prior. There are other features in PTC Integrity, but my main purpose was for version control of source code, and change management, used for labeling the code and promoting.
  • Source Code management: This tool is very good at source code management. I've seen some clients, where there are teams of more than 4 members, who have tough time identifying which team member is working on which code, and when the team has to consolidate, the team have to spend considerable time to understand the code changes. PTC Integrity is best at it, wherein each member can checkout and lock the file, so that other users can't use it. Also, Labeling a specific version of the code will help in easy identification, assuming that a common naming standard is used for labeling the files.
  • Version Control: Even though version control is part of Source code management, this is an important aspect, since I had an instance when we wanted to identify the team who worked on a bug-fix in the code about 2 years back. Also, with the 4-digit versioning used, we were able to mark the specific version number based on the release, i.e., first digit for Major release, 2nd for minor, 3rd for Defect fix and 4th for very small bug-fix. Again, this versioning model is something we defined for our team. Versioning and branching of code is a very important aspect in IT.
  • Change Management / Defect Management tool: The other feature we used was for raising and tracking defects, as well as Change Management, i.e., promoting code from Environment to environment. The process defined thru the tool was such that, a user raises a request which would be routed to another Manager for approval, after which another 2nd level Manager can approve, and then the request would be finally routed the Admin team to implement the change. This workflow can always be customized based on a team to team use. Similar workflow was also tried out for Access requests in one other team.
  • Even though the tool has some cool features, the look and feel is more like an old JAVA applet view. If the GUI look and feel are improved, it would give the user a premium feel.
  • One other feature as a Qlik Architect I would suggest is to implement a code merge feature for applications, so that developers can work parallel and then merge their code. This would diversify the teams to work on multiple issues in the same application/code. I did see multiple users complaining regarding this issue, and feel that this feature could be good to have.
  • Integration with other servers, for easy deployment of code. Again from a QlikView perspective, if code had to be deployed, the code has to manually checked out to the administrator machine and then copied to the respective location, but this could be automated, the risk of manual intervention for promoting/migration of code will be much easier.
  • Since PTC Integrity is global tool used by our client, the source code management was good, and the main objective has been achieved. While comparing my experience with other clients, there were some other tools, which weren't as good as PTC Integrity, and some didn't even used source code management tools at all.
  • Since we can even create new forms and create workflows, without the use of external systems, this always reduces additional investment and use the existing applications to achieve the functionality.
  • The effort involved for managing the tool is much less than other competitive version control tools which are complex to understand and use. Features like use existing filters to identify the list of files attached to label help in promoting or checking the list of files to be moved from environment to environment.
  • Tortoise SVN, Big Bucket(GIT hub) and Microfocus StarTeam
There are some tools which are available for free like GitHub. I've used StarTeam when it was a product of Borland, and while using PTC Integrity, I feel PTC Integrity has most of the features which were available in StarTeam. Although there are some other free tools like Tortoise SVN, it's always better to stick with tools which are licensed and supported in case of any issues/problems.
PTC Integrity is an excellent source code management and version control tool, and I would suggest anyone to use it for that purpose. We can even define our workflows using individual forms for implementing Change Management, Defect Management and Access management requests. If properly used, this tool is great for managing our code for very long periods, considering my 4-5 years of usage.
Though the UI could be better, and integration with some application servers could be better implemented, this tool is a good tool.

Using PTC Integrity

PTC Integrity comparatively could be considered a nice Source code management, Version controlling tool and could be compared with tools like StarTeam. If the integration to move/migrate code could be integrated into this tool, it would become an extremely powerful tool.
ProsCons
Like to use
Easy to use
Technical support not required
Well integrated
Consistent
Quick to learn
Convenient
Feel confident using
Familiar
Unnecessarily complex
  • Checkout-checkin
  • Checking history of the code
  • Creating new requests
  • Identifying code attached to a label
  • Initial configuration
  • Version controlling different branches