본문 바로가기

반응형

학교 수업/소프트웨어 공학

(21)
8장 연습문제! - 소프트웨어 공학! 1. 사용자 인터페이스에 대한 바른 인식이 아닌 것은? ① 최근 소프트웨어에서 사용용이성은 최우선 품질 속성이다. ② UI는 소프트웨어 제품의 차별화 요소가 되었다. ③ UI 디자인은 소프트웨어의 정적 측면과 관련이 깊다. ④ 사용자도 소프트웨어 작동 방식에 대한 멘탈 모델을 갖는다. 2. 다음 중 사용자 인터페이스 설계와 연관된 분야들로 짝지워진 것은? ㉠ 인간 컴퓨터 상호 작용(HCI) ㉡ 인터랙션 디자인 ㉢ 사용자 경험(UX) ㉣ 인간 공학 ① ㉠, ㉡, ㉢ ② ㉠, ㉢ ③ ㉠, ㉡, ㉢, ㉣ ④ ㉢, ㉣ 3. 다음 중 사용자 인터페이스 디자인 프로세스가 아닌 것은? ① 사용자, 작업 및 환경 분석 및 모델링 ② 사용자 인터페이스 디자인 ③ 지식이 많고 빈번한 사용자 설문 ④ 인터페이스 검증 4. ..
12장 주관식 문제 풀이 품질을 높이려는 활동(리뷰, 테스트, 품질 관리, 품질 보증, 결함 방지)을 성숙도에 따라 일반적으로 도입하는 순서대로 나열하고 설명하라. 테스트 -> 리뷰 -> 품질보증 -> 품질관리 -> 결함방지 테스트는 10장에서 다룬 것 처럼 코드를 실행하기 전에 수행할 수 있는 리뷰, 인스펙션, 워크스루와 코드를 실행하면서 할 수 있는 테스트인 화이트박스 테스트와 블랙박스 테스트가 존재한다. 그 자세한 단계는 단위 테스트 -> 통합 테스트 -> 시스템 테스트 -> 인수 테스트가 있다. - 단위 테스트 : 모듈 테스트! -> 화이트박스 테스트에 해당함. -> 커버리지를 정함 -> 테스트 - 통합 테스트 : 모듈 사이 인터페이스 테스트를 하는 것이다. - 시스템 테스트 1. 기능 테스트 2. 성능 테스트 3. 보안..
12장 내용정리를 해볼까.. - 소프트웨어 공학 12장 내용은 품질에 대한 것이다. 책에서 도입 부분에서는 품질은 잘 보이지 않는 개념이라고 말하고 있다. 더 나아가서 제품의 기능을 파악하고 구현하는 것은 그 자체로 눈에 보이기 때문에 바로 생각해 낼 수 있는데, 이와 반면에 "품질"이란 것은 눈에 바로 보이지 않아서, 품질 목표를 설정하고 관리하는 일이 어렵다고 한다.. 책에서는 이런 품질 목표를 설정하고, 관리하는 일을 프로젝트 요구 단계부터 정확히 이해하고 정의해야 한다고 설명을 하고 있다. 왜 그런지는 책을 읽어보아야 겠다. 소프트웨어의 품질을 결정하는 요소가 여러가지 있다고 한다. -> 사람마다 제품의 품질 결정이 다르기 때문 아닐까? 모니터를 사더라도, 누구는 화면이 그냥 크기만 하면 좋은 품질이라고 생각하는 반면, 화질까지 신경쓰는 사람이..
11장 주관식 답! - 소프트웨어 공학 유지보수 작업은 개발 작업과 어떻게 다른지 Rayleigh 커브를 그래프로 그려 비교하라. 또한 유지보수의 네 가지 작업 단계는 무엇인가? 1. 현재 프로그램에 대해 이해를 해야한다. 2. 변경 파악과 분석을 해야한다. 3. 변경 영향을 파악한다. 4. 변경 구현, 테스트, 설치를 진행한다. 소프트웨어 수정 이유에 따른 유지보수 유형을 통계 순서로 나열하고 비교 분석하라. 완정형 유지보수 : 성능이나 유지보수성을 개선하기 위해 실시하는 유형이다. 적응형 유지보수 : 시스템을 이식할 때 사용하는 유형이다. 수정형 유지보수 : 결함을 고치기 위하 행하는 유형이다. 예방형 유지보수 : 미래의 일어날 결함을 미리 수정하는 유형이다. 대규모 소프트웨어 개발 팀에서 사용하는 변경 요청 및 관리 과정을 액티비티 다이..
10장 주관식 문제 답! - 소프트웨어 공학 테스트 작업의 바른 목적은 무엇이며 작업 과정은 무엇인가? 테스트를 통해 시스템이 정해진 요구사항을 만족하는지? 예상과 실제 결과가 어떤 차이를 보이는지 검사하고 평가하는 것을 의미한다. 작업 과정은 다음과 같다. 1. 어떤 것을 점검할지 정한다. 2. 테스트 방법을 결정한다. 3. 테스트 케이스를 개발한다. 4. 테스트의 예상 결과를 작성한다. -> 검증 기준 : 테스트 오라클 5. 테스트 케이스로 실행시킨다. -> 테스트를 위해 소프트웨어 변형 : 테스트 하니스 테스트 단계 1. 단위 테스트 2. 통합 테스트 3. 시스템 테스트 4. 인수 테스트 5. 리그레션 테스트 : 유지보수 단계에서 이뤄지는 테스트 ( 변경에 대한 테스트 ) 블랙박스 및 화이트박스 테스트의 차이점은 무엇이며 장단점을 비교 분석하..
9장 주관식 답! - 소프트웨어 공학 코딩 단계의 작업 끝나면 통합 테스트를 위하여 모듈이 릴리스 된다. 이때까지 작업의 로드맵을 그림으로 작성하고 설명하라. 1. 코드 표준을 정한다. 2. 프레임워크 패키지와 응용 패키지를 결정하고, 요구사항과 설계 명세서를 이용해서 메서드를 구현시킨다. 3. 클래스 구현이 끝나면 인스펙션을 한다. 4. 클래스 단위로 단위테스트를 한다. 헝가리안 표현법이란 무잇이며 그 사례를 들어 설명하라. 변수의 목적 또는 변수 타입의 힌트를 준다. 그 사례는 다음과 같다. long lAccountNum 모두 소문자이며, 명사로 정한다. - com.sun.eng : GOOD? - com.Apple.Quicktime.v2 : 대문자가 들어가면 안된다. - edu.cmu.cs.bovik.cheese : GOOD? (2) 클..
8장 주관식 답! - 소프트웨어 공학 최근 컴퓨터 분야에서 사용자 인터페이스 또는 인간 컴퓨터 상호작용이 왜 중요하게 되었는지 그 배경을 설명하라. 일반인들에게 UI는 곧 응용프로그램이므로, 사용하기 어려우면 소프트웨어를 사용하지 않는다. 또한 UI 소프트웨어의 차별화 요소이기도 하다. 따라서 이런 배경 때문에 UI와 HCI가 중요해졌다. 특히 HCI 인간이 컴퓨터를 보다 쉽게 사용할 수 있게 연구하는 학문이기 때문에 중요하다. 사용자 인터페이스 설계에서 메타포란 무엇이며 설계에서 어떤 역할을 하는지 설명하라. 메타포란 사용자의 개념적 인식모델을 말하며, 메타포를 이용해 설계를 하면 사용자가 프로그램의 작동을 예측하고 조작할 수 있다,. 사용성 테스트 작업 과정을 설명하고 사용성 테스트 계획에 포함되어야 할 내용은 무엇인가? 1. 테스트 목..
7장 연습문제! - 소프트웨어 공학! 소프트웨어 아키텍처란 무엇이며, 왜 소프트웨어 개발 전 단계에서 중요한가? 소프트웨어 아키텍처란 구성 요소와 구성요소 간의 통신에 관해 정의 한 것을 말한다. 여기서 구성요소란 클래스, 프로세스, 프로그램 등을 말하고 구성요소 간 통신은 연결 유형 및 상호작용에 관한 것을 의미한다. 소프트웨어 개발 전 단계에서 중요한 이유는 설계, 구현, 통합, 테스팅까지 뼈대와 같은 역할을 하기 때문이다. 즉 모든 단계에 영향을 주기 때문에 중요하다. 아키텍처를 UML로 표현하는 방법을 설명하고 패키지로 분할하는 원칙은 무엇인가? 아키텍처를 UML로 표현하는 방법은 패키지 다이어그램을 이용해서 표현 할 수 있다. 패키지로 정의하면 복잡한 서브시스템을 나누어 적절히 컨트롤 할 수 있다. 원칙은 다음과 같다. 같은 유스케..

반응형