본문 바로가기

SoftwareEngineering

PM

1. 소프트웨어 품질에 대한 이해

효율성 : 목적과 상관없이 경제적 능률을 높이려고 하는 특성 << 효과성 : 어떤 일을 하면서 목적에 부합하려는 특성

기본 품질 : 최소한의 요구사항 만족도 -> 성능 품질: 경쟁제품과 비교우위 성능, 기능, 서비스 등 -> 매력 품질: 특별한 부가서비스, 최신 기능 등

개발: 모호한 요구사항을 구체화하는 과정이며, 위험과 결함을 조기에 식별하고 대응하는 과정

QC, QUAILITY CONTROL : 제품의 평가(테스팅) -> QA, QUAILITY ASSURANCE: 제품을 만드는 프로세스의 평가 (제품 생산, 관리, 지원 프로세스 정립의 선행 필요)

실천전략
1. 매일 10분씩 나누는 품질 관련 대화
2. 산출물 실명제(품질 책임 강화) 
3. 프로젝트별로 우수사례(Best Practice) 할당(우수성 추구) - 달성시 포상
   : 프로젝트를 통해 만들고 싶은 우수사례 선정 ex, A프로젝트는 단위 테스트케이스의 우수사례로 만들겠다.
4. 결함 찾기 경진 대회 개최(우수성 추구) -> 정기적, 순위 포상
5. 사전 품질 교육 강화(프로세스 준수 촉진)
   : 프로젝트 초기에 공정, 기법, 템플릿 등에 대한 가이드와 사례 제공
6. 고객 만족 및 불만 조사(고객 지향 생활화) : VOC

2. 프로젝트 계획 수립 WBS(Work Breakdown Structure)

계획: 구체적(Specific), 성과측정 가능(Measurable), 자원할당(Assignalbe), 현실적(Realistic), 제한된 시한(Time Related)
구체적: 모호하고 불명확한 계획의 배제
성과측정: 계획 달성 여부를 확인할 수 있어야 한다. 작업을 완료하는데 걸린시간, 가용 자원의 투입정도 등
             프로젝트의 범위, 일정, 비용, 위험, 진척, 결함 등의 지표가 프로젝트 전 기간 동안 수집되어야 한다.
자원할당: 스행능력과 책임을 고려한 인력배정으로 책임소재 명확히
현실적: 제한된 시간, 비용, 인력을 고려하여 달성 가능한 계획
제한시간: 마감시간 존재
* 완벽한 계획은 없다. 지속적으로 계획을 점검 하고 필요한 경우에는 재수립한다.

프로젝트 계획의 구성요소
1. 프로젝트 헌장(Project Charter), 프로젝트 목적
2. 프로젝트 범위: 컨설팅, 응용시스템, 하드웨어, 소프트웨어, 데이터 전환, 인터페이스
3. 프로젝트 생명주기 및 산출물
4. WBS: 일정, 비용, 책임, 주요 이정표
5. 프로젝트 조직
6. 투입 인력 계획
7. 위험(Risk) 목록 및 각 위험에 대한 대응 계획
8. 기타 관리 계획들: 품질, 요구사항, 형상, 의사소통, 문서 및 보안, 구매, 교육 및 기술이전 계획 등 

업무요약 : 하위 업무의 요약으로 수행되는 항목이 아닌 관리 및 의사소통용
워크 패키지 : 실제 수행되는 최하위 업무 항목
    1. 일 단위로 할당 : 1 ~ 10일
    2. 보고 주기는 가장 기간이 긴 워크 패키지 기준
    3. 크기가 작은 워크 패키지의 추정이 보다 정확하다
    4. 작은 업무의 할당이 더 쉽다
    5. 작은 워크 패키지의 진척관리가 쉽다

3. 프로젝트 모니터링

위험
발생하지 않은 문제
위험상태에서 실제 현실화가 되면 이슈로 전이
식별된 위험에 대한 관리 방안을 구체적인 액션 아이템으로 정리

액션 아이템
식별된 위험이나 이슈에 대한 대응방안
언제까지 누가 어떻게 조치하겠다는 내용 등이 포함
중요위험/이슈는 별도의 조치계획서를 작성
위험/이슈가 해결될 때까지 상호작용

이슈
이미 발생하여 문제가 되고 있는 사항
현안이라고도 하며 프로젝트 관리자의 주요 관심사항이자 해결과제
위험에서 전이되어 오는 경우와 별도로 식별되는 경우가 있음
대응 방안을 구체적인 액션아이템으로 정리하여 관리

실천전략

프로젝트 초기에 위험을 최소 10개 도출
프로젝트를 낙관적으로 바라보지 마라
위험의 범위를 한정하지 마라
유사 프로젝트의 수행사례를 충분히 확보하라
예비비를 확보하라: 프로젝트 예비비, 전사 예비비
식별된 위험은 정기적으로 추적하라
정기적으로 의사소통을 통해 프로젝트 팀원의 고민을 확인하라
핵심인력을 파악하고 관리하라
의사결정 협의체를 구성하라
꺼진 위험도 다시 보라

측정의 이유

현황파악, 비교 및 평가, 개선 목표설정, 예측

4. 품질관리 및 형상관리

동료검토 Peer Review

Peer Review : 나이 또는 지위가 비슷한 사람이 규격 또는 표준에서 벗어나는 것을 찾아 개선하기 위해 검토
Management Review : 상사나 관리자가 수행하는 검토
리뷰는 요구사항분석, 설계, 코딩 단계마다 각각 수행한다.

목적 : 산출물들에 대한 자재 오류 제거 및 산출물에 대한 내용 공유를 통한 인사이트 증진

품질 : 기능적/비기능적 요구사항을 만족하면서 적용 받아야 할 표준 및 묵시적 요구사항을 만족시킨다

검토종류
애드혹 리뷰 : 즉각적인 검토 절차나 형식 없이 협업 차원의 검토
패스 어라운드 : 작성자가 검토자에게 산출믈을 배포하고 공유하여 각 검토자들이 코멘트 해주는 방식 검토자들이 다른 검토자들의 코멘트를 볼 수 있어 중복 검토는 줄일 수 있지만 상호 의견 교환은 할 수 없는 단점
피어데스크체크 : 검토자들이 배포된 산출물에 대해 개별적으로 각자의 검토 영역에 집중해서 개별검토 진행
1. 산출물 퀵 리뷰를 통한 전체 개요 이해 2. 두 번째 리뷰를 통한 일반이슈 찾기 (형식상의 이슈, 오탈자 등). 3. 세 번째 리뷰를 통해 특정 영역 또는 아이템에 집중한 이슈 찾기 4. 3번 반복
페어 프로그래밍
워크스루 : 미팅 하기전 검토자들이 산출물을 개략 리뷰하고 미팅해서 검토
팀리뷰 :