01 What is sw?
1-1. SW in Nowadays
Software engineering is concerned with theories, methods and tools for professional software development.
1-2. Definition of sw
1-2-1. Program :
a collection of instructions executed by a computer, including compiled code as well as source code
코드들의 집합
1-2-2. Software :
not only programs(codes), but all artifacts(모든 산출물) created during sw development
= computer programs + associated documentation
Good SW should deliver the required functionality & performance(성능) to the user, and should be maintainable, dependable and usable
2. Characteristics of SW
2-1. Individual abilities (developer's ability) can affect productivity of sw development
SW (development) vs HW (manufacture, 대량 생산)
2-2. Quality degradation(하락), but not consumed
HW : 환경적 조건에 영향받음
SW : 요구사항을 반영 -> 실패율 증가
3. ETC of SW
3-1. SW problems to solve
3-1-1. Slow advancement of SW development
3-1-2. Increasing user demand for new SW
3-1-3. Partial use of management techniques
3-2. SW costs
3-3. SW crisis
Increasing req./ complexity/ difficulty,
Same human resource/ developing method/ tool
4. SW project failure
4-1. Increasing system complexity
4-2. Failure to use sw engineering methods
02 What is sw engineering?
1. SW engineering
1-1. What is engineering?
the study of using scientific principles (과학적 원리) to design and build machines, structures, and other things
applying engineering principles -> procedures & standards
1-2. SW Engineering
SW + engineering
technical process + project management + development of tools + methods ...
an engineering discipline that is concerned with all aspects of sw production
2. Importance of SW engineering
2-1. Dependency of SW
2-2. Cost saving
03 Characteristics of developing software
1. SW process activities
1-1. SW specification(명세화) : define sw & constraints
1-2. SW development(개발) : 설계, 프로그래밍
1-3. SW validation(검증) :
1-4. SW evolution(진화)
2. General issues that affect SW
2-1. Heterogeneity(이질성)
2-2. Business and social change
2-3. Security and trust
2-4. Scale
04 Details of sw engineering
1. Questions to understand SE
2. SW products
2-1. Generic products
2-2. Customized products
3. Product specification
3-1. Generic products : by developer
3-2. Customized products : by customer
4. Essential attributes of good SW
4-1. Maintainability(유지보수성)
4-2. Dependability and security(확실성,보안성)
4-3. Efficiency(효율성)
4-4. Acceptability(수용성)
05 Divergence of sw
1. SW engineering diversity
2. Application types
2-1. Stand-alone applications 독립형 어플리케이션
2-2. Interactive transaction-based applications 대화형
2-3. Embedded control systems
2-4. Batch processing systems
2-5. Entertainment systems
2-6. Systems for modeling and simulation
2-7. Data collection systems
2-8. Systems of systems (SoS)
3. SE fundamentals
Different types of application but SE fundamentals
06 SE ethics
1. SE ethics
2. Issues of professional responsibility
2-1. Confidentiality 비밀유지
2-2. Competence 능력
2-3. Intellectual property rights 지적 재산권
2-4. Computer misuse 컴퓨터 남용
3. ACM/IEEE code of ethics
07 추가