구현 연습문제
1. 응용 소프트웨어의 개발 과정을 차례대로 나열하고 구현 단계에서 하여야 할 일들을 구체적으로 설명하라
전체 계획 -> 모듈 설계, 모듈 코딩, 모듈 테스트, 모듈 문서화 -> 통합 테스트 -> 시스템 테스트 -> 릴리스
구현단계 작업 : 시스템을 사용할 사용자를 교육하고 사용에 대한 설명을 문서화
2. 시스템의 구현 단계에 사용하는 UML 다이어그램 두가지는 무엇인가?
각 다이어그램이 표현하는 의미와 용도 기술하라
● 컴포넌트 다이어그램
시스템을 구성하는 독립적인 컴포넌트 단위의 관계들을 정리
시스템 또는 서브시스템에 있는 컴포넌트의 개념적이고 논리적인 컴포넌트나 배치될 실제 컴포넌트를 모델링 하는데 사용
● 배치 다이어그램
실행될 때 각 처리 요소들이 어떤 하드웨어 노드에 설치되는지 나타냄
런타임 처리 요소의 형상과 소프트웨어 컴포넌트, 결과물, 프로세스가 어디에 위치하는지를 나타냄
-> 노드(컴퓨터), 통신 경로(노드를 잇는 네트워크와 프로토콜) 이루어짐
3. 새로 개발한 시스템을 시험하는 것은 구현 단계의 작업 중 중요한 일이다.
일반적인 테스트 작업 과정을 설명하라
테스트 작업은 개별 모듈을 시험한 후에
다른 모듈과 적절히 연동되는지 통합 시험
4. 시스템 구현 단계에 필요한 도구에는 무엇이 있고 그 용도는 무엇인지 나열하고 설명하라
● 모델링 도구
CASE
● 컴파일러, 인터프리터, 디버거
컴파일러, 인터프리터 : 원시코드로 작성된 프로그램을 실행 코드로 변환
디버거 : 브레이크 포인트를 설정하여 실행을 중지시키고, 변수 값을 조사함으로써 코드에 있는 문제 분석
● 비주얼 편집기, 통합 개발 환경(IDE)
비주얼 개발 환경
프로그래머가 비주얼 컴포넌트를 폼 위에 끌어놓고
윈도우 상에 표현을 제어하기 위한 매개변수를 지정함으로 써 UI 쉽게 개발
통합 개발 환경(IDE) : 프로젝트를 빌드할 때 파일들과 이들 관계를 추적하고 변경되었을 때 다시 컴파일 하는 것
멀티윈도우 편집기로 프로젝트를 구성하는 파일을 관리하는 메커니즘
버전 제어 시스템 포함
● 형상관리
컴포넌트와 소스코드 버전, 소프트웨어 패키지의 특정 릴리스를 생성하는데 사용되는 리소스 파일 사아의 관계 추적
8. 시스템 구현이 끝나면 데이터를 변화하여 새로운 시스템에 로딩하여야 한다.
데이터 변환 작업 과정을 차례대로 설명하라.
(1) 새 파일, 테이블, 데이터베이스의 생성과 검증
(2) 포맷 오류 체크 및 수정
(3) 변환을 위하여 현재 데이터 준비
- 데이터 검증, 차이점 해결
- 컨버전 프로그래밍
(4) 자료 변환 및 입력
(5) 변환 입력된 후 검증
9. 예전 시스템을 퇴출시키고 새로운 시스템으로 전환하는 방법 네 가지를 들고 장단점을 비교하라
즉시전환 | 병행운영 | 파일럿 운영 | 단계적 운영 |
새 시스템이 가동될 수 있을 때 즉시 새로운 시스템으로 전환 | 예전 시스템과 새 시스템을 일정 기간 동안 병행 가동시킴 | 새로 구현한 시스템을 기업의 한 부분에만 먼저 적용 | 새 시스템을 단계 또는 모듈로 나누어 설치 |
○ 가장 비용이 적게 듦 ○ 어느 시점에 하나의 시스템만 운영하고 유지보수 ○ 도입 효과 조직에 즉각적 ○ 계획 단순 ○ 오래된 시스템 고집하여 새 시스템 악화할 기회 X |
○ 위험이 적다 ○ 예전 시스템을 백업으로 사용할 수 있다 ○ 과거 시스템과 비교 가능 |
○ 즉시 전환과 병행 운영의 장점 모두 ○ 리스크 감소 ○ 비용 적음 |
○ 첫 단계를 잘 선택하면 투자 회수가 빠름 ○ 각 단계를 테스트하여 완벽한 시스템 가능 |
○ 다른 방법보다 위험이 높다 ○ 예전 시스템으로 돌이킬 수 없다 ○ 만일의 사태에 대한 계획 필요 |
○ 비용 이중 지출 ○ 두 시스템이 호환/지원되지 않는 경우 적용 불가 ○ 사용자가 친숙한 시스템만 고집할 수도 |
○ 파일럿 성과를 정확히 판단하지 못하면 전면적인 적용에 문제 |
○초기 단계에 문제가 발생하면 새 시스템에 대한 나쁜 소문 ○ 최종 전환까지 수익 오래 기다림 |
(단계적 : 모든 사용자에게 새 시스템의 일부 제공 / 파일럿 : 새 시스템 전체를 일부 사용자에게만 제공)
10. 시스템이 구현된 후 설치하기 전에 사용자를 교육하려고 한다.
사용자, 관리자, IT 스텝 세 가지의 주체들을 대상으로 한 교육은 각가 어떤 점에 초점을 두어야 하는지 설명하라
사용자 | 관리자 | IT 스텝 |
시스템 개요 주요 용어 가동과 종료 메인 메뉴, 서브 메뉴 아이콘, 숏컷 키 시스템 중요 기능 온라인 도움말 자주 발생하는 질문 (FAQ) 문제 해결 가이드 응급 처치 |
프로젝트 지원 비용 수익 분석 비즈니스 목표를 위한 지원 IT 분야 담당자 시스템 사용 비용 처리 중요 보고서 및 화면 개선 요청 사용자 교육 |
프로젝트 이력 및 분석 시스템 아키텍처 시스템 문서화 대표적인 사용자 질문 벤더 지원 문제 기록 및 해결 IT 스템 기술 교육 사용자와 관리자 교육 |
참고 도서 : 최은만, UML로 배우는 시스템분석설계, 생능출판사, 2020년 3월 (제2판)
'전공 ✏️ > 시스템 분석 설계' 카테고리의 다른 글
시스템 운영, 유지보수, 보안 연습문제 (1) | 2022.12.21 |
---|---|
아키텍처 설계 연습문제 (0) | 2022.12.21 |
아키텍처 설계 - 패키지 다이어그램, 유형, 디자인 패턴 (1) | 2022.12.20 |
동적 모델 - 시퀀스, 커뮤니케이션, 상태 다이어그램 (0) | 2022.12.20 |
구조적(정적) 모델링 - 클래스 다이어그램, CRC카드 (1) | 2022.10.25 |