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

Posted on 2011-09-07
Medium Priority
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
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
  • 2
  • +1

Accepted Solution

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


I thought it was pretty good.

Assisted Solution

theKashyap earned 668 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.
Learn how to optimize MySQL for your business need

With the increasing importance of apps & networks in both business & personal interconnections, perfor. has become one of the key metrics of successful communication. This ebook is a hands-on business-case-driven guide to understanding MySQL query parameter tuning & database perf

LVL 18

Assisted Solution

by:Jose Parrot
Jose Parrot earned 664 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

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

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

Templates For Beginners Or How To Encourage The Compiler To Work For You Introduction This tutorial is targeted at the reader who is, perhaps, familiar with the basics of C++ but would prefer a little slower introduction to the more ad…
Introduction This article is a continuation of the C/C++ Visual Studio Express debugger series. Part 1 provided a quick start guide in using the debugger. Part 2 focused on additional topics in breakpoints. As your assignments become a little more …
The goal of the video will be to teach the user the concept of local variables and scope. An example of a locally defined variable will be given as well as an explanation of what scope is in C++. The local variable and concept of scope will be relat…
The viewer will learn additional member functions of the vector class. Specifically, the capacity and swap member functions will be introduced.
Suggested Courses

765 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