컴퓨터 네트워크
서비스 제공
- defact 표준: 표준 아니지만 표준 처럼 사용
서비스 | WWW | FTP | |
프로토콜 | HTTP | FTP | SMTP |
프로그램 | httpd(서버), 크롬(클라이언트) | FTPd(서버), ftp, ftp.exe | 아웃룩 |
패러다임
- peer-to-peer 패러다임
- 클라이언트- 서버 패러다임
소프트웨어 공학
Soft Evolution
학습 목표: Evolution process, Legacy가 어떤 것이고 어떻게 처리되는지, software maintenance, soft requirement 변경
Evoulution process
- change → impact: 바뀌어서 생긴 영향
- IDE에러, platform error: 플랫폼 변경시 생기는 오류, Nonfuctional requirement수정시 발생하는 에러
handover problem: Agile→ plan base로 아니면 그 반대로 넘겨줬을 때 발생하는 문제
Automated regression testing: 회귀 버그를 찾는 모든 소프트웨어 테스트 방식은 회귀 테스트(regression testing, non-regression testing)라 할 수 있다. 회귀 버그는 이전에 제대로 작동하던 소프트웨어 기능에 문제가 생기는 것을 가리킨다. 일반적으로 회귀 버그는 프로그램 변경 중 뜻하지 않게 발생한다.
회귀 테스트로는 이전의 실행 테스트를 재 실행하며 이전에 고쳐졌던 오류가 재현되는지 검사하는 방법이 많이 사용된다.
https://ko.wikipedia.org/wiki/회귀_테스트
TDD를 사용하여 원래 fuction이 제대로 동작하는지 확인
Legacy systems: 오래된 시스템, 지금 시스템과 맞지 않음
Legacy를 바꾸는 것은 risky하고 expensive함, 여러가지 위험한 요인들이 있음
Legacy management
- scrap: 잘라서 사용
- maintain: 현상유지
- transform, re-engineering(규모가 큰 리팩토링): 쓸만한 상태로 바꾸기
- replace
상황에 맞춰서 앞의 4가지 전력을 사용하는 것이 좋다
Business value Assessment: 소프트웨어가 비즈니스 적으로 어떠한 가치를 가지는지 판단
- system dependability이 어떠한지 파악해야함
- 뽑아내는 아웃풋이 어떠한지 파악해야함
System Quality Assessment: 시스템적으로 어떠한 가치를 가지는지 파악, 개발자인 만틈 더 구체적으로 파악하는 것이 필요
- Business process assessment: 달성해야하는 목표를 잘 이루는가
- Enviroment assessment: 현재 환경에서 유지보수하는데 들어가는 비용
- Application assessment: 소프트웨어 시스템 퀄리티
Soft ware maintenance
- 사용단계로 갔을 때 단계 수정
- maintenance는 major change 포함 안함
- minor change 있는지, 작은 추가사항 정도
Maintenance의 종류
- fault repairs
- Environmental adaptation
- Fuctionality addition and modification
Maintenance costs
기술적이지 않은 요소에도 영향받음 ex) 킥보드 회사의 정부정책으로 인한 영향
코스트를 줄이기 위해 노력하는 것이 필요
Software reengineering
- without changing its fuctionality
- refactoring과 비슷, 그런데 더 대규모로 진행
- non-fuctionality를 향상시킴
- 이점: risk와 cost문제 해결
대학생을 위한 시사
미중 무역 갈등
각 국가간 눈치, 외교 싸움이 더 과열됨
인도: 러시아와 붙어서 천연가스를 싸게 수입
일본: 미국과 더 밀착하여서 아시아에서 미국의 대리인 포지션을 가져감
교육개혁
- 교육 개혁의 필요성과 해결방안
연금 개혁
- 소득 대체율 문제: 우리나라는 소득 대체율이 낮음 → 노인 빈곤률 문제, 자살률 문제
소득대체율: 은퇴 뒤 받는 국민연금이 은퇴 전 소득과 비교해 어느 정도 비율인지를 나타내는 지표
노동개혁
- 노조 가입률이 낮음, 서로 양보가 필요함, 처우 개선이 필요함 → 그러나 연대가 잘 되지 않음
- 노동 시장 이중 구조 개선 필요
- 우리나라의 노동 효율성이 낮음, 노동 생산성도 낮음 → 개혁 필요
시스템 프로그래밍
Integer Arithmetic: 곱셈, 나눈셈
- Logical shifts, Arithmetic shifts: 산술 연산과 관련, 나눗셈을 한뒤에도 부호 그대로(MSB를 그대로 두어서)
- SHL: Logical, 방향 왼쪽, 곱하기 2와 같은 효과, 8비트 만큼의 shifting을 허용
- SHR: 2^n으로 나누는 효과
→ 위의 연산들은 숫자가 unsigned라 가정했을 때 사용 가능!, signed일 때는 다른 방식을 사용하는 것이 필요함
4. SAL, SAR: MSB유지, 부호 유지, SAL은 shift left와 같은 연산임, SAR은 MSB가 빈칸되는 자리에 원래의 값을 카피해서 부호를 유지한다
5. ROL: MSB를 Carry와 LSB로 이동시킨다. 비트를 잃지 않음
6. ROR: ROL과 비슷, 방향만 반대
7. RCL,RCR: 캐리까지 포함해서 로테이션을 돎
8. Signed Overflow: overflow가 어떻게 세팅되는지, 피연산자가 signed일때 연산결과 부호가 달라지는 경우 → overflow발생
9. SHLD, SHRD: dest, source를 붙여서 연산, 소스는 값이 업데이트 되지않지만 dest는 값 변함, 빠져나가는 쪽이 dest
- 한비트씩 3번 로테이션 = 3비트씩 1번 로테이션
'공부 > 컴퓨터 공학, 학교 공부' 카테고리의 다른 글
게임과 인문학 2차시 수업 정리 (0) | 2023.09.24 |
---|---|
5월 둘째주 학교공부 정리 (1) | 2023.05.14 |
4월 마지막 주차 학교 공부 정리 (0) | 2023.04.30 |
소프트웨어 공학 파이썬 퀴즈 (0) | 2023.04.09 |
유닉스 시스템 프로그래밍 프로젝트 (1) | 2022.12.30 |