Categories
NEWS

[News] Starting in March 2023, we will begin plug-in development services for Redmine, a task and project management tool.

As part of VisiWork, a Redmine implementation and operation support service that Synergy Institute is working on, we are pleased to announce that we will start Redmine plug-in development service from March 2023.

By developing Redmine plug-ins, users will be able to effectively combine Redmine with internal and external information systems and use Redmine as part of an enterprise system by adding their own logic and screens.

(Standard Redmine Gantt chart)

Redmine plugins are the most powerful way to customize Redmine. There are several other ways to customize Redmine, but developing a plugin allows you to implement features in Redmine that solve your specific issues without modifying the standard Redmine code. Since Remine is open-source software, users can customize it by directly modifying the standard Redmine code. However, if they do so, it is then the user’s responsibility to follow the standard Redmine. Or, they have to give up following the standard Redmine.

Considering that most of the upgrades to the standard Redmine are security-related, this choice is not a good idea (several ways to customize Redmine and their advantages and disadvantages are explained in this article).

So what benefits can users expect from VisiWork’s plug-in development services?

Plug-in development requires unique skills and know-how, and it is not easy to find engineers and system development companies with those skills. However, from now on, when users feel the need for plug-in development, they can contact VisiWork services. Consultants and advisors will then analyze the requirements to determine what kind of plug-in development is needed, and skilled developers will develop the plug-in and provide it to the user. Needless to say, VisiWork Service’s past experience and achievements in various fields such as manufacturing, construction and engineering, and services will be utilized in this process.

In addition, VisiWork services support users in various tasks related to Redmine, including not only plug-in development, but also implementation, operation, and education.

By developing plug-ins and customizing in other ways, not only so-called typical task management and project management, but also DX (Digital Transformation) of all project-based operations can be realized at an overwhelmingly low cost, a characteristic of open-source software.

Redmine and its customization can be used for international projects at low cost, which is becoming increasingly common due to the advancement of globalization. Redmine is already available in multiple languages in its standard version, and several providers offer cloud services (SaaS), making it easy to use in such international projects.

Redmine plug-ins developed by users can be used with cloud services (SaaS), but confirmation with the SaaS provider is required. VisiWork Services is available for consultation on plug-in development for deployment in the cloud.

If you have any questions about plugin development or the introduction and operation of Redmine, please contact us.

Categories
トピック 解説

Customizing Redmine, an open-source task management tool, for users’ specific issues to reduce DX costs

Up until now, Synergy Research Corporation’s VisiWork service has supported the introduction and operation of Redmine. However, in our recent user support, we have received many requests not only for the introduction and operation of Redmine, but also for customization of Redmine to solve specific issues that user companies have, or for the development of data integration interfaces between other business systems and Redmine. 

Redmine is an open-source software and is available free of charge. Even when using Redmine as a paid SaaS service, the license fee is kept within a reasonable range. Therefore, if Redmine can be used to solve user-specific issues through customization, it is possible to realize very large cost reductions compared to developing everything or using expensive packaged software.

Below we describe in turn four ways to customize Redmine: 

No.How to Customize RedmineObjective
1Code modification of the main unitFunctional change
2Utilizing Custom FieldsData attribute addition
3Development of data linkage function by API (add-in function development)Data linkage function added
4Plug-in DevelopmentFunctional expansion
Table 1: Redmine Customization Methods and Objectives

1. Code modification of the main unit

Redmine is open-source software. When thinking of customizing open-source software, you might imagine obtaining the standard version and modifying the source code. However, this is not commonly done with Redmine.

The specifications of Redmine are managed by redmine.org, and the source code is updated regularly. While users can directly change Redmine’s functionality by modifying the source code, this makes them responsible for keeping up with the standard version updates, which often include security patches. Therefore, changes should be made cautiously.

However, if specific modifications offer significant benefits to a company and there is guaranteed support and budget for maintaining those changes, modifying the standard parts of Redmine can be meaningful. VisiWork services also provide support for such modifications and maintenance.

2. Utilizing custom fields

Custom fields are a feature in standard Redmine that allows you to add fields to standard Redmine data, such as tickets, work hours, projects, users, etc., according to user-specific requirements.

Despite the simplicity of this customization method, its ease of use has led most users to use custom fields.

In Table 1 below, the attribute “number of welds” is added as a user-specific requirement for standard tickets.

No.Field NameData (example)Classification
1id3012standard
2projectEquipment Projects
3trackerproduction
4titleUnit A Production
5statusunder inspection
6degree of relative priorityusual
7person in charge Ichiro Hayashi
8number of welding points6custom
Table 2: Customized Ticket Fields

3. Development of data linkage function by API

In section 2, we discussed the use of custom fields. What if the data including the number of welding points is stored in an Excel sheet of the person in charge of the design department, and we want to share it with the entire design department using Redmine? The solution to this problem is to develop a data integration function using an API. This is sometimes called add-in or add-on function development.

Standard Redmine has the ability to link data with Excel sheets (CSV format files) using this API, and the data can include custom fields, so custom fields and this method work well together and make standard Redmine a more powerful tool.

However, this standard functionality can be a bit cumbersome to use repeatedly. To solve this problem, VisiWork Service has developed its own tool, TaskBuilder, which is provided free of charge to VisiWork Service customers (see related article).

However, when performing such data linkage as a routine task, it is ideal to improve efficiency by developing data linkage functions using APIs to fully automate the process and execute it on a regular basis.

4. Plug-in Development

Plug-in development is the mainstay of user-specific problem-solving methods. Plug-in development allows users to implement their own specifications without changing the standard code.

This will allow you to add your own screens, data, and logic, avoiding the problems that arise from modifying the standard Redmine source code, as pointed out in section 1.

By developing a plugin, it is possible to introduce the custom fields described in section 2. and then provide your own calculation logic for those custom fields.

For example, you can add ticket attributes such as the number of welds, length, width, and height of the product to be manufactured, as well as the number of scheduled man-hours, which is the basic information for scheduling, to be automatically calculated. It is also possible to prevent users from directly updating the scheduled man-hours to an arbitrary value using the standard ticket screen by properly setting the “Permissions on workflow fields” in the Redmine settings.

Figure 1: Plug-in ticket entry screen and automatic calculations

It is also important to note that such plug-ins, even if developed individually by the user, can usually be deployed in SaaS.

Of the four methods described above, except for 1. modifying the source code directly, the other three methods can be actively used to create a customized Redmine that solves user-specific issues.

The relationship and description of these three methods is shown in Figure 2.

Figure 2: The relationship and description of these three methods

For inquiries about this article, please send them to our Contact page.

27F, Shiroyama Trust Tower, 4-3-1, Toranomon, Minato-ku, Tokyo, 105-6027, Japan
TEL 03-5404-8583

                       Corporate Site