Here are some key points from Unit 1:
- Software is computer programs, data structures, and documentation. Software engineering is the systematic development and maintenance of software.
- A software process provides a framework for development activities like communication, planning, modeling, construction and deployment. It establishes quality practices.
- Legacy software supports core functions but is outdated, poorly designed and documented. It is costly to replace but also to maintain.
- Common software myths include thinking requirements can change freely, documentation is unnecessary, or that quality is only important after coding. These undermine good practices.
- A process framework provides structure while methods and tools support specific technical tasks. Processes must balance control and flexibility for different projects.