본문 바로가기
기본 지식

현행 시스템 분석

by HJINHA 2021. 6. 29.

1. 현행 시스템 파악

- 사용하는 소프트웨어/하드웨어/네트워크 구성이 어떻게 되어 있는지 파악하는 활동

- 절차

 : 구성/기능/인터페이스 파악 -> 아키텍처/소프트웨어 구성 파악 -> 하드웨어/네트워크 구성 파악

 

2. 소프트웨어 아키텍처

- 소프트웨어 구성요소, 구성요소의 특성, 구성요소 간 관계를 표현하는 시스템 구조

- 소프트웨어 아키텍처 프레임워크: 아키텍처 기술 표준

- 소프트웨어 아키텍처 4+1: 요구사항을 정리한 시나리오를 4개의 관점에서 바라보는 졉근 방법.

                                       1-유스케이스 뷰, 4-논리(기능), 프로세스(비기능), 구현(모듈), 배포 뷰

- 소프트웨어 아키텍처 패턴: 소프트웨어 설계 시 참조할 수 있는 일반화된 솔루션

1) 계층화 패턴: 마주보는 두 개의 계층 사이에서만 상호작용

2) 클라이언트-서버 패턴: 서버/클라이언트

3) 파이프-필터 패턴: 서브시스템이 입력데이터 받아 처리하고, 결과를 다음 서브시스템으로 전달

4) 브로커 패턴: 클라이언트가 브로커에 서비스를 요청하면 적합한 서비스로 리다이렉션

5) MVC 패턴: 모델//컨트롤러

 

3. 디자인 패턴

- 소프트웨어 설계에서 공통으로 발생하는 문제에 대해 자주 쓰이는 설계 방법을 정리한 패턴

- 유형

1) 목적: 생성 / 구조 / 행위

2) 범위: 클래스 / 객체

- 종류

1) 생성 패턴

- Builder: 복잡한 인스턴스를 조립. 생성과 표기를 분리

- Prototype: 원형을 만들어 놓고 복제

- Factory Meethod: 상위클래스에서 인터페이스 정의, 하위클래스에서 인스턴스 생성

- Abstract Factory: 동일한 주제의 팩토리를 묶음. API 제공

- Singleton: 객체를 하나만 생성해 어디서든 참조. 한 클래스에 한 객체만 존재

2) 구조 패턴

- Bridge: 구현부에서 추상 계층을 분리

- Decorator: 기존 구현된 클래스에 필요한 기능 추가

- Facade: 단순하고 통합된 인터페이스 제공

- Flyweight: 클래스의 경량화. 가상 인스턴스

- Proxy: 접근제어. 정보 은닉

- Composite: 복합 객체와 단일 객체를 동일하게 취급

- Adapter: 인터페이스가 호환되지 않는 클래스들을 함께 이용할 수 있도록 맞춰줌

3) 행위 패턴

- Mediator: 중재자를 두어 통신의 빈도수를 줄임

- Interpreter: 구문의 해석을 맡는 클래스

- Iterator: 내부구조를 노출하지 않고 순차적 접근

- Template Method: 서브 클래스로 작업의 일부분을 수행

- Observer: 객체 상태 변화에 따라 다른 객체 상태도 연동

- State: 객체의 상태에 따라 행위 내용을 변경

- Visitor: 데이터 구조로부터 처리 기능 분리. 구조 변경 없이 기능 확장

- Command: 기능을 캡슐화

- Strategy: 행위를 클래스로 캡슐화해 동적으로 행위를 자유롭게 변환

- Memento: 객체의 정보 저장. Undo

- Chain of responsibility: 한 요청을 2개 이상의 객체에서 처리

 

4. 개발 기술 환경 현행 시스템 분석

1) 운영체제 현행 시스템 분석

- 운영체제: 시스템이 제공하는 하드웨어/소프트웨어를 사용할 수 있게 하고, 컴퓨터 사용자와 하드웨어 간의 인터페이스를 담당하는 프로그램

- 종류: Windows, UNIX, Linux, Android, iOS

2) 네트워크 현행 시스템 분석

- 네트워크: 컴퓨터 장치들의 데이터 링크를 사용해 데이터를 교환할 수 있도록 하는 기술

3) DBMS 현행 시스템 분석

- DBMS: 데이터베이스라는 데이터의 집합의 생성, 저장, 관리 기능을 제공하는 응용 프로그램

- 기능: 중복제어, 접근통제, 인터페이스 제공, 관계 표현 등

4) 미들웨어 현행 시스템 분석

- 미들웨어: 분산 컴퓨팅 환경에서 응용 프로그램과 프로그램이 운영되는 환경 간에 원만한 통신이 이루어질 수 있도록 제어하는 소프트웨어. ex) WAS

 

 

'기본 지식' 카테고리의 다른 글

논리 데이터 저장소  (0) 2021.07.01
화면 설계  (0) 2021.07.01
요구사항  (0) 2021.07.01
소프트웨어 개발방법론  (0) 2021.06.29
예외처리 (Exception Handling)  (0) 2021.03.23

댓글