Monday, 4 April 2016

Week 2 [4-10.04.2016] Process mining: software and features

Hello, 

this week I want to continue the process mining topic. As you know, process mining is methodology, which allows us take a look on the process as it looks in reality. Week 2 is the proper time to think about four aspects that are crucial in process analysis:
  • Zoomability
    • Zoomability is an approach that allows us to look at the process as like as on google maps. Using scroll you can look on continents, countries, highways or alleys. It depends on our needs. When you are a director you should know, how the things are going without mining in departments reports. If you are not able to answer - why is so bad then you can spend some time on searching source of problem in detailed process view by zoomability.
    • When we add timestamp in zoomability then we are able to find bottlenecks in our process.
  • Evaluation
    • Trade-off between: fitness, precision, generalization and simplicity.
    • More specifically, for instance the question whether a violation to the four-eyes principle occurred, i.e. whether two different persons looked at a certain case, should not be answered using a model with 80% fitness, as roughly 20% of the behaviour is not shown in it. Another example: a question whether something could happen in the future should be answered on a model with high generalisation, rather than an overfitting one
  • Semantics
    • “Executable semantics allow for replay, which enables decision point analysis”
  • Speed
    • How long have we wait till we receive process mining results. (It is determined by learning curve and responsivity of the tool)


Source article shows different software examples and mining methods / algorithms. My favourite one is Inductive Visual Miner that allows us take a look on each instance of the process as like as at video. Time stamp on event log gives us a possibility to track each instance flow.


My experience with commercial and academic tools is that the commercial one are more user friendly (authors wrote the same) but academic software as a ProM has a lot off different functions which allows us to make complete analysis too. Additionally ProM community is growing up, so gap between commercial will … ? and the questions.


  1. First question is about open source: can open source software be better than commercial equivalent? If yes - can you give an example?
  2. What should we do when we identify potential deviation in process?
  3. Which of four aspects is the most important in your opinion?


28 comments:

  1. 1. First question is about open source: can open source software be better than commercial equivalent? If yes - can you give an example?

    It depends. The straight answer is yes, there are many examples of the OSS better than commercial one - it just depends on your objective. For instance I would argue that FreeBSD is way better than Windows :) However, many people won't agree with me, because it fails their use cases. Another one: Hadoop. Can you even give me its commercial competitors?

    If you're asking about Process Mining tools though, then I don't think that would be possible. It's just because that ProcM does not resonate; many programmers never heard about it and simply would not care. From my observations, it takes a stream of devoted programmers to make great OSS...

    2. What should we do when we identify potential deviation in process?

    Sarcastically: oh, we should kill the ones responsible!
    Actually, the deviations in the process are common. Of course it depends; I don't think we would like to see too many deviations from the process in the nuclear power plant, although sometimes it is required to avoid an accident. On the other hand, I can't see myself as a process slave - that would suppress any innovation.
    I guess when you see the deviation you should try to understand why it happened, is it for better or worse and what to do next. You can take on corrective actions, but on the other hand, it might be that this deviation would become a new best practice. If that happens, you certainly want to modify the process and encourage change.

    3. Which of four aspects is the most important in your opinion?

    I can't answer this question, I guess. The process, especially the real one, is not an abstract concept (ok, it is an abstract construct, but the point is it happens in real environment). Just much as I dislike concepts like "Scrum is good for everyone", I don't think we can identify one size fits all approach to process improvement (I guess this is the reason behind Process Mining).
    For many companies the throughput might be an objective, so for them Zoomability (and probably the Speed, too) will be the most important aspect. For others it may be the Evaluation.
    I am not a subject matter expert, and I don't even know if I understand those concepts (especially things like fitness or precision).

    ReplyDelete
    Replies
    1. Thank you for answer. When I wrote first question I thought about OS examples. But I am impressed quality and usability of last Microsoft products (but the way I am Centos user ;)). It depends of our needs, sometimes open source solution gives us that what we need. GUI might be a little bit worst than in commercial option, so we need more effort to do the same operation.

      I have to agree in 100% in second point. (You are reading my mind)

      In 3rd question it depends from process. Sometimes fast answer is most important, otherwise we can not make decision in required time period. If we are talking about process analysis zoomability in my opinion is very helpful.

      Delete
  2. 1 - First question is about open source: can open source software be better than commercial equivalent? If yes - can you give an example?

    My general answer is no. But of course it depends on the use case or purpose more generally.
    Without the dedicated development and support team you just can’t beat the commercial products for vast majority of use cases.

    2 - What should we do when we identify potential deviation in process?

    It all depends on the consequences of deviation. If it is negligible then nothing. When deviation causes significant impact, then root-cause analysis should be applied. Then depending on the findings, you could either start implementing improvements or re-design the process.

    3 - Which of four aspects is the most important in your opinion?

    This question is too wide, so hard to provide a meaningful answer.
    You could say that depending on the context, each of the factors might be the most important.

    ReplyDelete
    Replies
    1. Generally speaking commercial products have better user interface. Support is the biggest advantage in commercial products and it is very important for clients.

      Delete
    2. 2- Process redesign / reengineering is risky and can give us spurious effect. If you decide to completely rebuild your process you have to be sure that you can do it better. Question is: How were you able to work earlier? Moreover are you sure that a new version will be better than current?

      3 - Yes, it depends, but is there any option, which in your opinion is more important than other one?

      Delete
  3. 1.First question is about open source: can open source software be better than commercial equivalent? If yes - can you give an example?

    In my opinion open software can't be better than commercial equivalent , open software uses in a lot of version and we don't have one version open software, in commercial software we have one version and in my opinion it is advantge.
    2.What should we do when we identify potential deviation in process?
    We can looks for process and identify potential deviation. Sometimes we can do a lot of tests for identify potential deviation.

    3.Which of four aspects is the most important in your opinion?

    I don't know about it . It independ what things is important. If we know which thing is important we can ask about this question

    ReplyDelete
    Replies
    1. THank you for opinion. Regarding first answer: I agree, in opensource we are receiving few branches of the same product. When someone can not agree with vision of root version is preparing own one and community can not merge that.

      2. After tests and identified deviations what should we do with them - try to fit it in process or expand range of our model?

      3. Ok, so your answer is it depends from the situation.

      Thanks for your response.

      Delete
  4. 1. First question is about open source: can open source software be better than commercial equivalent? If yes - can you give an example?

    This is great topic for flame war :-). But in my opinion open source solutions are much better than closed ones.
    Example? Please look at operating systems and their security, which one is the most secure? No it is not Windows but it is OpenBSD (for server use) and Tails OS for desktop.
    Beauty of open source is that you have a choice, if one program is not for you then you can change it and if you want to add some futures there is no problem with that.

    2.What should we do when we identify potential deviation in process?
    We should fix it, by adding some improvements to our process. Seriously it depends from the deviations. Sometimes you should fix it immediately other time you can leave it.

    3. Which of four aspects is the most important in your opinion?
    Again it depends from situation. Sometimes fast answer is most important, but sometimes evaluation is the most important.

    ReplyDelete
    Replies
    1. 1. That is true. If company tells - our solution is the best and algorithms are good because are "top secret" it is contrariwise. Good security algorithms are published, because authors want to know how much time people need to break the algorithm.

      2. I can not agree in point "leave it" :), because if you do not know your process you can loose money.

      3. I agree.

      Delete
  5. First question is about open source: can open source software be better than commercial equivalent? If yes - can you give an example?
    I totally agree with Tomasz, it's a great topic for flame war. I had opportunity to commercial software and open source equivalents and most of the time open source failed me badly. However, it's free, based on community, I can't expect same quality, meeting milestones and so on. Most of the open source developers have regular jobs and they are contributing only for fun, or to learn new things. Despite the fact I know some open source projects that are good, they are earning money from providing support for them.
    What should we do when we identify potential deviation in process?
    It's about risk management. If you encounter deviation you should be able to fight with it. If you have good project managers you won't have a big problem. Consider it as a minor issue most of the time, and prepare before it happens.
    Which of four aspects is the most important in your opinion?
    If you are business manager then it's speed of course. They want everything asap... However, if you are on the other side it depends. Sometimes it's evaluation, sometimes zoomability and so on. I know some people who tend to think semantics is the most important. It's really hard to decide.

    ReplyDelete
    Replies
    1. Thank you for opinion. Your opinion about managers and asap requirements gave me additional notice. Do we really have to focus on optimization to speed up applications? Is this effort pays off while computing power is available ... probably again "it depends" :)

      Delete
  6. Hi Paweł, I can say the same thing as the others. In my opinion, everything depends on the use case. One of the example when I prefer use open source software than commercial one can be case when I want to do something unusual for example with my hardware. Sometimes the community can help in this a lot. On the other hand, if I can get something which can realizes my need out-of-box can be huge time saving. I agree with Pawel Dyda sometimes we need take corrective actions and sometimes this deviation can become a new practice. If we talk about the PM aspects all are important but as you said it particularly depends on the situation.

    ReplyDelete
    Replies
    1. Przemek, as you wrote main difference between open source and commercial solution is community vs commercial support. From company point of view helpdesk is such important like implemented solution. This is main reason, why corporations do not trust in most of projects in open source.

      Delete
  7. Hi, thank you for sharing the article with us. I'll try to answer your questions:

    1. As stated by a few colleagues above there is no clear answer and its a debate which is still open. there are many examples where open source software is better than commercial, however we ALWAYS have to define in what aspects and perspective. Because i.e. for an IT administrator the Linux OS is overall a much better environment to work in than say a Windows OS, however ask a generic PC gamer and you will hear the opposite.

    2. Sometimes they happen, we should analyse what is the cause and if it causes us any trouble. If it does then try and repair it.

    3. It is hard to chose a specific one that is more important than the other, I think they are of equal importance and perhaps vary on given circumstances.

    ReplyDelete
    Replies
    1. Michail, I think that I can not make even better answer on third question :). You have 100% right.

      Delete
  8. Hi Pawel,
    For all of your question I can answer: it depends :)

    First question is about open source: can open source software be better than commercial equivalent? If yes - can you give an example?

    I cannot say if the open source software is better than the commercial. It really depends on a project. Commercial software usually is more user-friendly, has extended support and less bugs, but from the other hand there is a really good example given by Pawel D. about Hadoop, where it is even difficult to find commercial equivalent.

    What should we do when we identify potential deviation in process?

    For sure analyse and fix it. But how much effort should be put into it it depends on the process type and the deviation severity.

    Which of four aspects is the most important in your opinion?

    It is difficult to say which one is the most important. One more time I can say, that it probably depends on process :)

    ReplyDelete
    Replies
    1. Thank you for your opinion. I agree with you. I think it is very good summary of all opinions. Have a nice day and a lot of thanks to everyone for time spent in this discussion.

      Delete
  9. I don't think I am competent enough to express professional opinion on this subject. I don't now of any open source software better than commercial one. Maybe Linux is a good example? Referring to the second question it probably depends on the process, but in general the problem should be investigated and fixed. In my opinion all four aspects are equally important.

    ReplyDelete
  10. 1. First question is about open source: can open source software be better than commercial equivalent? If yes - can you give an example?

    I think that open source software is better for society than proprietary closed source software because:

    • there is no proprietary standards
    • there is continuous pressure for innovation
    • it can have Effective beta testing (unlimited amount of users can test it before release)
    • open source software naturally has fewer bugs than proprietary software.


    2. What should we do when we identify potential deviation in process?

    With deviations and change requests, immediate disposition may be appropriate if the performance correction action clearly has no significant impact on the project scope, plans, or performance of other activities.

    3. Which of four aspects is the most important in your opinion?

    There is not correct or incorrect answer on that question. Everything is related to the process and particular situation.
    Maybe I am wrong there is one: "I depends ...."

    ReplyDelete

  11. I do not know exactly on this subject , but it seems to me that it is possible after all, history has known such cases of people who have worked in some area not for profit , but to make the world a little better . If you ask about the range of particular contexts it as part of the speakers can not identify clearly the most important area , everything depends on the context and circumstances in which we are involved.

    ReplyDelete
    Replies
    1. This comment has been removed by the author.

      Delete
    2. Correction

      I do not know about this. It seems to me that this is possible. History knows of people who have worked in some area not for profit, but for the world.

      Delete
    3. This comment has been removed by the author.

      Delete
  12. This comment has been removed by the author.

    ReplyDelete
  13. Answer for the first question depends on what we actually need. The best part of open source is zero cost. Sometimes the commercial version is much better than open source, sometimes the opposite. What should we do when we identify potential deviation in process? It depends from the deviations - but for sure we should fix them ;) Unfortunately I don't know the answer to the last question. Again, I think it depends

    ReplyDelete
  14. Can open source software be better than commercial equivalent? If yes - can you give an example?

    Generally, commercial software is more user-friendly and has one version which are its undoubtful advantages .

    What should we do when we identify potential deviation in process?
    Fix it whenever the deviation is significant.

    Which of four aspects is the most important in your opinion?
    It is difficult to classify the importance when a question is so widely formulated. It depends on the process.

    ReplyDelete
  15. 1. First question is about open source: can open source software be better than commercial equivalent? If yes - can you give an example?

    This is a most difficult question which I have asking myself repeatably for years. I'm not only one in this divagation.

    2. What should we do when we identify potential deviation in process?

    In my understanding deviation in process should be reduced. But it depends on a goal and kind of process.

    3. Which of four aspects is the most important in your opinion?

    I believe the most important aspect is evaluation. It is important to produce clear results that can be understood by actor who started the process. Optimizing processes are important but all changes should not deceive results or make a possibility to produce errors.

    ReplyDelete
  16. 1) First question is about open source: can open source software be better than commercial equivalent? If yes - can you give an example?

    That is no simple question – that is depend of many thinks.
    I use OS X system and Windows system.
    OS X is open source and in my opinion is much more better than Windows.

    But sometimes I would like to use commercial program to do something. For example I think that Corel Draw x7 is better program than GIMP.

    And the open souce software has got much more bugs than commercial software.


    2) What should we do when we identify potential deviation in process?

    Oh, I’m not an expert but I think that we could looks for proces and try to identify the potential problems.

    3) Which of four aspects is the most important in your opinion?

    Hmm, that is hard question for me because I don’t have experience in that topic. I think every of your 4 aspects are important but it could be depends of situation.

    ReplyDelete