맨위로가기

구조도

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

구조도는 시스템의 모듈 구조를 나타내는 다이어그램으로, 하향식 모듈 설계를 위한 도구이다. 컴퓨터 프로그램의 고수준 설계 또는 아키텍처를 지정하는 데 사용되며, 프로그래머가 큰 소프트웨어 문제를 작은 부분으로 분해하는 데 도움을 준다. 구조도는 시스템의 크기와 복잡성을 파악하고, 기능 및 모듈의 수를 식별하며, 실행 스트림 또는 스레드를 구성하는 요소를 시각화하는 데 활용된다. 구조도 작성은 하향식 설계를 따르며, 소프트웨어 개발의 초기 단계에서 청사진 역할을 하고, 이해 관계자 간의 소통 도구로 사용된다.

2. 구조도의 개념

단순 계층 차트 그림.
이 계층 차트는 두 모듈 간에 데이터를 전달하는 것을 나타낸다. Pay_Bill 모듈이 실행되면 의사 코드는 영수증을 검색하여 청구서가 이미 지불되었는지 확인한다(Search_Receipt 실행). 영수증이 없으면 Give_Money_To_Debt_Collector 모듈을 실행하여 작업을 완료한다.


구조도는 컴퓨터 프로그램의 고수준 설계 또는 아키텍처를 지정하는 데 사용되는 하향식 설계 도구이다. 프로그래머는 구조도를 사용하여 건축가가 청사진을 사용하여 집을 짓는 방식과 유사하게 프로그램을 구축한다. 기능적 분해를 통해 큰 소프트웨어 문제를 인간의 두뇌가 이해할 수 있을 정도로 작은 부분으로 재귀적으로 분해하여 설계하며, 클라이언트와 다양한 소프트웨어 설계자가 소통하는 수단 및 프로그램 구현시 "마스터 플랜"으로 참조된다.[5]

2. 1. 구성 요소

구조도는 하향식 모듈 설계 도구로, 시스템의 서로 다른 모듈을 나타내는 사각형과 모듈을 연결하는 선으로 구성된다. 선은 조직도에서 사용되는 활동과 하위 활동 간의 연결 또는 소유권을 나타낸다.[4]

구조도는 실행 스트림 또는 스레드를 구성하는 관련 요소를 다이어그램으로 표시하는 데에도 사용된다. 이는 종종 계층 다이어그램으로 개발되지만 다른 표현도 허용된다. 표현은 구성 시스템을 서브 시스템 및 최저 관리 가능한 수준으로 분해해야 한다. 정확하고 완전한 구조도는 구성 항목(CI) 결정의 핵심이며, 구성 시스템과 CI 간의 내부 인터페이스를 시각적으로 표현한 것이다(CI를 명확하게 정의한다). 구성 제어 프로세스 동안 구조도는 제안된 변경 사항이 영향을 미칠 수 있는 CI 및 관련 아티팩트를 식별하는 데 사용된다.[2]

2. 2. 목적

구조도는 시스템의 크기와 복잡성을 파악하고, 기능 및 모듈의 수를 식별하며, 각 기능의 분해 필요성을 판단하는 데 사용된다.[2]

또한, 실행 스트림 또는 스레드를 구성하는 요소를 다이어그램으로 시각화하는 데 사용되며, 계층 다이어그램 등으로 표현된다. 구조도는 구성 시스템을 서브 시스템 및 최저 관리 수준으로 분해해야 한다.[2]

정확하고 완전한 구조도는 구성 항목(CI) 결정의 핵심이며, 구성 시스템과 CI 간의 내부 인터페이스를 시각적으로 보여준다. 구성 제어 프로세스에서 구조도는 변경의 영향을 받는 CI 및 관련 아티팩트를 식별하는 데 사용된다.[2]

3. 구조도 작성

구조도는 하향식 설계 방식을 따른다. Wolber(2009)는 구조도 작성 단계를 설명했으며, 실제로는 먼저 구조도가 이미 개발되었는지 확인하고, 필요에 따라 수정하는 과정을 거친다.[2]

3. 1. 단계

Wolber(2009)에 따르면 "구조도는 구조를 생성하는 것부터 시작하여 개발할 수 있으며, 이는 구조도를 형성하는 거꾸로 된 트리의 루트를 배치하는 것이다. 다음 단계는 문제를 해결하기 위해 프로그램이 수행해야 하는 주요 하위 작업을 개념화하는 것이다. 다음으로 프로그래머는 각 하위 작업에 개별적으로 초점을 맞추고, 각 하위 작업을 더 작은 작업으로 세분화할 수 있는 방법을 개념화한다. 결국 프로그램은 트리의 잎이 단 몇 개의 프로그램 문으로 코딩할 수 있는 간단한 메서드를 나타내는 지점까지 세분화된다."

실제로 그림을 보면, 먼저 구조도가 이미 개발되었는지 확인한다. 그렇다면 전문가는 현재 구조를 나타내는지 확인하고, 필요에 따라 차트를 업데이트하기 위해 검토해야 한다.[2]

3. 2. 활용


  • - Wolber(2009)는 "구조도는 구조를 생성하는 것부터 시작하여 개발할 수 있으며, 이는 구조도를 형성하는 거꾸로 된 트리의 루트를 배치하는 것이다. 다음 단계는 문제를 해결하기 위해 프로그램이 수행해야 하는 주요 하위 작업을 개념화하는 것이다. 이후 프로그래머는 각 하위 작업에 개별적으로 초점을 맞추고, 각 하위 작업을 더 작은 작업으로 세분화할 수 있는 방법을 개념화한다. 결국 프로그램은 트리의 잎이 단 몇 개의 프로그램 문으로 코딩할 수 있는 간단한 메서드를 나타내는 지점까지 세분화된다."라고 설명한다.


실제 그림을 보면, 먼저 구조도가 이미 개발되었는지 확인한다. 만약 그렇다면 전문가는 현재 구조를 나타내는지 확인하고, 필요에 따라 차트를 업데이트하기 위해 검토해야 한다.[2]

참조

[1] 간행물 Sandia Software Guidelines Volume 5 Tools, Techniques, and Methodologies http://www.prod.sand[...] Sandia National Laboratories 1992
[2] 간행물 Configuration Management https://www.irs.gov/ IRS 2008-11-14
[3] 서적 Structured Techniques: The Basis for Case Prentice Hall 1988
[4] 논문 New Trends in Software Methodologies, Tools and Techniques 2004
[5] 문서 Structure Charts https://web.archive.[...] 2009-11-08
[6] 간행물 Sandia Software Guidelines Volume 5 Tools, Techniques,and Methodologies http://www.prod.sand[...] Sandia National Laboratories 1992
[7] 서적 Management Information Systems 12/E: Managing the Digital Firm P.526 Pearson Education Asia



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com