어플리케이션 - 공통모듈설계
UML에서 활용되는 다이어그램
정적모델(시스템구조)
- 클래스다이어그램
- 오브젝트다이어그램
- 컴포넌트다이어그램
- 배치다이어그램
동적모델(시스템행위)
- 유즈케이스다이어그램
- 시퀀스다이어그램
- 통신다이어그램
- 상태다이어그램
- 액티비티다이어그램
시퀀스다이어그램
기능 수행을 위해 시스템 내의 객체들이 다른 객체들과 어떻게 교류하는지 보여주는 다이어그램
- 객체간의 동적 상호작용을 시간 개념을 중심으로 모델링하는 것
- 다이어그램의 수직 방향이 시간의 흐름을 나타냄
- 객체사이의 기능, 순서, 시간의 흐름을 명확하게 표현
- 객체들 사이의이동 경로를 시간 흐름으로 보려면 시퀀스다이어그램이 적합
- 데이터(메세지)의 흐름을 보려면 통신다이어그램이 적합
객체
- 시퀀스 다이어그램의 맨 위에 위치하며 왼쪽에서 오른쪽으로 배열
객체의 생명선
활성화부분
- 생명선을 따라 드무드문 나타나는 사각형
- 객체가 수행하는 오퍼레이션이 실행되고 있음을 나타냄
- 활성화 길이는 오퍼레이션의 실행 소요시간을 나타냄
메세지
- 화살표로 표현하며 화살표의 머리모양은 메세지의 형태를 나타냄
- 호출메세지 - 송신 객체가 수신 객체로보내는 메세지
- 답신메세지 - 호출 메세지와 화살표 머리모양이 같으면 점선 형태
- 비동기메세지 - 송신 객체가 보내며 수신 객체와 오퍼레이션을 실행시키거나 오퍼레이션이 완료될떄까지 송신객체가 기다리지 않음
공통모듈설계
- 개발할 응용소프트웨어의 전반적인 기능과 구조를 이해하기 쉬운 크기로 공통모듈을 설계
- 모듈간의 결합도는 줄이고 응집도는 높여야함
- 기능수행을 위해 시스템내 객체들이 다른 객체와 어떻게 교류하는지 시퀀스 다이어그램을 통해 확인
공통모듈 설계
- 공통 모듈에 대한 설계를 진행한다.
- 공통배치 프로그램을 설계한다.
- 공통모듈에 대한 응집도와 결합도를 분석하여 분리/병합한다.
공통 모듈 인덱스 및 기능 코드 설계
코드(CODE)
- 데이터를 사용 목적에 따라 그룹으로 분류 및 나열하고 특정 자료의 선별 및 추출작업을 용이하게 하기 위해 부여한 숫자, 문자, 기호 체계이다.
- 식별, 분류, 배열, 기타의 기능이 있다.
코드의 사용목적
- 함축성, 고유성, 편리성, 확장성, 표의성, 독립성, 용이성
순차코드
- 코드화 대상 항목을 자료의 발생 순서, 크기 순서 등과 같이 일정한 기준에 따라 일련번호를 부여하는 간단한 코드 분류방법
블록코드
- 몇 개의 블록으로 나누어 각 블록 내에서 순서대로 번호를 부여하는 방식
10진 분류코드
- 코드화 대상 항목들을 10진법에 따라 분류한 것으로 다시 10진법으로 중분류하여 필요에 따라 계속 10진법으로 소분류하는 방법
그룹 분류코드
- 블록코드를 세분화한 것으로 코드화 대상 항목을 대,중,소분류 등으로 구분하여 각 그룹내에서 순서대로 번호를 부여하는 방법
연상코드
- 코드 값을 보면 어떤 대상을 의미하는지 연상할 수 있도록 대상의 의미가 코드에 그대로 부여하여 작성한 코드
표의숫자코드
- 코드화 대상 항목에 관련한 중량, 면적, 용량, 거리, 부피, 성능 등의 구체적인 수치를 직접 코드에 적용하는 방법
합성코드
기타코드의 기능
- 표준화기능 - 코드 대상이 되는 데이터를 표준화하는 기능
- 간소화기능 - 데이터를 코드화함으로써 짧고 간결하고 명료화하는 것
- 연상기능 - 코드의 대상을 연상할 수 있는 기능
- 암호화기능 - 코드 대상이 무엇인지 알지 못하게 하는 기능
- 오류검출기능 - 코드 자체에서 오류를 찾게 하는 기능
공통모듈 인덱스
- 일정한 순서에 따라 별도로 정리하여 놓은 목록
- 공통모듈을 유일하게 식별할 수 있는 번호 체계를 부여함으로써 공통 모듈에 대한 그룹화 식별 및 정보 추출을 용이하게 하는 기법
소프트웨어 아키텍처
- 개발하고자 하는 소프트웨어의 사전 작업을 통하여 소프트웨어 개발을 쉽게 하도록 기본 틀을 만드는 것
- 소프트웨어 시스템을 누구나 잘 이해하기 위함
- 시스템의 일부를 독립적으로 작업하기 위함
- 시스템의 확장을 준비하기 위함
- 재사용과 재사용가능성을 용이하게 하기 위함
댓글 영역