Good Source for Definitions

18 views
Skip to first unread message

Scott McCarty

unread,
May 14, 2010, 10:42:47 AM5/14/10
to devops-t...@googlegroups.com
I noticed that we are starting to use the word artifact to describe code, config, content, and data. This is slightly different than the traditional use in software development or UML. I have read this use in many different blog entries and used it like this myself. Does anybody know of a central dictionary or place where some the words we are using are defined? I would really like to cite this central place in my blog posts and am realizing that we are using jargon, perhaps without even realizing it.

I could have sworn we had something like this in the devops toolchain wiki on google code, but I couldn't find it again.

Cheers
Scott M

Noah Campbell

unread,
May 14, 2010, 11:23:29 AM5/14/10
to devops-t...@googlegroups.com
I think the use of artifact is referring to a unit of deployment and yes it's probably not normative. What is the traditional way of referring to it in software dev or UML?

I would point you to Roy Fielding's dissertation, chapter 1: http://www.ics.uci.edu/~fielding/pubs/dissertation/software_arch.htm and specially all the footnotes:

These are probably most relevant.
http://www.ics.uci.edu/~fielding/pubs/dissertation/references.htm#ref_105
http://www.ics.uci.edu/~fielding/pubs/dissertation/references.htm#ref_53
http://www.ics.uci.edu/~fielding/pubs/dissertation/references.htm#ref_118

There are other sources from commercial vendors, but probably borderline on jargon.

-Noah

Scott McCarty

unread,
May 14, 2010, 11:36:51 AM5/14/10
to devops-t...@googlegroups.com
I agree with your definition below. Thanks for the links, interesting read, but not quite what I am looking for. i think traditionally artifacts in software development refer to all of the meta-data of code development everything from the tool chain to the drawings/diagrams associated with it. This is also more in line with the traditional use of the word, which is a "thing" that contains within it information which allows inference about some other thing. I hate to be so philosophical, but that is basically what happens in Archeology. You find little bits and pieces that allow inference about a culture. This is essentially the same with UML diagrams and software development tools (http://en.wikipedia.org/wiki/Artifact_(software_development)) Of course, I am inferring it's relation to the traditional use of the word (breath). Our use is clearly not in line with this.

Basically, what I am saying, is that I like our use of the word artifact. I also like our use of the word "tool chain". I think it is wonderful. I am thinking that the wiki might be a good place to define some of these new uses for these words. It might also help solidify what this whole DevOps thing is, though there is no shortage of people trying to do that right now ;-)

Regards
Scott M

Anthony Shortland

unread,
May 14, 2010, 11:57:37 AM5/14/10
to devops-t...@googlegroups.com
For these reasons I usually qualify the term when I use it; as in: "package artifact" or "deployable artifact".

Ernest Mueller

unread,
May 14, 2010, 1:56:52 PM5/14/10
to devops-t...@googlegroups.com
Hmm, that's weird. I always used "artifact" for "any physically or
virtually tangible item." In fact I just quizzed our devs here and asked
"do you consider a file of source code to be 'an artifact'?" and they all
say "yes."

So not to doubt the all knowing wikipedia, but my experience has been that
"artifacts" are everything from source artifacts (code) to deployable
artifacts like .wars to documentation of various forms... If I told
someone "back up all artifacts relating to that product" I'd expect the
source to be on that DVD too.

In fact I think it's important to have a word for "everything" because it
avoids fringe arguments about "does this count..." "My documentation is in
my code and produced via javadoc" or "My programming language is the
graphical design." (The latter is relevant to us - In LabVIEW, the program
*is* the Visio-looking picture you draw, for example).

Ernest
______________________
UN-altered REPRODUCTION and DISSEMINATION of
this IMPORTANT information is ENCOURAGED.




From: Anthony Shortland <ant...@controltier.com>

To: devops-t...@googlegroups.com

Date: 05/14/2010 10:57 AM

Subject: Re: Good Source for Definitions

Sent by: devops-t...@googlegroups.com

Scott McCarty

unread,
May 14, 2010, 2:12:08 PM5/14/10
to devops-t...@googlegroups.com
I mean, that's interesting and all, but it is NOT the traditional use of the word artifact and it was definitely a stretch for me when I first heard it. To contribute to the completely unscientific, and hence weightless data gathering, I asked one of our programmers "If I was talking to you about deployment, what would the word artifact mean to you?" He responded, "a log file". This makes sense, it is a disposed off "artifact" of the deployment.

Now, when I use it in a sentence, it is more obvious. That is how I learned this usage of the word. I like the borrowed use of the word, but it is but none the less jargon. Didn't want to start WWIII, just wanted to self reflect. When I give talks/blog entries, I think I will define this word for the audience.

Scott M

Ernest Mueller

unread,
May 14, 2010, 3:59:43 PM5/14/10
to devops-t...@googlegroups.com
Sure, just discussin' not warrin'. I guess it depends whether you see the
application/system as the culture that's leaving arrowheads and trinkets
around, or the programmers/people.

I also think it depends on the word you put before "artifact." There are
project management artifacts like project plans. A log file would fit as a
deployment artifact. But since you have to put an adjective qualifier on
it, it's a limited subset of the space "artifact." Source code is a
"development artifact" - Microsoft refers to it in that way (bonus patent:
http://www.faqs.org/patents/app/20090094572).

So if clarity is sought, I think it's not in artifact vs another word, but
in the adjective qualifier on artifact... Just to be a wonk.

Ernest
______________________
UN-altered REPRODUCTION and DISSEMINATION of
this IMPORTANT information is ENCOURAGED.




From: Scott McCarty <scott....@gmail.com>

To: devops-t...@googlegroups.com

Date: 05/14/2010 01:12 PM

Scott McCarty

unread,
May 14, 2010, 4:25:54 PM5/14/10
to devops-t...@googlegroups.com
On Fri, May 14, 2010 at 3:59 PM, Ernest Mueller <Ernest....@ni.com> wrote:
Sure, just discussin' not warrin'.  I guess it depends whether you see the
application/system as the culture that's leaving arrowheads and trinkets
around, or the programmers/people.

Fair enough, I like that analogy. Once the singularity occurs none of this will matter anyway, lol. Honestly, it came up because I tried a google search, then a wikipedia search on the use of the word. Finally, I tried searching dev2ops and couldn't find anything that pegged it. Honestly, I am glad you found that Microsoft paper, this stuff is pretty esoteric.

I agree on the adjective, that makes a world of difference. Also, nice use of the word trinkets, we don't get to use that word too often in IT, lol. Well, I am just finishing up a blog post about some related subject matter in response to the how to automate dev question that was posted. That was the root cause of this whole thing in my mind.

Cheers
Scott M
Reply all
Reply to author
Forward
0 new messages