473,698 Members | 2,635 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

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
24 2369
Arne Vajhøj <ar**@vajhoej.d kwrote:
Jon Skeet [C# MVP] wrote:
On Oct 25, 2:19 am, Arne Vajhøj <a...@vajhoej.d kwrote:
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.co m>
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.co mwrote
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.co m>
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.d kwrote:
>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.d kwrote:
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.co m>
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.d kwrote:
>>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.d kwrote:
>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...@gma il.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

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

Similar topics

0
1569
by: expecthealth | last post by:
JOB DESCRIPTION Data Warehouse Architect (Permanent, Full-Time) ______________________________________________________________________ _________ Position Description: The Data Warehouse Architect is responsible for design, specifications, development, testing and deployment for Oracle data warehouse functionality, reports, extracts and interfaces. Leads
36
6383
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 something I'll need in this case is some experience-based set of rules about how to use python in this context. For example... is defining readonly attributes in classes worth the hassle ? Does duck-typing scale well in complex
4
1913
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 information on schools, cemetaries, etc. The web server is NT4 running IIS 4.0. Pages are uploaded via FTP. I personally use Dreamweaver 3, and am learning Dreamweaver MX. I feel that Dreamweaver is too much for this group to learn. I had early...
0
276
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 Description: As a Systems Engineer, your focus will be architecting and implementing mission critical Enterprise Solutions utilizing Windows 2003 technology. You will build management, technical and planning
102
6704
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 good authors, however, the only book on making software that is truly timeless, in my opinion, is "Mythical Man Month" by Brooks. It never ceases to amaze me that something written over 20 years ago would be so relevant. It seems like Brooks...
1
2149
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 Responsibilities You will be a key contributor in CLIENT's leading edge Network Management Software team, focused on extending the management interface presented by CLIENT's switching and routing platforms. Responsibilities include modeling the
3
4414
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 require long answer, short punchy bullet points are fine, and I guess to justify your points too. So since I got up this morning in the UK for the last 3hrs Ive done some resarch and come up with a set of notes/answers. Remembering this is an...
0
8683
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9170
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
9031
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
8902
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
8873
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
7740
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
0
5862
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
2
2339
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
2007
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

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.