반응형
Chapter 2 연습문제 풀이
주관식
- 프로세스 모델이란 무엇이며, 프로세스 인스턴스, 프로세스 명세, 프로세스 모델 사이의 관계를 설명하라.
프로세스 모델이란 일반적인 프로세스를 기술한 것으로, 프로젝트를 위한 작업의 단계와 순서, 각 단계 작업 수행의 제약사항이나 조건 등을 모아 둔 곳이다.
즉 프로세스 모델에 기반 해 프로세스 명세와, 프로세스 인스턴스가 발생하는데, 프로세스 명세는 프로젝트에서 수행해야 하는 작업과 수행 순서를 정의한 것이고, 이를 실제로 프로젝트에서 작업한 순서를 프로세스 인스턴스라고 한다.
2. 소프트웨어 프로세스를 정의하기 위한 요소는 무엇이며 바람직한 프로세스가 되려면 어떤 특성잉 있어야 하나?
```commandline
프로세스를 정의하기 위해서는 특정 단계에 어떤 작업을 수행하는지를 나타내어야 한다.
바람직한 프로세스가 되려면 예측가능해야 하고, 변경이 용이해야하고, 결함 제거를 쉽게 할 수 있으며, 테스팅과 유지보수에 용이해야한다.
프로토타이핑 모델은 폭포수 모델의 어떤 단점을 보완하기 위한 것인가? 프로토타입의 두 가지 유형은 무엇인가?
폭포수 모델은 한번 개발하면 뒤로 돌아갈 수 없다는 단점을 갖고 있다. 즉 마지막 단계에 가서 결함이 발견되면 그 비용이 엄청나다는 것이다. 그래서 프로토타입을 제작해 사용자의 요구를 한번 더 확인하고, 결함을 미리 발견할 수 있도록 했다. 그것이 프로토타이핑 모델이다. 프로토타이핑 모델은 한번 쓰고 버리는 일회용과, 계속 보완해나가는 진화형 두 가지 유형이 존재한다.
진화적 모델이란 무엇이며, 중요한 장점은 무엇인가? 어떤 유형의 프로젝트애 진화적 모델이 적합한가?
진화적 모델이란 프로토타이핑 모델에서 진화형과 같은 것이다. 즉 계속해서 보완해 나가는 모델이다. 중요한 장점으로는 모든 기능이 구현되지 않아도 초기 교육이 가능하고, 그 덕에 사용자의 피드백을 받을 수 있으며, 시장 점유를 미리 할 수 있다. 또한 가동 중인 시스템에 결함이 발견되면 즉각 고칠 수 있다. 게임 관련 프로젝트에 적합하다. 게임 프로젝트 같은 경우는 유저의 피드백을 받고 계속해서 보완해 나가는 프로젝트로 유저의 피드백을 릴리즈로 계속해서 제출해 나갈 수 있다.
애자일 프로세스의 네 가지 선언은 무엇인가? 스크럼의 프로세스는 무엇인가?
```commandline문서보다는 고객과의 소통을 우선시 한다.
문서가 아니라 실제 실행되는 소프트웨어를 통해 요구를 확인한다.
요구는 비즈니스 환경에 따라 변경될 수 있다.
짧은 주기 동안 요구분석, 구현, 테스트 까지 이뤄지며, 각 반복주기에 피드백을 받는다.
스크럼 프로세스란 개발 팀원 모두가 소통하면서, 짧은 주기를 반복해 소프트웨어를 개발하는 작법, 역할, 결과물의 집합체이다.
할일(백로그)를 정하고, 우선순위 부여, 스프린트를 반복해 출시주기를 단축 -> 사용자가 지속적으로 소통하고 피드백 -> 시스템 향상
6. 어떤 대학에서 학생, 교직원이 모두 사용하는 학사업무 시스템을 개발하기로 하였다. 점증적 모델을 이용해 프로세스를 설계하라. 프로젝트의 중요한 목적이
높은 품질, 그 중에서 사용자 요구의 만족이다. 프로세스에서 어떤 품질 관리 작업을 하여야 하는가?
```commandline
점증적 모델
인스펙션 프로세스를 통해 작업 결과를 지속적으로 확인하는 품질 프로세스가 필요하다.
- 새로운 프로그래밍 언어를 위한 컴파일러를 개발하려고 한다. 어떤 개발 모형을 채택할 것인가? 채택한 이유를 설명하라. C#과 같은 언어의 컴파일러라면 어떤 모형으로 개발하겠는가?
8. 프로젝트 관리 프로세스의 모니터링은 개발 프로세스에 어떤 영향을 주는가?
```commandline
모니터링은 개발 프로세스 각 단계의 결과물을 검증하는 역할을 한다. 따라서 결함을 제거할 수 있게 한다.
형상관리 프로세스란 무엇이며, 개발 프로세스에 미치는 영향은 무엇인가?
형상관리 프로세스란 : 개발 중에 발생하는 변경을 체계적으로 관리하는 것으로 단순히 결과물을 관리 해주는 것이다 따라서 개발 프로세스에는 독립적으로 영향을 주지 않는다. 결과물만 관리하고, 결과물을 생성하는 작업에는 간접적으로 영향을 준다.
구조적 방법론, 정보공학 방법론, 객체지향 방법론 각각은 무엇이며? 장단점은 무엇인가?
구조적 방법론: 함수를 만드는 것이 목적으로, 자료 중심적이고, 프로그램 로직 중심으로 개발하는 것을 말한다. 정보 공학 방법론: 기업 정보 중심이며 전략 계획을 수립하고, 데이터 중심으로 CASE도구를 사용해 공학적으로 접근 객체지향: 유스케이스를 분석하고, 자료와 함수를 묶은 클래스를 파악해 상호작용하는 객체들로 시스템을 구성하는 방법
구조적 장단점
- 장점 : 오래 사용되어 검증된 방법, 프로젝트의 계획과 모니터링이 쉬움, 요구분석에 대한 방법이 이해하기 쉬움
- 단점: 분석에서 설계 과정에 변환이 어려움
```
반응형
'학교 수업 > 소프트웨어 공학' 카테고리의 다른 글
연습문제 3장 주관식 (0) | 2023.10.19 |
---|---|
Chapter 1. 주관식 문제 (1) | 2023.10.18 |
요구사항을 분석할 때.. (0) | 2023.10.16 |
소프트웨어 개발 시 "계획 단계" 수행 방법 (0) | 2023.10.15 |
1장 (0) | 2023.10.14 |