Chapter 2 Computerbased System Engineering 1 u Objectives

Chapter 2. Computer-based System Engineering 제 1부 개요 u Objectives • To introduce concepts of system engineering to software engineers (S/W 공학자, 시스템 공학의 개념) • To discuss system engineering difficulties (시스템 공학 문제점) • To describe the system procurement and system engineering processes (시스템 구매, 시스템 공학 처리절차) • To discuss reliability in a system context (시스템신뢰도) u Contents 2. 1 Systems and their environment (시스템과 환경) 2. 2 System procurement (시스템 획득) 2. 3 The system engineering process (시스템 공학 과정) 2. 4 System architecture modeling (시스템 구조 모델링) 2. 5 Human factors (인간의 요소) 2. 6 System reliability engineering (시스템 신뢰도 공학) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 1

제 1부 개요 / 2장 컴퓨터기반 시스템공학 What is a system? u System 공학의 정의 • H/W, S/W, 인원을 포함한 시스템을 규정하고, 설계, 구현하며 검증, 설치, 유지 관 리하는 행위들이다. u System의 정의 • A set of inter-related components working together towards some common objective. (임의 공동목표 달성을 위해 함께 작동하는 상호관련된 부품(소자)들의 집합체) • The system may include software, mechanical, electrical and electronic hardware and be operated by people. (시스템 – S/W, 기계/ 전기/전자 H/W 포함. 시스템- 사람이 작동) • System components are dependent on other system components (한 시스템 소자들은 다른(타) 시스템 소자들과 연관된다. ) • The properties and behavior of system components are inextricably inter-mingled (시스템 소자들의 특성과 동작은 복잡한 혼합형이다. ) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 2

제 1부 개요 / 2장 컴퓨터기반 시스템공학 Software and systems engineering u Proportion of software in systems is increasing. (시스템에서 S/W 비중이 증대됨) Software-driven general purpose electronics is replacing specialpurpose systems (특수목적 시스템들이 S/W 구동 일반목적 전자제품으로 대체중) u Problems of systems engineering are similar to problems of software engineering (시스템 공학에서의 문제점들은 S/W 공학에서의 문제점들과 유사) u Software is (unfortunately) seen as a problem in systems engineering. (불행하게도 S/W 공학에서의 문제점들은 시스템공학에서의 문제점들로 간주됨) Many large system projects have been delayed because of software problems (대부분의 대형시스템 프로젝트들이 S/W의 문제점을 이유로 지연됐음) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 3

제 1부 개요 / 2장 컴퓨터기반 시스템공학 2. 1 Systems and their environment u Systems are not independent but exist in an environment (시스템은 독립적인 실체가 아니라 환경에 존재하는 것) u 시스템 공학자가 시스템 환경을 이해해야 하는 이유 (1) System’s function may be to change its environment (시스템 기능이 그 환경을 변화시킬 수 있다) (2) Environment affects the functioning of the system e. g. system may require electrical supply from its environment (주변환경이 시스템 기능에 영향을 끼친다. ) u Organizational as well as physical environment may be important (물리적 환경만큼 기구조직의 환경도 중요) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 4

제 1부 개요 / 2장 컴퓨터기반 시스템공학 2. 1 Systems and their environment (cont') [그림 2. 1] System hierarchies (시스템 계층구조) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 5

제 1부 개요 / 2장 컴퓨터기반 시스템공학 2. 2 System procurement (시스템 획득(구매)) u (정의) - Acquiring a system for an organization to meet some need (한 기구조직이 어떤 필요성을 만족하기 위해 시스템을 획득하는 과정) u Some system specification and architectural design is usually necessary before procurement (시스템 획득 사전에 시스템의 명세와 기본적 구조 설계가 필요) 1) You need a specification to let a contract for system development (시스템 개발 계약을 위한 사양서가 필요) 2) The specification may allow you to buy a commercial off-the-shelf (COTS) system. (사양서도 상업적 기성 시스템 구입을 허용할 수도 있음) 3) Almost always cheaper than developing a system from scratch (이들은 원초적 시스템 개발보다 거의 대부분 싸다) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 6

제 1부 개요 / 2장 컴퓨터기반 시스템공학 2. 2 System procurement (cont') u Contractors and sub-contractors (계약자와 부계약자) • The procurement of large hardware/software systems is usually based around some principal contractor (대형 H/W, S/W 시스템의 구매에는 통상 주계약자가 기본이 된다) • Sub-contracts are issued to other suppliers to supply parts of the system (부계약자들은 시스템의 부품 공급을 위해 다른 공급자로 지정될 수 있다) • Customer liases with the principal contractor and does not deal directly with sub-contractors (고객은 주계약자와 접촉하고, 부계약자와는 직접 상대하지 않는다. ) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 7

제 1부 개요 / 2장 컴퓨터기반 시스템공학 2. 2 System procurement (cont') [그림 2. 2] Contractor/Sub-contractor model (계약자와 부계약자 모델) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 8

제 1부 개요 / 2장 컴퓨터기반 시스템공학 2. 2 System procurement (cont') Off-the-shelf System available Adapt requirements Choose system Issue request forbids Choose supplier Select tender Negotiate contract Let contract for development Survey market for existing systems Issue request to tender Bespoke system required [그림 2. 3] The system procurement process (시스템 구매 과정) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 9

제 1부 개요 / 2장 컴퓨터기반 시스템공학 (시스템 공학 프로세스) 2. 3 The system engineering process u Inevitably involves engineers from different disciplines who must work together (함께 일할 사람들은 다양한 분야의 공학자들로 구성) • Much scope for misunderstanding here. (오해의 소자를 관측할 수 있음) • Different disciplines use a different vocabulary and much negotiation is required. (서로 다른 학문분야에서 서로 다른 어휘를 사용하기 때문에, 상호협의가 필요) • Engineers may have personal agendas to fulfill (공학자들은 개념상 개인적 취향을 갖음) u Usually follows a ‘waterfall’ model because of the need for parallel development of different parts of the system (시스템의 상이한 부품들에 대한 병행 개발의 필요성 때문에 “폭포수 모델”을 따르는 경향) • Little scope for iteration between phases because hardware changes are very expensive. (H/W 교체는 비용이 많이 들기 때문에, 단계들간의 반복을 축소시켜야 함) • Software may have to compensate for hardware problems (S/W는 H/W 문제점들에 대한 보상 대책을 수집해야 함) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 10

제 1부 개요 / 2장 컴퓨터기반 시스템공학 2. 3 The system engineering process (cont') [그림 2. 4] Inter-disciplinary involvement (시스템공학의 학문간 연계분야) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 11

제 1부 개요 / 2장 컴퓨터기반 시스템공학 2. 3 The system engineering process (cont') [그림 2. 5] The system engineering process (시스템 공학 처리단계) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 12

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 3절 시스템공학 과정 (시스템 요구사항 정의) 2. 3. 1 System requirements definition u Three types of requirement defined at this stage (시스템 요구사항의 3가지 유형) 1. Coarse-grain functional requirements (기본적 기능 요구사항) - System functions are defined in an abstract way 2. System properties (시스템 특성) - Non-functional requirements for the system in general are defined 3. Undesirable characteristics (시스템에 불필요한 특성) - Unacceptable system behavior is specified - Should also define overall organizational objectives for the system (시스템에 대한 전반적 기구조직의 목표를 정의) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 13

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 3절 시스템공학 과정 2. 3. 1 System requirements definition (cont') u System objectives (시스템 목표) 1. Functional objectives (기능적 목표) - To provide a fire and intruder alarm system for the building which will provide internal and external warning of fire or unauthorized intrusion 2. Organizational objectives (기구조직의 목표) - To ensure that the normal functioning of work carried out in the building is not seriously disrupted by events such as fire and unauthorized intrusion Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 14

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 3절 시스템공학 과정 2. 3. 1 System requirements definition (cont') u System requirements problems (시스템 요구사항에서의 문제점) • Changing as the system is being specified (규정 중에 있는 시스템의 변환) • Must anticipate hardware/communications developments over the lifetime of the system (시스템의 전생명주기 동안에 예상되는 H/W, 통신분야의 개발을 예측) • Hard to define non-functional requirements (particularly) without an impression of component structure of the system. (시스템의 구조적 소자 개념 없이 비기능적 요구사항을 정의하기는 어렵다) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 15

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 3절 시스템공학 과정 2. 3. 2 System design (시스템 설계) Define subsystem interfaces Partition requirements Identify subsystems Specify subsystem functionality Assign requirements to sub-systems [그림 2. 6] The system design process (시스템 설계 과정) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 16

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 3절 시스템공학 과정 2. 3. 2 System design (cont') u The system design process (시스템 설계 과정) 1. Partition requirements (요구사항 분할) - Organize requirements into related groups 2. Identify sub-systems (부시스템 확인) - Identify a set of sub-systems which collectively can meet the system requirements 3. Assign requirements to sub-systems (요구사항을 부 시스템에 배정) - Causes particular problems when COTS are integrated 4. Specify sub-system functionality (부시스템 기능 지정) 5. Define sub-system interfaces (부시스템 인터페이스 정의) - Critical activity for parallel sub-system development Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 17

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 3절 시스템공학 과정 2. 3. 2 System design (cont') u System design problems (시스템 설계에서의 문제점) • Requirements partitioning to hardware, software and human components may involve a lot of negotiation (H/W, S/W, 인간공학적 소자에 대한 요구사항 분할에는 상당한 협의가 필요) • Difficult design problems are often assumed to be readily solved using software (곤란 설계상의 문제점들을 S/W로 해결하도록 가정해 버린다. ) • Hardware platforms may be inappropriate for software requirements so software must compensate for this (H/W가 S/W 요구사항에 부적절한 경우 S/W가 이를 보상해야 한다. ) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 18

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 3절 시스템공학 과정 2. 3. 3 Sub-system development (부 시스템 개발) u 시스템 설계단계에서 확인된 부시스템을 개발하는 과정 u Typically parallel projects developing the hardware, software and communications u May involve some COTS procurement (상업적 기성제품의 도입이 허용) u Lack of communication across implementation teams (구현팀들 간의 상호통신 결핍) u Bureaucratic and slow mechanism for proposing system changes means that the development schedule may be extended because of the need for rework (시스템 변경의 제안에 대한 느리고 관료적인 메커니즘은 재작업 필요성을 이유로 개발 일정이 연장될 수 있 음을 의미) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 19

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 3절 시스템공학 과정 2. 3. 4 System integration (시스템 통합) u The process of putting hardware, software and people together to make a system (H/W, S/W, 인적 요소 모두를 하나의 시스템을 만드는데 투입하는 과정) u Should be tackled incrementally so that sub-systems are integrated one at a time (점진적 처리를 위해, 한번에 하나의 부시스템을 통합시켜 나간다 – 점진적 통합 프로세스 Big-Bang 접근) u Interface problems between sub-systems are usually found at this stage (이 단계에서 부시스템들간의 인터페이스 문제가 표출됨) u May be problems with uncoordinated deliveries of system components (시스템 소자들의 분배에 불협화음/비협조 문제 발생 가능) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 20

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 3절 시스템공학 과정 2. 3. 5 System installation (시스템 설치) - 운영할 환경에 시스템을 설치하는 행위 - 시스템 설치시에 발생할 수 있는 문제점 1) Environmental assumptions may be incorrect (시스템 설치환경의 가정이 틀릴 수 있다) 2) May be human resistance to the introduction of a new system (시스템 도입에 사람들이 거부할 수 있다) 3) System may have to coexist with alternative systems for some time (시스템과 대체 시스템이 일정기간 공존해야 할 경우도 있다) 4) May be physical installation problems (e. g. cabling problems) (물리적인 설치상의 문제점이 있을 수 있다) 5) Operator training has to be identified (운영자 훈련이 규정되어야 한다) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 21

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 3절 시스템공학 과정 2. 3. 6 System operation (시스템 운영) u Will bring unforeseen requirements to light (예측 불허의 요구사항이 돌발할 수 있음) u Users may use the system in a way which is not anticipated by system designers (시스템 설계자가 예상치 않은 방식으로 사용자가 시스템을 운영할 수 있음) u May reveal problems in the interaction with other systems (다른 시스템과 연동하는데 있어서 문제점이 돌출할 수 있음) • Physical problems of incompatibility (비호환성으로 인한 물리적 문제점) • Data conversion problems (데이터 변환 문제) • Increased operator error rate because of inconsistent interfaces (인터페이스로 인한 운영자 에러율 증대) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 22

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 3절 시스템공학 과정 2. 3. 7 System evolution (시스템 진화) u Large systems have a long lifetime. They must evolve to meet changing requirements (대형 시스템은 장기간의 생명주기를 가지므로, 요구사항 변경을 만족하기 위해 진화해야 함) u Evolution is inherently costly (진화에는 고비용 소요) 1) Changes must be analyzed from a technical and business perspective (변경사항 – 기술적/영업적 관점에서 분석 필요) 2) Sub-systems interact so unanticipated problems can arise (부시스템에 예측불허의 문제점들이 생길 수 있음) 3) There is rarely a rationale for original design decisions (원래 설계기준에 논리적으로 맞지않은 내용 발생) 4) System structure is corrupted as changes are made to it (변경 내용의 구축이 시스템 구조를 파괴할 수 있음) u Existing systems which must be maintained are called legacy systems (유지관리할 필요가 있는 기존시스템 – 상속(유산) 시스템) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 23

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 3절 시스템공학 과정 2. 3. 8 System decommissioning (시스템 해체) u Taking the system out of service after its useful lifetime (사용가능 생명주기가 끝난 시스템의 서비스를 중단하는 행위) u May require removal of materials (e. g. dangerous chemicals) which pollute the environment (환경에 영향을 미치는 물질(독성화학물질)의 제거를 요구할 수 있음) • Should be planned for in the system design by encapsulation (시스템 설계시 캡슐화가 계획되어야 함) u May require data to be restructured and converted to be used in some other system (타시스템에 사용되도록 데이터의 재구성/변환이 필요할 수 있음) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 24

제 1부 개요 / 2장 컴퓨터기반 시스템공학 2. 4 System architecture modeling (시스템구조 모형화) u An architectural model presents an abstract view of the sub-systems making up a system (구조 모델은 부시스템들이 하나의 시스템을 구축하는 추상적 관점을 표현) u May include major information flows between sub-systems (부시스템들간의 주요 정보흐름 포함) u Usually presented as a block diagram (불록도를 표현) u May identify different types of functional component in the model (모델안에서 서로 다른 형태의 기능적 소자를 식별) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 25
![[그림 2. 7] 비행기제어시스템 구조 Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National [그림 2. 7] 비행기제어시스템 구조 Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National](http://slidetodoc.com/presentation_image_h2/6be9eb9d6f2ee533921d326cff86b48e/image-26.jpg)
[그림 2. 7] 비행기제어시스템 구조 Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 26

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 4절 시스템구조 모델링 (기능적 시스템 부품) 2. 4. 1 Functional system components - 기능적 시스템 부품의 분류 1) Sensor components (센서[감지기]용 부품) 2) Actuator components (작동기용 부품) 3) Computation components (계산용 부품) 4) Communication components (통신용 부품) 5) Co-ordination components (중계[연결]용 부품) 6) Interface components (인터페이스용 부품) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 27

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 4절 시스템구조 모델링 2. 4. 1 Functional system components (cont') u System components (기능적 측면의 시스템소자) 1) Sensor components (센서 부품) - Collect information from the system’s environment e. g. radars in an air traffic control system 2) Actuator components (작동기(구동기) 부품) - Cause some change in the system’s environment e. g. valves in a process control system which increase or decrease material flow in a pipe 3) Computation components (계산용 부품) - Carry out some computations on an input to produce an output e. g. a floating point processor in a computer system Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 28

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 4절 시스템구조 모델링 2. 4. 1 Functional system components (cont') u System components (cont') 4) Communication components (통신용 부품) - Allow system components to communicate with each other e. g. network linking distributed computers 5) Co-ordination components (연결용 부품) - Co-ordinate the interactions of other system components e. g. scheduler in a real-time system 6) Interface components (인터페이스 부품) - Facilitate the interactions of other system components e. g. operator interface - All components are now usually software controlled (전부품 – S/W 제어) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 29

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 4절 시스템구조 모델링 2. 4. 1 Functional system components (cont') [그림 2. 8] Intruder alarm system (침입자 경고 시스템) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 30

제 1부 개요 / 2장 컴퓨터기반 시스템공학 / 4절 시스템구조 모델링 2. 4. 1 Functional system components (cont') u (Example): Component types in alarm system [그림 2. 9] • Sensor (센서) - Movement sensor, door sensor • Actuator (작동기) - Siren • Communication (통신) - Telephone caller (전화호출자) • Co-ordination (중계자) - Alarm controller (경고제어기) • Interface (인터페이스) - Voice synthesizer (음성합성기) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 31

제 1부 개요 / 2장 컴퓨터기반 시스템공학 2. 5 Human factors (인간공학적 요소) u All systems have human users and are used in a social and organizational context (모든 시스템은 인간공학적 사용자가 있으며, 사회적/조직적 상황에서 이용된다) u An appropriate user interface is essential for effective system operation (효율적인 시스템 운영 – 적절한 사용자 인터페이스가 필수) u Human factors are often the most important factor in determining the success or otherwise of a system (시스템의 성공 등을 결정하는 가장 중요한 요소 – 인간공학적 요소) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 32

제 1부 개요 / 2장 컴퓨터기반 시스템공학 2. 5 Human factors (cont') u Other human factors (S/E가 고려해야 할 기타 인간공학적 요소) 1) Changes to work processes in the system’s environment (시스템의 현재 작업 환경을 새로운 작업처리로 변경) - May be resisted by users if jobs are lost (실직자의 저항) 2) De-skilling of users (사용자의 기술저하) - May be resented by professionals (전문용어 표현) 3) Changes to organization power structure (조직의 정치적 구조 변경) - Managers don’t like to lose control (관리자의 제어력 상실) 4) Work changes (작업 방법의 변경) - Some changes to work practice may be unacceptable (수용불가의 업무 변 화) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 33

제 1부 개요 / 2장 컴퓨터기반 시스템공학 2. 6 System reliability engineering (시스템 신뢰도 공학) u Because of component inter-dependencies, faults can be propagated through the system (부품의 상호종속성 때문에, 결함(고장)은 시스템 전반에 파급) u System failures often occur because of unforeseen inter-relationships between components (부품들간 예측불허의 상호 관련성 때문에 시스템 고장이 돌발) u It is probably impossible to anticipate all possible component relationships (모든 부품의 가능한 관련성을 예상하기는 불가능) u Software reliability measures may give a false picture of the system reliability (S/W 신뢰성 측도가 시스템 신뢰도의 것으로 하기는 무리) Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 34

제 1부 개요 / 2장 컴퓨터기반 시스템공학 2. 6 System reliability engineering (cont') u Reliability assessment (신뢰도 평가) • Has to be formulated at a systems level and not just at a software level • Hardware engineers have good (but limited) reliability models and can't understand the problems of software reliability • Operational profile depends on the way in which the system is used. u 신뢰도의 종류 (1) H/W 신뢰도 (2) S/W 신뢰도 (3) Operator 신뢰도 Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 35

제 1부 개요 / 2장 컴퓨터기반 시스템공학 2. 6 System reliability engineering (cont') u System resilience (시스템의 탄력성) - 한 개 이상의 부품고장에도 불구하고, 계속 운영될 수 있는 시스템의 능력 • What degree of resilience should be built into the system to allow for component availability? • What components need be duplicated to ensure adequate service • What alternative ways of providing a service can be devised Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 36

제 1부 개요 / 2장 컴퓨터기반 시스템공학 2. 6 System reliability engineering (cont') u Interface engineering • User interface determines what system facilities are used. • If the interface to some facilities is better than others, they will be more heavily used • Some reliability problems are actually user interface problems • User interfaces should be designed to minimize operator error Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 37

제 1부 개요 / 2장 컴퓨터기반 시스템공학 2. 6 System reliability engineering (cont') u User interface engineering problems • What is a mistake? • How can these mistakes be eliminated? » Error avoidance - don't allow the operator to do something that is incorrect » Error detection - detect an incorrect action and report it to the operator • What degree of operator over-riding should be allowed? Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 38

제 1부 개요 / 2장 컴퓨터기반 시스템공학 Conclusion u Systems engineering is hard! There will never be an easy answer to the problems of complex system development u Software engineers do not have all the answers but are often better at taking a systems viewpoint u Disciplines need to recognize each others strengths and actively rather than reluctantly cooperate in the systems engineering process Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 39

제 1부 개요 / 2장 컴퓨터기반 시스템공학 Key points u System u COTS engineering involves input from a range of disciplines systems are cheapest. However, most large systems require some tailored sub-systems u Software may act as ‘glue’ between COTS systems from different suppliers u Systems engineering process is usually a waterfall model Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 40

제 1부 개요 / 2장 컴퓨터기반 시스템공학 Key points u System architectural models should show major sub-systems and inter-connections. u They are usually described using block diagrams u System component types are sensor, actuator, computation, co- ordination, communication and interface u System reliability depends on hardware, software and operator reliability Software Engineering (Ian Sommerville, 5 th edition) Chungbuk National University, Network & Database Lab. Chapter 2 - Slide 41
- Slides: 41