zooooss

[정보처리기사] 요약 _ 1과목 소프트웨어설계 본문

CERTIFICATION/Industrial Engineer Information Processi

[정보처리기사] 요약 _ 1과목 소프트웨어설계

zooooss 2023. 7. 4. 19:30

01. 요구사항 확인

(1-1 : 현행 시스템 분석)

1-1-1 플랫폼 기능 분석

 ☁️ 플랫폼의 개념 : 애플리케이션 구동을 위해 필요한 소프트웨어 환경

 ☁️ 유형

  싱글 사이드 플랫폼 : 소비자-공급자 연결 (ex. 아이튠즈/안드로이드 마켓)

  투 사이드 플랫폼 : 두 그룹을 중개하고 모두에게 개방 (ex. 소개팅 앱)

  멀티 사이드 플랫폼 : 다양한 이해관계 그룹을 연결하여 중개 (ex. 페이스북/인스타그램)

 ☁️ 기능

  개발.운영 비용 감소

  생산성 향상

  네트워크 효과 유발

 ☁️ 절차

  ➊ 현행 플랫폼 자료 수집

  ➋ 수집 자료 분석

  ➌ 결과 산출물 작성

1-1-2 플랫폼 성능 특성 분석

 ☁️ 현행 플랫폼 성능 특성 분석 기법

  *사용자 인터뷰 : 속도의 적정성 확인 인터뷰 결과서 산출

  *성능 테스트 : 성능, 부하 테스트 수행 ➳ 성능 테스트, 부하 테스트 결과서

  *산출물 점검 : 유사한 타사 제품의 성능 자료 등 분석 벤치마킹 테스트 결과서

 ☁️ 플랫폼 성능 특성 측정 항목

  경과시간, 사용률, 응답시간, 가용성

1-1-3 운영체제 분석

 ☁️ 운영체제 개념 : 하드웨어 및 소프트웨어 자원을 효율적으로 관리하며 공통된 기능을 제공하는 소프트웨어

 ☁️ 운영체제 현행 시스템 분석

  품질 측면 고려 ➳ 성능고려 : 대량 파일 작업(배치 작업 : 묶어서 일괄 처리)

  지원 측면 고려

 ☁️ 운영체제 종류 및 특징

  컴퓨터 - 윈도즈.유닉스.리눅스

  모바일 - 안드로이드.ios

1-1-4 네트워크 분석

 ☁️ 네트워크 개념 : 컴퓨터 장치들이 노드 간 연결을 사용해 서로에게 데이터를 교환하는 기술

 ☁️ 네트워크 현행 시스템 분석

  백본망, 라우터, 스위치, 게이트웨이, 방화벽 등을 대상으로 분석

1-1-5 DBMS 분석

 ☁️ DBMS의 기능

  중복제어, 접근 통제, 인터페이스 제공, 관계 표현, 샤딩/파티셔닝, 무결성 제약조건, 백업 및 회복

 ☁️ DBMS 현행 시스템 분석

  성능 측면 ➳ 가용성, 성능, 상호 호환성(JDBC, ODBC)

  지원 측면 ➳ 기술 지원, 구축비용

1-1-6 비즈니스 융합 분석

 ☁️ 비즈니스 융합의 개념 : 산업 또는 시장 간 경계를 허물어 정보통신 기술을 적용해 새로운 비즈니스 모델로의 범위를 확대

 ☁️ 비즈니스 융합 유형

  고객 가치(Why), 시장 유통(Whom), 가치 제안(What), 공급 역량(Who), 생산 방식(How)

  생산 방식(How)의 사례로는 스마트 팩토리, 옴니채널

 ☁️ 절차

  ➊ 기업전략 분석

  ➋ 영역 및 방향 설정

  ➌ 포트폴리오 선정

  ➍ 융합모델 설계/평가

  ➎ 비즈니스 융합 실행/개선

(1-2 : 요구사항 확인)

1-2-1 요구분석 기법

 ☁️ 특징 : 구체적인 명세를 위해 소단위 명세서가 활용될 수 있다.

 ☁️ 요구사항 분석 단계 절차

  ➊ 요구사항 분류 ➳ 요구사항 유형 확인 ➳ 기능 요구사항(기능적 속성에 대한)/비기능 요구사항(성능, 보안, 품질 등에 대한)

  ➋ 개념 모델링 생성 및 분석

  ➌ 요구사항 할당

  ➍ 요구사항 협상

  ➎ 정형 분석

 ☁️ 요구사항 분석 기술

  청취 기술, 인터뷰와 질문 기술, 분석 기술, 중재 기술, 관찰 기술, 작성 기술, 조직 기술, 모델 작성 기술

 ☁️ 요구사항 분석에 사용하는 모델링 기법

  ➊ 데이터 흐름도(DFD)

   개념 : 데이터가 각 프로세스를 따라 흐르면서 변환되는 모습을 나타낸 그림

   특징 : 구조적 분석 기법에 이용됨, 시간 흐름 명확히 표현 불가, 제어의 흐름은 중요치 않음

   구성요소

    -처리기 Process(원으로 표기)

    -데이터 흐름 Data Flow(화살표로 표기)

    -데이터 저장소 Data Store(=로 표기)

    -단말 Terminator(사각형으로 표기)

  ➋ 자료 사전(DD)

   기호

    = : ~으로 구성되어 있다

    + : 자료의 연결을 나타냄

    () : 자료 생략 가능함을 나타냄

    {} : 자료의 반복을 나타냄

    [] : 자료의 선택을 나타냄

    ** : 자료의 설명을 나타내는 기호, 주석

 ☁️ 요구사항 분석이 어려운 이유

  지식이나 표현의 차이가 커서 상호 이해가 쉽지 않음

  개발 과정 중에 요구사항이 변할 수 있음

  사용자의 요구사항이 모호하고 불명확

1-2-2 UML(Unified Modeling Language)

 ☁️ 개념 : 명세화, 시각화, 문서화할 때 사용되는 모델링 기술을 통합하여 만든 모델링 언어

 ☁️ 특징 : 가시화 언어/구축 언어/명세화 언어/문서화 언어

 ☁️ UML 구성요소

  사물, 관계, 다이어그램으로 구성됨

 ☁️ UML 다이어그램

  사물과 관계를 모아 그림으로 표현한 형태

  구조적(정적) 다이어그램과 행위적(동적) 다이어그램으로 구분

  구조적(정적) 다이어그램은 클래스/객체/컴포넌트/배치/복합체 구조/패키지

  행위적(동적) 다이어그램은 유스케이스/시퀀스/커뮤니케이션/상태/활동/타이밍

 ☁️ UML 상세

  ➊ 클래스 다이어그램 : 클래스와 클래스, 즉 클래스 속성 사이의 관계를 표현

    클래스 이름, 속성, 연산, 접근 제어자로 구성

  ➋ 유스케이스 다이어그램

    유스케이스, 액터, 시스템으로 구성

    연관 관계/포함 관계/확장 관계/일반화 관계

  ➌ 시퀀스 다이어그램(순차 다이어그램)

    객

 ☁️ UML의 관계

  

 ☁️ UML 확장 모델의 *스테레오 타입

  

1-2-3 *애자일(Agile)

 ☁️ 애자일 방법론의 개념

 ☁️ 등장 배경

 ☁️ 특징

 ☁️ 선언문

 ☁️ 애자일 방법론 유형

 ☁️ 애자일과 전통적 방법론 비교

(1-3 : 분석 모델 확인)

1-3-1 모델링 기법

 ☁️ 모델 개념

 ☁️ 모델 특징

 ☁️ 모델링 개념

 ☁️ 모델링 특징

1-3-2 분석 자동화 도구

 ☁️ 개념

 ☁️ 특징

 ☁️ 분석 자동화 도구의 분류

 ☁️ 주요 기능(CASE 도구)

1-3-3 요구사항 관리 도구

 ☁️ 개념

 ☁️ 필요성

 

02. 화면 설계

(2-1 : UI 요구사항 확인)

2-1-1 UI 개요

 ☁️ UI 개념

 ☁️ 유형

 ☁️ 특징

 ☁️ 설계 원칙

 ☁️ 설계 지침

 ☁️ UI 시스템의 필요 기능

2-1-2 UI 표준

 ☁️ 개념

 ☁️ 구성

 ☁️ 화면 구성요소

 ☁️ 패턴 모델

2-1-3 UI 지침

 ☁️ 개념

2-1-4 스토리보드

 ☁️ 스토리보드 개념

 ☁️ UI 화면 설계 구분

(2-2 : UI 설계)

2-2-1 UI 설계 프로세스 및 UI 흐름 설계

 

2-2-2 감성 공학

 

2-2-3 UI 설계 도구

 

03. 애플리케이션 설계

(3-1 : 공통 모듈 설계)

3-1-1 재사용

 

3-1-2 공통 모듈

 

3-1-3 설계 모델링

 

3-1-4 소프트웨어 아키텍처

 

(3-2 : 객체 지향 설계)

3-2-1 객체 지향

 

3-2-2 디자인 패턴

 

04. 인터페이스 설계

(4-1 : 인터페이스 요구사항 확인)

4-1-1 내.외부 인터페이스 요구사항

 

4-1-2 요구공학

 

(4-2 : 인터페이스 대상 식별)

4-2-1 시스템 아키텍처

 

4-2-2 인터페이스 시스템

 

(4-3 : 인터페이스 상세 설계)

4-3-1 내.외부 송.수신

 

4-3-2 데이터 명세화

 

4-3-3 미들웨어 솔루션