JdA » History » Revision 7

« Previous | Revision 7/10 (diff) | Next »
Borja Pacheco Ortega, 2012-03-19 18:33


  1. Tell the world our experiences and works aroud Redmine.
  2. Share with others our ideas, efforts and developed code.
  3. Make our plugins as popular as possible and promote them as a regular part of the redmine's core project.

Who are we?

We are some IT professionals who work at Sadesi (a public company that belongs to Junta de Andalucia, in advance I'll use the acronym JdA). We are happy of working in an organization which is compromised with OpenSource and Quality, Sadesi is compliant with ISO 9001, ISO 20000 (ITIL) and ISO 27001.

My name's Borja Pacheco and I want to clarify that I'm talking from a personal point of view, not trying to tell you the formal opinion of others (nor Sadesi, CEIC, neither Junta de Andalucia). I need to mention to María José Romero del Toro and Francisco José Quintero Morón, who are an important part of this project and without them, nothing wouldn't be possible.

Our story

Sadesi started to use Redmine as the main tool to manage our source development projects in the middle of 2010. Since that:
  • We realized Redmine is a very complete and good software.
  • We assigned to our redmine instance (HGP) the role of SPOC (Single point of contact) among all parties involved into our software development projects (internal clients, our technical staff and providers that builds concrete pieces of a project).
  • We have used it broadly. Some indicators: 29175 tickets created and 796 active users.... I guess we have one of the biggest implementations all over the world.

First interactions

After an initial usage period, we missed out some functionality that wasn't already developed. Our first approach was to make it ourselves. We modified several parts of the code to avoid tickets without one assigned persons (we don't want orphan tickets), we linked End-Date and Status to avoid tickets without 100% completing, modified Gantt module, adapted Spanish translations to our current vocabulary, created a simple plugin-menu to facilitate access to other daily tools, made the tree-view plugin operative again and, finally, we made a custom application that uses redmine's data model, for being a bridge between redmine and our ERP (Navision).

This experience produced us a "bitter taste", because we found several difficulties:
  • We didn't want to touch Redmine's core/kernel, but it was not possible in all cases. So we started to be very sensitive about redmine's updates & upgrades.
  • Ruby, it's not our core business programming language. We feel more comfortable using Java or PHP. This problem increased the first problem, because we didn't use properly methods that allow changing normal behaviour inside a plugin.

We learnt other important fact: Sometimes it's easier and cost saving, adapt our mind/methodology instead of modifying the tool.

Our project

Once we have reached a mature knowledge about redmine, features, limitations, plugins available and devs methods, we decided to solve the problem seriously. We search for some budget, and we searched specialised resources to produce our needed modifications.


Here, in this document (it's in Spanish -we apologize) we describe in details our goals, functional features and technical requirements to the global project.

Main Goals

  • Improve workflow engine: Enable/Disable editions of custom fields depending current phase, allow transactions only if certain conditions are made, reduce list of possible "assigned-to" just to members who can execute the transition in the flow, limit who can create new tickets.
  • Redmine's Federation: enable sharing information of project/tickets between different organization's redmines.
  • Creation of a DashBoard module, to allow managers to control de activity of a collection of projects and performance indicators (KPIs)
  • Allow custom reports and datamining.
  • Integration with others
    • Third party: Drupal, Alfresco, Pentaho, Testlink, UML
    • JdA's own tools: NAOS, Formula, iCMS
  • Enhance query interface with more filters.
  • Block reporting elapsed time (log time) too long time ago.
  • Enable archived project to be accessible read-only.
  • Others: wiki's templates, calendar export via CalDav, wizard to configure a new project...

Project Organization

The project is divided in three phases.

Phase 1

  • State: TESTING

Phase 2


Phase 3

  • State: ANALYSIS


If you need further info about my company or our job, you could find it at: And if you are interested about me:

Where is this document published

Updated by Borja Pacheco Ortega over 12 years ago · 7 revisions locked