2022. 5. 27. 16:46ㆍ정처기(필기)/소프트웨어설계
(1) 요구공학
1. 요구공학의 개념
- 요구공학은 사용자의 요구가 반영된 시스템을 개발하기 위하여 사용자 요구사항에 대한 도출, 분석, 명세, 확인 및 검증하는 구조화된 활동이다.
- 이해관계자 사이에 효과적인 의사소통 수단이 목적
2. 요구공학 프로세스
도출 -> 분석 -> 명세 -> 확인 및 검증
★ 요구사항 개발 단계
순서 | 절차 | 내용 |
1 | 요구사항 도출 | 소프트웨어가 해결해야 할 문제를 이해하고 수집된 요구사항을 구체적으로 표현하는 단계 |
2 | 요구사항 분석 | 도출된 요구사항에 대해 완전성과 일관성을 확보하는 단계 |
3 | 요구사항 명세 | 체계적으로 검토, 평가, 승인될 수 있는 문서를 작성하는 단계 |
4 | 요구사항 확인 및 검증 | 요구사항이 고객이 정말 원하는 시스템을 제대로 정의하고 있는지 점검하는 과정 |
요구사항 명세 원리 및 검증 항목
- 명확성, 완전성, 검증 가능성, 일관성, 수정 용이성, 추적 가능성, 개발 후 이용성
3. 요구사항 확인 및 검증 단계의 주요 기법
- 정형 기술 검토 활용법 : 동료 검토, 워크 스루(오류를 조기에 검출하는 데 목적), 인스펙션
- 모델 검증 : 분석단계에서 개발된 모델의 품질 검증 필요
- 테스트 케이스 : 각각의 요구사항에 대한 테스트 케이스 작성
- CASE 도구 할용 검증 : 자동화된 일관성 분석을 제공하는 CASE 도구 활용
- 베이스라인을 통한 검증 : 요구사항 변경 베이스라인을 통해 요구사항에 대한 지속적 검증 수행
- 요구사항 추적표 : 요구사항 정의서를 기준으로 최종 산출물이 반영
(2) 시스템 아키텍처
1. 시스템이란
- 시스템은 하나의 공통적인 목적을 수행하기 위해 조직화된 요소들의 집합체이다.
2. 시스템 구성요소
구성요소 | 설명 |
입력 | 처리 방법, 처리할 데이터, 조건을 시스템에 투입하는 행위 |
출력 | 처리된 결과를 시스템에서 산출하는 행위 |
처리 | 입력된 데이터를 처리 방법과 조건에 따라 처리하는 행위 |
제어 | 자료를 입력하고 출력될 때까지의 처리 과정이 올바르게 진행되는지를 감독하는 행위 |
피드백 | 출력 결과가 목표를 만족시키지 못하는 경우 달성을 위해 반복 개선하는 행위 |
3. 시스템 아키텍처 개념
- 시스템 아키텍처는 시스템의 구조, 행위, 동작 원리를 설명하는 프레임워크다.
★ 시스템 아키테처 설계 원칙
- 대규모 트랜잭션 처리 및 온라인 성능 보장 : 파크타임 용량 확보, 대용량 배치 처리, 부하 분산 최적화 등
- 시스템 아키텍처 확장성 보장 : 다계층 아키텍처 구성, 하드웨어 확장성 등
- 서비스 고가용성 보장 : 장애 예방, 서비스 중단시간 최소화, 비상 시스템 구성
- 운영관리 효율성 : 트랜잭션 관리, 성능 및 장애 관리, 통합 백업 관리
- 시스템 보안 강화 : 정보 보호 전략 수립, 네트워크 보안, 시스템 보안
4. 시스템 아키텍처 물리 설계
- 1-Tier 아키텍처 : AP/DB 서버 1대 이상 구성(물리적 노드 수가 최소 1개로 구성)
- 2-Tier 아키텍처 : AP 서버, DB 서버 2대 이상 구성(물리적 노드 수가 최소 2개 이상 필요)
- 3-Tier 아키텍처 : 프레젠테이션 섭, AP 서버, DB서버 3대 이상으로 구성(대용량 온라인 트랜잭션 처리 업무)
(3) 인터페이스 시스템
1. 인터페이스 시스템 개념
- 인터페이스 시스템은 서로 다른 두 시스템과 장치와 소프트웨어를 서로 이어주는 접속 및 중계 시스템이다.
구성 | 내용 |
송신 시스템 | 연계할 데이터를 DB와 애플리케이션으로부터 연계 테이블 또는 파일 형태로 송신하는 시스템 |
수신 시스템 | 데이터를 데이터 형식에 맞게 변환하여 DB에 저장하거나 활용할 수 있도록 하는 시스템 |
중계 서버 | 송신 시스템과 수신 시스템 사이에서 데이터를 송수신하고 모니터링하는 시스템 |
2. 인터페이스 시스템의 데이터 표준
- 인터페이스 데이터 공통부 : 인터페이스 표준 항목을 포함
- 인터페이스 데이터 개별부 : 송, 수신 시스템에서 업무 처리에 필요한 데이터 포함
- 인터페이스 데이터 종료부 : 전송 데이터의 끝을 표시하는 문자를 포함하여 종료 표시
(4) 내외부 송수신 연계 기술
1. 내외부 송수신 연계 기술
연계 기술 | 설명 |
DB 링크 | 데이터베이스에서 제공하는 DB 링크 객체를 이용하는 기술 |
DB 연결 | 수신 시스템의 WAS에서 송신시스템 DB로 연결하는 풀을 생성하고 그것을 이용하는 기술 |
API | 송신 시스템의 DB에서 데이터를 읽어서 제공하는 프로그램 |
JDBC | 수신 시스템의 프로그램에서 JDBC 드라이버를 이용하여 송신 시스템 DB와 연결하는 기술 |
하이퍼링크 | 웹 애플리케이션에서 하이퍼링크를 이용하는 기술 |
소켓 | 서버는 통신을 위한 소켓을 생성하여 포트를 할당하고 클라이언트와 연결하고 통신하는 기술 |
(5) 인터페이스 설계
1. 인터페이스 정의서 작성
- 인터페이스 정의서는 데이터 송신 시스템과 수신 시스템 간의 데이터 저장소와 속성 등의 상세 내역을 포함한다.
★ 주요 항목
- 인터페이스 ID : 인터페이스를 구분하기 위한 식별자, 명명 표준에 맞게 부여
- 최대 처리 횟수 : 단위 시간당 처리할 수 있는 해당 인터페이스 최대 수행 건수
- 데이터 크기 : 해당 인터페이스 1회 처리 시 소요되는 데이터의 평균 크기와 최대 크기
- 시스템 정보 : 시스템명 등
- 데이터 정보 : 번호, 필드, 식별자 여부 등
(6) 미들웨어 솔루션
1. 미들웨어란
- 미들웨어는 컴퓨터와 컴퓨터 간의 연결을 쉽고 안전하게 할 수 있도록 해주고 이에 대한 관리를 도와주는 소프트웨어다.
- 서로 다른 프로토콜이나 운영체제, DB와 애플리케이션간에 통신을 지원해 주는 소프트웨어를 의미.
2. 미들웨어 솔루션 유형
구분 | 설명 |
DB 미들웨어 | DB 솔루션 업체에서 제공하는 통신을 원활하게 하는 미들웨어 |
원격 프로시저 호출 | 응용 프로그램의 프로시저를 사용하여 원격 프로시저를 로컬 프로시저처럼 호출하는 방식의 미들웨어 |
메시지 지향 미들웨어 | 메시지 기반의 비동기형 메시지 전달 방식 미들웨어 |
트랜잭션 처리 | 온라인 업무에서 트랜잭션을 처리, 감시하는 미들웨어 |
레거시웨어 | 새로 업데이트된 기능을 덧붙이고자 할 때 사용되는 미들웨어 |
객체 기반 미들웨어 | 코바 표준 스펙을 구현한 객체 지향 미들웨어 |
WAS | 다른 이기종 시스템과의 애플리케이션 연동을 지원하는 미들웨어 |
3. EAI와 ESB
[1] EAI 개념
- EAI는 비즈니스 프로세스를 중심으로 기업 내 각종 플랫폼 및 애플리케이션 간의 상호 연동이 가능하도록 통합하는 솔루션이다.
[2] ESB 개념
- ESB는 기업에서 운영되는 서로 다른 플랫폼(이기종) 및 애플리케이션들 간을 연계해서 관리 운영할 수 있도록 서비스 중심의 통합을 지향하는 기술이다.
차이점 : EAI는 기업 내부의 서로 다른 플랫폼의 모듈 간 통합이 목적인 것이고, ESB는 기업 간의 서비스 교환을 위해 표준 API로 통합하는 것임
'정처기(필기) > 소프트웨어설계' 카테고리의 다른 글
애플리케이션 설계 - 모듈, 설계 모델링, 소프트웨어 아키텍처 (0) | 2022.05.26 |
---|---|
화면 설계 - UI (0) | 2022.05.25 |
소프트웨어 설계-5(모델링 기법) (0) | 2022.05.24 |
소프트웨어설계-4(데이터흐름도, 자료사전, UML, 애자일) (0) | 2022.05.24 |
소프트웨어 설계-3(네트워크, DBMS, 비즈니스 융합) (0) | 2022.05.24 |