#오픈소스소프트웨어개발방법및도구 #오픈 #컴퓨터네트워크 #컴넷

제목[예상문제] 오픈소스SW개발방법및도구 (2024년 1학기 중간고사) @FINAL2024-03-26 22:47
작성자 Level 10

[01] Free Software Foundation에서 정의한 5가지 특징을 나열하고, 각각에 대해서 간단하게 설명합니다.


[02] 협의의 Linux와 광의의 Linux는 어떤 차이가 있는지 설명합니다.


[03] 소프트웨어 개발 문제를 계층적인 구조로 구분할때, 하위 HW부터 최상위 Application 사이의 계층은 어떤 것이 있는지 나열하고, 각각을 설명합니다. {Hypervisor 제외}


[04] Reverse Engineering은 소프트웨어 개발을 어떻게 하는 것인지, 일반적인 소프트웨어 개발과 비교하여 차이점을 설명합니다.


[05] Refactoring을 하는 6가지 이유를 나열하고, 각각을 간단하게 설명합니다.


[07] C/C++ 언어가 하드웨어를 제어할 수 있다는 것을 가능하게 하는 C/C++의 기술(혹은 문법)이 무엇이며, 이것을 사용하여 어떻게 하드웨어를 제어할 수 있는지 설명합니다.


[08] Waterfall 기반의 소프트웨어 개발 단계에 대해서 설명합니다.


[09] Agile Manifesto 4가지 원칙을 나열하고, 기존(Agile 이전의 개발 방법론) 대비 무엇이 달라지는 것인지 설명합니다.


[10] Agile 12 principles 중 3가지를 선택하여 설명하고, 이는 4가지 원칙 중 어디에 대한 각론인지 설명합니다.


[11] Scrum Process의 단계를 순서 적으로 나열하고, 각각의 단계에서 수행하는 작업을 설명합니다. (21P 기준)


[12] DevOps의 단계를 순서 적으로 나열하고, 각각의 단계에서 수행하는 작업을 설명합니다. (34P 기준)


[13] 프로그래밍 언어가 발전하여, 풍부한 데이터 클래스들을 제공하고 있지만, 전공자의 입장에서 자료구조와 알고리즘을 여전히 학습해야 하는 이유를 설명합니다. 


[14] Relational Database는 정보를 어떤 형태로 저장하는지 설명합니다. 특히 Relatioal 이라는 단어가 어떤의미이며, 실제 어떻게 Relation을 표현하는지 예를 들어 설명합니다.


[15] Message Sequence Chart는 무엇이고, 어떤 용도로 사용하는지, 간단한 예제를 그림으로 그리고, 이에 대해서 설명합니다.


[16] State Transition Diagram은 무엇이고, 어떤 용도로 사용하는지, 간단한 예제를 그림으로 그리고, 이에 대해서 설명합니다.


[17] 회사 하나를 1로 했을 경우, 회사들이 사용하는 OS는 Windows가 Linux 보다 훨씬 높은 수치로 나오는 것을 볼 수 있습니다. 이유를 설명합니다.


[18] Linux가 Distributed, Multi, Parallel 하가는 것이 어떤 의미인지 설명합니다.


[19] Hard Realtime이란 무엇이며, 대표적인 OS는 어떤 OS가 있는지 설명합니다.


[20] Trust Computing의 구현예인 Secure Computing은 어떻게 동작하는지 설명합니다.


[21] 본인의 관심분야/회사에 부합하는 개발자 컨퍼런스 혹은 전시회를 수업에서 설명한 내용 기준으로 하나 선정하여, 구체적으로 설명합니다.


<< 참조: 중간고사는 7주차까지를 범위로 함. 8주차 수업은 기말고사 범위로 포함함 >>

댓글