软件工程导论Part0 Overview
Part0 Overview
Chap0 History of computer technology
1. History of Computing Tools
2. History of Software
3. The development of techniques in Modern computer age
Chap1 The Nature of Software
1. What is Software?
Software is a set of items or objects that form a “configuration” that includes
- programs (instructions) that when executed provide desired features, function, and performance;
- data structure that enable the programs to adequately manipulate information
- documentation that describes the operation and use of the programs
Traditional Programing
• Software=Algorithms + data structure
OO Programing
• Software=Objects + Messages
Component Oriented Programming
• Software=Components+Architecture
2. The nature of software
- Developed/engineered
- Deteriorates 退化
-
Custom built 定制的
SaaS Software as a Service
新的软件应用模式
厂商统一部署应用软件
客户按需获得服务
-
Complex
3. The category of software applications
- System software
- Application software
- Engineering/Scientific software
- Embedded software
- Product-line software
- Web/Mobile applications
- AI software (robotics, neural nets, game playing……)
4. The development of our native software
Chap2 Concepts of SE
1. Software Crisis
2. The Concept of Software Engineering
3. Software Process
What is a software process?
A process defines who is doing what, when, and how to reach a certain goal
Why we need software processes?
Software Process Framework
Process Framework
Framework activities
work tasks
work products
milestones & deliverables
QA checkpoionts
Umbrella Activities
Framework activities
Software Lifecycle
- Communication
- Planning
- Modeling
- Analysis ofrequirements
- Design
- Construction
- Code generation
- Testing
- Deployment
What is a Software Lifecycle?
软件有一个孕育、诞生、成长、成熟、衰亡的生存过程。这个过程即为计算机软件的生命周期(生存周期)
Umbrella activities
- Software project tracking and control
Risk management
Software quality assurance
Technical reviews
Measurement
Software configuration management
Reusability management
Work product preparation and production