|
Instead of using some UML software, I use a whiteboard with color markers. With a whiteboard, I can draw the diagram I want, typically a class hierarchy with important data members and methods. If I like the drawing, I use my digital camera to take a snapshot of the image. The image is copied from the camera to the "doc" folder in case I want to recall the drawing later.
Most of the time, just drawing something and brainstorming is sufficient. It is like discussing a [computer] problem with a colleague - it helps to generate news ideas to solve the problem.
|
|
|
|
|
It's worth remembering that UML is just another logical language.
As such, if your familiar enough with it you can use it to design systems. It's just an abstract document that's an aid to thought. Writing UML is writing one totally abstract document to describe another less abstract document(your code).
However, you can't compile it and it's form won't betray any system particular issues. UML is entirely ignorant to peculiarities of any OS or libraries. The structure of a applicationis obviously crucial but most development issues arise from the libraries and technologies we use.
I don't mean to sound like I'm writing UML off. It's our most successful effort yet as a tool to aid system thinking but while it may be capable of describing a full complement of system structures(so can most languages though), in my opinion it's clunky aesthetic is still a long way from any real connection with the way the brain sees theses things.
Worth learning, even worth using but beware, its not finished. There are so many ways of chopping up problems and presenting them to our brains in a way that accelerates subconscious reasoning.
Tom
Tom
|
|
|
|
|
Whiteboard rule! I'd prefer to jot down my ideas on a white board and have other developers engage in a discussion on design etc.
We made the buttons on the screen look so good you'll want to lick them. Steve Jobs
|
|
|
|
|
I've always worked alone and never had the option of a code review. On the other hand, I have viewed, fixed, modified, and redisgned thousands of lines of other peoples code that came in from outside the company. So I guess that would make me an expert reviewer.
Does anyone need a full time C/C++ code reviewer?
INTP
"Program testing can be used to show the presence of bugs, but never to show their absence."Edsger Dijkstra
|
|
|
|
|
We have an SPI (Software Process Improvement) team which is part of the Architecture group that monitors code across all the projects. It is informal in that you aren't pulled up in front of a panel and reviewed but it is formal in that there are people tasked to review code and standards to be met.
We also then do occasional presentations between projects on architecture and code in the hope that fresh eyes will spot places for improvement.
|
|
|
|
|
I've been working at my current job for nearly a year now and I'm slowly trying to bring the rest of the team in the 21st century. It has been a long hard road, with many miles to travel yet.
Code-Reviews are next on my list. I have managed to persuade them to use FxCop, so that is a small step towards the overall goal. Even getting them to review my code is hard enough without trying to get them to review each others code.
It is all about changing the mindset of people who have been stuck in their ways for years and are afraid of change.
Hopefully when this poll is run again, I'll have a better answer.
|
|
|
|
|
You are my Hero. Good luck with that.
Maybe I should learn from you, how to convince others to move and do the next step.
|
|
|
|
|
We will be working in such a time bound situation, that we hardly get time to review the code.
Krishnaraj
|
|
|
|
|
I think that is more common that I'd like.
|
|
|
|