1.시스템

: 필요한 기능을 실현시키기 위하여 관련 요소를 어떤 법칙에 따라 조합한 집합체.

 

-소프트웨어도 독립적으로 존재하는 것이 아니라 컴퓨터를 기반으로 하는 여러 시스템과 관계를 맺고 있음.

-각 서브시스템은 다른 서브시스템으로부터의 자극에 대하여 영향을 받고 반응함으로써 상호작용하고 이들이 통합되어 하나의 거대한 시스템이 형성되어 있는 것

-소프트웨어 그 자체도 상호 동작하는 서브시스템드로 구성된 하나의 시스템

 

2.시스템의 성질

ⓐ서브시스템

  : 시스템은 관련 깊은 서브시스템들로 구성.

    ex) 교통시스템은 신호기, 신호체계, 도로망 등 여러가지 요소가 있고 이들 요소들은 원활한 교통 소통과

    제어를 위하여 밀접하게 연관.

ⓑ기능적 분할

  : 시스템은 규모가 작은 부속 시스템(서브시스템)들로 나눌 수 있음.

ⓒ시스템 경계

  : 시스템은 어떤 것이건 시스템과 주변 환경을 구분할 수 있는 경계가 있음.

     이곳이 입력과 출력이 만나는 곳.

ⓓ자동화 경계

  : 시스템이 자동화된 부분과 수동 작업 부분을 나누는 경계.

 

3.소프트웨어 엔지니어가 파악해야 할 사항

  : 소프트웨어 엔지니어는 개발하려는 소프트웨어에 대하여 시스템적으로 사고하여야 함.

 

-대상을 시스템으로 파악할 수 있어야

-서브시스템을 찾아낼 수 있어야

-시스템의 특성과 기능을 찾아낼 수 있어야

-시스템의 경계가 어디인지 찾아낼 수 있어야

-시스템에 대한 입력과 출력을 찾아낼 수 있어야

-서브시스템 사이의 관계를 찾아낼 수 있어야

 

 

 

[출처]소프트웨어공학론(최은만 저, 정익사)

+ Recent posts