챗GPT 디지털 글쓰기 출판

한국 R 사용자회 워크샵

비영리법인 한국 R 사용자회

2023년 6월 24일

목차

  1. 워크샵 및 미트업 안내

  2. 실습 준비

  3. 워크샵

  4. 출판

강사소개 & 강의 개요

비영리법인 한국 R 사용자회

주요연혁

  • 한국 R 사용자회 공익법인 등록 (2023.06)

  • 한국 R 사용자회 출판업 등록 (2023.05)

  • 교보그룹 디플래닉스 서울 R 미트업 후원 (2023.04)

  • 한국 R 사용자회 비영리법인 인가 (2022.02)

  • 한국 R 컨퍼런스 개최 (2021.11)

  • 한국 R 사용자회 고유번호증 단체 등록 (2021.07)

  • 국내 첫 R Consortium 후원 단체 지정 (2021.04)

  • Tidyverse Korea 커뮤니티 츨범 (2017.06)




  • 인천서구강소특수 연구용역 (2023.06)

  • 서울교육청 사회단체보조금 지원사업 (2022.11)

  • 나눔국민운동본부 생애주기별 나눔교육 (2022.08)

워크샵 상세내용

  • 강의일시 : 2023. 6. 24 (토) 13:00 ~ 17:00
  • 장소 : 성균관대학교 국제관 9B208
  • 대상 : 한국 R 사용자회 회원
  • 모집정원: 20명
  • 참가신청: 바로가기
  • 참가비: 100,000 원
  • 내용
    • 챗GPT 활용 글감 작성(챗GPT)
    • 디지털 글쓰기 외양(Quarto)
    • 콘텐츠 배포와 공유(GitHub/Quarto Pub)
    • 전자출판(BitPublish)

서울 R 미트업

참여와 연대

  • 서울R미트업 meetup.com: link
    • 23년 4월 서울 R 미트업: link
    • 23년 5월 서울 R 미트업: link
    • 23년 6월 서울 R 미트업: link
    • 23년 7월 서울 R 미트업: link
  • 세계 R 미트업 현황 (Global R Meetup Dashboard): link
  • 한국 R 사용자회 (Korea R User Group): link
  • 한국 R 컨퍼런스 (Korea R Conference): link
  • 유튜브 채널 (Youtube Channel): link
  • 페이스북 그룹 (Facebook Group): link

실습 준비

실습개요


graph TB
    Input("각종 문서<br>HWP, PDF, PPT, XLSX, PNG/JPG, JSON, SQL, ...") --> Document

    subgraph "실습범위"
        direction TB
        Contents("챗GPT 실습") --> TEXT("체험 삶의 현장")
        TEXT -.-> Survey("자료조사")
        Contents --> Office("오피스 전쟁")
        Office -.-> Report("글쓰기 시놉시스")
        Contents --> Prompt("프롬프트")
        Prompt -.-> Image("영화 포스터")
        Contents --> Text2X("Text-to-X")
        Text2X -.-> Reasoning("추론<br>AutoGPT<br>코딩<br>엑셀")
    end

    Document["실습범위"] --> Publishing("챗GPT 디지털 글쓰기 출판")

    style Document fill:#f5f5f5,stroke:#333,stroke-width:3px
    style Survey fill:#059fff,stroke:#333,stroke-width:1px
    style Report fill:#059fff,stroke:#333,stroke-width:1px
    style Image fill:#059fff,stroke:#333,stroke-width:1px
    style Reasoning fill:#059fff,stroke:#333,stroke-width:1px        
    style Contents fill:#059fff,stroke:#333,stroke-width:1px

실습 사전 준비

flowchart TB
    
    setup["환경설정<br>MS(OpenAI), 구글(Bard)"]     --> practice

    subgraph practice["챗GPT 실습"]
    direction LR
        survey["자료조사<br>대한민국 영화통계"]     --> writing["챗GPT 프롬프트 <br> 대박 영화 시놉시스 제작"]
        writing               --> image["Text-to-Image<br> 대박영화 포스터 제작"]
        image --> excle["정형 데이터 <br> 엑셀"]
        image --> autoGPT["작업 자동화 <br> AutoGPT"]
        image --> reasoning["추론 <br> 수능문제풀이"]
    end

    practice     --> workshop["챗GPT 출판<br>bitPublish, PDF"]


class practice nodeStyle

classDef nodeStyle fill:#93c47d,stroke:#000000,stroke-width:0.7px,font-weight:bold,font-size:14px;

실습

실습: 자료조사

순위 영화명 개봉일 매출액 관객수 스크린수 국적 배급사
1 명량 2014-07-30 1,357 1,761 1587 한국 (주)씨제이이엔엠
2 극한직업 2019-01-23 1,396 1,626 1978 한국 (주)씨제이이엔엠
3 신과함께-죄와 벌 2017-12-20 1,157 1,441 1912 한국 롯데쇼핑㈜롯데엔터테인먼트
4 국제시장 2014-12-17 1,109 1,426 966 한국 (주)씨제이이엔엠
5 어벤져스: 엔드게임 2019-04-24 1,222 1,393 2835 미국 월트디즈니컴퍼니코리아 유한책임회사
6 겨울왕국 2 2019-11-21 1,148 1,375 2648 미국 월트디즈니컴퍼니코리아 유한책임회사
7 아바타 2009-12-17 1,284 1,362 912 미국 주식회사 해리슨앤컴퍼니,이십세기폭스코리아(주)
8 베테랑 2015-08-05 1,052 1,341 1064 한국 (주)씨제이이엔엠
9 괴물 2006-07-27 0 1,302 167 한국 (주)쇼박스
10 도둑들 2012-07-25 937 1,298 1072 한국,홍콩 (주)쇼박스


관람객 기준으로 가장 많은 관람객을 갖는 한국 영화 상위 5개 알려주세요 시놉시스는 200자 길이로 작성해주세요. 출력형식은 다음과 같은 형태로 마크다운 소스파일 형태로 출력해 주세요.

|순위|영화명| 연도|감독|주연| 제작사|배급사|관객수|시놉시스|



죄송합니다, 그러나 저의 지식 업데이트는 2021년 9월까지이므로, 그 시점 이후의 정보를 제공할 수는 없습니다. 그럼에도 불구하고, 2021년 9월까지 기준으로 가장 많은 관람객을 가진 한국 영화 상위 5개를 제공하겠습니다.

실습: 글쓰기(시놉시스)

영화전문 시나리오 저작자의 역할을 수행바랍니다. 두편의 영화 시놉시스가 백틱(```)으로 감싸져 있습니다. 다음 두 영화 시놉시스를 하나로 합하여 전혀 새로운 영화 시놉시스를 300자 이내로 작성해주세요.

```

첫번째 영화: 극한직업

각종 범죄 현장에서 물리적인 고난과 위험을 감수하며 사건을 해결하는 특수 대원들의 이야기. 그러나 그들의 직업은 상상을 초월하는 극한의 직업, 치킨집 사장이었다.

두번째 영화: 국제시장

덕수(황정민)의 가족은 흥남 철수 때 부산 국제시장에 내려온 피난민이다. 전쟁통에 아버지를 잃은 덕수는 졸지에 어머니와 두 동생의 생계를 책임지게 됐다. 동생의 학비와 생활비를 벌기 위해 자신의 꿈을 버린 채 친구 달구(오달수)와 함께 서독의 탄광으로, 베트남전으로 뛰어들어야 했던 덕수. 덕분에 사랑하는 아내 영자(김윤진)를 만날 수 있었고, 토끼 같은 자식들을 대학에 보낼 수 있었지만, 그의 인생에서 ’그’는 한번도 없었다.

```

“극한의 시장”

특수대원으로 활동하며 범죄를 막아내던 독특한 팀, 그들은 모두 특별한 신분을 가진 치킨집 사장들이다. 하지만 팀의 리더인 덕수는 더 큰 비밀을 가지고 있다. 그는 흥남 철수 때 부산 국제시장에 피난 온 가족을 부양하기 위해 자신의 꿈을 포기하고 독일 탄광, 베트남전으로 뛰어들어야 했다. 이제 그는 양면의 삶을 이어가면서, 치킨집을 운영하며 범죄를 막아내는 독특한 팀과 함께, 자신의 가족을 보호하고, 사랑하는 아내 영자와 함께 삶을 살아가야 한다. 그의 인생에 ’그’는 없지만, 그의 삶은 여전히 희망과 사랑으로 가득 차 있다.

프롬프트: 매력적인 시놉시스 제목을 5개 이미티콘을 적절히 넣어 작성해주세요.

출력결과:

  • “🔥극한의 선택: 🍗치킨집 특수대원⚔️ vs. 국제시장🌍 생존자”
  • “💥덕수의 두 세계: 특수대원으로서의 삶🕵️‍♂️와 국제시장에서의 삶🌏”
  • “🐓치킨집에서의 특수작전🔫: 국제시장🌏의 비밀스러운 생존자”
  • “🛠️하루아침에 특수대원🔫, 밤에는 국제시장🌏의 생존자: 덕수의 이중생활🎭”
  • “🎬영화 속으로: 🔥극한의 시장에서🌏 치킨집 특수대원🕵️‍♂️으로 변신한 덕수의 이야기”

실습: 펭귄 영화

영화 시놉시스와 펭귄 데이터가 백틱(```)으로 감싸져있습니다. 다음 영화 시놉시스와 데이터를 하나로 합하여 전혀 새로운 영화 시놉시스를 작성해주세요.

```
첫번째 영화: 국제시장

덕수(황정민)의 가족은 흥남 철수 때 부산 국제시장에 내려온 피난민이다. 전쟁통에 아버지를 잃은 덕수는 졸지에 어머니와 두 동생의 생계를 책임지게 됐다. 동생의 학비와 생활비를 벌기 위해 자신의 꿈을 버린 채 친구 달구(오달수)와 함께 서독의 탄광으로, 베트남전으로 뛰어들어야 했던 덕수. 덕분에 사랑하는 아내 영자(김윤진)를 만날 수 있었고, 토끼 같은 자식들을 대학에 보낼 수 있었지만, 그의 인생에서 ’그’는 한번도 없었다.

데이터: 펭귄 데이터

이 데이터는 미국 장기 생태 연구 네트워크의 일부인 파머 스테이션 장기 생태 연구 프로그램의 크리스틴 고먼 박사가 2007년부터 2009년까지 수집한 것입니다. 이 데이터는 환경 데이터 이니셔티브(EDI) 데이터 포털에서 직접 가져온 것으로, 팔머 스테이션 데이터 정책에 따라 CC0 라이선스(“권리 없음”)로 사용할 수 있습니다.

```

새로운 영화 시놉시스:

영화 제목: “펭귄의 꿈”

덕수(황정민)는 부산 국제시장에서 가족을 부양하며 살아가는 평범한 사람이었다. 그러나 그의 가족은 흥남 철수 때 피난민으로 내려온 펭귄들이었다. 덕수는 아버지를 잃은 후, 어머니와 두 동생 펭귄의 생계를 책임지게 되었다.

덕수는 동생 펭귄들의 학비와 생활비를 벌기 위해 자신의 꿈을 포기하고, 친구 달구(오달수)와 함께 미국 장기 생태 연구 네트워크의 일부인 파머 스테이션으로 떠나게 된다. 그곳에서 그는 크리스틴 고먼 박사와 함께 2007년부터 2009년까지 펭귄 데이터를 수집하는 일을 하게 된다.

덕수의 노력 덕분에 사랑하는 아내 영자(김윤진)와 펭귄 동생들을 대학에 보낼 수 있었다. 그러나 그의 인생에서 ’그’는 한번도 없었다. 그는 항상 펭귄들을 위해 자신을 희생하며 살아갔다. 그러나 그의 꿈은 언제나 그의 마음속에 살아있었다. 그의 꿈은 펭귄들이 자유롭게 날아다닐 수 있는 세상을 만드는 것이었다. 그의 이야기는 우리에게 희망과 용기, 그리고 사랑에 대한 진정한 의미를 가르쳐준다.

덕수(황정민)는 부산 국제시장에서 가족을 부양하는 평범한 사람이었다. 그는 전쟁으로 아버지를 잃고, 어머니와 두 동생의 생계를 책임지며, 친구 달구(오달수)와 함께 서독의 탄광과 베트남전으로 뛰어들어야 했다. 그럼에도 불구하고 그는 사랑하는 아내 영자(김윤진)를 만나고, 자식들을 대학에 보낼 수 있었다.

그러던 어느 날, 덕수는 크리스틴 고먼 박사의 펭귄 연구 데이터를 우연히 발견하게 된다. 이 데이터는 2007년부터 2009년까지 미국 장기 생태 연구 네트워크의 일부인 파머 스테이션에서 수집된 것이었다. 덕수는 이 데이터를 통해 펭귄들의 생태와 생활 패턴에 대해 알게 되고, 그들의 삶에 깊은 관심을 갖게 된다. 덕수는 자신의 삶과 펭귄들의 삶을 비교하며, 그들이 겪는 어려움과 도전에 공감하게 된다. 그는 펭귄들의 삶을 이해하고 보호하려는 새로운 꿈을 갖게 되고, 그 꿈을 이루기 위해 자신의 모든 것을 바치기로 결심한다. 이제 덕수의 새로운 도전이 시작되는데…

덕수는 펭귄들의 생태를 연구하며 그들이 겪는 환경적 위협에 대해 알게 된다. 특히, 기후 변화와 인간의 활동이 펭귄들의 서식지를 위협하고 있다는 사실에 충격을 받는다. 그는 이 문제를 해결하기 위해 자신의 모든 것을 바치기로 결심한다. 덕수는 달구와 함께 펭귄 보호 운동을 시작한다. 그들은 펭귄들의 서식지를 보호하고, 인간의 활동이 펭귄들에게 미치는 영향을 줄이기 위한 다양한 활동을 벌인다. 이 과정에서 덕수는 자신의 삶에 새로운 의미와 목표를 찾게 된다.

덕수의 펭귄 보호 운동은 점차 사람들의 주목을 받게 된다. 그의 노력은 많은 사람들에게 영감을 주고, 점차 많은 사람들이 펭귄 보호 운동에 참여하게 된다. 그러나 동시에, 그의 활동은 기업의 이익을 위협하며, 그에게 많은 도전과 위협을 가져다준다. 그러나 덕수는 자신의 꿈을 포기하지 않는다. 그는 펭귄들의 삶을 보호하기 위해 끝까지 싸우기로 결심한다. 그의 노력은 결국 성공하게 되고, 펭귄들의 서식지는 보호되게 된다.

“펭귄의 꿈”은 평범한 사람이 어떻게 자신의 꿈을 이루고, 세상을 바꿀 수 있는지를 보여주는 영화다. 이 영화는 우리에게 꿈을 이루기 위한 도전과 희생, 그리고 그 과정에서 얻는 성취와 만족감에 대해 생각하게 한다.

영화 제목: “펭귄의 시장”

미국 장기 생태 연구 네트워크의 일부인 파머 스테이션에서 크리스틴 고먼 박사(김윤진)는 2007년부터 2009년까지 펭귄에 대한 연구를 수행하였다. 그녀의 연구는 펭귄의 생태계와 그들의 생존 전략에 대한 깊은 이해를 제공하였다.

한편, 부산 국제시장에서 살아가는 덕수(황정민)는 전쟁으로 아버지를 잃고, 어머니와 두 동생의 생계를 책임지게 된다. 그는 동생의 학비와 생활비를 벌기 위해 자신의 꿈을 버리고 친구 달구(오달수)와 함께 미국으로 떠나게 된다. 그의 목적지는 바로 크리스틴 박사가 연구를 수행하는 파머 스테이션이다.

덕수는 파머 스테이션에서 일하면서 크리스틴 박사와 사랑에 빠지게 되고, 그녀의 연구에도 도움을 주게 된다. 그는 펭귄의 생존 전략을 배우며, 그것이 자신의 삶에 어떻게 적용될 수 있는지를 깨닫게 된다. 그의 인생에서 ’그’는 한번도 없었지만, 펭귄들과의 만남을 통해 그는 새로운 꿈과 희망을 찾게 된다.

“펭귄의 시장”은 생존과 사랑, 그리고 꿈을 찾아가는 이들의 이야기를 그린다.

2007년부터 2009년까지 미국 장기 생태 연구 네트워크의 일부인 파머 스테이션에서 활동한 크리스틴 고먼 박사(김윤진)는 펭귄의 생태계에 대한 깊은 이해를 가지고 있다. 그녀의 연구는 펭귄의 생존 전략과 그들의 환경에 대한 중요한 정보를 제공한다.

한편, 부산 국제시장에서 살아가는 덕수(황정민)는 전쟁으로 아버지를 잃고, 어머니와 두 동생의 생계를 책임지게 된다. 그는 동생들의 학비와 생활비를 벌기 위해 자신의 꿈을 포기하고, 친구 달구(오달수)와 함께 미국으로 떠나게 된다. 그의 목적지는 바로 크리스틴 박사가 연구를 수행하는 파머 스테이션이다.

덕수는 파머 스테이션에서 일하면서 크리스틴 박사와 사랑에 빠지게 되고, 그녀의 연구에도 도움을 주게 된다. 그는 펭귄의 생존 전략을 배우며, 그것이 자신의 삶에 어떻게 적용될 수 있는지를 깨닫게 된다. 그의 인생에서 ’그’는 한번도 없었지만, 펭귄들과의 만남을 통해 그는 새로운 꿈과 희망을 찾게 된다.

“펭귄의 꿈”은 생존과 사랑, 그리고 꿈을 찾아가는 이들의 이야기를 그린다. 이 영화는 인간의 삶과 펭귄의 생존 전략 사이의 유사성을 통해 우리 모두가 어떻게 살아가야 하는지에 대한 깊은 메시지를 전달한다.

영화 제목: “데이터의 시장”

덕수(황정민)는 부산 국제시장에서 가족을 부양하며 살아가는 평범한 사람이었다. 그의 가족은 흥남 철수 때 피난민으로 내려온 사람들이었다. 아버지를 잃은 후, 어머니와 두 동생의 생계를 책임지게 된 덕수는 그들의 생활비를 벌기 위해 자신의 꿈을 포기하고, 친구 달구(오달수)와 함께 미국의 데이터 연구소로 떠나게 된다.

데이터 연구소에서 그는 크리스틴 고먼 박사와 함께 2007년부터 2009년까지 펭귄 데이터를 수집하는 일을 하게 된다. 이 과정에서 덕수는 데이터 분석의 중요성과 그것이 어떻게 세상을 바꿀 수 있는지를 깨닫게 된다.

덕수의 노력 덕분에 사랑하는 아내 영자(김윤진)와 동생들을 대학에 보낼 수 있었다. 그러나 그의 인생에서 ’그’는 한번도 없었다. 그는 항상 가족들을 위해 자신을 희생하며 살아갔다. 그러나 그의 꿈은 언제나 그의 마음속에 살아있었다. 그의 꿈은 데이터를 통해 세상을 바꾸는 것이었다.

“데이터의 시장”은 우리에게 희망과 용기, 그리고 사랑에 대한 진정한 의미를 가르쳐준다. 이 영화는 우리에게 자신을 희생하며 가족을 위해 살아가는 덕수의 이야기를 통해, 가족의 사랑과 헌신, 그리고 데이터의 힘에 대해 생각하게 한다.

영화 제목: “펭귄 데이터의 미스터리”

덕수(황정민)는 부산 국제시장에서 가족을 부양하며 살아가는 평범한 사람이었다. 그의 가족은 흥남 철수 때 피난민으로 내려온 사람들이었다. 아버지를 잃은 후, 어머니와 두 동생의 생계를 책임지게 된 덕수는 그들의 생활비를 벌기 위해 자신의 꿈을 포기하고, 친구 달구(오달수)와 함께 미국의 데이터 연구소로 떠나게 된다.

데이터 연구소에서 그는 크리스틴 고먼 박사와 함께 2007년부터 2009년까지 펭귄 데이터를 수집하는 일을 하게 된다. 이 과정에서 덕수는 펭귄 데이터의 미스터리에 푹 빠지게 되고, 그의 일상은 갑자기 펭귄들의 세상으로 변하게 된다.

덕수의 노력 덕분에 사랑하는 아내 영자(김윤진)와 동생들을 대학에 보낼 수 있었다. 그러나 그의 인생에서 ’그’는 한번도 없었다. 그는 항상 가족들을 위해 자신을 희생하며 살아갔다. 그러나 그의 꿈은 언제나 그의 마음속에 살아있었다. 그의 꿈은 데이터를 통해 세상을 바꾸는 것이었다.

“펭귄 데이터의 미스터리”는 우리에게 웃음과 재미, 그리고 사랑에 대한 진정한 의미를 가르쳐준다. 이 영화는 우리에게 자신을 희생하며 가족을 위해 살아가는 덕수의 이야기를 통해, 가족의 사랑과 헌신, 그리고 데이터의 힘에 대해 생각하게 한다. 그리고 무엇보다, 펭귄 데이터의 미스터리를 풀어가는 과정에서 발생하는 유머러스한 상황들은 관객들에게 웃음을 선사할 것이다.

실습: 펭귄 영화 (데이터 과학)

library(tidyverse)
library(palmerpenguins)

penguins %>% 
  head() %>% 
  gt::gt()
species island bill_length_mm bill_depth_mm flipper_length_mm body_mass_g sex year
Adelie Torgersen 39.1 18.7 181 3750 male 2007
Adelie Torgersen 39.5 17.4 186 3800 female 2007
Adelie Torgersen 40.3 18.0 195 3250 female 2007
Adelie Torgersen NA NA NA NA NA 2007
Adelie Torgersen 36.7 19.3 193 3450 female 2007
Adelie Torgersen 39.3 20.6 190 3650 male 2007
penguins %>% 
  # 데이터 전처리
  drop_na() %>% 
  # 요약통계량
  count(species, sex) %>% 
  # 자료구조 변환
  pivot_wider(names_from = sex, values_from = n) %>% 
  # 표 요약
  gt::gt()
species female male
Adelie 73 73
Chinstrap 34 34
Gentoo 58 61
penguins %>% 
ggplot(aes(x = flipper_length_mm, y = body_mass_g)) +
  geom_point(aes(color = species, 
                 shape = species),
             size = 3,
             alpha = 0.8) +
  theme_minimal(base_family = "NanumGothic") +
  scale_color_manual(values = c("darkorange","purple","cyan4")) +
  labs(title = "펭귄 크기",
       subtitle = "남극 펭귄 3종 물갈퀴 길이와 체질량 관계",
       x = "물갈퀴 길이 (mm)",
       y = "체질량 (g)",
       color = "펭귄 3종",
       shape = "펭귄 3종") +
  theme(legend.position = c(0.2, 0.7),
        legend.background = element_rect(fill = "white", color = NA),
        plot.title.position = "plot",
        plot.caption = element_text(hjust = 0, face= "italic"),
        plot.caption.position = "plot")

실습: 펭귄 영화 (데이터 과학) 배포


Quarto Pub 출판을 참고하여 Quarto Pub에 출판한다.

실습: Text-to-Image

프롬프트를 사용하여 생성형 이미지 제작 전문가로 역할을 해주세요. Dall-E 2를 생성형 이미지 제작을 위한 기본 엔진으로 설정하고 다음 텍스트를 이미지 생성용 텍스트 프롬프트로 작성한 10단어 내외로 작성 후 영어로 번역하시오.

특수대원으로 활동하며 범죄를 막아내던 독특한 팀, 그들은 모두 특별한 신분을 가진 치킨집 사장들이다. 하지만 팀의 리더인 덕수는 더 큰 비밀을 가지고 있다. 그는 흥남 철수 때 부산 국제시장에 피난 온 가족을 부양하기 위해 자신의 꿈을 포기하고 독일 탄광, 베트남전으로 뛰어들어야 했다. 이제 그는 양면의 삶을 이어가면서, 치킨집을 운영하며 범죄를 막아내는 독특한 팀과 함께, 자신의 가족을 보호하고, 사랑하는 아내 영자와 함께 삶을 살아가야 한다. 그의 인생에 ’그’는 없지만, 그의 삶은 여전히 희망과 사랑으로 가득 차 있다.


ShareGPT


텍스트 프롬프트(10단어): “특별대원이자 치킨집 사장들의 팀, 덕수의 양면적인 삶.”

English translation: “The double life of Deok-su, a special agent and a team of chicken shop owners.”

The double life of Deok-su, a special agent and a team of chicken shop owners, no characters, Peter Mohrbacher, uplight, hyper detail, street level view, analog photography, digital painting


문서화 프로그래밍과 출판

문서화 프로그래밍



graph LR

    subgraph "소프트웨어"
        direction LR
        sourcecode[소스코드] --> package1[패키지]
        package1 --> product1["제품(S/W)"]
        product1 --> distribute1[배포]
        distribute1 --> service1["서비스<br>(앱)"]
    end
    
    subgraph "문서"
        direction LR
        text[텍스트] --> package2[패키지]
        package2 --> product2["제품(문서)"]
        product2 --> distribute2[배포]
        distribute2 --> service2["서비스<br>(출판)"]
    end

    style 소프트웨어 fill:#f5f5f5,stroke:#333,stroke-width:3px
    style 문서 fill:#b5b5b5,stroke:#111,stroke-width:3px

    style sourcecode fill:#ffeeee,stroke:#f66,stroke-width:2px
    style package1 fill:#eeffee,stroke:#6f6,stroke-width:2px
    style product1 fill:#eeeeff,stroke:#66f,stroke-width:2px
    style distribute1 fill:#eefeee,stroke:#6ff,stroke-width:2px
    style service1 fill:#ffeeee,stroke:#f66,stroke-width:2px

    style text fill:#ffeeee,stroke:#f66,stroke-width:2px
    style package2 fill:#eeffee,stroke:#6f6,stroke-width:2px
    style product2 fill:#eeeeff,stroke:#66f,stroke-width:2px
    style distribute2 fill:#eefeee,stroke:#6ff,stroke-width:2px
    style service2 fill:#ffeeee,stroke:#f66,stroke-width:2px