본문 바로가기

분류 전체보기395

1. 현행 시스템 파악(★★★) 현행 시스템 파악 개념 현행 시스템의 하위 시스템, 제공 기능, 연계 정보, 기술 요소 사용 파악 현행시스템 파악 절차 1단계 : 구성, 기능, 인터페이스 파악 2단계 : 아키텍처, 소프트웨어 구성 파악 3단계 : 하드웨어 및 네트워크 구성 파악 소프트웨어 아키텍처(Software Architecture) 개념 여러가지 소프트웨어의 구성 요소, 특성, 관계를 표현하는 시스템의 구조나 구조체 소프트웨어 아키텍처 프레임워크(Software Architecture Framework) 개념 : 아키텍처가 표현해야 하는 내용 및 이들간의 관계를 제공하는 아키텍처 기술 표준 구성요소 : 아키텍처 명세서(Architecture Description), 이해관계자(Stakeholder), 관심사(Concerns), 관.. 2023. 6. 12.
6월 12일 (2) python - 모듈 모듈(Modul)과 패키지(Package) 모듈 : 각종 변수, 함수, 클래스를 담고 있는 파일 패키지 : 여러 모듈을 묶어 놓은 것 import 키워드 : 코드에 모듈을 포함시키는 명령 작성문법) import 모듈 모듈.변수 모듈.함수() 내장함수(모듈 import 필요없음) input(), print() # import math # import math as m # 별칭 # math 모듈에서 pi 변수만 가져와서 사용 from math import pi # as를 붙이지 않고 사용 # print(math.pi) # print(math.e) # print(math.ceil(3.14)) # 올림 # print(math.floor(3.5)) # 내림 # print(math.pow(3, 2)) # 제곱 # .. 2023. 6. 12.
6월 12일 (1) python - 함수 함수 : 특정 용도의 코드(명령어)를 모아 놓은 것 정의형식) def 함수명(매개변수목록): 실행문장.... 사용형식) 함수명(값목록) 코드의 용도를 구분할 수 있다. 코드를 재사용할 수 있다. 실수를 줄일 수 있다. 호이스팅(hoisting) 선언 전에 사용 가능한 기법 파이썬 함수는 호이스팅이 불가! 함수 정의 먼저 후 호출하기 자바스크립트는 함수 표현식 콘솔에서 에러난 경우 삭제 후 다시 실행! def hello(): print("hello world!") def hi(): print("Welcome") if input('sel : ') == '1': hello() else: hi() # 단수(d)를 입력 받아서 해당 단을 출력 def gugudan(d): for i in range(1, 10): .. 2023. 6. 12.
1. 프로젝트 관리(★★★) 1. 프로젝트 관리 개념 : 주어진 기간 내에 최소의 비용으로 사용자를 만족시키는 시스템을 개발하기 위한 전반적인 활동 소프트웨어 생명주기의 전과정에 걸쳐서 진행 대상 : 계획관리, 품질관리, 범위관리 관리 3대 요소 : 사람(People), 문제(Problem), 프로세스(Process) 2. 비용산정 모형 개념 : 소프트웨어 규모파악을 통한 투입자원, 소요시간을 파악하여 실행 가능한 계획을 수립하기 위해 비용을 산정하는 방식 모형 하향식 산정방법 : 전문가 판단, 델파이 기법 상향식 산정방법 : 코드라인수(LoC), Man Month, COCOMO 모형, 푸트남 모형, 기능점수(FP) 모형 종류 LoC(Lines of Code) 모형 낙관치 : 가장 적게 측정된 코드 라인 수 중간치 : 측정된 모든 .. 2023. 6. 11.
객체 지향(Object Oriented) 분석 방법론 객체 지향(Object Oriented) 개념 실세계의 개체를 속성과 메서드가 결합한 형태의 객체로 표현하는 기법 객체지향(Object Oriented) 구성요소 클래스(Class), 객체(Object), 메서드(Method), 메시지(Message), 인스턴스(Instance), 속성(Property) 객체 지향(Object Oriented) 기법 캡슐화(Encapsulation) 상속성(Inheritance) 다형성(Polymorphism) : 오버로딩(Overloading), 오버라이딩(Overriding) 추상화(Abstration) 정보은닉(Information Hiding) 관계성(Relationship) : 연관화, 집단화, 분류화, 일반화, 특수화 * 오버로딩(Overloading) : 매.. 2023. 6. 10.
애자일(Agile) 애자일(Agile) 방법론의 개념 절차보다는 사람이 중심이 되어 변화에 유연하고 신속하게 적응하면서 효율적으로 시스템을 개발할 수 있는 신속 적응적 경량 개발 방법론 개발 기간이 짧고 신속하며, 워터폴에 대비되는 방법론으로 최근 회사에서 각광받는 방법론 사람중심, 변화 유연, 효율적, 신속 적응적 경량 개발 방법론 개발 기간 짧고 신속, 폭포수 모형에 대비, 피드백, 유동적 Discover - Design - Develop - Test(반복) 애자일(Agile) 방법론의 등장배경 소프트웨어 개발 환경의 변화 : 개발 트렌드가 모바일 환경으로 변화, 시장 적시성과 잦은 배포의 중요성 부각 기본 개발 방법의 한계 : 문서 절차 위주의 전통적 방법에 대해 변화에 신속 대응이 어려움, 빠른적용, 효율적 개발의 .. 2023. 6. 10.