[자격증] 정보처리기사 필기시험 1과목

km-ji·2024년 8월 2일

자격증

목록 보기
4/14

소프트웨어 생명 주기

폭포수(고전적, 선형), 프로토타입(불분명한 요구사항), 나선형(계획→분석→개발→평가), 애자일

스크럼

PO, SM, 개발팀

계획, 스프린트, 일일 스크럼, 검토, 회고

XP

소규모 프로젝트에 적합, 애자일 개발 방법론

핵심가치 : 의사소통, 단순성, 용기, 존중, 피드백

리팩토링 - 소프트웨어를 쉽게 이해할 수 있고, 적은 비용으로 수정할 수 있도록 겉으로 보이는 동작의 변화 없이 내부 구조 변경

현행 시스템 파악

개발 기술 환경 파악

요구사항 정의

도출→분석→명세→확인

비기능적 - 기능적

요구사항 분석

도구 : UML, DFD 자료 흐름도, DD 자료 사전, 소단위 명세서, 개체 관계도 ERD, 상태 전이도 STD, 제어 명세서

  • 구조적 분석 기법
  • 자료 흐름도 : 프로세스, 자료흐름, 자료 저장소, 단말
  • 자료 사전

CASE와 HIPO

case : 자동화 / SADT, SREM, PSL/PSA, TAGS

HIPO : 하향식 솦트 개발, 가시적 도표 / 총체적 도표 / 세부적 도표

UML

의사소통 할 수 있게 해주는 언어

사물 → 구조, 행동, 그룹, 주해 사물

관계 → 연관, 집합, 포함, 일반화, 의존(dependency : 오퍼레이션 매개변수, 단기간임), 실체화(realization : 오퍼레이션 지정)

다이어그램

  • 구조적(정젹) → 클래스, 객체, 컴포넌트, 배치, 패키지 다이어그램
  • 행위(동적) → 유스케이스(사례), 순차(메시지), 상태(이벤트에 의한 객체들의 변화), 활동(처리 과정의 흐름)

UML 확장 모델에서 스테레오 객체 타입 표현할 때 쓰는 기호 : << >>

주요 UML 다이어그램

유스케이스(외요소와 외부 스템 간의 관계/사용자의 관점에서) 다이어그램

→ 연관, 일반화, 포함, “특정한 조건이 만족될 때”는 확장 extend 관계!

클래스 다이어그램 → 클래스(속성, 오퍼레이션), 제약조건, 관계

접근 제어자 - public(+), protected(#), package(~), private(-)

순차 다이어그램 → 메시지 주고 받는 것(액터, 객체, 생명선, 실행박스, 메시지, 회귀 메시지, 제어 블록)

사용자 인터페이스

구분 : CLI(텍스트), NUI(말이나 행동)

기본 원칙 : 직관성, 유효성, 학습성, 유연성

설계 지침 : 사용자 중심, 사용성, 일관성, 단순성, 결과 예 측 가능, 가시성, 심미성, 표준화, 접근성, 명확성, 오류 발생 해결

UI 설계 도구

와이어프레임, 목업, 스토리보드, 프로토타입, 유스케이스

품질 요구사항

ISO/IEC 9126 → 개발자 관점에서 본 솦트 품질의 특성

: 기능성, 신뢰성, 사용성, 효율성, 유지 보수성, 이식성

25010

: + 호환성, 보안성

UI 상세설계

체크박스, 라디오 버튼, 텍스트 박스, 콤보 상자, 목록 상자

소프트웨어 아키텍처

상위 설계(아키텍처,예비 설계 / 인터페이스, 구조, DB) - 하위 설계(모듈설계, 상세 설계 / 자료구조, 알고리즘, 컴포넌트)

기본 원리

  • 모듈화 : 크기가 작으면, 개수가 많아져, 통합 비용 많이 든다
  • 추상화 : 유형 - 제과자(제어, 과정, 자료)
  • 단계적 분해 : 하향식 설계 전략
  • 정보은닉 : 알약같은거. 필요한 정보만 줌. 독립적이다. 수정, 시험, 유지보수 용이

설계 과정

  • 목표 설정 → 타입 결정 → 아키텍처 패턴 적용 → 서브 시스템 구체화 → 검토

시스템 타입

  • 대화형, 이벤트 중심, 변환형, 객체 영속성 시스템

협약 설계 : 선행 조건, 결과 조건, 불변 조건

** 아키텍처 설계에서 시스템 품질 속성 x?

→ 성능, 변경, 사, 기, 가, 확, 보

(성능 좋은 폰으로 변경해서 사기가 확보했다)

아키텍처 패턴

레이어 패턴

클라이언트-서버 패턴

파이프-필터 패턴

모델-뷰-컨트롤러 패턴

(보관)(표시)(변경)

마스터-슬레이브 패턴

객체지향

객체, 클래스, 캡슐화, 상속, 다형성, 연관성

클래스에 속한 각각의 객체를 인스턴스.

데이터와 데이터를 처리하는 함수를 묶은 모듈 : 객체

객체지향 분석 및 설계

  • 럼바우 분석기법 → 객동기(OMT) → 객상자 객객동상기자
  • 객체지향 설계 원칙 단말책임원칙 개방폐쇄 원칙 리스코프 치환 원칙 인터페이스 분리 원칙 의존 역전 원칙

모듈

독립성 높, 결합력 낮, 응집도 높, 크기 작

결합도 : 약할수록 품질 높다, 유지보수 구현 쉽다 / 내공외제스자

응집도

팬인 팬아웃

공통모듈

코드

코드 주요 기능 : 식별, 분류, 배열, 표준화, 간소화

디자인 패턴

생성패턴

  • 추상 팩토리, 빌더, 팩토리 메소드, 프로토타입, 싱글톤

구조패턴

  • 어댑터, 브리지, 컴포지트, 데코레이터, 퍼싸드, 플라이웨이트, 프록시

행위패턴

  • 책임연쇄, 커맨드, 인터프리터, 반복자, 중재자, 메멘토, 옵서버, 상태, 전략, 템플릿 메소드, 방문자

시스템 인터페이스 요구사항 분석

인터페이스 요구사항 검증

요구사항 검증 방법 - 동료검토, 워크스루, 인스펙션

인터페이스 방법 명세화

미들웨어 솔루션 명세

미들웨어 = 미들 + 소프트웨어

클라이언트와 서버 간의 통신을 담당

  • DB : 원격의 데이터베이스와 연결
  • RPC(Remote Procedure Call) : 원격 procedure을 로컬 procedure 처럼 호출하는 방식
  • MOM(Message Oriented Middleware) : 비동기형 메시지 전달
  • TP-Monitor(Transaction Processing Monitor) : 온라인 트랜잭션 업무에서 처리/감시
    • 사용자가 증가해도 빠른 응답속도를 유지해야 함
  • ORB(Object Request Broker) : 객체지향. 트랜잭션 처리 + 모니터링
  • WAS(Web Application Server) : 동적인 콘텐츠를 처리하기 위함
profile
I'm mz. Do you want to try mzing?

0개의 댓글