CourseWork
-
[소프트웨어공학] Chapter 5 - (1) . 프로젝트 관리CourseWork/소프트웨어공학 2023. 4. 5. 21:37
프로젝트 계획 (Project Planning) 프로젝트 계획의 주요 목표 : 복잡한 기술 프로젝트를 제어, 추적 및 모니터링하기 위한 실용적인 전략을 수립하는 것 프로젝트가 시작되기 전 소프트웨어 팀은 다음과 같은 것들을 평가해야함 수행할 작업의 양 필요한 자원 시작부터 끝까지 소요될 시간 Task Set Establish project scope - 프로젝트 범위 정하기 Determine feasibility - 타당성 검토 Analyze risks - 리스크(위험성) 분석 Risk 분석은 항상 고려되어야한다! Define required resources - 필요한 자원 정하기 필요한 인력 자원을 결정하라 재사용가능한 소프트웨어를 정의하라 환경 자원을 정의하라 Estimate cost and eff..
-
[운영체제/OS] 1. OS란 ?CourseWork/OS(운영체제) 2023. 4. 5. 00:31
OS를 위한 컴퓨터구조 기초에 대해서는 5편까지 작성하도록 하고 OS에 대해 본격적인 설명을 해보도록 하겠다 ! What is Operating System? , OS란 ? 운영체제는 컴퓨터 시스템의 핵심 요소 중 하나로 여러 애플리케이션과 사용자들의 요구를 조율하여 공정하고 효율적인 방식으로 시스템 자원을 관리한다. 운영체제는 사용자와 하드웨어 간의 인터페이스 역할을 한다. → 운영체제는 소프트웨어 개발자가 하드웨어를 직접 다루는 것보다 간편한 가상 머신을 구현한다. 운영체제 하드웨어에서 구현되는 표준 서비스(인터페이스)를 제공한다. → 프로세스, CPU스케쥴링, 메모리 관리, 파일 시스템, 네트워킹 등이 포함 운영체제는 여러 애플리케이션과 사용자(멀티 프로세스)를 공정하고 효율적인 방식으로 조율한다...
-
[소프트웨어 공학] Chapter 4. 프로젝트 관리 개념(2) - 프로젝트 측정CourseWork/소프트웨어공학 2023. 4. 3. 12:58
* 교수님께서 소프트웨어 공학은 크게 엔지니어링 / 매니지먼트 (관리) 부분으로 나뉜다고 한다! 이러한 관점에서 이 과목을 잘 살펴보도록 해보자 ~~ 프로젝트 측정 (Measure) 1. 프로젝트 측정이 필요한 이유 1. To charactive : 측정하여 대상을 특징화하고 분류하는 것 2. To evaluate : 측정하여 대상을 평가하고 판단 3. To predict : 측정하여 대상의 미래 상황을 예측하는 것 4. To improve : 측정하여 대상을 개선하는 것 * (세분화된) 측정 이유 - access the status of an ongoing project 진행중인 프로젝트의 상황 평가 → 프로젝트가 계획대로 진행되고 있는지에 대한 여부 확인을 포함 - track potential ris..
-
[ 컴퓨터 네트워크 ] 2.8 socket programming with UDP and TCPCourseWork/네트워크 2023. 4. 2. 16:51
1. Socket Programming goal : 소켓을 이용하여 통신하는 클라이언트- 서버 애플리케이션을 구축하는 방법을 배울 것이다 ! 소켓 : 데이터를 주고 받기 위한 인터페이스를 제공하는 소프트웨어 모듈이며 클라이언트와 서버 간의 데이터 전송을 안정적으로 처리할 수 있도록 도와준다 ! '문'과 같은 역할을 한다고 생각하면 된다 ~ 애플리케이션 프로세스와 end-end간 전송 프로토콜 사이의 문! ex. 소켓은 클라이언트와 서버 간의 통신을 가능하게 해주는 문과 같은 역할을 한다. 이 문을 통해 애플리케이션 프로세스와 종단 (end-end) 간 전송 프로토콜 간에 데이터를 주고받을 수 있다. 소켓은 통신을 위한 인터페이스를 제공하며, 클라이언트와 서버 간의 데이터 전송을 안정적으로 처리할 수 있도..
-
[ 컴퓨터 네트워크 ] 2.7 vedio streaming and content distribution networksCourseWork/네트워크 2023. 4. 2. 12:47
이번 장에서는 비디오 스트리밍과 CDN (Content Distribution Networks)에 대해 알아본다 ! 유튜브, 넷플릭스 등 우리가 자주 사용하는 플랫폼에서 어떻게 수많은 영상들을 수많은 사용자에게 제공하는지에 대해 알아보자 ~ ! 1. Video Streaming and CDNs - context 우선 기술적으로 배우기에 앞서 비디오 스트리밍과 CDN의 배경, 문맥에 대해 알아보자! 비디오 트래픽 : 인터넷 대역폭의 주 사용자인 video traffic → 넷플릭스, 유튜브는 각각 ISP트래픽의 37%, 16%를 사용한다 ! 하지만 문제점이 있는데 .. 문제점1. ~1Billion에 달하는 수많은 사용자들에게 도달하는 방법 하나의 대형 비디오 서버는 이러한 트래픽을 감당할 수 없음 문제점 ..
-
[ 컴퓨터 네트워크 ] 2.6 P2P applicationsCourseWork/네트워크 2023. 4. 1. 21:03
제목에서 나오는 P2P : Peer to Peer 통신방식 .. 어딘가 익숙한데 .. ? 엇 ? 어디서 봤던 기억이 난다 ! 바로 2.1 network of application에서 ! client-server 방식과 P2P방식을 함께 봤었다 ~ 간략히 짚고 넘어가보자면 client-server , P2P 방식은 application의 아키텍쳐, 즉 애플리케이션의 설계도 혹은 청사진을 의미한다 ! *필자의 뇌가 아직 영어패치가 많이 적용되지 않아 아키텍쳐보단 설계도가 이해하기 쉬워 설계도라고 작성해보겠다. 클라이언트- 서버 설계도에서 클라이언트는 서비스를 요청하는 측, 서버는 이 요청을 받아 처리하고 결과를 클라이언트에게 반환하는 환경이다. 서버는 항상 켜져있고 여러 클라이언트들의 요청을 처리하고 응답을..
-
[소프트웨어공학] Chapter 4. 프로젝트 관리 개념(1) - 4PCourseWork/소프트웨어공학 2023. 3. 29. 14:46
소프트웨어 공학에서 프로젝트 관리는 소프트웨어 제품을 개발하고 유지, 보수하는 프로세스를 계획, 조정, 실행, 감시 및 제어하는 활동이다. 프로젝트 관리는 프로젝트를 성공적으로 완료하기 위해 프로젝트 팀원 간의 협력과 의사소통, 일정관리, 예산 관리 등의 다양한 요소를 조율해야한다 ! 4P는 프로젝트 관리에서 중요한 개념 중 하나로 Project(프로젝트), Product(제품), Process(프로세스), People(인력) 의 네가지 요소를 의미한다. 4P 개념은 프로젝트의 성공을 위해 모두 고려되어야하는 중요한 영역임 ~ ! People(사람) - 성공적인 프로젝트를 위한 핵심 자원 Product(산출물) - 만들어야 할 소프트웨어 결과물 Process(프로세스) - 작업완수에 필요한 일련의 프레임..
-
[컴퓨터 네트워크] 2.5 DNS (1)CourseWork/네트워크 2023. 3. 29. 11:33
이전까지는 다소 딱딱한 설명을 통해 여러분을 맞이하였다. 하!지!만! 들어가기에 앞서 이전포스팅에서 조금 아쉬운 부분에 대해 조금 더 쉽고 이해가는 방향으로 작성해보려고 한다 ~ DNS개념에 들어가기 전 잠시 정리하고 간다고 생각해주시길 바란다. 🍓 우리가 다른 컴퓨터로 데이터를 전송하기 위해서는 가장 먼저 데이터를 전송하는 프로그램이 보낼 데이터를 만드는 것이다. 택배를 보낼때에도 택배를 보낼 물건과 대상이 있어야만 택배를 부치고 주소를 적고 택배를 받는것처럼 ! 이렇게 데이터를 만드는 일을 하는 계층을 애플리케이션 계층이라고 한다. 그리고 데이터가 준비되었으니 이제 보낼 준비를 해야한다~ 그런데 어디로?????? 이때 필요한 것이 주소다 ! 일반적으로 네트워크상에서 주소는 크게 IP주소, 포트번호이다..