분석 절차 순서: 객 -> 동 -> 기 로 암기
#swift/정보처리기사
소프트웨어 구성요소 -> 그래픽 표기법
모델링 기법 중 하나로 그래픽으로 이를 표현한 분석 기법 입니다.
같은 말로 “객체 모델링 기법”, “OMT” 그리고 “Object Modeling Technique” 라고도 칭합니다.
분석은 3 단계로 이뤄집니다.
객체 모델링 -> 동적 모델링 -> 기능 모델링
설명을 잘해두신 것이 있어서 원본 링크와 함께 전달드리겠습니다.
정보 모델링이라고도 하며, 시스템에서 요구되는 객체를 찾아내어 속성과 연산 식별 및 객체들 간의 관계를 규정하여 클래스 다이어그램으로 표현한 것.
https://raisonde.tistory.com/entry/럼바우의-분석-기법-모델링 [지식잡식]
1. 객체와 클래스를 식별한다.(식별한다가 구분한다로 생각됩니다.)
2. 클래스에 대한 자료를 사전에 작성합니다. (어떤 클래스를 구현할 것이고 어떻게 할 지 정한다.)
3. 클래스 간의 관계를 정의한다. (어떤 클래스게 어떤 역할을 해줄 것이다.)
4. 객체의 속성과 연결 관계를 정의한다. (상위개념인지 하위개념인지 서로 영향을 받는지 등등)
5. 클래스 계층화 및 모듈로 정의한다. (구조적으로 설계하는 것을 의미하는 듯.. 합니다.)
6. 생성된 모형을 반복적으로 검증한다. (TEST)
상태 다이어그램(상태도)를 통해 시간의 흐름에 따라 객체들을 모델링 합니다.
객체들 관계가 여러가지가 있습니다. “제어흐름”, “상호 작용”, “동적 순서” 등 그러한 동적인 행위들을 표현한 모델링입니다. (말을 풀어보자면, 객체들이 이동하고 전달되는 과정을 그림으로 그런 것 입니다.)
동적 모델링의 순서
1. 사건의 상호작용 순서로 시나리오를 작성한다.
2. 시나리오의 역할과 시간을 표기하고 "사건 추적도"를 작성한다. (사건추적도가 무엇인지 잘 모르겠네요.)
3. 사건 추적도를 사건 발생자의 관계를 설명하는 "사건 흐름도"를 작성한다.
4. 사건과 상태를 연결시긴 상태도를 작성한다.
자료 흐름도(Data Flow Diagram) 을 이용하여 프로세스 간 자료를 중심으로 모델링입니다.
“어떤 데이터를 입력 -> 어떤 결과가 나올 것인가” 에 대해 표현합니다.
기능 모델링의 순서
1. 외부와 시스템 간의 입출력 자료를 정의한다. (Input과 Output을 정의, 마치 메소드 짜듯)
2. 자료흐름도 (DFD)를 상세화한다.
3. 프로세스 기능에 대한 정의를 "기능 명세서"로 작성한다.(이건 이 기능을 하고 이건 이기능하고..)
4. 제약 조건을 파악한다. (로그인이 안되어 있을 경우,,, 데이터가 부족할경우... 메모리가 부족할 경우.. 코드가 비효율적일 경우....)
5. 최적화 기준 명세화를 합니다. (최적화 == 이 기준 이러한 평가점검표를 만드는 느낌일까요..)
자료 흐름, 처리과정을 도형으로 작성한 다이아그램입니다.
자료 흐름 그래프 버블 차트 라고 칭합니다.
자료가 처리될 때마다(연산 혹은 저장.등등) 새로운 이름을 부여합니다.
자료흐름도의 최하위 처리(Process)는 소단위 명세서를 갖습니다. (아마 RowData를 뜻하는 것 같네요. 그런 것들에게는 명칭이 있어야 함을 말하는 것 같습니다.)
어떤 처리(process)를 하기 위해서 입력 데이터가 있을 떄만 결과 데이터가 있습니다.(어찌보면 당연한말)
배경도(content diagram) 에는 명칭과 번호를 부혀여하지 않습니다.
자료흐름도 기호입니다.
(출처 : 럼바우 분석 기법(Rumbaugh) / 자료흐름도, 자료 사전)
자료흐름도 예시입니다.
(출처: 럼바우 분석 기법(Rumbaugh) / 자료흐름도, 자료 사전)
자료흐름도의 자료를 설명하는 사전입니다.
자료흐름도의 자료를 설명한다는 것이 무언가 “좀더 추상화된” 혹은 “상위개념” 느낌이 있지 않나요? 원래 메타인지라는 말이 인지의 위에서 인지하는 것을 바라보는 걸 뜻하는 용어처럼 여기서도
메타 데이터 라고 칭합니다.
데이터를 설명하는 데이터이죠.
기호
=
: ~로 구성되다; is composed of
+
: and; 자료를 연결
{ }
: 반복; iteration of
[ | ]
: OR; choose only one of
( )
: 생략; optional
* *
: 주석; comment
참고자료
비전공자 개발자 취업 빌드피플 : 네이버 블로그
럼바우 분석 기법(Rumbaugh) / 자료흐름도, 자료 사전
https://raisonde.tistory.com/entry/럼바우의-분석-기법-모델링 [지식잡식][아네모네의 세상읽기 : 네이버 블로그](https://blog.naver.com/mgetmput/221593909596)