473,320 Members | 2,104 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,320 software developers and data experts.

does a software architect need UML skills?

If you were going to hire a software architect / functional lead for
your project (written exclusively in C# including WPF, WCF) would you
require that they have UML skills?

Is being able to draw the standard UML diagrams in a notebook
sufficient, or would you require that they have some experience with
some UML program or another? Which program?

Oct 24 '07 #1
24 2328
I certainly would not require it. Having direct UML skills implies that you
understand process models and object oriented methodology etc, but one can
have expert knowledge in these and not have UML skills.

Experience and a proven track record in the things you deem important for
your project are crucial, not UML skills.
"not_a_commie" <no********@gmail.comwrote in message
news:11**********************@v29g2000prd.googlegr oups.com...
If you were going to hire a software architect / functional lead for
your project (written exclusively in C# including WPF, WCF) would you
require that they have UML skills?

Is being able to draw the standard UML diagrams in a notebook
sufficient, or would you require that they have some experience with
some UML program or another? Which program?

Oct 24 '07 #2
not_a_commie wrote:
If you were going to hire a software architect / functional lead for
your project (written exclusively in C# including WPF, WCF) would you
require that they have UML skills?
Unless the job has some specific requirement to work with UML as the
basic architectural paradigm (for example, the team already depends
heavily on UML), I would not consider it at all. Even with such a
requirement, I would keep in mind that it's much more important to hire
a smart, adaptable person who can learn UML or other techniques as
needed than to focus on specific skill sets.

Obviously there has to be some fundamental basic skills, but those
aren't going to involve specific design techniques, or even specific
languages for that matter. I would much rather hire a smart guy who has
never seen C#, Java or C++ than to hire a dumb guy who claims to know
all three.

Of course, I may be a little biased, given that I think I have a clue
when it comes to software architecture, but had to Google UML to find
out what the heck you're talking about. :)

Pete
Oct 24 '07 #3
If a candidate is smart enough to consider hiring, he/she is certainly
smart enough to pick up UML quickly.

--
Andrew Faust
andrew[at]andrewfaust.com
http://www.andrewfaust.com
"not_a_commie" <no********@gmail.comwrote in message
news:11**********************@v29g2000prd.googlegr oups.com...
If you were going to hire a software architect / functional lead for
your project (written exclusively in C# including WPF, WCF) would you
require that they have UML skills?

Is being able to draw the standard UML diagrams in a notebook
sufficient, or would you require that they have some experience with
some UML program or another? Which program?
Oct 24 '07 #4
On Oct 24, 12:55 am, not_a_commie <notacom...@gmail.comwrote:
If you were going to hire a software architect / functional lead for
your project (written exclusively in C# including WPF, WCF) would you
require that they have UML skills?
yes, and he should also be skilled in XML, BS and WTF...

Oct 24 '07 #5
not_a_commie wrote:
If you were going to hire a software architect / functional lead for
your project (written exclusively in C# including WPF, WCF) would you
require that they have UML skills?
Yes. Unless standards don't mean anything in your organization.

UML is the standard for diagrams in the industry.

He/she may not like UML. He/she may not want to use UML for
this project. But he/she should know UML.

You would not hire a C# programmer that had never heard
about for loops no matter how smart he/she appeared to be.
Is being able to draw the standard UML diagrams in a notebook
sufficient, or would you require that they have some experience with
some UML program or another? Which program?
Tools does not matter much.

There are plenty of them. And if he knows 3 tools, then your
are probably using tool #4.

Arne
Oct 25 '07 #6
On Oct 25, 2:19 am, Arne Vajhøj <a...@vajhoej.dkwrote:
not_a_commie wrote:
If you were going to hire a software architect / functional lead for
your project (written exclusively in C# including WPF, WCF) would you
require that they have UML skills?

Yes. Unless standards don't mean anything in your organization.

UML is the standard for diagrams in the industry.
That doesn't mean it's the only - or even the most effective - way to
communicate.

Personally, I've never been a fan of UML. I use it where it's
absolutely required, but I wouldn't claim to know it well at all. The
important thing is that whether I'm using UML or not, with a diagram
and some explanatory words I can make myself understood.

I'd rather be able to whip up a quick picture on a whiteboard which
just has blocks showing what's going on, without worrying about
getting all the UML symbols etc correct, and talk someone through the
picture (or use written text if necessary) than spend hours on a UML
diagram.

Just MHO. And yes, I've been to job interviews where people have been
surprised and disappointed in a lack of UML. That doesn't mean they're
right though ;)

Jon

Oct 25 '07 #7
They should also have skills in BOX and ARRO.

--
Bob Powell [MVP]
Visual C#, System.Drawing

Ramuseco Limited .NET consulting
http://www.ramuseco.com

Find great Windows Forms articles in Windows Forms Tips and Tricks
http://www.bobpowell.net/tipstricks.htm

Answer those GDI+ questions with the GDI+ FAQ
http://www.bobpowell.net/faqmain.htm

All new articles provide code in C# and VB.NET.
Subscribe to the RSS feeds provided and never miss a new article.

namekuseijin wrote:
On Oct 24, 12:55 am, not_a_commie <notacom...@gmail.comwrote:
>If you were going to hire a software architect / functional lead for
your project (written exclusively in C# including WPF, WCF) would you
require that they have UML skills?

yes, and he should also be skilled in XML, BS and WTF...
Oct 25 '07 #8
Jon Skeet [C# MVP] wrote:
On Oct 25, 2:19 am, Arne Vajhøj <a...@vajhoej.dkwrote:
>not_a_commie wrote:
>>If you were going to hire a software architect / functional lead for
your project (written exclusively in C# including WPF, WCF) would you
require that they have UML skills?
Yes. Unless standards don't mean anything in your organization.

UML is the standard for diagrams in the industry.

That doesn't mean it's the only - or even the most effective - way to
communicate.

Personally, I've never been a fan of UML.
What you did not quote was:

#He/she may not like UML. He/she may not want to use UML for
#this project. But he/she should know UML.

UML is the standard.

There may be reasons not to use the standard.

But now knowing the standard is a very poor reason.

Arne

Nov 5 '07 #9
[snip]
>
UML is the standard.
Says Who again? Maybe in some organisations, but not any global body that
matters.
Nov 5 '07 #10
Arne Vajhøj <ar**@vajhoej.dkwrote:
Jon Skeet [C# MVP] wrote:
On Oct 25, 2:19 am, Arne Vajhøj <a...@vajhoej.dkwrote:
not_a_commie wrote:
If you were going to hire a software architect / functional lead for
your project (written exclusively in C# including WPF, WCF) would you
require that they have UML skills?
Yes. Unless standards don't mean anything in your organization.

UML is the standard for diagrams in the industry.
That doesn't mean it's the only - or even the most effective - way to
communicate.

Personally, I've never been a fan of UML.
What you did not quote was:

#He/she may not like UML. He/she may not want to use UML for
#this project. But he/she should know UML.

UML is the standard.
As Radek says, according to who? It's widely used, but that's not quite
the same thing.
There may be reasons not to use the standard.

But now knowing the standard is a very poor reason.
If your organization happens to use UML extensively, that *might* be a
reason - although it's simple enough to learn UML when necessary.

If your organization doesn't use UML, or doesn't use it very much, why
should it be a job requirement?

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too
Nov 5 '07 #11
"Jon Skeet [C# MVP]" <sk***@pobox.comwrote
UML is the standard for diagrams in the industry.
That doesn't mean it's the only - or even the most effective - way to
communicate.
Certainly true. But for the same reason I'm unlikey to write this message
out in Hmong, I'm unlikey to go with a Software Diagraming language nobody
has ever heard of.

The reason we write is (often) to be understood by as wide a range of people
as possible. If we each created a new diagraming language for each problem
we came across, the results would be a complete lack of ability to
communicate with each other.

Every professional field has a set of language tools they use to communicate
with each other. In some professions, these languages and tools have evolved
over a very long people of time and are very mature. Civil Engineers, for
example, can reasonably expect to read a set of plans put together by just
about any other Civil Engineer the world over. Electrical Engineers and
Architects as well can expect this.

In Software Engineering this is now possible through UML. This langauge
allows engineers well versed in Java, C++, .Net, Basic, and other langauges
to communicate with each other.

--
Chris Mullins
Nov 5 '07 #12
Chris Mullins [MVP - C#] <cm******@yahoo.comwrote:

<snip>
In Software Engineering this is now possible through UML. This langauge
allows engineers well versed in Java, C++, .Net, Basic, and other langauges
to communicate with each other.
I find that UML on its own is rarely good enough to communicate
effectively - whereas a diagram and suitable explanation is good enough
*whether or not the diagram is in proper "formal" UML*.

Usually the system architecture shouldn't be on the level of "this
class and this interface" - just drawing deployment boxes is good
enough. When I *do* want to look at the class level design, I can
understand non-UML boxes with description perfectly easily - or looking
at the source itself.

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too
Nov 5 '07 #13
Radek Cerny wrote:
[snip]
>UML is the standard.

Says Who again? Maybe in some organisations, but not any global body that
matters.
Try google for the term "defacto standard".

Arne
Nov 6 '07 #14
Jon Skeet [C# MVP] wrote:
Arne Vajhøj <ar**@vajhoej.dkwrote:
>UML is the standard.

As Radek says, according to who? It's widely used, but that's not quite
the same thing.
It is called a defacto standard.
>There may be reasons not to use the standard.

But now knowing the standard is a very poor reason.

If your organization happens to use UML extensively, that *might* be a
reason - although it's simple enough to learn UML when necessary.

If your organization doesn't use UML, or doesn't use it very much, why
should it be a job requirement?
Because an architect that does not know UML is complete out of
touch what is going on in the industry.

And that is a pretty bad characteristic for an architect.

Arne

Nov 6 '07 #15
Jon Skeet [C# MVP] wrote:
Chris Mullins [MVP - C#] <cm******@yahoo.comwrote:
>In Software Engineering this is now possible through UML. This langauge
allows engineers well versed in Java, C++, .Net, Basic, and other langauges
to communicate with each other.

I find that UML on its own is rarely good enough to communicate
effectively - whereas a diagram and suitable explanation is good enough
*whether or not the diagram is in proper "formal" UML*.

Usually the system architecture shouldn't be on the level of "this
class and this interface" - just drawing deployment boxes is good
enough. When I *do* want to look at the class level design, I can
understand non-UML boxes with description perfectly easily - or looking
at the source itself.
Hmm.

Are you talking about UML in general or specifically about UML
class diagrams ?

UML has a deployment diagram !

Arne

PS: The usefulness of class diagrams if often higher if they only
show what is important not everything.


Nov 6 '07 #16
Arne Vajhøj <ar**@vajhoej.dkwrote:
Usually the system architecture shouldn't be on the level of "this
class and this interface" - just drawing deployment boxes is good
enough. When I *do* want to look at the class level design, I can
understand non-UML boxes with description perfectly easily - or looking
at the source itself.
Hmm.

Are you talking about UML in general or specifically about UML
class diagrams ?

UML has a deployment diagram !
But what advantage does UML have in deployment terms over ad hoc
diagrams? Yes, I'll use the appropriate symbol for a database etc - but
very few of my diagrams are strictly UML conformant, and I don't think
it hurts communication at all.
PS: The usefulness of class diagrams if often higher if they only
show what is important not everything.
And again, that's just as easy to do (IMO) in an ad hoc manner as with
fully UML-compliant diagrams.

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too
Nov 6 '07 #17
Jon Skeet [C# MVP] wrote:
Arne Vajhøj <ar**@vajhoej.dkwrote:
>>Usually the system architecture shouldn't be on the level of "this
class and this interface" - just drawing deployment boxes is good
enough. When I *do* want to look at the class level design, I can
understand non-UML boxes with description perfectly easily - or looking
at the source itself.
Hmm.

Are you talking about UML in general or specifically about UML
class diagrams ?

UML has a deployment diagram !

But what advantage does UML have in deployment terms over ad hoc
diagrams? Yes, I'll use the appropriate symbol for a database etc - but
very few of my diagrams are strictly UML conformant, and I don't think
it hurts communication at all.
A common symbol set requires less explanation.

Arne
Nov 7 '07 #18
Jon Skeet [C# MVP] wrote:
Arne Vajhøj <ar**@vajhoej.dkwrote:
>Because an architect that does not know UML is complete out of
touch what is going on in the industry.

And that is a pretty bad characteristic for an architect.

I wouldn't claim to "know" UML. I know enough to understand other
people's diagrams, and I'm perfectly capable of communicating with
other people through ad hoc diagrams with enough UML-ness where
necessary.

Am I completely out of touch with the industry? Would you throw my CV
out because it doesn't list UML as one of my core skills?

Personally, I think it's most important that architects are able to
come up with appropriate solutions and communicate them effectively to
their teams and managers. The nature of that communications is
relatively unimportant, IMO.
You place your UML skills a bit in the gray zone, so I don't know
if I would throw your CV out of it, but I would be worried and
probably want to check industry standard knowledge rather detailed.

Architects produce diagrams. UML is the standard (or if you prefer
another wording: the most widely used) for that.

An applicant for an architect position that does not know UML
would be handicapped in the race for the job compared with those
that do. Why has he/she not bothered to learn UML ? What else
standard concepts/technologies/tools does he/she not know about ?

Arne

Nov 7 '07 #19
On Oct 23, 7:55 pm, not_a_commie <notacom...@gmail.comwrote:
If you were going to hire a software architect / functional lead for
your project (written exclusively in C# including WPF, WCF) would you
require that they have UML skills?

Is being able to draw the standard UML diagrams in a notebook
sufficient, or would you require that they have some experience with
some UML program or another? Which program?
UML is a standard, not something required. I find that being able to
express your ideas in the form of drawing is important, but the means
that you do it should reflect what your group best understands. Even
the inventors say it should only be used if the people you work with
can benefit from it.

This really comes down to whether you company communicates via UML. If
no one does, then it is not very important. Remember, there have been
ERDs for decades and they still aren't totally agreed upon. Does you
company need someone to know UML (it doesn't take long to learn it).

Nov 7 '07 #20
Arne Vajhøj <ar**@vajhoej.dkwrote:
But what advantage does UML have in deployment terms over ad hoc
diagrams? Yes, I'll use the appropriate symbol for a database etc - but
very few of my diagrams are strictly UML conformant, and I don't think
it hurts communication at all.
A common symbol set requires less explanation.
But to fully know UML there's an awful lot of symbols that aren't
really necessary. For instance, when drawing a web service as part of a
deployment diagram, I'm perfectly happy to use a plain rectangle and
put "Authentication WS" in the box. From the context, it's always been
absolutely obvious to *everyone* (whether or not they know UML) what
"WS" means. Why learn a special symbol for it?

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too
Nov 7 '07 #21
Arne Vajhøj <ar**@vajhoej.dkwrote:
Personally, I think it's most important that architects are able to
come up with appropriate solutions and communicate them effectively to
their teams and managers. The nature of that communications is
relatively unimportant, IMO.
You place your UML skills a bit in the gray zone, so I don't know
if I would throw your CV out of it, but I would be worried and
probably want to check industry standard knowledge rather detailed.

Architects produce diagrams. UML is the standard (or if you prefer
another wording: the most widely used) for that.
Architects produce architecture, designs. That's the most important
thing - how reasonable their designs are, and whether or not they can
communicate them. Given the choice of someone who communicates well in
the interview but doesn't know UML, or someone who can draw UML but not
actually *talk* about it, I know I'd always go for the former.
An applicant for an architect position that does not know UML
would be handicapped in the race for the job compared with those
that do. Why has he/she not bothered to learn UML ? What else
standard concepts/technologies/tools does he/she not know about ?
I look at it a different way: there are *so* many technologies,
methodologies etc that one might spend their time learning, that by the
time you can communicate effectively without precise UML, your time is
better spent on other things.

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too
Nov 7 '07 #22
Jon Skeet [C# MVP] wrote:
Arne Vajhøj <ar**@vajhoej.dkwrote:
>>But what advantage does UML have in deployment terms over ad hoc
diagrams? Yes, I'll use the appropriate symbol for a database etc - but
very few of my diagrams are strictly UML conformant, and I don't think
it hurts communication at all.
A common symbol set requires less explanation.

But to fully know UML there's an awful lot of symbols that aren't
really necessary. For instance, when drawing a web service as part of a
deployment diagram, I'm perfectly happy to use a plain rectangle and
put "Authentication WS" in the box. From the context, it's always been
absolutely obvious to *everyone* (whether or not they know UML) what
"WS" means. Why learn a special symbol for it?
There are no special symbol. You would use a stereotype.

If you used standard deployment diagram you would communicate
what is deployable units.

Boxes are much more fuzzy than a UML component symbol.

Arne

PS: I am neither super good in UML or super strict in the way I use
UML, but I use it if possible.
Nov 19 '07 #23
Jon Skeet [C# MVP] wrote:
Arne Vajhøj <ar**@vajhoej.dkwrote:
>Architects produce diagrams. UML is the standard (or if you prefer
another wording: the most widely used) for that.

Architects produce architecture, designs.
Diagrams is the concrete incarnation (artifact) of that.
That's the most important
thing - how reasonable their designs are, and whether or not they can
communicate them. Given the choice of someone who communicates well in
the interview but doesn't know UML, or someone who can draw UML but not
actually *talk* about it, I know I'd always go for the former.
The ability to communicate verbally is absolutely a plus as well.

But that does not make UML skills less valuable.

Besides most companies prefer to have their architecture in
writing.
>An applicant for an architect position that does not know UML
would be handicapped in the race for the job compared with those
that do. Why has he/she not bothered to learn UML ? What else
standard concepts/technologies/tools does he/she not know about ?

I look at it a different way: there are *so* many technologies,
methodologies etc that one might spend their time learning, that by the
time you can communicate effectively without precise UML, your time is
better spent on other things.
Somehow I don't quite understand the last part.

It takes some time to follow what is going on in the IT industry, but
it is part of an architects job to know something about what is out
there that could be useful.

Arne
Nov 19 '07 #24
Arne Vajhøj <ar**@vajhoej.dkwrote:

<snip>

I think we're going to have to agree to differ.

While I certainly wouldn't say that having UML is a negative attribute,
I would prefer to work with someone who was just a bit better at
talking about designs (and writing about them in plain words) than
someone who could do better UML. In other words, its value is pretty
low to me.

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
World class .NET training in the UK: http://iterativetraining.co.uk
Nov 19 '07 #25

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: expecthealth | last post by:
JOB DESCRIPTION Data Warehouse Architect (Permanent, Full-Time) ______________________________________________________________________ _________ Position Description: The Data Warehouse...
36
by: Andrea Griffini | last post by:
I did it. I proposed python as the main language for our next CAD/CAM software because I think that it has all the potential needed for it. I'm not sure yet if the decision will get through, but...
4
by: C. Smith | last post by:
I am technical advisor for a new group of middle-aged people that want to create a web site for historical information about our local area. They want to scan in a lot of old photos, include...
0
by: Patrice Longchamps | last post by:
ARE YOU LOOKING FOR A GREAT JOB...WE ARE LOOKING FOR GREAT PEOPLE! VISIT US AT http://www.manpowerprofessional.ca INFRASTRUCTURE ARCHITECT/SYSTEMS ENGINEER job Description: Detailed...
102
by: Steve Johnson | last post by:
I'd like to hear thoughts on what books, in your opinion, are true classics in the field of software engineering. I read a lot on the topic - at least a book a month for many years. There are many...
1
by: sri | last post by:
Following is the requierement for Our client.Candidates based at USA only need to apply. Location :Pittsburgh State/Province Pennsylvania Lead Software Engineer - Device Side Development Key...
3
by: robtyketto | last post by:
Im a student and in preparation for a testIve been given the test questions (or thereabouts, they may be asked in different words or from another perspective). I've been told that they do not...
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
0
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
0
by: Defcon1945 | last post by:
I'm trying to learn Python using Pycharm but import shutil doesn't work
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: af34tf | last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.