IT/DataStructure 자료구조
[자료구조 #1] Software Engineering Principles
CTHY
2020. 3. 29. 21:16
The Software Process 소프트웨어 과정
- Problem analysis
문제 분석 - Requirements elicitation
요구사항을 이끌어냄 - 프로그램이 반드시 동작해야 하는 것을 규정 - Requirements definition
세부사항 functional/nonfunctional requirements를 세부화 - High-and low-level design
디테일한 디자인에 대한 큰그림 - Implementation of the design
컴퓨터 언어로 프로그램 코딩 - Testing and Verification
에러를 찾아서 고치고 프로그램의 당위성을 단정 - Delivery
테스트된 프로그램을 유저에게 제공 - Operation
실질적으로 프로그램 사용 - Maintenance
operational errors를 바꾸고 프로그램의 기능을 추가하고 변경
Goals of Quality Software
- It works
- It can be modified without excessive time and effort
- It is reusable
- It it completed on time and within budget
Abstraction
is a model of a complex sysyem that includes only the essential details.
the fundamental way that we manage complexity.
"추상화"는 복잡함을 줄이기 위한 근본적인 방법으로 필요한 디테일만 포함하는 모델
Errors
- Complie-Time Errors
These mistakes resulted in error messages "Type missmatch, Illegal Assignment, Semicolon expected and so on.."
컴파일 에러는 타입, 변수 선언, 세미콜론 등으로 발생한다. - Run-Time Errors
Errors that occur during the execution of a program are usaully more difficult to detect than syntax errors.
런타임 에러는 프로그램이 실행되면서 발생하는 에러이다. 대체적으로 syntax error보다 찾기 어렵다.