전체 글

전체 글

    Software Analysis and Design - Software Architecture Design

    1. Software Architecture 소프트웨어 아키텍쳐란 무엇일까? ISO/IEC/IEEE와 같은 표준 기구가 정의한 내용을 살펴보자면, 소프트웨어 아키텍쳐란 요소, 관계, 원칙, 디자인으로 구현된 환경에서의 시스템의 근본적인 개념 혹은 속성을 뜻한다. 위에 서술한 소프트웨어 아키텍처의 개념에서 구성 요소를 뽑아보면 다음과 같다. 1. Element (Component) 2. Relationship (Connector, Inter-component relationship) 3. Principle (아키텍쳐에서 component와 relationship을 바탕으로 어떻게 구성되는지에 대한 Constraints) 각 요소에 대해서 어떤것이 있고, 어떻게 세분화 되며, 어떻게 뽑아낼 수 있을지에 대해..

    Software Analysis and Design

    8. Functional and Data Component (3) 0. Component 1. Functional component 1-1. Functional component란? 1-2. Functional component 도출 방법 1-3. Functional component를 활용한 class implementation 1-4. UML에서 어떻게 Component를 나타내는가 1-5. Provided interface, Required interface 2. Data component 2-1. Data component란? 2-2. Data component 도출 방법 https://do-my-best.tistory.com/entry/Functional-and-Data-Component Sof..

    Software Analysis and Design - Design Patterns

    1. Design patterns란? 소프트웨어 개발 중 특정 문맥에서 발생할 수 있는 문제에 대한 solution을 나타내는 패턴으로, static / dynamic structure와 key participants간의 collaboration으로 이 문제에 대한 솔루션을 제공한다. 이렇게 패턴을 정의함으로써 이미 성공한 software architecture & design를 재사용 할 수 있다는 장점이 있다. Design Patters은 Creational patterns / Structural patterns / Behavior patterns로 분류 될 수 있다. 각 pattern이 어떤 의미를 갖고, 어떤것이 포함되는지 살펴보자. 1-1. Design pattern 분류 1-1-1. Creat..

    Software Analysis and Design - Functional and Data Component

    0. Component Component란 무엇인가? Component란 target system을 구성하는 cohesive unit(응집 단위)이다. Component가 나타내는 것에 따라서 우리는 Component를 Functional component와 Data component로 나눌 수 있다. 각 Component가 무엇을 의미하고 어떻게 얻을 수 있는지에 대해서 알아보자. 1. Functional component 1-1. Functional component란? functional component는 target system에 특정 기능을 제공하는 cohesive unit이다. 예를 들어, Car rental management system에서 유저의 데이터를 관리하는 functionalit..

    운영 체제 (Operating System)

    0. 운영 체제란? 운영 체제 또는 오퍼레이팅 시스템(Operating System, 약칭:OS)은 시스템 하드웨어를 관리할 뿐 아니라 응용 소프트웨어를 실행하기 위하여 하드웨어 추상화 플랫폼과 공통 시스템 서비스를 제공하는 시스템 소프트웨어이다. 또한 입출력과 메모리 할당과 같은 하드웨어 기능의 경우 운영 체제는 응용 프로그램과 컴퓨터 하드웨어 사이의 중재 역할을 한다.[1][2] 그러나 응용 프로그램 코드는 일반적으로 하드웨어에서 직접 실행된다. 운영 체제는 휴대 전화, 게임기에서부터 슈퍼컴퓨터, 웹 서버에 이르기까지 컴퓨터를 포함하는 거의 모든 장치에서 볼 수 있다. 잘 알려진 현대의 PC 운영 체제에는 마이크로소프트 윈도우, 맥 OS X, 리눅스가 있다.[3] 운영 체제는 실행되는 응용 프로그램들..

    운영 체제 (Operating System) - File system

    1. File system 1-1. File system의 정의 파일이란 무엇일까? 파일은 Byte의 배열 혹은 연관된 정보의 집합이다. 다음은 File과 Address soace를 비교한 표이다. File system은 File과 Physical disk block간의 Mapping을 제공한다. 따라서 사용자는 File이 저장된 위치를 알 필요 없이 사용 가능한 것이다(Independence)(File 안다면 Data block 고려할 필요 X) 또 다른 관점으로 file system은 Disk에 들어가 있는 File 전체를 총칭한다. File system에 따라 File들의 배치나 구성이 달라질 수 있다.(윈도우는 C를 기준으로, 리눅스는 /를 기준으로 대충 이런거) 그럼 파일은 어떤 것을 의미해서 ..