How to get flow chart or UML Activity Diagram for C/C++

Posted on 2011-09-07
Last Modified: 2012-05-12
Have a C++ program and want to get a flow chart or UML Activity Diagram to improve algorithm and understand the logic. Does any guru know any decent tools to do that?
Question by:jl66
  • 2
  • 2
  • 2
  • +1

Accepted Solution

LeeeRussell earned 167 total points
ID: 36495904
I've used Crystal Flow to do this:

I thought it was pretty good.

Assisted Solution

theKashyap earned 167 total points
ID: 36498218
Licensed or free?
Licenced: Rational Rose is big hit. Other option is RSM (Rational Software Modeler, it's a licensed eclipse plugin from Rational).
Free: You'll find plenty of UML plugins for eclipse.

I find Rose to be the best, perhaps because I've been using it all my life, but with eclipse plugins I've seen that if you don't have enough processing power it can be irritatingly slow.

How does it improve the algorithm? Well, just documenting it doesn't "improve" the algorithm as such, it gives you a better visual grip / understanding of an algorithm. You have to know how to improve it to improve it. The simplest example that comes to mind is breaking out of a loop when you find what you're looking for.

Author Comment

ID: 36499257
Thank both of you for the recommendations. Just want to get the ideas from your gurus. If the paid version is worth the price, definitely buy it.
ScreenConnect 6.0 Free Trial

Check out the updates in one game-changing release, ScreenConnect 6.0, based on partner feedback. New features include a redesigned UI that improves session organization and overall user experience. See the enhancements for yourself!

LVL 18

Assisted Solution

JoseParrot earned 166 total points
ID: 36499269
I agree to theKashyap hint: Rational is the number one.
By the free side, I recommend StarUML. I can't say if it is the number one, but I use it and like a lot.
It has also a programming language generator (C++, C#, java) and plugins to MS Office (Excel, Word, Powerpoint). The graphical interface is very intuitive.


Expert Comment

ID: 36501179
Maybe I've misunderstood the question, but I recommended Crystal Flow because I thought the questioner wanted software that would produce UML documents from pre-existing code.  Does Rational Rose do this?  My use of it is limited, but I didn't think it did?

Expert Comment

ID: 36504439
"...I thought the questioner wanted software that would produce UML documents from pre-existing code.  Does Rational Rose do this?  My use of it is limited, but I didn't think it did? "
Yes and no.
Yes, it generates "UML documents". I've done with java and c++ at least. It's called reverse engg in Rose.
No, it doesn't generate "flow diagram", which I guess is what you meant. :)
(same goes for RSM though I've never done it myself)
I suppose Crystal Flow can generate flow diagrams? Good to know!

Author Closing Comment

ID: 36520202
Thanks a lot for the tips and links. Actually I need all.

Featured Post

Microsoft Certification Exam 74-409

Veeam® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When writing generic code, using template meta-programming techniques, it is sometimes useful to know if a type is convertible to another type. A good example of when this might be is if you are writing diagnostic instrumentation for code to generat…
Okay. So what exactly is the problem here? How often have we come across situations where we need to know if two strings are 'similar' but not necessarily the same? I have, plenty of times. Until recently, I thought any functionality like that wo…
The viewer will learn additional member functions of the vector class. Specifically, the capacity and swap member functions will be introduced.
The viewer will learn how to clear a vector as well as how to detect empty vectors in C++.

810 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question