SE Lab.1 Dept. of Computer Science & Engineering Topics in Software Engineering 계 획.

Slides:



Advertisements
Similar presentations
M 당 강령, 정책  비정규직과 정규직 간 차별철폐, 동일노동 동일 임금 실현, 최저임금제 현실화, 비정규직의 정규직화 추진 등을 통해 최소한의 인간다 운 생활을 보장한다.  그리고, 우리당은 지난 대선 당시 한국노 총, 민주노총과 정책협약을 통해 약속했던 것처럼.
Advertisements

열왕기 상하는 중요하다 ! 왜 ? 시가 3 권 예언서 12 원 열왕기 상하는 중요하다 ! 대라느스 단겔학슥말.
2 3 4 논산인구(노인인구 비율)는? 논산인구(노인인구 비율)는? 대표적 축제? 대표적 축제? 시의 상징 시조? 시화? 시목? 시의 상징 시조? 시화? 시목? 논산 8경? 논산 8경? 계백장군? 계백장군?
한국건축사 기초지식 (2) 발굴, 실측, 보수. 발굴의 조사과정 예비조사 발굴도구의 준비 조사 전 상태의 기록과 기준점 설정 조사갱 설치 유구조사 기록 유물수습 및 정리 유구 및 유적에 대한 고찰, 종합 보고서 작성, 발간.
Ⅰ. 總 論 시공학의 정의 일정한 토지. 공간에 ( 기술 + 자본 + 노동 ) 을 이용, 일정한 시간 동안 내구성 있는 단위 시설 제공 1.1 토목시공 개념 T M M 시공 관 리 학 시 공 학시 공 학 토공, 기초 공, 기계화 시공, 콘크 리트 공, 교량.
정보기술의 기본 CAD/CAM Lab 석사 1 학기 김종규. 0. Data vs Information vs Knowledge data information knowledge 단편적 사건 의사결정에 필요한 data 의 교환이 되어야 정보 시너지 효과 Info + info.
(4) 우리 나라의 이상과 목표 2. 국가의 중요성과 국가 발전 중학교 2학년 도덕
Science of Winter Story 눈썰매를 타고 과학관 체험도 함께 하는 뜻 깊은 겨울 체험!
(2) 고대 국가의 성립  1) 고대 국가의 성격    ① 중앙 집권 체제      - 국왕의 지위 강화, 부족장 세력의 통합,
Scheduling in Project Management
4과목 소프트웨어 공학 강사 이 민 욱.
프로젝트관리.
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
운동화 전문 매장 관리 시스템 - 시스템 개발 계획안 - 소프트웨어공학 4조 ‘04 조수민 ‘04 이준희 ‘04 최재원
공교육 정상화 및 선행학습 금지 학부모 연수 부천송일초등학교.
2015 담당 강사 : 정세진 중국 명문 감상 2015 담당 강사 : 정세진
Smart Factory를 위한 교육용 MES 구축
1. 근접경호의 개념 경호대상의 신변을 보호하기 위하여 지근거리에서 실시하는 호위활동을 말하며 경호행위의 마지막 보루이다.
Chapter 6. 프로젝트 시간관리 (Project Time Management)
공 정 분 석 ◇ 개 요 ◇ 기본분석 ◇ 중점분석 ◇ 공정개선 공정개선.
프로젝트 관리(1) 및 보고서 작성 방법 [4] 이현우 공정관리 예산관리 품질관리
Multimedia Lab. Introduction
프로젝트 계획과 관리 1.
소프트웨어 공학 (Software Engineering)
순환&면역 6조 박아름 이명동 최제춘.
EARNED VALUE MANAGEMENT
소프트웨어 공학 (Software Engineering)
5. 프로젝트 계획 및 통제.
EVMS운용기법.
HDD 보안장치 소개 ㈜ 세 코 원
BPR 추진전략 및 사례 1.
인류의 분산 언어의 대 혼잡시기 창조,타락 홍수 바벨탑사건 아브라함 모세 BC 고조선 하/은/주 (창 11:7,9) 『[7] 자, 우리가.
제4장 일정관리기법 시스템을 개발할 경우 경제적인 개발은 무엇보다도 중요한 관심사항
소프트웨어 2006년 2학기 컴퓨터의 개념 및 실습.
시스템 평가와 문서화 6.1 시스템 평가 6.2 시스템 도입 평가 6.3 시스템 문서화.
도덕 1학년 1학기 2. 개성신장과 인격 도야:인물학습 석가모니 인물학습 -석가모니.
임베디드 하드웨어 Report.
Lab Application Management
주요추진업무 1. 제19대 대통령선거 공명선거 추진 행 정 과
프로젝트 관리 Project Management
지엠비코리아 시정조치사항 유효성평가 협 력 사 담당 임원 대표이사 ○○. ○○. 회사명기입.
교육과정과 주요업무.
왜 설비관리를 해야 하는가 ? 설비 관리의 정의 설비 관리의 중요성 설비관리 시스템화의 필요성
Software Engineering 프로젝트 과제물
소프트웨어 공학 (Software Engineering)
고구려,백제,신라의 건국과 발전 Start!
임베디드 하드웨어 Report.
소프트웨어 공학 (Software Engineering)
소프트웨어와 소프트웨어 개발 - Software Engineering -.
쿰란 쿰란 와디 항공촬영 .
인생이모작을 위한 지자체의 지원 방안 : 울산 북구청 사례 울산북구인생이모작이음센터
건설 사업 관리 (Construction Management)
소프트웨어 형상관리: 목차 변경 및 형상관리의 기초 개념 형상항목 확인 및 버전관리 변경관리 감사 및 감사보고 99_11
Page Turner 에 맞는 책의 종류선정 은경태
우리나라의 수자원 물 보기를 금같이 우리나라의 수자원 현황 우리나라의 수자원 이용 현황.
직원채용 업무 절차 개선.
Ⅳ. 생식과 발생 4. 자손에게 줄 세포 만들기.
“병원 폐기물 소각장” 및 “가축 폐수 처리장” 건축 허가 반대 (2011년 “음식물처리장” 미해결 민원 연관)
재무회계 관리.
지역의 자연 환경과 인문환경 조사 사회 1학년 1학기 Ⅰ.지역과 사회 탐구>1.지역사회의 지리적 환경(3/6
시공 계획 및 계약 관리.
1장 시스템 개발 과정의 이해 소프트웨어 위기와 소프트웨어 공학 출 현 배경 이해 시스템(소프트웨어)의 개발자들
1. 기술 및 제품 설명 > 제품 개요 발표자료 작성 방법 <발표자료 작성 방법>
제2장 시스템 공학의 절차.
1학년 신입생 학부모교실 안내사항 2019년 3월 6일 1학년부장 김희선.
유체역학 마이크로마노미터의 이론과 공식을 설명하라. 환경공학과 김기복.
Software Engineering Project
2012년 9월 16일 바벨탑 사건과 셈의 후손들의 족보 ▣말씀:창세기 11:1-32 예 수 복 된 교 회.
1. 칭찬 및 고발제도 운영(안) 1. 목적 : 칭찬문화의 전사적 확산,전파를 통한 칭찬문화 조성 및 건전한 회사문화 형성
(한국생산성본부 인정 원가관리사 자격증과정) 제 162 기 원가관리사 양성과정
Presentation transcript:

SE Lab.1 Dept. of Computer Science & Engineering Topics in Software Engineering 계 획

SE Lab.2 Dept. of Computer Science & Engineering 학습 내용 제 2 장 계획 2.1 소 개 2.2 문제의 이해와 시스템 정의 2.3 타당성 분석 2.4 일정 계획 2.5 예산 계획 2.6 조직 계획 2.7 위험 분석 2.8 개발계획서 작성

SE Lab.3 Dept. of Computer Science & Engineering 2.1 소 개 1) 계획의 부재 2) 소프트웨어 프로젝트 계획수립 3) 계획수립의 결과

SE Lab.4 Dept. of Computer Science & Engineering 계획의 부재 ㅇ 불확실성 ㅇ 일정의 차질, 경비의 초과, 저품질, 높은 유지보수 비용 ㅇ Risk ㅇ 프로젝트의 실패

SE Lab.5 Dept. of Computer Science & Engineering 소프트웨어 프로젝트 계획수립 정의 : " 소프트웨어 개발 과정과 일정, 비용, 조직 및 생산제품에 대하여 사전에 계획 " ① 문제를 이해하고 정의 ② 필요한 소작업을 정의하고 순서를 결정 ③ 일정예측 ④ 비용예측 ⑤ 위험분석 ⑥ 계획서 작성

SE Lab.6 Dept. of Computer Science & Engineering 계획수립의 결과 소프트웨어 개발 계획서 사업관리자, 개발자, 사용자들에게 사업의 범위, 필요 비용, 필요 자원, 개발 일정, 위험 요소 등에 대한 정보를 제공하는 산출문서 (deliverable).

SE Lab.7 Dept. of Computer Science & Engineering 2.2 문제의 이해와 시스템 정의 문제의 이해 : 대상 업무나 문제를 사용자가 이해하는 용어로 정확히 기술한 것 문제의 인식 - 문제 범위와 원인 파악 ↓ 기본요건 분석 - 문제를 둘러싼 조직, 제도, 시설, ↓ 인원, 기술에 관한 현황 파악 시스템 조사 및 정보수집 - 현재의 시스템 조사, 업무흐름 ↓ 정책 등을 파악 현 시스템의 이해 - 면담과 서류로 심층 분석 ↓ ( 고객상담, 현업의 분석, 작업의 체험 ) 신규 시스템 정의 - 목표 시스템의 정의

SE Lab.8 Dept. of Computer Science & Engineering 신규 시스템의 목표설정 ㅇ 기능과 우선순위 ㅇ 투자 효과를 분석 ㅇ 양적인 제품 목표

SE Lab.9 Dept. of Computer Science & Engineering 시스템 정의 ㅇ 문제의 기술 ㅇ 시스템의 필요성 ㅇ 시스템의 목표 ㅇ 제약 사항 ㅇ 시스템의 제공 기능 ㅇ 사용자의 특징 ㅇ 개발, 운용, 유지보수 환경

SE Lab.10 Dept. of Computer Science & Engineering 2.3 타당성 분석 ㅇ 경제적 타당성 - 투자 효율성 - 시장성 - 비용과 수익의 비교 ㅇ 기술적 타당성 ( 사용자 요구 기능 성능 vs. 제공 가능성 ) - 사례 연구 - 실패 사례 연구 - 모의 실험 - 프로토타이핑 ㅇ 법적 타당성 - 사용 도구들의 법적 권한 - 시장, 관행들에 대한 조사

SE Lab.11 Dept. of Computer Science & Engineering 2.4 일정 계획 ㅇ 개발 절차 계획 - 생명 주기 모형 - 산출물 정의 ( 문서화 계획 ) - 이정표 (milestone) 설정 ㅇ 순서 작업 분해 구조 (WBS) 작성 ↓ 작업 순서 결정 (CP/M 네트워크 )

SE Lab.12 Dept. of Computer Science & Engineering WBS 작성 WBS (Work Breakdown Structure) 작성 프로젝트 개 발 관 리 요구분석 설 계 구 현 - 목표정의 - 제약사항 정의 - 사용자 면담 - 요구정리 - 자료흐름도 작성 - 자료사전작성 - 소단위명세작성

SE Lab.13 Dept. of Computer Science & Engineering 작업순서 결정 ㅇ CP/M 소작업 리스트 소작업 선행작업 소요기간 A Start2 B A1 C B1 D A3 E D2 F A2 G F1 Completion E, C, G 총소요기간 12

SE Lab.14 Dept. of Computer Science & Engineering 작업순서 결정 ( 계속 ) ㅇ CP/M 네트워크 BC Start ADEEnd F G

SE Lab.15 Dept. of Computer Science & Engineering 작업순서 결정 ( 계속 ) ㅇ 최단 경로 선택 가능 경로소요기간 A-B-C 4 Critical Path =>A-D-E 7 A-F-G 5

SE Lab.16 Dept. of Computer Science & Engineering 일정표작성 일정표작성 Page 프로젝트 계획서 1 of 1 시스템 Date 창고 및 재고 관리 시스템 12/10 기호 |---| 일정계획 분석자확인 |===| 시행 담당자 소 작 업 R- 요구 정의 R.1 프로젝트 팀 구성 R.2 목표 및 제약 정의 R.3 창고 직원 면담 R.4 요구 정리 R.5 요구분석 검토회의 D- 분석 D.1 분석서 수정 D.2.1 화면 설계 D.2.2 출력설계 D.3 시스템설계 D.4 모듈설계 D.5 분석서 검토회의 I- 구현 I.1 프로그램 I.2 테스트계획 I.3 테스트 화일 구축 I.4 유닛 테스트 I.5 코딩 컴토회의 T- 테스트 T.1 통합테스트 T.2 시스템 테스트 T.3 시스템 설치 T.4 교육 T.5 인수테스트

SE Lab.17 Dept. of Computer Science & Engineering 2.5 예산 계획 1) 개발 비용 예측 2) 비용에 영향을 주는 요소 3) 비용 산출 방법 4) COCOMO(Constructive Cost Model) 모형 5) 과학기술처 산정기준

SE Lab.18 Dept. of Computer Science & Engineering 개발 비용 예측 ㅇ 정확한 비용 예측은 매우 어려움 - 알려지지 않은 요소가 산재 ㅇ 단계적 비용 산정 및 정산

SE Lab.19 Dept. of Computer Science & Engineering 비용에 영향을 주는 요소 ㅇ 제품의 크기 - 제품의 크기가 커짐에 따라 기하급수로 늘어남 ㅇ 제품의 복잡도 응용 S/W 개발지원 S/W 시스템 S/W 1 :3: 9 ㅇ 프로그래머의 자질 - 코딩 시간 (18:1), 디버깅 시간 (28:1) 의 능력차 - 프로그래밍 언어, 응용 친숙도

SE Lab.20 Dept. of Computer Science & Engineering 비용에 영향을 주는 요소 ( 계속 ) ㅇ 요구되는 신뢰도 수준 ㅇ 기술 수준 (Capability Maturity) - 개발 장비, 개발 도구, 조직 능력, 계획 능력, 관리 능력, 방법론 숙달 정도 ㅇ 남은 시간 - 최적의 기간보다 단축되거나 늘어나면 ⇒ 많은 노력이 필요 - Putnam " 프로젝트의 노력은 남은 개발기간에 4 제곱에 반비례 " - Brooks: Mythical Man-Month " 기간 단축을 위하여 인원을 더 투입하면 오히려 더 지연되는 현상 "

SE Lab.21 Dept. of Computer Science & Engineering 비용 산출 방법 ㅇ 하향식 (Top-down) - 과거의 경험을 바탕으로 개략적 계산 ① Man-month 를 예측 ② 총소요 예산 = Man-month * 평균 인건비 ③ LOC 도 과거의 경험으로 예측 예 : 10 man * 15 month = 150 MM 150 MM * 200 만원 = 3 억 500 LOC * 50 Module = 25KLOC

SE Lab.22 Dept. of Computer Science & Engineering 비용 산출 방법 ( 계속 ) Delphi 법 - 전문가의 의견 일치에 의한 산정 ① 시스템 정의서를 분석하여 전문가들이 독립 산정 ( 익명으로 제출 ) ② 조정자는 반응을 요약 배포 및 조정 ③ 과정을 반복하여 일치된 의견 추출

SE Lab.23 Dept. of Computer Science & Engineering 비용 산출 방법 ( 계속 ) 상향식 (Bottom-up) - LOC costing ① 구현될 기능을 파악 ② 각 기능들의 LOC 의 범위를 예측 (pessimistic, optimistic, and most likely values) ③ LOC 의 Expected number 와 derivation 을 계산 Expected=(l+4m+h)/6 std(LOC)=[(h-l)/6]**2,where l=low(optimistic) h=high(pessimistic) m=most likely

SE Lab.24 Dept. of Computer Science & Engineering 비용 산출 방법 ( 계속 ) Function l h m LOC Dev Module Module Module Module Total 12108

SE Lab.25 Dept. of Computer Science & Engineering 비용 산출 방법 ( 계속 ) ④ productivity data 로부터 ₩ /LOC 와 LOC/mm 을 구한다 ⑤ 개발비용과 인력소요를 계산 예. 12K / 5 천원 = 6 천만원 12K / 300(LOC/mm) = 40mm ⑥ 개발기간을 산정하기 위하여 software equation 을 사용 t = ( L3 / C3 K)

SE Lab.26 Dept. of Computer Science & Engineering COCOMO 모형 COCOMO(Constructive Cost Model) 모형 ㅇ B. Boehm 이 개발 ㅇ TRW 등 수많은 실제 프로젝트의 기록을 통계분석 - 2K-32K 정도의 소, 중형 프로젝트 ㅇ 표준산정공식 - 소프트웨어 유형에 따라 다른 공식 유형 MM( 노력 ) D( 기간 ) Organic 2.4*[LOC] *[MM]0.28 Semi-detached 3.0*[LOC] *[MM]0.35 Embeded 3.6*[LOC] *[MM]0.32

SE Lab.27 Dept. of Computer Science & Engineering COCOMO 모형 ( 계속 ) ㅇ 제약사항 - 설계에서 인수시험까지만 포함 - 문서화, 검토회 등 소요 비용도 포함 - Execution line 만 포함 - 프로그램 사서 비용은 포함, 운용 요원, 비서 등의 간접 지원자의 비용은 배제 - 소프트웨어 공학 원리가 전반적으로 적용 예 ) CAD system Expected LOC = E=3.0*(LOC)1.12 D= 2.5*E0.35 =3.0*(3.33)1.12 = 2.5*(152)0.35 =152 MM = 14.5 months 소요인원 =152/14.5 명 - 노력 승수로 결과를 보정

SE Lab.28 Dept. of Computer Science & Engineering 과학기술처 산정기준 ㅇ COCOMO 의 변형 ㅇ 산정 절차 ① LOC 예측 ② 보정표 (on-line/batch, language, 규모별, 유형별 ) 를 보고 총 LOC 를 계산 ③ 공정별 전문요원 생산 기준표에 의하여 기초소요 MM 를 계산 ④ 프로젝트 유형별 보정계수에 의하여 실질소요 MM 을 계산 ⑤ 기준노임 단가를 적용 직접인건비 계산 ⑥ 인건비 + 직접경비 ( 여비, 특수자료, 인쇄 등 ) + 제경비 ( 임원, 서무, 경리, 소모품, 비품 ) + 기술료 ( 조사연구, 기술훈련비 ) = 총 개발비

SE Lab.29 Dept. of Computer Science & Engineering 과학기술처 산정기준 ( 계속 ) 예 ) ① 10K, C language, 사무처리용 ② 10K * 1.3( 언어보정 ) * 1( 정보처리형태 ) = 13 KLOC ③ ( 총소요 mm/100K) * 0.13 = 26.6 MM ④ 26.6 * 0.6( 규모별보정 ) = MM * 1.0( 유형별보정 ) = ⑤ * 노임단가 = 직접인건비

SE Lab.30 Dept. of Computer Science & Engineering 2.6 조직 계획 1) 프로젝트의 구조 2) 프로그래밍 팀의 구성 ① 민주주의식 팀 ② 책임 프로그래머 (Chief) 팀 ③ 계층형 팀 구성

SE Lab.31 Dept. of Computer Science & Engineering 프로젝트의 구조 ㅇ 프로젝트별 조직 - 프로젝트 시작에서 개발 완료까지 전담 팀 ㅇ 기능별 조직 - 계획수립 분석팀 - 설계, 구현 팀 - 테스트 및 유지보수 팀 - Pipeline 식 공정 ㅇ 매트릭스 조직 - 요원들은 고유 관리 팀과 기능 조직에 동시에 관련 - 필요에 따라 요원을 차출 팀을 구성하고 끝나면 원래의 소속으로 복귀

SE Lab.32 Dept. of Computer Science & Engineering 민주주의식 팀 ㅇ 민주적인 의사결정으로 일을 수행 ㅇ 서로 협동하여 수행하려는 비이기적인 팀 ㅇ 의사전달 경로 ㅇ 자신이 있는 일을 알아서 수행 ㅇ 개인의 책임과 권한이 애매 모호할 수 있음

SE Lab.33 Dept. of Computer Science & Engineering 책임 프로그래머 (Chief) 팀 ㅇ 고도의 구조화 - 계층적 구조 - 책임 프로그래머가 리더 ㅇ 구성원 - 책임 프로그래머 : 제품설계, 주요부분의 코딩, 중요한 기술적 결정, 작업의 지시 - 프로그램 사서 (librarian) : 프로그램 리스트 관리, 설계 문서 및 테스트 계획 관리 - 보조 프로그래머 (back-up) : 기술적 문제에 대하여 상의 고객, 출판, 품질 보증 그룹과 접촉 부분적 분석, 설계, 구현 담당 - 프로그래머 : 실제 프로그램 ( 책임 프로그래머의 지시 )

SE Lab.34 Dept. of Computer Science & Engineering 계층형 팀 구성 ㅇ 기능에 따라 계층적으로 구성 ㅇ 고급 프로그래머가 시스템의 부분을 담당 ㅇ 의사전달 경로

SE Lab.35 Dept. of Computer Science & Engineering 2.7 위험 분석 ㅇ 프로젝트에 내재된 위험 요소를 인식하고 그 영향을 분석하여 이를 관리하는 활동 ㅇ 일반적인 위험 요소 위험 요소위험 관리 기법 인력 부족 - 유능한 인력모집, 팀 구성, 요원 배치, 교차 - 교육, 유능 인력 사전 확보 2. 비현실적 일정 - 더 자세한 비용, 일정 예측, 원가 분석, 및 예산 점증적 개발, 소프트웨어 재사용 요구를 줄임 3. 잘못된 기능의 - 사용자 회람, 프로토타이핑, 사용자 지침 소프트웨어 개발 서를 조기에 작성, 조직 분석, 직능 분석

SE Lab.36 Dept. of Computer Science & Engineering 2.7 위험 분석 ( 계속 ) 위험 요소위험 관리 기법 잘못된 인터페 - 프로토타이핑, 시나리오, 태스크 분 이스의 개발 석, 사용자 분류 ( 기능, 스타일, 업무 ) 5. 과포장 - 요구 삭감, 프로토타이핑, 비용 - 수익 분석, 원가 분석 6. 계속적인 - 최대 변경 상한선, 정보 은닉, 점증적 요구 변경 개발 ( 다음 버젼까지 변경을 연기 ) 7. 실시간 성능 - 시뮬레이션, 벤치마킹, 모델링, 의 빈약 프로토타이핑, 튜닝 8. 기술적 취약 - 기술 분석, 비용 - 수익 분석, 프로토타이핑 ; 점검

SE Lab.37 Dept. of Computer Science & Engineering 2.8 계획서 작성 1. 개 요 1.1 프로젝트 개요 1.2 프로잭트의 산출물 1.3 참고문헌 및 정의, 약어 2. 프로젝트 구성 2.1 프로세스 모형 2.2 관리 구성 2.3 프로젝트의 의무 3. 관리 계획 3.1 관리목표 및 우선순위 3.2 가정 및 제약조건 3.3 위험분석 3.4 점검 및 제어 절차 3.5 인력배치 계획 4. 기술 계획 4.1 방법론, 도구, 기법 4.2 소프트웨어 문서화 4.3 프로젝트 기술 지원 5. 일정, 자원 계획 5.1 소작업의 정의 및 관계 5.2 자원 소요 5.3 예산 자원 배치 5.4 일정 참고