728x90
반응형

정보시스템 감리 기출문제해설/소프트웨어공학 해설 51

(제 25회) 소프트웨어 공학 / (48)~(50) 해설

48. IFPUG의 기능점수는 개발 기능점수(DFP), 개선 기능점수(EFP), 어플리케이션 기능점수(AFP)로 구분된다. 다음과 같은 조건이 주어졌을 때, 개선기능점수(EFP)를 구하는 식으로 가장 적절한 것은?  ADD = 개선 프로젝트에 의해 추가된 기능의 미조정 기능점수값CHGA = 개선 프로젝트에 의해 수정된 기능의 미조정 기능점수값CFP = 데이터 변환에 의해 포함된 기능점수값VAFA = 개선 프로젝트 종료 후의 어플리케이션 값 조정인자DEL = 개선 프로젝트에 의해 삭제된 기능의 미조정 기능점수값VAFB = 개선 프로젝트 이전의 어플리케이션 값 조정인자.① EFP = [(ADD+CHGA+CFP+DEL)×VAFA]② EFP = [(ADD+CHGA+CFP-DEL)×VAFA]③ EFP = [(AD..

(제 25회) 소프트웨어 공학 / (46)~(47) 해설

46. 다음 설명에 해당하는 객체지향 설계 원칙으로 가장 적절한 것은? 추상 클래스와 인터페이스는 구체적인 클래스보다 덜 변하기 때문에 외부에서 해당 클래스를 참조하기 위해서는 가능한 추상 클래스에 의존한다. ① ISP(Interface Segration Principle)② DIP(Dependency Inversion Principle)③ OCP(Open/Close Principle)④ LSP(Liskov Substitution Principle) ■ SOLID 원칙 두문약어설명SSRP단일 책임의 원리(Single Responsibility Principle)모든 클래스는 각각 하나의 책임만 가져야 한다OOCP개방-폐쇄 원칙(Open Closed Principle)확장에는 열려있고 수정에는 닫혀있는 기..

(제 25회) 소프트웨어 공학 / (44)~(45) 해설

44. 다음의 상황에서 사용할 수 있는 요구사항 추출 방법으로 가장 적절한 것은?   가. 고객이 자신의 요구사항에 대하여 구체적으로 파악하고 있지 못한 상태임나. 최종 시스템의 예상 기능 중 일부를 빠르게 구현하여 고객의 피드백을 조기에 받고자함다. 발굴된 아이디어를 시험하고 검증하여 새로운 아이디어를 얻고자함 ① 관찰(Observation)② 인터뷰(Interview)③ 브레인스토밍(Brainstorming)④ 프로토타이핑(Prototyping) ■ 해설 기법설명인터뷰(Interview)이해관계자와 직접 대화를 통해 정보를 구하는 공식적 또는 비공식적 정보 수집 방법포커스 그룹(Focus Group)제안된 제품, 서비스에 대한 기대사항과 의견 교환 위해 선별된 전문가 집단 대회식 토론으로 수집하는 방..

(제 25회) 소프트웨어 공학 / (42)~(43) 해설

42. 다음은 특정 함수의 논리 흐름 그래프이다. 이 함수의 사이클로매틱 복잡도로 가장 적절한 것은?   ① 3 ② 4③ 5 ④ 6 ■ McCabe 의 회전복잡도(Cyclomatic Complexity)McCabe 는 프로그램의 이해 난이도는 주로 그 프로그램에 대한 제어 흐름 그래프의 복잡도에 의해서 결정된다는 사실을 관찰[MCC 76]접속 그래프 G의 사이클로메틱 수는 그래프 내에 있는 일차 독립 경로의 수이며, V(G) = E - N +2 ☞ E = 연결선의 수, n = 노드의 수 ● 문제설명 : 폐쇄영역수 + 1 = 3 + 1 =4 정답 : ②  43. TMMi(Test Maturity Model Integration)는 소프트웨어 테스트 프로세스 등급 척도 모델로 소프트웨어 테스트 조직이 갖추..

(제 25회) 소프트웨어 공학 / (40)~(41) 해설

40. 다음 중 코드 스멜과 이를 해결하기 위한 리팩토링 방법을 가장 적절하게 연결한 것만으로 짝지은 것은?  코드 스멜리팩토링(가) 다른 클래스를 지나치게 애용 (Feature Envey)(a) 여러 클래스에 흩어진 유사한 기능을 한 곳으로 모은다.(나) 여러 클래스를 동시에 수정 (Shotgun Surgery)(b) 메소드를 그들이 애용하는 데이터가 있는 클래스로 옮긴다.(다) 유사 데이터의 중복 (Data Clumps)(c) 다형성으로 바꾼다. (같은 메소드를 가진 여러 개의 클래스를 구현한다.)(라) 너무 많은 Switch, if 문장(d) 해당 데이터들을 독립된 클래스로 정의 한다. ① (가) - (a), (다) - (c)② (가) - (b), (다) - (d)③ (나) - (a), (라) - ..

(제 25회) 소프트웨어 공학 / (38)~(39) 해설

38. 다음 중 소프트웨어 유지관리 용이성을 향상시키는 개발 활동으로 가장 적절하지 않은 것은?  ① 표준과 지침을 개발하여 실시하는 분석 활동② 복수 엔트리, 복수 엑시트 구조를 사용한 구현 활동③ 정보은닉, 자료 추상화, 하향식 계층 분배 원리를 관할한 기본 설계 활동④ 각 루틴에 대한 부작용과 예외조치 방안을 정립한 상세 설계 활동 ■ 해설ISO 25010 유지보수성의 하위특성 분석성, 수정가능성, 시험가능성, 모듈성, 재사용성 중에서 모듈성을 위배함♧ 모듈화의 설계기법은 Macro, Inline, Function 을 이용하여 모듈이 독립적인 기능 구현하도록 응집도를 높이도록 하는 기법으로 복수 엔트리, 복수 엑시트 구조는 응집도 향상 저해 가능함 유지보수의 개선방안 가. 유지보수 개선방안 - 개발..

(제 25회) 소프트웨어 공학 / (36)~(37) 해설

36. IEEE 29119에서는 combinatorial test design 방법으로서 base choice 방법을 제시하고 있다. 다음과 같이 4개의 글꼴 이름, 5개의 글꼴 크기, 3개의 스타일에 대한 테스트를 base choice 방법을 사용할 때 테스트케이스 수로서 가장 적절한 것은?  글꼴 이름: 궁서, 굴림, 바탕, 고딕글꼴 크기: 10, 12, 14, 16, 18스타일: 밑줄, 기울임, 보통 ① 5개 ② 10개③ 20개 ④ 60개 ■ 조합테스트(Combinatorial Test) 방법1) base choice : 사용자 관점에서 선택 빈도가 가장 높고 정상동작 예상되는 기반 테스트 조합 선정선정한 기반테스트에서 하나의 인자만 변경주어 테스트 케이스 생성 정답 : ②  37. 다음은 테스트케..

(제 25회) 소프트웨어 공학 / (34)~(35) 해설

34. ISO/IEC/IEEE 29119 Part 4에서는 Cause-effect graphing 방법을 설명하고 있다. Cause-effect graphing에서는 여러 개의 Cause들간의 제약 사항을 표현할 수 있다. 다음 중 Cause간의 제약사항으로서 가장 적절하지 않은 것은? ① Mask ② Requires③ Exclusive ④ One and only one ■ 해설설명 : 원인-결과 그래프에서 불가능한 원인 조합 또는 결과 조합을 표현하기 위해 제약(constraints) 이 추가 될 수도 있다(그래프 상에서 점선과 제약 심볼을 표기하여 나타냄) - 원인에 적용가능한 제약 심볼은 E(exclusive), I(inclusive), O(one and only one), R(Requires) -..

(제 25회) 소프트웨어 공학 / (32)~(33) 해설

32. 다음의 코드에 적용된 코드 리팩토링 기법으로 가장 적절한 것은?  int increment(int inValue, int Qty, int amount) {if (inValue > 50) inValues++;....int increment(int inValue, int Qty, int amount) {int grade = inValue;if (inValue > 50) grade++;.... ① 임시변수 분리 기법(Split temporary variable)② 매개변수 할당 제거 기법(Remove assignments to parameters)③ 중간자 제거 기법(Remove middle man)④ 조건 다형성 대체 기법(Replace conditional with polymorphism) ■ 해설..

(제 25회) 소프트웨어 공학 / (30)~(31) 해설

30. 다음 코드의 (가)와 (나)에 나타난 객체지향 개념으로 가장 적절한 것은?  ClosedFigure closedFigure;Rectangle r = new Rectangle();Circle c = new circle();closedFigure = r;closedFigure.getArea(); ………… (가)closedFigure = c;closedFigure.getArea(); ………… (나) ① 상속(inheritance)② 정보은닉(information hiding)③ 다형성(polymorphism)④ 의존성(dependency) ■ 다형성(Polymorphism)동일한 이름의 메소드를 여러 형태의 다른 동작으로 재정의하는 객체지향의 특성1) 오버로딩 : 동일이름의 메소드를 매개변수 유형이나 ..

728x90
반응형