Technical Support

{{ post.title }} 글 편집 글 편집 (이전 에디터) Author {{ post.author.name }} Posted on




조기훈팀장


RecurDyn GUI, the Present  and the Future

Gi-Hoon Cho Chief Researcher / Team Lead

 

It has already been 19 years since we introduced RecurDyn to the world for the first time. There have been various functional changes and upgrades, and among them, the change in the user environment which is becoming more pleasant can be considered as the one that stands out the most.

The enhancement is led by the GUI (Graphic User Interface) Team, and the team is headed by Gi-Hoon Cho Team lead. Gi-Hoon Cho, who has worked only on the GUI Team for RecurDyn for 14 years since joining FunctionBay in 2003, can be called a true expert in RecurDyn GUI. The present and the future of the RecurDyn GUI; let's hear from the Team Lead, Gi-Hoon Cho.

 

Hello. First, please introduce yourself.

Hello. I am Gi-Hoon Cho, Team Lead for the GUI Team at FunctionBay.

 

I heard that you have been in charge of developing GUI for RecurDyn for  over 10 years.

Could you explain what kinds of tasks are performed by the GUI team?

GUI, as the term Graphical User Interface explicitly indicates, refers to the user control environment that is expressed visually. The GUI Team can be described as a team which develops all areas of RecurDyn which are shown to the users. The graphic engine that is used to show the graphics of the model, all ribbons, toolbars, and dialogue boxes that the users use are developed by the GUI Team. The “operation” for creating a model or importing and exporting of a file are the responsibilities of the GUI Team as well.

It is also the role of the GUI Team to create the UI that is easier to understand and to enhance the responding speed or input/output speed.

 

K-007.jpg

                                                                  


What are the distinctive characteristics of developing RecurDyn GUI?

First of all, I can point out that understanding of CAE is important. Since RecurDyn is a piece of software which handles a specialized area called multi-body dynamics, the ability to understand CAE rather than simply having the GUI development skills is important. Therefore, over 60% of our GUI developers have a degree in mechanical engineering. And most of them have a master degree.

One more point is that it is important to possess the ability to look at and understand the entire architecture even though each specific area is also important since RecurDyn is a product that is nearly 20 years old and has a lot of functions included.


Since the product has been around for nearly 20 years, there must have  been many changes over time.

The basic sources of RecurDyn has been maintained for a long time. For example, there are some source files that were created in 2000 and still being used without any modification or change.

However, most of the source codes go through the process of Refactoring as they get upgraded and corrected to fix the bugs over time and get replaced with totally new algorithm, and therefore, it is not too much to say that they have been completely changed.

In particular, extensive changes are made once every few years, and in such cases, developers truly strive for the development of RecurDyn with all their might.

* Refactoring: Refers to “readjusting of the code structure without changing the  results” in software engineering. It usually improves the legibility and makes the  maintenance easier, ultimately contributing to the improvement in the stability  of the software. It does not refers to direct removal bugs or adding of new functions.  Rather, it is a maintenance action of changing and enhancing the internal  logic or the structure while leaving the external screen that users see as is.


K-008.jpg

 the Best GUI for digital twin model of dynamic system

A new version of RecurDyn has been released every year. I am aware that  many functions get enhanced or added at each point. What criteria are  used to select such development items?

About 100 functions get added or enhanced for each version. In doing so, the items to be developed get decided by taking into consideration the requirements of the customer as the highest priority. The development items get determined by gathering the requirements from not only Korea but also RecurDyn users in countries all around the world, including USA, Japan, and Germany, and the priority items are decided based on those collected requirements.

Also, there are some items that are developed after FunctionBay performs the preceding research as in the cases of FFlex and G-Modeling. Development of such items may take a few years sometimes.

 

What would be the next step after selecting of the items?

We get to decide on the specification of the items that have been selected. When FunctionBay configures the specification, functionality is emphasized over design. The desire for functionality seems to be stronger since the main customers are engineers.

What I mean by the statement “functionality is emphasized” is that we try to make the items to be more convenient to use by minimizing the moving path during a task or between work phases or by gathering similar functions in one place.

Because of that, probably, in the result of the questionnaire that is distributed at the annual User Conference which asks about the advantage of RecurDyn, operability is ranked the first or the second every year.

 

K-009.jpg

As a user of RecurDyn, what do you think the biggest strength of RecurDyn is?

 

You mentioned that you emphasize functionality over design. Then, how much effort do you put  into the design?

It just means that functionality is more important than design, but I don't take design lightly at all. We have a designer who is dedicated to GUI, and the designer thoroughly reviews various shapes, colors, and layouts of UI. As for user convenience, we take it seriously from the perspective of the designer.

 

If there are things you take into account besides functionality or design, what would it be?

We always highly value universality. Since our customers are diverse, we tend to settle on specifications that are generally appropriate rather than special UI that is only appropriate for a certain purpose.

Also, uniformity and consistency are important factors as well. Since the product offers a vast array of functions including more than 20 toolkits, there are some cases in which similar components or UI are used. However, since the timing of tasks and the persons in charge are different, there is a possibility that the items are developed with different structures even though their functions are similar; we are doing our best to minimize such cases and provide consistent UI. To do so, we are always enhancing the stability and maintaining the consistency through refactoring and modularization.

For example, various measuring functions are provided in RecurDyn, and the functions are always provided in the Input Value-Results Display-Button layout even if the functions are slightly different.

From a larger perspective, although Track, Chain, and Belt toolkits are different toolkits, they can be used with a very similar degree of familiarity by the users.

In the case of MTT2D and MTT3D, the only difference is that one is 2D and the other 3D since consistent UI and working methods are offered.

Of course, some users in certain areas may feel that the universal UI is somewhat inconvenient. In some cases, UI that is tailored to that particular situation may be more desirable than the UI that is uniform. But if all cases are allowed, it would cause confusions to many users, and the stability of the product would be decreased from the perspective of the developer.

To respond to such special cases, RecurDyn offers an environment in which customized UI can be created through customization functions such as ProcessNet or eTemplate. Also, ProcessNet function that a user has created can be used by registering it in the Ribbon control.

 

K-010.jpg

 

RecurDyn 4.0, which was the first commercially released version that was introduced in 2001,  almost feels like totally a different piece of software from RecurDyn V9R1, which would be introduced  soon. Could you tell us your thoughts on how RecurDyn would change in future?

If I look back over the last 10 years, I believe the perspective has moved from UI (User Interface) to UX (User Experience) quite a bit. The focus has shifted from a simple user environment to the experience or the result that the user would get from the software. I believe this trend would continue in the future in a broad sense.

I believe G-Modeling technology that was introduced in V8R5 is a starting point rather than completion. We will continue to make our best efforts to enhance UX to help users achieve what they want and acquire proper outcomes rather than simply provide UI that users can use.


K-011.jpg

Besides this, we are conducting preceding research to adopt concepts such as cloud, AI, IoT, and digital twin technologies that have attracted a lot of attention starting a few years ago.

For example, I think it may be possible to develop RecurDyn that can be used in a cloud environment without a computer and AI that automatically recognizes and defines elements such as joints or contact. It may also be possible to create an IoT environment which we can use to communicate with an actual product. Moreover, we may be able to create a GUI environment through which we can run simulations with that communication data and even utilize the simulation results. I think all of these may be possible in 10 years’ time even though some of them can’t be promised for sure at this point. In the case of Digital Twin, there have been a lot of attempts by many companies to establish their own Digital Twin environment using the current version of RecurDyn.

 

As the leader of GUI Team, what do you consider to be most important in the development of  the product?

Surely, the most important thing is to make a product without a bug. Although it is not easy to remove all bugs completely, we are always making the best effort to minimize bugs. For example, when we develop a function, we always add a test case related to it. There are over a thousand test cases that have been made already, and the tests are conducted every day using the daily build and the automated test function. On top of that, the QA Team conducts manual tests and runs its own automated tests as well.


Relatipn Map

Relation Map Dialogue

 

I would like to thank you for sharing various stories with us. Lastly, is there any function you especially like or you would like to introduce as the GUI Team Lead?

Although there are toolkits related to MFBD which is a very core function of RecurDyn and major related functions such as G-Modeling, I would like to introduce a function called Relation Map.

Personally, I remember the benchmarking we did to develop this function and the procedure of deciding the UI exclusively for RecurDyn based on it.

If the Relation Map is used, the entity that you want can be selected with only one click and you can easily check the entity that is connected to it. As a result, it is very helpful in understanding the entire model even though the entire model can’t be seen at once.

Also, Backward and Forward functions to enhance the functionality, and various functions including the Filter function were added immediately after the release of the Relation Map. I believe it has helped to greatly improve work efficiency not only for customers but also for developers.

If there is anyone who has not used this function yet, I would like to recommend trying it out after reading this interview.


This is it for the interview of Gi-Hoon Cho, Team lead for the GUI Team. We expect you to continue doing your best to improve RecurDyn even more in future. Thank you.