국산 UML 모델링 툴 오픈소스로 전환!!

행복한고니의 이미지

국내 UML 툴 중에 Agora plastic 이라고 플라스틱 소프트웨어에서 만든게 있는데 그게 오픈소스화 되었습니다. 라이센스는 GPL인데, 상용의 플러그인이나 모듈을 허용하는 살짝 수정된 라이센스를 적용하고 있습니다.

공개후의 이름은 StarUML 입니다.
델파이로 제작되었고, 윈도우즈 용입니다만... 소스가 일단 공개되어있으니 언젠가는 다른 OS로 나올 수도 있지 않을까 싶습니다. ^^a

관련 사이트
http://staruml.tigris.org

댓글

jachin의 이미지

국내 소프트웨어의 오픈소스화.

좋은 계기가 될 수 있을 것 같아요.

그나저나 그 회사 분들은 사업을 어떻게 진행하신다는 것인지..

약간 걱정이 되기도 하네요. ^^;

hey의 이미지

tigris로 갔네요. 역시 tigris가 요즘 대세인가봅니다.


----------------------------
May the F/OSS be with you..


idlock의 이미지

kall의 이미지

----
자신을 이길 수 있는자는
무슨짓이든 할수있다..
즉..무서운 넘이란 말이지 ^-_-^
나? 아직 멀었지 ㅠㅠ

욱성군의 이미지

그런데 여기에 계신분들은 UML 을 주로 어떤 용도로 쓰시나요?
StarUML 이 zdnet 에 뜨자마자 바로 설치해봤는데 UML 이 설계를 하는 툴인것은 알겠는데 어떻게 써야하는건지 모르겠더라구요. UML 에 관련된 좋은 책을 혹시 아신다면 추천해주세요!

행복한고니의 이미지

검색한다고 해봤는데... 역시 중복이었네요. OTL

__________________________________
나는 세상에서 가장 중요한 사람이다.

rainmon의 이미지

욱성군 wrote:
그런데 여기에 계신분들은 UML 을 주로 어떤 용도로 쓰시나요?

ERD 만큼 필수적이지도 않고 모호한 경우가 많아서.. 안쓰죠. 아니 못쓰는건지도.. -_-

다크슈테펜의 이미지

rainmon wrote:
욱성군 wrote:
그런데 여기에 계신분들은 UML 을 주로 어떤 용도로 쓰시나요?

ERD 만큼 필수적이지도 않고 모호한 경우가 많아서.. 안쓰죠. 아니 못쓰는건지도.. -_-


프로그램 짤때 PM분이 투게더로 어느정도 해주시는데 완전하게는 코딩다하고 난다음에 그냥 떠버리죠...(먼산보기)

인생이란게 다 그런게 아니겠어요....? 뭘(?)
http://schutepen.egloos.com

rhizome의 이미지

좋은 소식이네요.

전에 객체지향과 UML에 관해 관심이 막 생기기 시작할 무렵, 국산 UML 모델러가 있다는 것을 알고 좀 놀랬더랬습니다.

거짓말이 없다는 것은 현대성보다도 사상보다도
백배나 더 중요한 일이다.

rhizome의 이미지

욱성군 wrote:
그런데 여기에 계신분들은 UML 을 주로 어떤 용도로 쓰시나요?
StarUML 이 zdnet 에 뜨자마자 바로 설치해봤는데 UML 이 설계를 하는 툴인것은 알겠는데 어떻게 써야하는건지 모르겠더라구요. UML 에 관련된 좋은 책을 혹시 아신다면 추천해주세요!

제가 추천할 수준은 아니지만^^;; 제가 요즘 보고 있는 책이 괜찮은 것 같아 추천합니다.

그 유명한 밥 아저씨가 쓴 자바 프로그래머를 위한 UML(UML for Java Programmers)이란 책이 있는데 좋은 것 같습니다. - 반쯤 읽었기 때문에 그리고 내공의 미천함 때문에, 좋은 책입니다라고 확답을 할 수는 없습니다. 8)

무엇보다 다이어그램에 대응되는 코드가 많습니다.

그리고 이책의 2장에 이런 말이 나옵니다.

Quote:
시험해 볼 구체적인 것이 있고, 그것을 코드로 시험해 보는 것보다 UML로 시험해 보는 쪽이 비용이 덜 들 때 UML을 사용한다.

이것이 UML을 "어디에 사용하는가? "라는 질문에 대한 부분적 답이 되지 않을까요? ^^;; 물론 저자가 eXtreme Programming을 적극적으로 설파하는 사람이라서 그런 저자의 입장이 반영된 의견이겠습니다만...

거짓말이 없다는 것은 현대성보다도 사상보다도
백배나 더 중요한 일이다.

nangchang의 이미지

개인적으론 martin fowler 아저씨가 쓴

UML Distilled: A Brief Guide to the Standard Object Modeling Language

가 맘에 들더군요. 본지 좀 오래 되서 기억은 잘 안나지만;;;

각 다이어그램 마다 간결하고 알기 쉽게 설명이 되어있었던거 같습니다;;;

그나저나 UML은 써보려고 오랬동안 시도 중인데,

기껐해야 클래스 다이어그램 이상은 잘 안하게 되더군요-_-

stadia의 이미지

rhizome wrote:

제가 추천할 수준은 아니지만^^;; 제가 요즘 보고 있는 책이 괜찮은 것 같아 추천합니다.

그 유명한 밥 아저씨가 쓴 자바 프로그래머를 위한 UML(UML for Java Programmers)이란 책이 있는데 좋은 것 같습니다. - 반쯤 읽었기 때문에 그리고 내공의 미천함 때문에, 좋은 책입니다라고 확답을 할 수는 없습니다. 8)

직접 코딩 하고 삽질하는 프로그래머들에게는
저 책 이상의 내용을 알 필요도 없고
알아도 쓸 일이 없을 것 같네요.

욱성군의 이미지

자바 프로그래머를 위한 UML(UML for Java Programmers) 요놈 시험끝나는 대로 지르기로 결정했습니다 ;)

쌀밥의 이미지

욱성군 wrote:
UML 에 관련된 좋은 책을 혹시 아신다면 추천해주세요!

http://kangcom.com/book/project/project_list.asp?pr_code=171

일하는 사람들의 희망 민주노동당 : http://www.kdlp.org
반공 교육의 성과로, 민주주의의 반대가 공산주의(또는 사회주의)라고 생각하는 사람이 많다.

philnet의 이미지

욱성군 wrote:
그런데 여기에 계신분들은 UML 을 주로 어떤 용도로 쓰시나요?
StarUML 이 zdnet 에 뜨자마자 바로 설치해봤는데 UML 이 설계를 하는 툴인것은 알겠는데 어떻게 써야하는건지 모르겠더라구요. UML 에 관련된 좋은 책을 혹시 아신다면 추천해주세요!

저는 Rational Rose라는 UML 툴을 사용하고 있습니다.

처음에는 UML로 체계적인 모델링을 해보겠다며 시작했습니다만, 이런 저런 다이어그램들만 그리다 보니, 코딩과 모델을 같이 관리하느라 시간과 노력만 중복해서 들게 되면서 이걸 왜하나 하는 회의가 들더군요. (OTL)

그만둘까 하다가, 고생한게 아까와 매뉴얼을 계속 들여다 봤는데 모델 작성한 것으로부터 몇 가지 언어(c++, java, vb, 등등)들로의 코드 생성을 지원하는 것을 알게 되었습니다. 적지 않은 시행 착오 끝에 지금은 (조금 과장을 보태서) rose가 없으면 일을 못할 지경(?)까지 왔구요.

구현해야 하는 기능들이 있으면 어떤 class들이 어떤 식으로 역할 분담할지를 class diagram에서 먼저 그려 봄으로써 실제 코딩 중에 겪을 시행 착오를 많이 줄일 수 있었습니다. 다른 사람들과 의사 소통할 때도 많은 도움이 되고요. 좀 복잡하거나 주요한 시나리오들을 sequence diagram으로 쉽게 그릴 수 있어서 나중에 다시 들여다 봐야 할 때 의외로 유용할 때가 있습니다...

일단 class diagram으로 class들의 interface와 relationship을 정의하고 나면, 코드 생성을 하게 되는데, 헤더 파일의 대부분과 구현 파일에서 함수 원형들이 모두 생성되기 때문에 상당한 타이핑 양이 덜어지게 됩니다.

이후 구현하거나 리팩토링 과정에서 class 추가-삭제, 인터페이스 수정 작업들도 rose를 통해 상당히 편리하게 진행할 수 있습니다. 단점이라면, 어느 정도 익힐 때까지 시간이 걸린다라는 점, 그래서 새로운 멤버가 들어오면 바로 일을 못하고, 교육(?)시키는 비용이 좀더 많이 든다는 정도가 되겠네요. 아참, 그리고 해당 툴이 아주 고가(약 4년 전에 c++만 지원되는 버전을 1 copy 살 때 수백만원 했습니다. -_-)라는 점도 문제가 되지요...

저는 rose의 c++만 사용했기 때문에 다른 언어드의 경우는 어떻게 되는 지 정확하게 알지 못하지만, c++의 경우 코드 생성을 아주 정교하게 제어할 수 있는 property set을 제공하고 있는 것으로 봐서 다른 언어들도 각 언어에 맞는 수준 내에서 비슷한 결과를 얻을 수 있을 거라고 생각합니다.

plastic은, rose나 together가 워낙 고가여서 좀 저렴(copy 당 수십만원 수준이었던 것 같습니다.)한 걸로 대체할 수 있을까해서 평가판 제품을 다운로드 받아서 사용해 봤습니다. c++의 경우 코드 생성까지는 되는데, 일단 한번 생성된 다음, 모델을 수정하고 나서 이를 다시 생성할 때 여러가지 문제점들이 있어서 그만두었던 기억이 납니다..

사용자 인터페이스나 diagram 작성 자체는 rose 못지 않게, 일부분은 더 나은 부분도 있었지만, 정작 개발자인 제게 필요한 생성 기능들이 지원되지 않아 그 이후에는 잊고 살았지요. (플라스틱의 경우 애초에 java만 지원하는 것에서 시작했고, 그래서 java는 c++보다 더 잘 지원된다고 알고 있습니다만, 제가 사용해보지는 않아서 어떨 지 모르겠습니다.)

책은, 저도 마틴 파울러의 UML Distilled(어느덧 3판이 나왔더군요)을 적극 추천합니다. (저희 회사에 새로 사람이 오면 먼저 그책을 보게 합니다.)

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.