1. User Interface 설계시 오류 메세지나 경고에 관한 지침으로 가장 거리가 먼 것은?
1. 메세지는 이해하기 쉬워야 한다.
직관성(Intuitiveness): 누구나 쉽게 이해하고, 쉽게 사용할 수 있어야 함.
2. 오류로부터 회복을 위한 구체적인 설명이 제공되어야 한다.
유효성(Effectiveness): 정확하고 완벽하게 사용자의 목표가 달성될 수 있도록 제작해야 함.
3. 오류로 인해 발생 될 수 있는 부정적인 내용을 적극적으로 사용자들에게 알려야 한다.
학습성(Learnablity): 초보와 숙련자 모두가 쉽게 배우고 사용할 수 있게 제작해야 함.
4. 소리나 색의 사용을 줄이고 텍스트로만 전달하도록 한다.
유연성(Flexibility): 사용자의 인터랙션을 최대한 포용하고, 실수를 방지할 수 있도록 제작해야함.
답: 4
2. 다음 중 애자일(Agile)소프트웨어 개발에 대한 설명으로 틀린것은?
1. 공정과 도구보다 개인과 상호작용을 더 가치 있게 여긴다.
2. 동작하는 소프트웨어보다는 포괄적인 문서를 가치 있게 여긴다.
3. 계약 협상보다는 고객과의 협력을 가치있게 여긴다.
4. 계획을 따르기 보다 변화에 대응하기를 가치 있게 여긴다.
<애자일 방법론 특징>
1) 프로젝트 요구사항은 '기능'중심
2) 공정과 도구보다 '개인'과 소통을 중요시
3) '변화'에 유연하고 신속한 대처
4) '고객'과의 피드백을 중요시
답: 2
6. 자료흐름도(DFD)의 각 요소별 표기 형태의 연결이 옳지 않은 것은?
1. Process: 원
2. Data Flow: 화살표
3. Data Store: 삼각형
4. Terminator: 사각형
<해설>
자료 흐름도 4가지 구성요소
- 처리(Process): 원
- 자료 흐름(Data Flow): 화살표
- 자료 저장소(Data Store): 평행선
- 단말(Terminal): 사각형
답: 3
9. 다음 내용이 설명하는 UI설계 도구는?
- 디자인, 사용방법 설명, 평가 등을 위해 실제 화면에 유사하게 만든 정적인 형태의 모형
- 시각적으로만 구성요소를 배치하는 것으로 일반적으로 실제로 구현되지는 않음
1. 스토리보드(Storyboard)
2. 목업(Mockup)
3. 프로토타입(Prototype)
4. 유스케이스(Usecase)
<해설>
- 스토리 보드: 디자이너와 개발자가 최종적으로 참고하는 작업 지침서 상단이나 우측에 제복, 작성자등을 입력하고 좌측에는 UI화면, 우측엔 디스크립션을 기입한다.
- 프로토타입: 와이어 프레임이나 스토리보드 등에 인터랙션을 적용함으로써 실제 구현된 것처럼 테스트가능한 동적인 형태의 모형
- 유스케이스: 사용자 측면에서의 요구사항으로, 사용자가 원하는 목표를 달성하기 위해 수행할 내용을 기술한다.
10. 애자일(Agile)기법 중 스크럼(Scrum)과 관련된 용어에 대한 설명이 틀린 것은?
1. 스크럼 마스터(Scrum Master)는 스크럼 프로세스를 따르고, 팀이 스크럼을 효과적으로 사용할 수 있도로록 보장하는 역할 등을 맡는다.
2. 제품 백로그(Product Backlog)는 스크럼 팀이 해결해야 하는 목록으로 소프트웨어 요구사항, 아키텍처 정의 등이 포함될 수 있다.
3. 스프린트(Sprint)는 하나의 완성된 최종 결과물을 만들기 위한 주기로 3달 이상의 장기간으로 결정된다.
4. 속도(Velocity)는 한 번의 스프린트에서 한 팀이 어느정도의 제품 백로그를 감당할 수 있는지에 대한 추정치로 볼 수 있다.
<해설>
스프린트(Sprint)
- 실제 개발을 2~4주간 진행하는 과정
- 스프린트 백로그에 작성된 task를 대상으로 작업 시간을 측정한 후 담당 개발자에게 할당한다.
- Task는 할 일, 진행중, 완료의 상태로 구성된다.
스크럼(Scrum)
- 복잡한 제품을 개발(배포)하고, 유지하기 위한 프레임워크
스프린트 백로그(Sprint Backlog)
- 각각의 스프린트 목표에 도달하기 위해 필요한 작업 목록
칸반 보드(Kanban Board)
- 작업을 시각적으로 업무 상태, 흐름을 보여주는 게시판
스프린트 리뷰(Sprint Review)
- 스프린트 마지막날 개발자가 개발한 내용을 Stakeholder, 고객, 제품 책임자에게 시연하고 검토
답: 3
13. 클래스 설계 원칙에 대한 바른 설명은?
1. 단일 책임원칙: 하나의 클래스만 변경 가능해야한다.
2. 개방-폐쇄의 원칙: 클래스는 확장에 대해 열려 있어야 하며, 변경에 대해 닫혀 있어야 한다.
3. 리스코프 교체의 원칙: 여러개의 책임을 가진 클래스는 하나의 책임을 가진 클래스로 대체되어야 한다.
4. 의존관계 역전의 원칙: 클라이언트는 자신이 사용하는 메소드와 의존관계를 갖지 않도록 해야 한다.
<해설>
- 단일 책임원칙: 하나의 객체는 하나의 동작만의 책임을 가짐
- 리스코프 교체의 원칙: 특정 메소드가 상위 타입을 인자로 사용할 때, 그 타입의 하위 타입도 문제없이 작성해야함.
- 의존관계 역전의 원칙: 상위 계층이 하위 계층에 의존하는 전통적인 의존관계를 반전(역전)시킴으로써 사우이 계층이 하위 계층의 구현으- 로부터 독립되게 할 수 있음.
14. GoF(Gangs of Four)디자인 패턴에서 생성(Creational)패턴에 해당하는 것은?
1. 컴퍼지트(Composite)
2. 어댑터(Adapter)
3. 추상 팩토리(Abstract Factory)
4. 옵서버(Observer)