Lisence/정보처리기사

정보처리기사 실기 취약부분 8

code2772 2022. 10. 6. 23:37
728x90
반응형

정보처리기사 실기 4강 통합구현 - 복습

 

- 소프트웨어 아키텍처 : 소프트웨어를 구성하는 요소들 간의 관계 표현하는 사스템 구조 또는 구조체

- 단계적 분해(Stepwise Refinment) : 상위 중요 개념에서 하위 개념으로 구체화하는 분할기법

- 다형성(Polymorphism) : 하나의 메시지에 대해 가각 객체가 가지는 고유 방법으로 응답

 

- 연관성(Relationship) ; 두 개 이상의 객체를 상호 참조 관계

1. is member of(연관화) : 두 개 이상 객체가 상호 관련되어 있음

2. is instance of(분류화 - classification) : 동일 형태 특성을 갖는 객체들을 모아 구성

3. is part of(집단화 - Aggregation) : 관련 있는 객체들을 묶어 하나의 상위 객체 구성

4. is a

@ 일반화 : 공통적인 성질들을 추상화한 상위 객체

@ 특수화/상세화 : 상위 객체를 구체화하여 하위 객체를 구성

 

SOLID 풀 네임

1. Single Responsibility 2. Open Closed(확장에 대해서는 개방적 수정에는 패쇄적)

3. Liscop Substitution(모든 클래스가 들어갈 자리에 자식 클래스를 대체하여도 작동)

4. Interface Segregation 5. Dependency Inversion(변화가 어렵고 변화 빈도가 낮은 것에 의존해야한다.)

 

- N-S차트 :논리의 기술에 중점을 두고 도형을 이용해서 표현, 박스다이어그램, Chain Chart가 있다. 조건이 복합되어 있는 곳의 처리를 시각적으로 명확히 식별 적합

 

- IPC(Inter-Process Connumication) : 모듈 간 통신 방식을 구현하기 위해 사용되는 대표적인 프로그래밍 인터페이스

- IDE (통합개발환경/ Integrated Development Environment) : 개발에 필요한 환경에 다양한 툴을 하나의 인터페이스로 통합하여 제공환경

- IDEA : 편집기, 컴파일러, 디버거 등의 다양한 툴을 하나의 인터페이스로 통합,제공하는 IDE도구로 JetBrains에서 만들었고 멀티플랫폼 기반, java, jsp, xml, go, kotlin등 언어지워한다.

 

- 배치 스케줄러 : 일괄 처리 작업이 설정된 주기에 맞춰 자동으로 수행되도록 지원하는 도구

 

- 범용성 : 소프트웨어 개발 런러 선정간 언어가 다른 개발 사례가 존재하고, 이미 사용하고 있는지를 판단

 

- 인터페이스 명세 시 포함되어야 하는 조건은 1. 선행 조건 2. 결과 조건 3. 불변 조건

 

- 메멘토(Memento) : Ctrl + Z 같은 살행 취소 및 되돌리기 기능 개발 시 사용, 객체 내부 상태 객체화하여 객체를 해당 시점의 상태로 되돌릴 수 있다.

 

- Gradle :안드로이드 스튜디오 공식 빌드도구, 의존성으로 라이브러리 관리, 동적 객체지향 프로그래밍 언어 Groovy를 빌드 스크립트로 사용

 

 

정보처리기사 실기 5강 인터페이스 구현 - 복습

 

- 인터페이스 구현 : 송수신 시스템간 데이터 교환 및 처리를 실현해주는 작업

 

- 데이터를 이용한 인터페이스 구현

구현 영역에서 대이터 전송하면 수신 측에서 파싱(완전한 문장인지)하여 해석한다. json이나 XML형식

@ JSON 이용

1. 송신 측 인터페이스 객체를 생성할 데이터를 각 시스템 환경에 맞게 선택

2. JSON이용하여 인터페이스 객체 생성

3. 객체를 AJAX기술 등 이용하여 수신측 보냄

4. 수신 측에서 객체 수신하여 파싱 후 처리

5. 수신 측에서 송신 측으로 결과 보냄

 

- 인터페이스 엔터티를 아용한 앤터티 구현

안토페이스가 필요한 시스템 사이에 별도의 인터페이스 엔터티를 두어 상호 연계

 

- AJAX : 클라이언트와 서버 간 XML 데이터 주고 받는 비동기 통신, 일부 웹 영역만 처리 가능

- JSON : 데이터 객체를 속성 값의 쌍 형태로 표현한 개방형, 비동기 처리에 사용하는 AJAX에서 XML대체

 

- IPSec : 네트워크 계층에서 IP 패킷 단위의 데이터 변조 방지/은닉 기능을 제공

- SSL : TCP/IP 계층과 애플리케이션 계층 사이의 인증, 암호화, 무결성 보장

- S-HTTP : 클라이언트, 서버 간 전송되는 모든 메시지를 암호화

 

- APM(Application Performance MAnagement/Monitoring) : 애플리케이션 성능 관리를 위해 다양한 모니터링 기능을 제공하는 도구

 

 

 

정보처리기사 실기 6, 7강 화면 설계, 애플리케이션 테스트 관리 - 복습

 

- 정황 시나리오 : 사용자의 요구사항 도출하기 위해 작성, 목표 달성하기 위해 수행하는 방법을 순차적으로, 요구사항 정의 초시 시나리오이며 사용자가 주로 사용하는 기능 위주로 작성, 함께 발생되는 기능들을 하나의 시나리오로 통합

 

- 사이트 맵 : 화면의 정보를 하눈에 파악 -> 시각적 콘탠츠 모형, 위에서 아래로 이동하며 정보를 찾는 계층 형

 

- HCI(Human Computer Interaction or Interface) : 사람이 시스템을 보다 편리하고 안전하게 사용할 수 있도록 연구하는 학문

- UX : 사용자가 시스템이나 서비스를 이용하면서 느끼고 생각하게 되는 총체적인 경험

1. 주관성(Subjectivity) :사람e의 개인적 특성에 따라 주관적

2. 정황성(Contextuallity) : 경험이 일어나는 환경 또는 주변 환경에 영향을 받음

3. 총체성(Holistic) : 개인이 느끼는 총체적인 심리적, 감성적인 결과

 

- Validation(확인) : 사용자의 입장에서 요구사항에 맞게 구현됬는지 확인

- Verification(검증) : 개발자의 입장에서 소프트웨어 명세서에 의해 만들었는지 점검

 

- 테스트 하네스 : 애플리케이션의 컴포넌트 및 모듈을 테스트 하는 환경, 생성된 데이터와 코드 의미, 실행될 환경을 시뮬레이션 하여 컴포넌트 및 모듈이 정상적으로 테스트되도록 한다.

 

개발 단계에 따른 애플리케이션 테스트

- 단위 테스트(Unit) : 모듈이나 컴포넌트에 초점을 맞춰 테스트, 사용자 요구사항 최우선 수행, 구조 기반 테스트

- 통합 테스트(Integration) : 단위 테스트가 완료 된 모듈을 결합하여 하나의 시스템 완성시키는 과정, 통합된 모듈, 컴포넌트 간 상호작용하여 오류 검출

- 사스템 테스트 : 개발된 소프트웨어가 해당 컴퓨터 시스템에 완벽하게 수행되는가를 점검하는 테스트, 기능/비기능적 요구사항으로 구분하여 만족하는지 테스트

- 인수 테스트(Acceptance) : 개발한 소프트웨어가 사용자의 요구사항을 충족하는지에 중점을 두고 테스트, 사용자가 직접 테스트한다.

 

- 통합 테스트(Integration) : 단위 테스트가 끝난 모듈을 통합하는 과정에서 오류 찾음

 

- 하향식 통합 테스트(Top Down) : 상위 모듈에서 하위로 통합, 깊이, 넓이 우선 통합법 사용

@절차)

1. 주요 제어 모듈은 작성된 프로그램 사용 , 종속 모듈은 스텁(단순 수행 도구, 시험용 모듈)으로 대체

2. 깊이 OR 넓이 우선 통합 방식에 따라 하위 모듈인 스텁들이 한번에 하나씩 실제 모듈로 교체

3. 모듈 통합 시 테스트 실시

4. 새로운 오류가 발생하지 않는지 회귀 테스트 실시

 

- 상향식 통합 테스트(Bottom up) : 하위 모듈에서 상위 모듈 방향으로 통합

@절차)

1. 하위 모듈을 클러스터(종속 모듈 집합)로 결합

2. 상위 모듈에서 데이터 입출력을 확인하기 위해 더미 모듈의 드라이버(하위 모듈 호출, 피라미터 전달, 결과 도출도구)를 작성

3. 통합된 클러스터 단위로 테스트

4. 테스트 완료 시 클러스터는 프로그램의 구조의 상위로 이동하여 결합하고 드라이버는 실제 모듈로 대체

반응형