2020 정보처리기사 필기/1과목 - 소프트웨어 설계
[2020 정보처리기사 필기 요약] 1과목 - 소프트웨어 설계(애플리케이션 설계, 인터페이스 설계)
- 3 - 애플리케이션 설계 21. 디자인패턴 1) 디자인 패턴의 개요 각 모듈의 세분화된 역할이나 모듈들 간의 인터페이스와 같은 코드를 작성하는 수준의 세부적인 구현 방안을 설계할때 참조할 수 있는 전형적인 해결방식 또는 예제이다. 재사용할 수 있는 기본형 코드 개발과정 중 문제가 발생하면 문제에 해당하는 디자인 패턴을 참고 * 아키텍쳐 패턴과 디자인 패턴의 차이! 아키텍처 패턴은 디자인 패턴보다 상위 수준의 설계에 사용됨 아키텍쳐 패턴이 전체 시스템의 구조를 설계하기 위한 참조 모델이라면, 디자인 패턴은 서브시스템에 속하는 컴포넌트들과 그 관계를 설계하기 위한 참조 모델임 2) 생성 패턴 객채의 생성과 참조 과정을 캡슐화하여 객체가 생성되거나 변경되어도 프로그램 구조에 영향을 받지 않도록 유연성을 더..
[2020 정보처리기사 필기 요약] 1과목 - 소프트웨어 설계 요약(애플리케이션 설계)
- 3 - 애플리케이션 설계 16. 소프트웨어 아키텍처 1) 소프트웨어 아키텍처의 설계 소프트웨어의 골격이 되는 기본 구조이자, 소프트웨어를 구성하는 요소들 간의 관계를 표현하는 시스템의 구조 또는 구조체이다. 소프트웨어 개발 시 적용되는 원칙과 지침으로, 이해관계자들의 의사소통 도구다. 기본적으로 좋은 품질을 유지하면서 사용자의 비기능적 요구사항(품질이나 제약사항)으로 나타난 제약을 반영하고, 기능적 요구사항(요구항목)을 구현하는 방법을 찾는 해결 과정이다. 애플리케이션의 분할 방법과 분할된 모듈에 할당될 기능, 모듈 간의 인터페이스 등을 결정한다. * 소프트웨어 프로그램의 기둥, 근간이라고 생각하시면 됩니다. 건물을 지으려고 하는데 명확한 건축 설계 원칙이 있어야지 건축가들이 헷갈리지 않겠죠? 2) ..
[2020 정보처리기사 필기 요약] 1과목 - 소프트웨어 설계 요약(화면설계_2)
- 2 - 화면 설계 12. 품질 요구사항 1) 품질 요구사항 소프트웨어의 품질은 소프트웨어의 기능, 성능, 만족도 등 소프트웨어에 대한 요구사항이 얼마나 충족하는 가를 나타내는 소프트웨어 특성의 총체임. - ISO/IEC 9126 소프트웨어 품질 특성과 평가를 위한 표준 지침 - 기능성, 신뢰성, 사용성, 효율성, 유지보수성, 이식성 2) 기능성 소프트웨어가 사용자의 요구사항을 정확하게 만족하는 기능을 제공하는 여부 - 정합성, 정확성, 상호운용성, 보안성, 호환성 3) 신뢰성 소프트웨어가 요구된 기능을 정확하고 일관되게 오류 없이 수행할 수 있는 정도 - 성숙성, 고장허용성, 회복성 4) 사용성 사용자와 컴퓨터 사이에 발생하는 어떠한 행위에 대하여 사용자가 정확하게 이해하고 사용하며, 향후 다시 사용..
[2020 정보처리기사 필기 요약] 1과목 - 소프트웨어 설계 요약(화면설계)
- 2 - 화면 설계 8. 사용자 인터페이스(UI) * 장애인, 비장애인 관계 없이 누구나 동등하게 인터페이스를 가지고 동일한 결과를 얻을 수 있으며, 조작 방법이 간단하도록 설계하는 것을 생각하면 됩니다! 1) 사용자 인터페이스의 개요 사용자와 시스템 간의 상호작용이 원활하게 이루어지도록 도와주는 장치나 소프트웨어를 의미 사용자 인터페이스의 세가지 분야 정보 제공과 전달을 위한 물리적 제어에 관한 분야 콘텐츠의 상세적인 표현과 전체적인 구성에 관한 분야 모든 사용자가 편리하고 간편하게 사용하도록 하는 기능에 관한 분야 * 인터페이스는 사용자가 정보를 물리적으로 조종하고, 그 기능을 간편하게 사용할 수 있어야 합니다. 2) 사용자 인터페이스의 특징 사용자의 만족도에 가장 큰 영향을 미치는 요소. 가장 많..
[2020 정보처리기사 필기 요약] 1과목 - 소프트웨어 설계 요약(요구사항확인_2)
- 1 - 요구사항 확인 5. 요구사항 분석 기법 1) 요구사항 분석 기법 개발 대상에 대한 사용자의 요구사항 중 명확하지 않거나 모호한 부분을 걸러내기 위한 방법 - 요구사항 분류 + 개념 모델링 + 요구사항 할당 + 요구사항 협상 + 정형 분석 2) 요구사항 분류 요구사항을 보다 쉽게 이해할 수 있도록 현실 세계의 상황을 단순화하여 개념적으로 표현한 것을 모델이라고하며, 이러한 모델을 만드는 과정을 모델링이라 함. 개념 모델은 문제의 주체인 개체(Entity)들과 그들 간의 관계 및 종속성을 반영. 이해관계자별로 관점이 다르기 때문에 개념 모델도 다양화되어야 함. 유스케이스 다이어그램, 데이터 흐름 모델, 상태 모델, 목표기반 모델, 사용자 인터랙션, 객체 모델, 데이터 모델 등. 주로 UML을 통해..
[2020 정보처리기사 필기 요약] 1과목 - 소프트웨어 설계 요약(요구사항 확인)
- 1 - 요구사항 확인 1. 소프트웨어 생명 주기 소프트웨어 생명 주기는 소프트웨어 개발 방법론의 바탕으로 운용, 유지보수 등의 과정을 단계별로 나눈 것 소프트웨어 개발단계와 각 단계별 주요 활동을 산출물로 표현 소프트웨어 수명 주기를 표현하는 형태를 소프트웨어 생명 주기 모형이라고 하고, 프로세스 모형 또는 공학 패러다임이라고 한다. 종류 : 폭포수 모형, 프로토타입 모형, 나선형 모형, 애자일 모형. 1) 폭포수 모형 폭포에서 한번 떨어진 물은 거슬러 올라 갈 수 없음 각 단계를 확실히 매듭 지음 각 단계를 철저하게 검토 가장 오래되고 가장 폭넓게 사용된 전통적 모형 -> 고전적 생명 주기 모형 선형 순차적 모형 제품의 메뉴얼 작성 두 개 이상의 과정 병행 수행 할 수 없음 순서 타당성 검토 -> ..