Top 32 시스템 아키텍처 그리기 All Answers

You are looking for information, articles, knowledge about the topic nail salons open on sunday near me 시스템 아키텍처 그리기 on Google, you do not find the information you need! Here are the best content compiled and compiled by the https://toplist.maxfit.vn team, along with other related topics such as: 시스템 아키텍처 그리기 시스템 아키텍처 구성도, 시스템 아키텍처 설계, AWS 아키텍처 그리기, 시스템 아키텍처 예제, 시스템 아키텍처 구성도 ppt, 아키텍처 다이어그램, 소프트웨어 아키텍처 구성도, 시스템 아키텍처 정의서


시스템구성도의 이해
시스템구성도의 이해


개발자의 하루 :: 시스템 아키텍처 (System Architecture) 그리기 도구 (Drawing Tool)

  • Article author: devday.tistory.com
  • Reviews from users: 1422 ⭐ Ratings
  • Top rated: 3.7 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 개발자의 하루 :: 시스템 아키텍처 (System Architecture) 그리기 도구 (Drawing Tool) 시스템 아키텍처 그리기 도구로 Visio가 좋은데 유료라 찾아보니. Visio와 호환되는 draw.io가 있었다. 다음 링크에서 사용할 수 있다. …
  • Most searched keywords: Whether you are looking for 개발자의 하루 :: 시스템 아키텍처 (System Architecture) 그리기 도구 (Drawing Tool) 시스템 아키텍처 그리기 도구로 Visio가 좋은데 유료라 찾아보니. Visio와 호환되는 draw.io가 있었다. 다음 링크에서 사용할 수 있다. 시스템 아키텍처 그리기 도구로 Visio가 좋은데 유료라 찾아보니 Visio와 호환되는 draw.io가 있었다. 다음 링크에서 사용할 수 있다. https://www.draw.io/ 2% 부족하지만 그런대로 쓸만하다. 오프라인 모드 (Off..
  • Table of Contents:
개발자의 하루 :: 시스템 아키텍처 (System Architecture) 그리기 도구 (Drawing Tool)
개발자의 하루 :: 시스템 아키텍처 (System Architecture) 그리기 도구 (Drawing Tool)

Read More

아키텍처 구성도 쉽게 그리는 프로그램?

  • Article author: www.edrawsoft.com
  • Reviews from users: 38642 ⭐ Ratings
  • Top rated: 3.3 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 아키텍처 구성도 쉽게 그리는 프로그램? 시스템 아키텍처 구성도, 초보자 맞춤 프로그램? 아키텍처란 건축학이라는 의미 외에도 컴퓨터를 기능면에서 본 구성 방식을 의미하기도 합니다. 이는 곧 기억장치의 번지 … …
  • Most searched keywords: Whether you are looking for 아키텍처 구성도 쉽게 그리는 프로그램? 시스템 아키텍처 구성도, 초보자 맞춤 프로그램? 아키텍처란 건축학이라는 의미 외에도 컴퓨터를 기능면에서 본 구성 방식을 의미하기도 합니다. 이는 곧 기억장치의 번지 … 아키텍처란 건축학이라는 의미 외에도 컴퓨터를 기능면에서 본 구성 방식을 의미하기도 합니다. 아키텍처 구성도를 그리는 프로그램을 사용하여 간단한 아키텍처 구성도를 직접 그려보도록 하겠습니다.
  • Table of Contents:
아키텍처 구성도 쉽게 그리는 프로그램?
아키텍처 구성도 쉽게 그리는 프로그램?

Read More

아키텍처 그리기

  • Article author: figureking.tistory.com
  • Reviews from users: 13903 ⭐ Ratings
  • Top rated: 4.7 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 아키텍처 그리기 같이 일하는 사람마다 다른 말을 하게 되는 경우가 가장 일의 효율을 떨어뜨린다는 걸 많이 느꼈다. 그래서 한눈에 전체를 설명하기 좋은 시스템 구성도의 … …
  • Most searched keywords: Whether you are looking for 아키텍처 그리기 같이 일하는 사람마다 다른 말을 하게 되는 경우가 가장 일의 효율을 떨어뜨린다는 걸 많이 느꼈다. 그래서 한눈에 전체를 설명하기 좋은 시스템 구성도의 … https://cloudcraft.co/ Cloudcraft – Draw AWS diagrams Visualize your AWS environment as isometric architecture diagrams. Snap together blocks for EC2s, ELBs, RDS and more. Connect your live AWS env..
  • Table of Contents:
아키텍처 그리기
아키텍처 그리기

Read More

PPT로 AWS 아키텍쳐 그리기

  • Article author: popcorn16.tistory.com
  • Reviews from users: 614 ⭐ Ratings
  • Top rated: 4.3 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about PPT로 AWS 아키텍쳐 그리기 다니는 회사에서 AWS 아키텍쳐 그리기를 미션으로 받았습니다. 프리티어로 ec2만 돌려본 저에겐 어려운 과제였습니다. 대략적인 구조를 손으로 그리고 … …
  • Most searched keywords: Whether you are looking for PPT로 AWS 아키텍쳐 그리기 다니는 회사에서 AWS 아키텍쳐 그리기를 미션으로 받았습니다. 프리티어로 ec2만 돌려본 저에겐 어려운 과제였습니다. 대략적인 구조를 손으로 그리고 … 다니는 회사에서 AWS 아키텍쳐 그리기를 미션으로 받았습니다. 프리티어로 ec2만 돌려본 저에겐 어려운 과제였습니다. 대략적인 구조를 손으로 그리고 툴로 깔끔하게 그리려고 했는데요, 아키텍쳐를 그리는 툴은..
  • Table of Contents:

태그

‘settingsOthers’ 관련글

티스토리툴바

PPT로 AWS 아키텍쳐 그리기
PPT로 AWS 아키텍쳐 그리기

Read More

AWS 아키텍처 다이어그램 도구 | AWS 다이어그램 그리기 | Creately

  • Article author: creately.com
  • Reviews from users: 14647 ⭐ Ratings
  • Top rated: 4.3 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about

    AWS 아키텍처 다이어그램 도구 | AWS 다이어그램 그리기 | Creately

    AWS 다이어그램을 온라인으로 그리는 AWS 아키텍처 다이어그램 도구입니다. AWS 설계 및 배포를 전달하기 위한 여러 AWS 아키텍처 다이어그램 예제입니다. …

  • Most searched keywords: Whether you are looking for

    AWS 아키텍처 다이어그램 도구 | AWS 다이어그램 그리기 | Creately

    AWS 다이어그램을 온라인으로 그리는 AWS 아키텍처 다이어그램 도구입니다. AWS 설계 및 배포를 전달하기 위한 여러 AWS 아키텍처 다이어그램 예제입니다. AWS 다이어그램을 온라인으로 그리는 AWS 아키텍처 다이어그램 도구입니다. AWS 설계 및 배포를 전달하기 위한 여러 AWS 아키텍처 다이어그램 예제입니다.

  • Table of Contents:

온라인으로 AWS 인프라 다이어그램을 생성하는 가장 간단한 방법

최소한의 노력으로 복잡한 AWS 아키텍처 다이어그램 생성

팀 및 고객과 원활하게 협ì—

좋아하는 도구와 함께 작동

수천 개의 무료 고품질 템플릿 찾아보기

창조 작ì—


    
        AWS 아키텍처 다이어그램 도구 | AWS 다이어그램 그리기 | Creately

AWS 아키텍처 다이어그램 도구 | AWS 다이어그램 그리기 | Creately

Read More

클라우드 시스템 아키텍처 구성도 작성하기(draw.io)

  • Article author: jjakang2.tistory.com
  • Reviews from users: 28742 ⭐ Ratings
  • Top rated: 3.2 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 클라우드 시스템 아키텍처 구성도 작성하기(draw.io) 해당 링크를 통해 클라우드 시스템 아키텍처를 구성도를 작성해 볼 수 있음. 접속 시 화면, 웹에서 시작 or 다운로드 선택. 다운로드 된 프로그램. …
  • Most searched keywords: Whether you are looking for 클라우드 시스템 아키텍처 구성도 작성하기(draw.io) 해당 링크를 통해 클라우드 시스템 아키텍처를 구성도를 작성해 볼 수 있음. 접속 시 화면, 웹에서 시작 or 다운로드 선택. 다운로드 된 프로그램. Diagram Software and Flowchart Maker Security-first diagramming for teams. Bring your storage to our online tool, or go max privacy with the desktop app. No login or registration required. www.diagr..
  • Table of Contents:

댓글0

최근글

인기글

태그

전체 방문자

티스토리툴바

클라우드 시스템 아키텍처 구성도 작성하기(draw.io)
클라우드 시스템 아키텍처 구성도 작성하기(draw.io)

Read More

소프트웨어 아키텍쳐(Software Architecture) : 네이버 블로그

  • Article author: blog.naver.com
  • Reviews from users: 43877 ⭐ Ratings
  • Top rated: 3.0 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 소프트웨어 아키텍쳐(Software Architecture) : 네이버 블로그 Updating …
  • Most searched keywords: Whether you are looking for 소프트웨어 아키텍쳐(Software Architecture) : 네이버 블로그 Updating
  • Table of Contents:

blog

악성코드가 포함되어 있는 파일입니다

작성자 이외의 방문자에게는 이용이 제한되었습니다

소프트웨어 아키텍쳐(Software Architecture) : 네이버 블로그
소프트웨어 아키텍쳐(Software Architecture) : 네이버 블로그

Read More

AWS 아키텍처 아이콘

  • Article author: aws.amazon.com
  • Reviews from users: 18556 ⭐ Ratings
  • Top rated: 3.3 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about AWS 아키텍처 아이콘 Updating …
  • Most searched keywords: Whether you are looking for AWS 아키텍처 아이콘 Updating AWS 제품 아이콘, 리소스 및 다이어그램을 작성하는 데 도움이 되는 기타 도구가 포함된 공식 AWS 아키텍처 아이콘 모음을 살펴보십시오.
  • Table of Contents:
AWS 아키텍처 아이콘
AWS 아키텍처 아이콘

Read More

솔루션 아키텍트를 위한 팁: 아키텍처 다이어그램의 5가지 유형 | 요즘IT

  • Article author: yozm.wishket.com
  • Reviews from users: 14672 ⭐ Ratings
  • Top rated: 4.7 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 솔루션 아키텍트를 위한 팁: 아키텍처 다이어그램의 5가지 유형 | 요즘IT 즉, 솔루션 아키텍처는 조직 내에서 나타나는 다양한 측면을 통합해서 구체적인 솔루션을 도출하는 시스템이라고 정의할 수 있습니다. …
  • Most searched keywords: Whether you are looking for 솔루션 아키텍트를 위한 팁: 아키텍처 다이어그램의 5가지 유형 | 요즘IT 즉, 솔루션 아키텍처는 조직 내에서 나타나는 다양한 측면을 통합해서 구체적인 솔루션을 도출하는 시스템이라고 정의할 수 있습니다. 여러분은 혹시 누군가가 어떤 소프트웨어의 작동 방식을 설명하는 회의에 참석해 보신 적이 있나요? 저는 비교적 신입인 솔루션 아키텍트들과 이야기를 나눈 적이 있었는데, 그들은 자신들이 새로 만든 시스템에 대해서 설명하려고 애를 썼습니다.
  • Table of Contents:
솔루션 아키텍트를 위한 팁: 아키텍처 다이어그램의 5가지 유형 | 요즘IT
솔루션 아키텍트를 위한 팁: 아키텍처 다이어그램의 5가지 유형 | 요즘IT

Read More


See more articles in the same category here: 533+ tips for you.

아키텍처 구성도 쉽게 그리는 프로그램?

시스템 아키텍처 구성도, 초보자 맞춤 프로그램?

아키텍처란 건축학이라는 의미 외에도 컴퓨터를 기능면에서 본 구성 방식을 의미하기도 합니다. 이는 곧 기억장치의 번지 방식과 입출력 장치의 구성 방식 등을 가리키는데요. 일반적으로 같은 아키텍처의 컴퓨터는 소프트웨어의 호환성을 갖고 있습니다.

그렇다면 프로그래머들이 흔히 사용하는 아키텍처 구성도는 어떤 것을 의미할까요? 아키텍쳐 구성도는 시스템 목적을 달성하기 위해 설계한 시스템의 상호작용 및 시스템 디자인의 제약을 의미합니다. 위키백과에서는 시스템 아키텍처를 다음과 같이 정의하고 있습니다.

시스템 아키텍처는 시스템의 구성 및 동작 원리를 나타냄 시스템 아키텍처는 시스템의 구성 요소에 대해 설계 및 구현을 지원하는 수준으로 자세히 기술 구성 요소 및 시스템 외부 환경과의 관계 묘사 요구 사양과 시스템의 전체 수명 주기를 고려 시스템의 전체적인 최적화가 목표

말로 설명하니 조금 어려운 느낌이 드는데요. 제가 아키텍처 구성도의 예시를 몇가지 가져왔습니다.

조금 감이 오시나요? 그렇다면 지금부터 아키텍처 구성도를 그리는 프로그램을 사용하여 간단한 아키텍처 구성도를 직접 그려보도록 하겠습니다. 저는 WonderShare사의 이드로우 맥스(EdrawMax)라는 프로그램을 사용했습니다.

다운받아 설치한 이드로우맥스를 실행하면 다음과 같은 화면이 나타납니다. ‘신규’-‘클라우드 서비스’-‘AWS’를 더블 클릭하거나 하단의 ‘새로 그리기’ 아이콘을 클릭하면 아키텍처 시스템 구성도를 그릴 수 있는 새로운 캔버스가 열립니다.

이드로우맥스를 사용하면서 느낀 것은 기호 리소스가 매우 풍부하다는 점이었습니다. 화면 우측 상단의 라이브러리 아이콘을 클릭하면 다양한 카테고리의 기호 리소스를 추가하여 사용할 수 있습니다. 일반> 기본 드로잉 모양을 클릭하면 기호 리소스가 추가됩니다. 추가된 기호를 드래그하여 캔버스에 넣고 사용할 수 있습니다.

기본 드로잉 모양 카테고리에서 필요한 모양의 기호를 넣어 그려주고 있는 모습입니다. 화면 우측에 있는 ‘스타일’ 메뉴에서 선의 설정을 변경할 수 있습니다. 실선 및 점선, 선의 두께와 색상 등을 간단히 변경할 수 있습니다.

기호를 복사하고 싶으면 Ctrl 키를 누른 상태로 드래그하면 복사됩니다. 다중 선택(Ctrl+클릭)을 한 다음, 다시 Ctrl키를 누른 상태로 드래그 하여 복사한 모습입니다.

화면 우측의 스타일 메뉴에서 ‘채우기’ 설정도 변경할 수 있습니다. 기본적으로 기호들은 채우기가 된 상태인데, 이곳에서 ‘채우기 없음’을 선택하면 속이 빈 형태로 바뀝니다. 겹쳐 놓은 아이콘이 보이지 않을 때 사용하면 유용합니다.

지금부터는 이드로우맥스에서 제공하는 다양한 아이콘들을 사용해보겠습니다. 아마존, 알리바바, 마이크로소프트, 구글 등 다양한 종류의 아이콘들이 많은데요. 저는 일단 AWS 데이터베이스 카테고리내의 아이콘을 추가해서 Amazon RDS 아이콘을 넣어주었습니다.

이렇게 필요한 아이콘을 다양한 카테고리에서 가져와 활용해 주었습니다. 이후 텍스트를 입력하기 위해서는 아이콘을 더블클릭 해주면 됩니다. 화면 상단의 폰트 설정 메뉴를 이용하여 간단하게 텍스트 스타일을 바꿔줄 수 있습니다.

아이콘 색상이 중구난방이라 통일된 느낌이 없어 아쉬웠다면! 이렇게 화면 하단의 팔레트를 사용하여 색상을 변경해줄 수 있습니다. Ctrl 키를 사용하여 다중선택 후 팔레트로 선택한 대상의 색상을 변경해줍니다 화면 우측의 ‘스타일’-‘선’ 탭에서 ‘라인 없음’을 선택하면 대상의 테두리가 사라져 더욱 깔끔한 느낌을 줍니다.

화면 상단의 ‘텍스트’를 선택한 후 텍스트를 입력할 곳을 클릭하면 텍스트 입력창이 나타납니다. 필요한 텍스트를 입력한 뒤 폰트를 변경하거나 텍스트의 크기를 조절할 수 있습니다.

화면 상단의 ‘선택’을 선택한 뒤 캔버스의 빈 공간에 대고 마우스 우측 버튼을 클릭> ‘전체 셰이프 선택’ 또는 ‘전체 텍스트 선택’을 클릭하면 캔버스에 있는 모든 셰이프나 텍스트를 한 번에 선택할 수 있습니다. 또는 Ctrl+A를 눌러 캔버스에 있는 모든 셰이프와 텍스트를 한 번에 선택할 수도 있습니다. 캔버스 내의 텍스트를 한 번에 변경하고자 할 때 매우 유용한 방법입니다!

완성한 아키텍처 구성도를 보려면 ‘보기’ 탭에서 ‘처음부터’를 클릭하면 전체화면으로 확인할 수 있습니다. 이때, 그리드가 있다면 ‘그리드 선’의 체크 박스를 해제해주세요.

완성한 아키텍처 시스템 구성도입니다. 제가 한 거라고는 마우스 드래그와 텍스트 입력을 조금 했을 뿐인데 아주 그럴듯해 보이죠? 기호 리소스를 최대한 활용하면 약간의 노력으로 이렇게 훌륭한 결과물을 얻을 수 있습니다.

완성된 기호 리소스를 이미지 형식으로 내보내기하여 다양하게 활용할 수 있습니다. 시스템 구성을 정리하고자 하는 프로그래머 분들이라면 이드로우맥스로 그려보세요. 여러분의 시간과 에너지를 크게 절약할 수 있을 것입니다.

관련 글

PPT로 AWS 아키텍쳐 그리기

다니는 회사에서 AWS 아키텍쳐 그리기를 미션으로 받았습니다. 프리티어로 ec2만 돌려본 저에겐 어려운 과제였습니다. 대략적인 구조를 손으로 그리고 툴로 깔끔하게 그리려고 했는데요, 아키텍쳐를 그리는 툴은 많았지만 편리하지 않거나, 아이콘이 마음에 들지 않았습니다.

gliffy diagrams – 다이어그램 작성 툴

그중 gliffy diagrams라는 툴은 크롬 확장 프로그램으로 설치해서 사용할 수 있고, 사용법이 간단해서 많이 추천하는 프로그램인데요, 일반적인 다이어그램을 그릴 때는 괜찮았지만 AWS 아키텍쳐를 그리기에는 아이콘이 부족했습니다.

그러다가 AWS 공식 홈페이지에서 제공하는 모든 AWS 고객 성공 사례라는 페이지를 발견했습니다. AWS를 사용하는 고객사들의 사례와 아키텍쳐 구성도가 있는 페이지였는데요, 확인해보니 비슷한 아이콘으로 아키텍쳐가 그려져 있는 걸 알게 되었습니다.

Autodesk의 AWS 아키텍쳐

AWS에서 공식적으로 제공하는 툴이 있나 싶어서 검색을 해보니, AWS에서 아키텍쳐 아이콘을 배포하고 있었습니다.

PPT 아이콘 배포

도구 키트에서 보면 PPT 파일, Sketch 도구, PNG&SVG 파일을 배포하고 있습니다. 제일 만만해 보이는 PPT 파일을 다운로드 받았습니다.

AWS 아키텍쳐 아이콘 PPT

AWS에서 제공하는 모든 서비스에 대한 아이콘부터, 선들과 그룹 아이콘까지 모두 있었습니다. AWS 아키텍쳐 그리는 가이드도(글로) 제공하고 있었습니다.

AWS 가이드와 아이콘, 고객 사례를 참고해서 여러 가지 버전으로 아키텍쳐를 그려봤습니다. 막상 그리려고 하니 물리적으로 연결된걸 다 표시해야 할지, 적당히 논리적으로 그려야할지 어려웠습니다.

직접 그린 AWS 아키텍쳐

위 아키텍쳐는 그냥 논리적으로만 그려본건데요, 실제와는 너무 달라서 버려진 ver.입니다. 어쨌든 아키텍쳐를 그리는 이유는 내부적으로 사용할 목적이 아니라 외부에 보여주려고 만드는 것이기 때문에, 적당히 물리적+논리적인걸 섞어서 그렸습니다.

적게 일하고 많이 버세요 여러분😂

잘못된 내용이 있다면 언제든지 댓글이나 메일로 알려주시면 감사하겠습니다.

이 포스팅이 도움이 되었다면 공감 부탁드립니다.

궁금한 점은 언제든지 댓글 남겨주시면 답변해드리겠습니다:D

소프트웨어 아키텍쳐(Software Architecture)

이번에는 Software Architecture에 대해서 이야기를 해볼려고 한다.

매번 TDD 관점에서 프로그램 작성하는 이야기나 하던 수준에서 갑자기 고수준(?)으로 뛰어넘어서 이야기를 하는게 아닌가 하는 생각이 들긴한다. 그런면에서 보면 살짝 주제넘은 글짓기가 아닐까 싶기도 해서 좀 그렇긴 하지만…

한번쯤은 개인적으로 생각하는 소프트웨어의 구조란 뭐고, 다수의/일반적인 사람들(물론 개발자들이겠지만)이 이야기하는 아키텍트의 일에 대해 이야기하고 싶었다. 그리고 개인적인 관점에서 구조도를 그려나가는 방식을 좀 정리해서 이야기해볼려고 한다. 언제나 하는 이야기이지만 나만의 떠들음이기 때문에 무시할 부분이 많을 거다.

가볍게 들어줬으면 하는 바램이다.

Architecture 란 뭘까?

제목이 거창했으니 일단 거창한 단어에서부터 시작해보자.

흔히 비교되는 말이긴 하지만 컴퓨터와 프로그램이 맞물려 돌아가는 세상에서도 건물 짓는 것과 마찬가지로 “아키텍쳐(Architecture)”라는 단어를 사용한다. 여러 군데에서 많이 들어서 이미 알고 있겠지만 만들어질 혹은 이미 만들어진 것이 어떻게 된 놈인지를 설명해주는 구조를 말한다. 보통은 자잘하게 상세한 구조를 이야기하는게 아니라 “핵심” 구조를 유식하게 “아키텍쳐”라고 이야기를 한다.

이쪽 동네의 “아키텍쳐”라는 것도 크게 보면 “시스템 아키텍쳐(System Architecture)”와 “소프트웨어 아키텍쳐(Software Architecture)” 라는 것으로 나뉜다. 시스템이나 소프트웨어나 비슷해보이긴 하는데 뭔 차이지?

시스템 아키텍쳐 – 서버, 네트웍크 장비들을 포괄한 인프라의 물리적 형상의 “구조”를 설명한다.

그림1 – 시스템 아키텍쳐 예시 (source from:

그림1 – 시스템 아키텍쳐 예시 (source from: technet.microsoft.com

소프트웨어 아키텍쳐 – 주로 서버를 중심으로 동작되는 소프트웨어들의 논리적 형상에 대한 “구조”를 설명한다.

그림 2 – 소프트웨어 아키텍체 예시 (source from: controlsystem.tistory.com)

둘은 물리적인 구성과 논리적인 구성이라는 IT 서비스 환경의 같지만 서로 다른 두가지 면을 구조도라는 “그림”을 가지고 설명한다. 물론 이 두 구조도는 밀접한 연관성을 가지고 있으며 서비스를 매개로 딱 얽혀진다.

시스템 아키텍쳐? 대강 이런거 아냐?

그런데 우리가 개발하는데 이런게 굳이 필요했던가? 혹은…

우리가 만드는게 거짐 다 웹 기반인데 웹 기반이라야 뻔한지…

웹 서버 있으면 되고, 돈 좀 있으면 WAS랑 DB를 다른 장비 사서 두면 되는거 아닌가?

라고 아마 이야기할지도 모르겠다. 하지만 시스템이라는 관점에서 받아 들여야 하는 사용자의 수와 동시에 처리되길 원하는 요청 건수 등등에 의해 그 규모와 구성이 결정되어야 한다. 시스템 아키텍쳐를 결정짓는 요소 가운데 다음 세가지 항목이 가장 큰 영향을 준다.

확장성 – 얼마나 많은 사용자들 동시간에 받아들일 수 있도록 할 것인가?

퍼포먼스(성능 – Performance) – 한건을 얼마나 빠른 시간안에 처리되도록 만들 것인가?

안정성 – 장비들 가운데 한 장비가 죽었을 때 어떻게 시스템이 중단없이 하던 일(서비스)를 계속 하게 만들것인가?

좀 어렵게 보이는 단어를 사용하긴 했지만 어렵게 보지 말자. 이런식의 보편적인 시스템 요구 사항들에 대해서는 이미 패턴화된 시스템 구조 모델이 있기 때문에 그냥 그걸 참고하면 그림이 뚝딱! 나온다. 대표적으로 직접 그려보면 아래 그림과 같다. (심심하면 한번 쯤 이런 그림을 그려보면서 머리속에 담아두는 것도 좋다. 항상 모든걸 검색할 수는 없으니까…)

거의 대부분의 시스템들은 이 구조를 기본으로 한다. 여기에다가 각 시스템이 갖는 고유한 음색이 반영되면 아마도 특색있을 시스템의 구조가 완성될 것이다. 예를 들어 빠른 속도까지 원한다면 별도 네트웍에 Cache 장비를 둘 수도 있고, 로그 처리를 통해 분석된 결과를 가지고 뭘 해야한다면 백엔드에 하둡 클러스터를 둘 수도 있을 것이다. 추가 장비/시스템의 구성 역시 앞서 언급한 3가지 특성에 맞춘 패턴을 사용하면 그리 어렵지 않게 그려낼 수 있을 것이다.

머 시스템 아키텍쳐 이거말구 더 있나???

일단 시스템 아키텍쳐에 대한 이야기는 여기까지만 하고 이제 소프트웨어 아키텍쳐 이야기로 넘어가볼까?

LAMP or Spring 이거면 다 아닌가?

“웹 개발 세상에서 LAMP(Linux/Apache/MySQL/PHP)면 땡이다”라고 이야기하던 시절도 있었다. 물론 현재는 여기다가 Tomcat/Java라는 또 다른 소프트웨어 계층이 있지만. 하지만 이걸 소프트웨어 아키텍쳐라고 이야기할 수 있을까? 면밀하게 이야기를 하면 LAMP 혹은 Tomcat 등등은 아키텍쳐라기보다는 소프트웨어 스택(Stack)이라고 한다.

그럼 MVC(Model-View-Controller) 모델이 바로 그걸 이야기하는게 아닐까? 대가리 먼저(-_-;;;)류의 책에서 잘 가르쳐주는 Controller 클래스 만들고, BO 클래스 만들고, DAO 클래스 만드는 방식도 이런 부류 가운데 하나를 이야기한다. 책에서는 소위 이런 것들을 웹 아키텍쳐라고 이야기를 하는 것을 보니 맞기는 한 것 같은데???

따지고 보면 뭐 MVC 혹은 Controller, BO, DAO가 소프트웨어 아키텍쳐다. 그런데 이걸 소프트웨어 아키텍쳐라고 이야기하기에는 뭔가 좀 미심적다 .개인적으로 분류하자면 이런 류의 소프트웨어 아키텍쳐는 구조적 관점에서 아키텍쳐를 이야기한다. 그럼 이에 대한 반대 급부도 있을텐데 이걸 논리적(혹은 업무적) 관점의 소프트웨어 아키텍쳐라고 부르자. (여기에서 이야기하는 분류는 순전히 개인적인 관점에서 분류하는 것이지 어디 나와있는 내용이 아니라는 점 잊지 말자.. -_-;;)

논리적 관점의 소프트웨어 아키텍쳐는 전체 시스템의 범주에서 제공되어야 할 기능들을 정의하고 이들간의 상호 협동 모델(Collaboration model)을 정의한다. 이러한 모델은 앞서 보여진 “그림 2″와 같이 시스템이 제공하는 서비스(들)을 만족시키기 위한 기능 블럭들을 박스 형태로 정의한다. 보통은 이걸 컴포넌트(Component)라고 부르는데, 대체적으로 아키텍쳐를 잡아가는 과정에 따라 개념적인 도식에서 보다 실질적인 도식으로 구체화된다. 다른 말로 하면 뜬구름 잡는 이야기를 하다가 감이 잡히면 이게 점점 말이 되는 그림으로 그려진다라고 이해하면 쉬울 듯 ㅎㅎ

구조적 관점의 소프트웨어 아키텍트는 구체화된 논리적 아키텍쳐를 근간으로 이 논리 모델을 구현하기 위해 실제로 필요한 소프트웨어 기능들이 어떤 것들이 있는지를 정의한다. 앞서 이야기한 MVC, Controller/BO/DAO 등은 이런 논리 모델을 실제 구현하기 위해 필요한 물리적인 요소인 것이다. 논리적인 모델에서는 개념과 역할의 명확성이 우선되지만, 구조적 아키텍쳐에서는 시스템적인 효율성이 담보되어야 한다. 따라서 종종 소프트웨어 아키텍쳐는 효율성과 동작의 명확성을 설명하기 위해 H/W에 관련된 도식이 등장하기도 하긴 한다.

Design… Pattern???

그런데 MVC 혹은 Controller, BO 등등의 단어들은 많이 들어본 단어들이긴 한데… 혹시 객체 지향의 설계 방식에서 디자인 패턴을 이야기하듯이 아키텍쳐도 이런 패턴화된 디자인 모델이 존재하나?

이쪽 계통에도 많은 사람들이 비슷한 문제들을 고민했었고, 이런 고민의 흔적들을 공통화해서 패턴이라는 형태로 정리를 해뒀다.

http://en.wikipedia.org/wiki/Architectural_pattern

사실 이 글을 작성하기 전까지 비슷한 것들이 있겠거니 생각만했었는데 아키텍처의 유형들을 패턴이라는 이름으로 정리된 자료는 첨봤다. -_-;;; (역시 사람은 게으르면 안되는 모양이다.) 위 링크에 있는 자료를 살펴보면 대부분은 소프트웨어 아키텍처에 대한 디자인 컨셉을 패턴화했다. 대부분의 패턴들이 서비스를 구현하다보면 한두번씩은 언급되어야 하는 것들이긴 하지만 그 가운데서 다음 패턴들은 관심을 가지고 좀 더 살펴볼만할 것 같다.

ETL – Extract, Transform and Loading

ESB – Enterprise Service Bus

SOA – Service Oriented Architecture

Data Warehouse – Central data repository for reporting and analysis

이외의 아키텍쳐에 대한 유형들도 있겠지만 위 패턴들에 대해서는 읽어봐두면 머리를 식히는데 도움이 될 수 있을 것 같다. 위에서 언급한 링크에서 정리한 아키텍쳐의 유형은 말 그대로 시스템 수준의 패턴들이다. 즉 상당히 규모가 있는(?) 패턴이라고 볼 수 있다. 거기에서 설명한 표 가운데 언급된 Solution Pattern 부분들에 대한 내용이 아래 링크에서 좀 더 잘 열거된 것 같다.

http://en.wikipedia.org/wiki/Software_Architecture_styles_and_patterns

위 링크는 아키텍쳐를 구성하는 일부 Component들을 설계하는데 유용한 자료가 될 것 같다. 역시 공부할 거 천지임에는 분명하다.

아키텍쳐를 잘만들려면?

나 역시 궁금하다…

제대로 된 아키텍쳐는 단순히 하드웨어에 대한 고려만으로도 부족하고, 소프트웨어에 대한 고려만으로도 부족하다. 잘 만들어져 최상의 기량을 발휘하도록 만들어진 아키텍쳐는 그 위에서 널뛰기를 할 기능들에 대한 면밀한 고찰이 투영되어야 한다. 고찰의 결과가 하드웨어적인 측면과 소프트웨어적인 측면이 통합적으로 반영되어야 제대로 높이 나를 수 있는 틀의 역할을 할 수 있다.

따라서 아키텍쳐 수립의 첫번째 할 일은 업무에 대한 이해다. 대체로 기능적인 측면에 대한 지식만으로 접근을 했다가는 모양새가 그럴듯 해보이는 그림을 그려낼 수는 있을지 모른다. 하지만 실제 돌려보면 금새 시스템이 주저앉기 일쑤다. 하드웨어가 후진 것도 혹은 소프트웨어가 후진것도 아니다. 업무의 이해 부족으로 인해 잘못된 관점으로 이곳 저곳에 병목 구간을 만들어냈기 때문인 경우가 비일비재하다. 아키텍쳐를 그려내는 사람이 업무에 대한 전문가인 경우가 흔치는 않다. 그렇다면 업무를 잘 알고 있는 선수와 팀을 짜야한다. 그리고 그 선수가 이야기하는 업무의 맥락을 기술적인 형태로 아키텍쳐에 번역해 넣는 작업을 해야한다. 한 사람이 모든 일들을 다 잘할 수는 없는 노릇이다. 또 절대로 그런 경우는 없고 아키텍쳐를 그러는 사람이 그런 허풍을 쳐서는 곤란하다.

하드웨어적인 측면에서 요새는 성능에 따라 장비를 고를 필요가 없을 만큼 너무 성능이 좋다. 소프트웨어가 후질근해도 워낙 하드웨어가 좋기 때문에 이걸 커버하고도 남는다. 다만 앞서 언급한 것처럼 속도의 문제를 벗어난 다른 문제들에 대해서는 고민을 해야한다. 최근들어 아키텍쳐를 수립할 때 좀 더 많은 고민이 필요한 부분이 바로 네트워크 구성이다. Loading Balancing을 접근하는 방법에서 L4 스위치를 사용할지 L7 스위치를 사용할지와 같은 사소한 문제와 밴드폭(Bandwidth)와 관련된 Cache 서버를 외부 CDN망에 위임할지 혹은 내부 백본망(Backborn network)에 둘지 등등고 고려해야 한다.

소프트웨어 아키텍쳐는… 앞서 언급한 업무에 대한 통찰이 필요하다. 필요한 부분은 기존에 존재하는 아키텍쳐 패턴들을 십분 활용한다. 패턴에는 이미 많은 공력이 이미 녹아져있다. 적합한 패턴을 적절히 활용하면 그만큼 업무 고유의 특성에 집중된 부분에 투여할 시간을 벌 수 있다. 만들어진 시간에 패턴으로 녹여낼 수 없는 업무 고유의 성격에 대한 소프트웨어적인 고찰을 진행한다.

만병 통치약은 없다.

단순히 패턴들의 조합이나 초거대 울트라캡숑 하드웨어로 모든걸 해결할 수는 없다. 그런면에서 스프링과 DB만으로 모든걸 퉁칠려는 경향의 개발자들이 늘어나는 것 같아서 좀 그렇긴 하다.

물론 돌아가는 플랫폼에 가장 적절한 도구들이 이미 충분히 많다. 하지만 이것들은 단순히 도구에 지나지 않다. 못, 망치, 나무가 있다고 집이 뚝딱 지어지는 것은 아니지 않은가? 그렇게 뚝딱 지어진 집은 세찬 바람한번을 제대로 이겨내질 못한다. 제대로 지어진 집이라면 초속 40m짜리 바람에도 굳건하게 그 안에 있는 사람들을 따뜻하게 품어준다. 아키텍쳐는 이런 집을 사람들(개발자들)이 제대로 기둥을 세우고 못질을 할 수 있는 방향을 제시할 수 있어야 한다.

제대로 된 아키텍쳐를 그려내는 것은 책이나 강의를 듣는다고 한번에 되지는 않는다. 물론 아키텍쳐라는 그림을 그려나가는 것 자체가 많은 기술을 필요로 하기 때문에 이런 기술들을 책이나 강의를 통해 미리 쌓아야 한다. 하지만 실제에 다가가기 위해서는 현실을 대면하는 것이 가장 좋은 학습법이랄 수 있다.

추천하는 방법으로 기존에 구축된 여러 시스템들을 보고 배우는 것이다. 왜 그 사람들이 시스템을 그렇게 구성했고 하드웨어와 소프트웨어들은 왜 이렇게 동작하도록 만들었는지를 추론하고 이야기해봐라. 그러면 이전의 아키텍쳐를 그려낸 사람드의 인사이트(Insight)를 어깨 너머로 살펴볼 수 있을 뿐만 아니라 만약 당신이었다면 현재의 그림이 아니라 다른 그림이 좀 더 낫지 않았을까 하는 생각의 나래를 펼쳐볼 수도 있다. 아무것도 없는 도화지에 그림을 그리기보다는 기존 그림에 나만의 다른 색을 입혀보는 관점으로 본다면 좀 더 현실감있는 그림 그리기에 더 가까이 다가갈 수 있지 않을까 싶다.

만병 통치약은 없지만 그래도 기본이 되는 약처방은 있다. 제대로 된 의사라면 기존 약에다가 환자의 특징에 맞는 처방을 섞어서 그 환자에게 잘 받는 약의 조합을 만들어낼 줄 알아야 한다. 하지만 잘 보면 의료보험료 받아낼라구 쓸데없는 약을 처방하는 못된 의사/약사들도 있음을 잊지말자. 아키텍트(Architect)들 중에서도 이런 짓 하는 분들이 꼭 계시다. 몰라서 그러는 사람들도 있긴 하지만 의도적으로 그러는 분들도 간혹 있다. -_-;;

깨져봐야 안다.

이 일만큼 경험이 중요한 일이 없다. 특히 성공한 경험보다는 실패를 통해 이런 짓을 하면 안되는구나… 라는 것에 대한 경험이 특히 중요하다. 그렇다고 굳이 실패할 필요는 없지만 이 분야만큼은 이런 경험들이 자신만의 노하우로 크게 작용한다.

바꿔 말하면 실패를 두려워해서는 곤란하다. 또한 실패를 사전에 차단하기 위해 지속적인 시뮬레이션과 업무 전문가와 실제 개발자들과 지속적인 대화를 해나가야 한다. 만약 실패를 두려워해서 보수적인 그림을 그려낸다면 제대로 업무를 시스템으로 반영해내기 어렵다. 지속적으로 대화하고 실패에 대한 두려움을 잠재우고 앞으로 나아가는것이 중요하다.

고고~~~

– 끝 –

So you have finished reading the 시스템 아키텍처 그리기 topic article, if you find this article useful, please share it. Thank you very much. See more: 시스템 아키텍처 구성도, 시스템 아키텍처 설계, AWS 아키텍처 그리기, 시스템 아키텍처 예제, 시스템 아키텍처 구성도 ppt, 아키텍처 다이어그램, 소프트웨어 아키텍처 구성도, 시스템 아키텍처 정의서

Leave a Comment