Archive

Author Archive

Minyaa Suite turns 1 today

July 22nd, 2010 vincent thoule posts profile No comments
Minyaa Suite was born to replace the Kaamelot plugin, a plugin created 5 years ago, when I tried to merge all enhancements brought to JIRA in order to meet our needs.

This first year was mainly spent:

Next year, we will concentrate on the following:

  • ERADICATE most intrusions performed by Minyaa, in order to:
    • simplify its installation
    • support the UPM (Universal Plugin Manager)
    • perhaps support JIRA Studio (this will be a challenge!)
    • stop making the Atlassian Support guys crazy about Minyaa ;)
  • Continue to enhance Minyaa Workflows’s features (OSWorkflow has again some useful mechanisms)
  • Extend Minyaa Time with new features (wait and see!)
  • Integrate Myrddin plugin  in Minyaa Projects (Don’t try finding it… It was developed at the same time as Kaamelot, but was never released.)
  • And always assist you in the adoption of Minyaa

Happy Birthday Minyaa!

Align JIRA Workflow to your process

July 21st, 2010 vincent thoule posts profile No comments

Align JIRA to your process is more than a slogan. It is an objective that we are trying to reach with Minyaa Suite for all our clients.

Since Minyaa 2.0, a new Workflow Designer allows you to create more easily Workflows using a graphical tool and giving the ability to use some unreachable features provided by OSWorkflow, library used by JIRA to manage workflows.

When you open JIRA for the first time, you discover the generic workflow :

  • 5 Steps : Open, In Progress, Resolved, Closed and Reopened
  • 7 Transitions : Create Issue, Start Progress, Stop Progress, Resolve Issue, Close Issue, Close (Resolved) Issue and Reopen Issue

Using the default Workflow Editor (HTML based), you see them as demonstrated below:

Default JIRA Workflow

There are 2 Close Issue transitions, but when you try to produce the same Workflow using the default editor, you are not able to create 2 transitions with the same name.
There are 4 transitions reachable from different Steps, but always trying to do the same with default editor, you are not able to reproduce it.

After reading JIRA documentation and different JIRA Community contributions, you will discover that you have to use XML language to reproduce the default JIRA Workflow!

If you open the default JIRA Workflow with Minyaa Workflow Designer, you will obtain the view below:

Default JIRA Workflow view with Minyaa Workflow Designer

You will have a better view of existing interactions between the different Steps and Transitions.

Many companies consider JIRA as an inexpensive tool to implement workflow for some of their processes … Fine ! But their processes are not always simple ones, and by using the default JIRA Workflow Editor, some of them may obtain something incomprehensible as showed below:

Very large Workflow built with JIRA

Workflow XXL (Very large Workflow built with JIRA)

Edited with the JIRA Default Workflow Editor, this workflow needs more than 5 pages of your Browser ! Even when edited with the Minyaa Workflow editor, this workflow is still too large to be used easily.

This Workflow has 28 Steps and 141 Transitions … an XXL Workflow !

If we take a deeper look inside this Workflow, we will be able to identify some Transitions candidate to be defined as Common Transition or perhaps as Global Transition, and/or qualified as Recursive Transition, but also some exotic practices :

  • 20 Cancel Transitions to step Cancelled :
    • 4 allowed to all Users
    • 1 reserved to the Reporter + Screen
    • 1 reserved to the Reporter or Project Roles (10002,10031)
    • 14 reserved to Project Roles (10002,10031)
  • 6 Reject Transitions to step Rejected :
    • 1 reserved to the Reporter or Project Roles (10002,10030,10031)
    • 4 reserved to the Reporter or Project Roles (10002,10031)
    • 1 allowed to all users
  • 12 Request More Info Transitions
    • 1 reserved to the Reporter or Project Roles (10002,10030,10031)
    • 11 reserved to the Reporter or Project Roles (10000)
      • 6 Transitions to step Deployment – Pending Info
      • 5 Transitions to other different Steps
  • 9 Edit Transitions (All recursives)
  • 11 Put on Hold Transitions
  • 18 Enter Info Transitions
    • 6 Transitions from Pending Info (each of them with a condition to return to previous step), but Pending Info is never reachable (It appears that it was an aborted try!)
    <condition type="class">
       <arg name="jira.previousstatus">Deployment - Upload Verification</arg>
       <arg name="class.name">com.innovalog.jmwe.plugins.conditions.PreviousStatusCondition</arg>
       <arg name="jira.mostRecentStatusOnly">yes</arg>
    </condition>
    • 6 Transitions from Deployment – Pending Info (each of them with a condition in order to return previous step)
    • 6 Transitions from different step, always returning to previous Step
  • 4 Activate Transitions
    • 2 Transitions are strictly identical
    • 2 Transitions differs just by a Post-Function
  • 13 Reschedule Transitions

As you see, most of these 93 Transitions may be assumed duplicated. When you have to define complex workflow, JIRA allows to create Step Transition only, and not Common Transition.

Editing workflows with XML may allow you to use Common Transition, but in this current example, the associated XML file has more 6000 lines !

Minyaa Workflow allows to declare Common Transitions, Global Transitions and qualify them as Recursive Transition, without using XML syntax.

To be honest, Minyaa Workflow Designer (developed in Flex) has encountered its current limits with this workflow when we tried to refactorize it. We will have to enhance its performance.

But in order to see what this workdlow would be, if it was created directly with the Minyaa Workflow Designer,  its re-factorization has been done manually through XML.

We are obtaining the following Transitions :

  • 4 Cancel Transition
  • 3 Reject Transition
  • 7 Request More Info Transition
  • 1 Edit Transition qualified as Recursive Transition
  • 1 Put on Hold Transitions
  • 1 Enter Info Transition with the Post-Function : Back to Previous Step
  • 3 Activate Transitions (potentially only 2)
  • 1 Reschedule Transitions

Just by using Common Transition and the Back to Previous Step Post-Function provided by Minyaa Workflows (release 2.1), the workflow has now 60 Transitions (21 Common Transitions) and 22 Steps. It is now a XL Workflow.

Workflow XL (refactorisation of Workflow XL)

Workflow XL

The above screenshot is excruciatingly painful to read… From 93 Transitions identified as possible duplication, there are now 21 Common Transitions. Links from Transition to Step have been reduced, but there are still many links from Transition to Step.

With the current workflow, most of the new Common Transition are not in the Nominal Scenario : Cancel, Reject , Request more Info, Enter Info, Edit, Put on Hold. Then, you are able to hide Links from Steps to Transition …

Workflow XL without Common Link

Workflow XL Light (Common Link hidden)

I hope you do not have to design workflow as complex as this one, but I imagine that you do not have time to invest in learning the XML syntax for OSWorkflow library.

Like the default Workflow Editor, with Minyaa Workflow Designer, you will be able to :

  1. Clone a Workflow or Create a new one,
  2. Create Normal Step and Step Transition
  3. Configure all Transition with Condition
  4. Validator and Post-functions

Still unable to associate a Screen to your transition!

But also, you will access more features provided by OSWorkflow and be able to :

  1. Move Step Transition as Common Transition,
  2. Move Common Transition as Global Transsition,
  3. Move Global Transition as Common Transition,
  4. Detach a Step from a Common Transition,
  5. Qualify any Step, Common or Global Transition as Recursive Transition,
  6. Link a Step directly to a any Step or Common Transition
  7. Link a Step to itself and also create a Recursive Step Transition
  8. Have unused Common Transition
  9. Use some special Worflow function provided by Minyaa
  10. See your workflow in a graphical interface (It is always more easy to present)
  11. Also create a Snapshot of your Workflow for documentation …

Download a 30 day Trial for Minyaa now and discover Minyaa Workflow Designer.
You can now design the workflow needed by your business, and  do not let a workflow design your business !

Your feedback is welcome to enhance the Minyaa Workflow Designer capacities.

Useful links to the documentation:

Note : The re-factorization presented above was done using Minyaa 2.1

Minyaa 2.1 is released …

July 21st, 2010 vincent thoule posts profile No comments

Minyaa Suite 2.1 is released an available for download

Minyaa is compatible from JIRA 3.13.0 to JIRA 4.1.2 (8 distinct builds).
News since Minyaa Suite 2.0 …

Release Notes :

Download your Trial for Minyaa Suite now …

or ask for your Minyaa Starter License

Migration to JIRA 4.1.x for more than 4 years old plugin

June 22nd, 2010 vincent thoule posts profile No comments

Minyaa is the successor of Kaamelot plugin, initially developped for JIRA 3.7 and maintained until JIRA 3.12.

When Minyaa started to replace Kaamelot, there were more than 120 modules in atlassian-plugin.xml file.

Kaamelot (now Minyaa) comes with improvements for different features in JIRA and many i18n properties.

Following Atlassian documentation, the way to define i18n properties is as follows :

<atlassian-plugin key="jira.plugin.minyaa.core" name="Minyaa JIRA Plugin Core" pluginsVersion="1">
  <module key="ModuleKey" name="ModuleName" ...>
      <resource type="i18n" name="i18n" location="com.myplugin.jira.MyClass" />
   </module>
   <module key="OtherModuleKey" name="OtherModuleName" ...>
      <resource type="i18n" name="i18n" location="com.myplugin.jira.MySecondClass" />
   </module>
</atlassian-plugin>

For some modules, the I18n resources were declared using 2 files, in order to reuse existing i18n resource files without having to duplicate translations.

<atlassian-plugin key="jira.plugin.minyaa.core" name="Minyaa JIRA Plugin Core" pluginsVersion="1">
<module key="ModuleKey" name="ModuleName" ...>
...
<resource type="i18n" name="i18n" location="com.myplugin.jira.MyClass" />
<resource type="i18n" name="i18n.Other" location="com.myplugin.jira.MyOtherClass" />
...
</module>
...
</atlassian-plugin>

Without more detailed documentation, when Kaamelot (Minyaa) required to extend existing i18n properties, the technic used was to append a new I18n Location in the extended WebWork Action, by accessing I18nBean object.
You can imagine that with 120 modules (components, webwork actions, Report, Portlet, Service, Issue Tab Panel, Project Tab Panel, …), extending i18n properties may be a pleasure …

With JIRA 4.0, the Gadgets arrived with new constraints … Minyaa portlets have been migrated into real Gadget (Atlassian Framework 2) only for JIRA 4.1.x.

As Minyaa performs many extensions in JIRA components, it was not possible to migrate Minyaa plugins in OSGi Plugin. Only Portlets have been migrated into Gadget in separate Plugin (jira-plugin-minyaa-xxx-gadgets-4.x.x-x.x.jar).

Gadgets, as any graphical item, require I18n Properties ! How does it work ?

Following Atlassian documentation, it only requires to declare in gadget xml file the supportedLocales macro with a key filter for I18n key. A new component (the I18nResolver) is able to load all I18n resources of all plugins and extend the Gadget definition using the key filter.

Ok, lets go ! For Minyaa Core, my first portlet to migrate was Minyaa Fragment Portlet

  • The Minyaa Core Gadget plugin (jira.plugin.minyaa.core.gadget) is created.
  • The declaration is done as follows :
<?xml version="1.0" encoding="UTF-8" ?>
<Module>
<ModulePrefs ...>
#supportedLocales("gadget.common,portlet.fragments")
</ModulePrefs>
...
</Module>
  • All needed i18n resources definitions are provided by the plugin identified jira.plugin.minyaa.core

Oups … Some of i18n key were not translated!

After many search in documentation, I have connected the debugger in order to understand where the issue was …

Root cause :

The I18nResolver performs a scan of all i18n resources provided by different plugins, and jira.plugin.minyaa.core i18n resources are found and loaded!
Yes, but they are loaded in a Container based on HashMap and using the couple pluginKey + i18nName, as a key.

It means that jira.plugin.minyaa.core i18n resources are loaded using jira.plugin.minyaa.core as pluginKey, and each i18n Resources Name.
Since Minyaa Core plugin contains more than 1 module the i18n Resources were not unique.

Before the migration, the atlassian-plugin.xml modules were declared as follows :

<atlassian-plugin key="jira.plugin.minyaa.core" name="Minyaa JIRA Plugin Core" pluginsVersion="1">
<module key="ModuleKey" name="ModuleName" ...>
...
<resource type="i18n" name="i18n" location="com.myplugin.jira.MyClass" />
<resource type="i18n" name="i18nOther" location="com.myplugin.jira.MyOtherClass" />
...
</module>
<module key="OtherModuleKey" name="OtherModuleName" ...>
...
<resource type="i18n" name="i18n" location="com.myplugin.jira.MySecondClass" />
...
</module>
...
</atlassian-plugin>

Since the migration, each i18n resource has to be unique (per i18n resource file) as follows :

<atlassian-plugin key="jira.plugin.minyaa.core" name="Minyaa JIRA Plugin Core" pluginsVersion="1">
<module key="ModuleKey" name="ModuleName" ...>
...
<resource type="i18n" name="i18n" location="com.myplugin.jira.MyClass" />
<resource type="i18n" name="i18nOther" location="com.myplugin.jira.MyOtherClass" />
...
</module>
<module key="OtherModuleKey" name="OtherModuleName" ...>
...
<resource type="i18n" name="i18nSecond" location="com.myplugin.jira.MySecondClass" />
...
</module>
...
</atlassian-plugin>

I18n translation is important for all plugins, but you need to be aware that for large and old plugins, this is not a small work !

Minyaa’s blog is now online

June 21st, 2010 vincent thoule posts profile No comments

Minyaa’s blog is now online!

You will be able to read here :

  • all news related to feature available in Minyaa Suite
  • some trips and tricks about JIRA plugin developement

Have a good read.

Minyaa Suite 1.9 (for JIRA 3.12.3 to 4.0.2) is released and available for download

April 14th, 2010 vincent thoule posts profile No comments


Minyaa Suite 1.9
is released and available for download

Minyaa is compatible from JIRA 3.12.3 to JIRA 4.0.2 (7 distinct builds).

Only one feature for this release :

Now, Minyaa’s Portlet are real Gadgets and useable in HTTPS environements,

Download your Trial for Minyaa Suite now …



or ask for your Minyaa Starter License
JIRA 4.1 should be covered by next release …

Regards

Vincent Vincent Thoulé
Minyaa Team
Pyxis
pyxis-tech.com

GMail : vthoule@pyxis-tech.com
t. 450.681.9094, ext 126
f. 450.681.5758
1.888.681.9094

  • Share/Bookmark
Categories: Développement logiciel, Produits Tags:

Minyaa Suite 1.8 (for JIRA 3.12.3 to 4.0.1) is released and available for download

March 10th, 2010 vincent thoule posts profile No comments


Minyaa Suite 1.8
is released and available for download

Minyaa is compatible from JIRA 3.12.3 to JIRA 4.0.1 (7 distinct builds).

News since Minyaa Suite 1.7 …

New features :

Now, Minyaa’s allows usage of Worklogger Customfield in any Workflow transition,
even initial creation. See Log Work as Issue Field,
The Time Estimate can be reevaluated when logging work with Worklogger Customfield,
Worklog Updatable On delay is now managed as a Custom Permission.

Improvements :

Small enhancements in Worklog Portlet with Estimate field (See MYAA-291, MYAA-430),

Bug Fixes :

MYAA-183 – Stacktrace when importing a public dashboard
that contains a fastworklog portlet based on a private filter,
MYAA-577 – Last feature (MYAA-503) for Transition Report was inefficient for JIRA 4.0.x .

Download your Trial for Minyaa Suite now …



or ask for your Minyaa Starter License

Regards

Vincent Vincent Thoulé
Minyaa Team
Pyxis
pyxis-tech.com

GMail : vthoule@pyxis-tech.com
t. 450.681.9094, ext 126
f. 450.681.5758
1.888.681.9094

  • Share/Bookmark
Categories: Développement logiciel, Produits Tags:

Minyaa Suite 1.5 (for JIRA 3.12.3 to 4.0.1) is released and available for download

January 20th, 2010 vincent thoule posts profile No comments


Minyaa Suite 1.5
is released and available for download

Minyaa is compatible from JIRA 3.12.3 to JIRA 4.0.1 (7 distinct builds).

New features :

A workflow fonction to see some field of current Issue to be propagate to linked issue (See MYAA-452).

Also, you will be able to force any field to be valued with a value of a source issue.
The relation source/target issues is defined by the Link Type (Sub-task, but also any of you defined Link Types).

Workload Report enhancements :

  • Sub-tasks are no more displayed in separated column in (See MYAA-457),

    You are always able to use aggregation criteria to see any Issue (IS), Sub-Task (ST) or Parent Issus (PIS).

  • New Customfield Type supported in aggregations (See MYAA-458) …
    • Aggregation done on Group (Group Picker Customfield) :

    • Aggregation done on User (User Picker Customfield) :

    • Aggregation done on Multi Select Customfield :

    • Aggregation done on User (Current and All Workers Customfield) :

      <!–

      –>

  • Also the ability to filter Worklog on Group of Workers (See MYAA-455)

    Now, you may enter a Group instead of a User as developer in Report Criteria. Also, the report will use each member of the specified group to filter Worklog.

The Delay in Days allowing Worklog Updates has now a default value that doesn’t impose a time constraint MYAA-336.

Improvements :

MYAA-185 – Fastworklog portlet doesnt support “Edit own worklog” permission
MYAA-187 – When using a Permission Validator as a validation at issue creation or edition, the error message is not properly shown if the user doesnt have the persmission
MYAA-189 – When adding an auto-transition service, there are errors in the logs
MYAA-211 – Workload Report (Issue) – Agreagtion with Resolution field fails
MYAA-417 – Not able to save Portlet Configuration with IE 8.0
MYAA-435 – Default value for User Group Picker is not used when editing an Issue
MYAA-449 – Access to Create and Link operation does not take in account Link Permission
MYAA-454 – Priority display is inconsistent in Workload Report for Sub-Task
MYAA-459 – “Log viewable by ” field does not show users groups.
MYAA-383 – Move relative dates definition from kaam-209 to minyaa documentation site

And always …

A user based Pricing Structure similar to Atlassian JIRA Pricing Structure … See details
The support of JIRA Starter License ($10 for 10 users) … See Community, Open Source & Starter licenses
Download your Trial for Minyaa Suite now …



or ask for your Minyaa Starter License

Regards

Vincent Vincent Thoulé
Minyaa Team
Pyxis
pyxis-tech.com

GMail : vthoule@pyxis-tech.com
t. 450.681.9094, ext 126
f. 450.681.5758
1.888.681.9094
  • Share/Bookmark
Categories: Produits Tags:

Minyaa Suite 1.4 (for JIRA 3.12.3 to 4.0) is released and available for download

November 30th, 2009 vincent thoule posts profile No comments


Minyaa Suite 1.4
is released and available for download

Minyaa is now supporting JIRA 3.12.3 to JIRA 4.0.0 (7 dstincts releases),

New features :

Custom Field inheritance from Issue to Sub-Task,
Trial License no more required to perform a Data Import on a new JIRA instance,
Better notifications of status of your license,
Input in the Settings Screen are now validated,
Ability to show/hide Timetracking Field (Time Estimates, Time Spent) from Issue View Screen (MYAA-427).

Improvements :

MYAA-399 : Conflict with GreenHopper (Cf GHS-1655, JRA-19564),
MYAA-411 : Transparency of Worklog DialogBox with IE 8.0 due to CSS mis-imported,
MYAA-431 : Workflow Manager is no more overridden,
Many others

And always …

A user based Pricing Structure similar to Atlassian JIRA Pricing Structure … See details
The support of JIRA Starter License ($10 for 10 users) … See Community, Open Source & Starter licenses
Download your Trial for Minyaa Suite now …



or ask for your Minyaa Starter License

Regards

Vincent Vincent Thoulé
Minyaa Team
Pyxis
pyxis-tech.com

GMail : vthoule@pyxis-tech.com
t. 450.681.9094, ext 126
f. 450.681.5758
1.888.681.9094

  • Share/Bookmark

Minyaa Suite 1.3 (for JIRA 4.0) is released and available for download

October 19th, 2009 vincent thoule posts profile No comments


Minyaa Suite 1.3
is released and available for download

What is new :

JIRA 4.0.0 compatibility …
New Pricing Structure similar to Atlassian JIRA Pricing Structure … See details
Support of JIRA Starter License ($10 for 10 users) … See Community, Open Source & Starter licenses
Ability to define extended configuration for Regular Expression and User Group Picker Customfields …
See RegExpCustomfield & UserGroupPicker

Regular Expression and User Group Picker Customfields are performing their validation themselves …
Issue Validation has been extended to Sub-Task
Many others fixes (Linked or not to JIRA 4.0 migration) …See Release Notes for Minyaa 1.3
Download your Trial for Minyaa Suite now …



or ask for your Minyaa Starter License

Regards

Vincent Vincent Thoulé
Minyaa Team
Pyxis
pyxis-tech.com

GMail : vthoule@pyxis-tech.com
t. 450.681.9094, ext 126
f. 450.681.5758
1.888.681.9094

  • Share/Bookmark
Categories: Nouvelles et Événements, Produits Tags: