본문 바로가기

프로그래밍/System Engineering

4. Systems Engineering Management

1. Managing system development

 

System engineering은 Project management의 일부분이고 벤다이어그램으로 다음과 같이 표현할 수 있다.

 

 

System engineering은 Project Management에 속하고, Project Management는 기술적인 부분외에 프로젝트 관리, 자원 할당, 재정/계약 관리 등의 역할 등도 포함한다.

 

시스템 개발은 고객의 필요에 의해서 시작되는데, 종종 경쟁적인 환경에서 request of proposal(RFP)의 형태로 요청된다.

이러한, RFP에 응답하여 PM이나 전문적인 proposal team은 proposal을 생성한다. 비록 이 단계에서 공식적으로 System engineer가 team에 속하지는 않았어도, technical conecpt, design, interface가 실현가능한지 검토하는것은 필수적이다. 

Proposal에서 핵심요소는 statement of work(SOW)이다. SOW는 시스템 개발을 위해 필요한 작업들을 설명한다. system engineer의 관심을 개발되는 product에 집중된다.

 

성공적인 시스템 개발관리를 위해서 중요한 한가지 테크닉이 있다. 바로 WBS(Work breakdown structure)이다.

WBS는 hierarchical tree structure을 가지고 있고, 프로젝트에서 모든 중요한 작업의 부분을 각각 특정한 위치에 놓는것을 확실하게 한다. 

 

예를 들자면 다음과 같은 구조를 가진다.

1.  System project        
  1.1 System product      
    1.1.1 Subsystem A    
      1.1.1.1 Component A1  
        1.1.1.1.1
Functional design
        1.1.1.1.2
Engineering design
        ....
      1.1.1.2 Component A2 1.1.1.2.1
Functional design
        ...
      1.1.2.1 Component B1 1.1.2.1.1
Function design
    1.1.3 SubsystemC    
    1.1.4
Assembly equipment
   
    ....    
  1.2 System support      

 

System engineer는 WBS의 구조를 작성하는데 도움을 줄 수 있다. 이러한 WBS의 사용은 concept exploration단계에서부터 시작한다. 시스템 엔지니어링이 진행되면서 WBS의 detail이 계속해서 추가된다.

WBS는 프로젝트의 cost control과 cost estimating에서 핵심이다. target cost는 work packages에 분배되고, 하위 level의 packages에 다시 분배된다. 이를 통해, 비용을 계속 추적할 수 있고, 실제 비용과 추산된 비용을 지속적으로 추적하는것은 필수적이다.

예산계획의 초기단계에서 PM은 프로젝트의 funding과 manpower requirement가 현실적이고 달성가능한지 여부를 증명하기 위해, affordability assessment를 수행해야한다. 또다른 cost estimating을 위해 중요한 것은 life cycle cost analysis를 수행하는 것이다. 개발단계에서 여러가지 대안들을 고려하되, 항상 최저가격의 요소들을 선택하는 것만이 가장 좋은 것은 아니다.

Network scheduling technique을도 종종 project의 planning, control을 위해서 사용된다. Network란, 프로젝트를 수행하기 위해 필요로되는 events, activity이다. 이것은 graph로 표현될 수 있는데, graph상에서 활동들을 끝내는데 요구되는 시간이 가장 긴 경로를 critical path라고 하고, graph알고리즘을 사용하면 쉽게 구할 수 있다. 이것이 전체 프로젝트의 기간을 결정한다. 

 

2. System engineering management plan(SEMP)

 

시스템 개발에서 모든 핵심 참가자이 시스템의 핵심 요구사항을 알고, 그들의 책임과 권한을 알도록 하는 것이 중요하다. System engineering management plan(SEMP)은 이러한 서로의 역할을 알도록하는데 있어서 중요한 역할을 한다. SEMP는 시스템 개발과정에 있어서 system engineering이 어떻게 수행될 것인지를 기술한다.

 

3. Organization of system engineering

 

보통 모든 시스템 개발 프토젝트는 prime contractor인 하나의 회사에 의해서 관리된다. 하지만, 어떤 subsystem은 자체적으로 개발되고, 어떤 subsystem은 subcontractor에 의해서 개발 될 수 있다. 이렇게, 참여하는 contractor들의 모음을 contractor team이라고 한다. 즉, 시스템 엔지니어링은 여러 독립적인 회사들의 수많은 다른 활동들까지 포함하게 된다.

초기단계에서는 시스템 엔지니어링은 시스템 계약자 조직에서의 구조에 의존하는 것이 일반적인 관습이다.

시스템 엔지니어링 조직에 있어서, 필수적인 부분은 경험많고 유능한 분석가의 존재이다. System analysis staff는 operational, physical 두 측면에서 system environment에 대한 깊은 이해를 가지고 있어야 한다. 

성공적인 개발을 위해서는, 뛰어난 팀 리더의 리더쉽과, 핵심 기술자들의 참여 등이 중요하다.

또한, 공식적인 미팅에 고객을 지속적으로 참여시킴으로서, 그들의 팀에 속해있음을 느끼게하고 지속적인 대화를 하는 것이 중요하다. 

'프로그래밍 > System Engineering' 카테고리의 다른 글

3. The system development process  (0) 2024.03.30
2. Structure of Complex systems  (0) 2024.03.26
1. Introduction  (0) 2024.03.25