본문 바로가기
728x90

분류 전체보기152

소프트웨어 생명주기 모델 목차 1.소프트웨어 생명주기 2.스크럼 모델 3.XP 모델 4.프로젝트 관리 5.형상 관리 1.소프트웨어 생명주기 1-1. 개요 * 소프트웨어 개발 과정을 단계별로 나눈것 * 각 단계별 결과에 대한 산출물 표현 1-2. 폭포수 모델(Warterfall model) 1. 개발 이전 단계로 돌아갈수 없다 2. 한단계가 끝나야 다음단계로 넘어감 3. 매뉴얼 작성이 필요함 4. 단계별로 결과물이 명확하게 산출 1-3. 프로토타입 모델(Prototyping model) 1. 폭포수 모형의 단점을 보완한 모델 2. 사용자 요구사항 파악을위해 견본품을 만들어 결과물 예측 3. 사용자와 시스템 사이의 인터페이스 집중하여 개발 1-4. 나선형 모델(Spiral model) 1. 폭포수와 프로토 타입의 장점에 위험분석기능.. 2022. 6. 20.
소프트웨어 개발 방법론 목차 1.소프트웨어 개발 방법론 2.비용 산정 기법 3.소프트웨어 비용 추정 모형 4.소프트웨어 개발 표준 1. 소프트웨어 개발 방법론 1-1. 개요 * 소프트웨어 개발, 유지보수등에 필요한 여러가지 일들의 수행방법 * 개발 수행과정중 필요한 각종 기법과 도구 표준화 * 소프트웨어 생상선과 품질향상 목적 1-2. 구조적 방법론 1. 졍형화된 절차에 따라 사용자 요구사항을 파악하여 문서화하는 처리중심 방법론 2. 정보의 구조 중심으로 분석,설계,구현 3. 순차,선택,반복으로 프로그램 흐름구성 복잡성 감소 4. 분할정복을 통해 프로그램 모듈화 1-3. 정보공학 방법론 1. 정보시스템 개발에 관리절차와 작업 기법을 체계화 2. 계획,분석,설계,구축에 대한 정형화된 기법을 전체적으로 적용 3. 데이터, 업무활동.. 2022. 6. 19.
소프트웨어 분류와 특성 목차 1. 상용 소프트웨어 2. 시스템 소프트웨어 3. 플랫폼 4. 프레임워크 5. 컴포넌트 6. 소프트웨어 공학 1. 사용 소프트웨어(Commercial Software) 1-1. 상용 소프트웨어 개념 * 상업적 목적으로 생산되는 프로그램 * 시중에서 판매되고 유통되는 소프트웨어 * 홍보를 위한 무료 소프트웨어 포함 * 원시코드 제공하지 않음 1-2. 상용 소프트웨어 구분 1. 산업 특화 소프트웨어: 자동차, 항공, 조선, 농업 .. 2. 산업 범용 소프트웨어: 시스템 소프트웨어, 미들웨어, 응용소프트웨어 .. 1-3. 기업용 소프트웨어 1. OfficeWare: 회사나 단체 조직의 업무활동을 지원하는 그룹웨어 2. ERP: 경영 활동 프로세스들을 통합적으로 연계해서 관리하는 소프트웨어 3. SCM: .. 2022. 6. 18.
data type, let vs var vs const, hoisting global let , let(mutable data type) // 2.Variable let globalName='global name'; { let name='duduri'; console.log(name); // duduri name='hello'; console.log(name); // hello } console.log(name); // console.log(globalName); // global name globalName = 전역변수 ( 애플리케이션이 끝날때까지 메모리에 저장되어있다) { .. } 블럭밖에서 name 접근할 경우 값이 안나온다 (블록스코프) { .. } 블럭밖에서 globalName 접근할 경우 값이 나온다 var 를 지양하자 (호이스팅) { age=4; var age; .. 2022. 6. 11.
async vs defer 만약 js 파일이 크다면? 사용자가 웹사이트를 보기까지 시간이 많이 걸린다 스크립트는 head에 포함하는것은 좋지 않은방법 안에 js 다운받을때 사용자가 HTML 빨리보는 장점은 있다 자바스크립트 이용해서 의미있는 데이터를 받아오거나 DOM 요소를 이쁘게 꾸며줄때 사용자가 정상적인 웹페이지를 받기까지 시간이 걸린다 asyn 은 boolean 속성값 선언하는것 만으로도 True 설정 병렬로 js 파일을 다운로드하고 다운로드 완료되면 HTML 파싱을 멈추고 다운로드된 js 파일을 실행 에서 병렬적으로 다운받기 때문에 다운받는시간을 절약할수 있다 HTML이 파싱되기전에 실행되기 때문에 QuerySelector() 이용해서 DOM 요소조작할때 원하는요소의 HTML이 아직정의가 안되있을수 있다 js 다운 명령만 .. 2022. 5. 30.
15. 클래스와 맴버의 접근 권한을 최소화하라 어설프게 설계된 컴포넌트와 잘 설계된 컴포넌트의 가장 큰 차이는 바로 클래스 내부 데이터와 내부 구현 정보를 외부 컴포넌트로부터 얼마나 잘 숨겼느냐다 - 잘 설계된 컴포넌트는 모든 내부 구현을 완벽히 숨겨, 구현과 API를 깔끔히 분리한다 - 오직 API를 통해서만 다른 컴포넌트와 소통하며 서로의 내부 동작 방식에는 전혀 개의치 않는다. - 정보 은닉, 혹은 캡슐화라고 하는 이 개념은 소프트웨어 설계의 근간이 되는 원리다. 정보 은닉의 장점은 정말 많다 그중 대부분은 시스템을 구성하는 컴포넌트들을 서로 독립시켜서 개발, 테스트, 최적화 적용, 분석, 수정을 개별적으로 할수 있게 해주는것과 연관 되어 있다 * 시스템 개발 속도를 높인다. 여러 컴포넌트를 병렬로 개발할 수 있기 때문이다 * 시스템 관리 비용.. 2021. 10. 11.
728x90