⬆️ ⬇️

EmForge Portal - a collective development platform

It so happened that in the last few years I have to take part exclusively in distributed projects. Project management in the USA, business owner in France, development in Russia and Brazil, and testing in China is a normal situation. In such projects, competent communication organization is very important. Different projects used different systems. The ideal was not found, because that was why I wrote my own “non-ideal”: EmForge Portal , which I want to present today, hoping that it might be useful to someone.

EmForge



In a distributed project, you cannot quickly discuss something over a cup of tea. You can not lift your head from the monitor and shout to all, "Do not touch the server, I’m just before the new version," or "This is my bug - I’ll fix it now." If there are no competent communications, then the developers will develop something completely different from what the business owner wants, the management will promise a third to customers, and testers will not know what to test for them at all. Mail is good, but try to find in a ton of emails exactly the one that says how to make this or that feature. Therefore, we need special tools and services, such as where is the repository (where is it going to be without it during development?), Task management, documentation exchange, and many others.



Different projects used different systems (and services), but something was always lacking, then excellent task management, but there is no wiki (for sharing documentation), or there are wikis and tasks, but there is no version control, or there are both the third, and even code review (as in the atlassian studio, for example, is probably the leader in this field) - but the price is simply transcendental.



As a result, some time ago, its own service was developed and launched: EmForge Portal , where there is not everything that was planned, but already:

')

* Hosting Subversion (immediately answering questions that were also asked on SunTechDays - yes, we plan git - but as soon as we find a person with sufficient experience in git, it can also be mercurial);



* Task management and time tracking;

* Wiki - for documentation;

* Blogs - for posting project news;

* Forum - for communication both within teams and with users;

* Storage of any project files



In principle, a set of tools allows you to establish interaction not only within the team - but also with users - for each project you create your own mini-site, and you can hang it on your own domain name, thereby obtaining a “project site”.



A little about managing tasks and time


image



Initially, we made the system sharpened under XP, with a user story and epic, with nested tasks, with releases and iterations. But then it turned out that for the majority of users who are not familiar with XP it is too difficult, and therefore they left just a flat list of tasks and bugs broken down by releases. Perhaps we will make such bells and whistles optional, but now we have tried to make work with tasks as simple as possible so that the maximum action can be done from the main window (with the task list) in the minimum number of clicks. So right in the task list you can filter them by different criteria, close, add a comment, add time spent, change the order with a simple DragNDrop



Time tracking allows you to draw a burndown schedule and keep track of which direction the project is going.



For bug-tracking, a forum is used - in fact, if a user encounters a problem, he first writes to the forum. And if it turns out that this is a bug (or feature) - you can do the task directly from the forum post (and then, when the task is closed, an automatic message will be sent to the forum).



EmForge Portal - open source project


A little bit about the development. Everything is based on Liferay (portal for Java - I already wrote about it in Habré ) and accordingly in Java. And the project EmForge Portal - Open Source (hosted on itself: http://www.emforge.net/web/emforge-portal ) - this means that:



* You can download the source code and install it in your local infrastructure - it is not necessary to use an external service;

* “We are looking for talents” - if you are interested in - we will be happy for new participants (who, for example, will help to tighten and configure git).



And how much does it cost?


In the meantime, not at all. Starting from the fact that all source codes are available, and you can download and install it (though you need experience not only in java, but also some experience in liferay), EmForge will always be free for Open-Source projects and for students, as well as for small "Closed" projects.



From the rest then (when we come out of the beta state - apparently next year), we will take a denyuzhku - in the end, we must pay for our hosting somehow, but I hope a reasonable one.



We are already actively using EmForge in several of our projects, and I hope it will help you.

Source: https://habr.com/ru/post/90950/



All Articles