Title: Introduction to Software Engineering
1Introduction to Software Engineering
- CS 3802- Fall Semester 1999
- Allison Elliott Tew
2Agenda
- Course Overview
- Instructors
- Textbooks
- Policies
- Lecture Schedule
- Introductions
- Introduction to Software Engineering
3What is Software Engineering?
4Software Engineering
- Classic Definition (1969)
The establishment and use of sound engineering
principles in order to obtain economically
software that is reliable and works efficiently
on real machines.
Software Engineering (1) The application of a
systematic, disciplines, quantifiable approach to
the development, operation, and maintenance of
software that is the application of engineering
to software. (2) The study of approaches as in
(1).
5Problem Solving
COMPUTER SCIENCE
CUSTOMER
Computer Functions
Theories
Problem
SOFTWARE ENGINEERING
Tools and Techniques to Solve Problem
6Evolving Role of Software
- Early Years
- Batch orientation
- Custom software
- Second Era
- Multi-user, Real-time
- Database
- Product software
- Third Era
- Distributed systems
- Low cost hardware
- Fourth Era
- Desktop systems
- Object Oriented Technologies
- Expert Systems
- AI, neural networks
- Parallel computing
- Network computers
7Ongoing Problems
- Hardware advances outpace ability to build
software to tap potential - Ability to build new programs cannot meet demand
for new programs, nor do we build fast enough to
meet business and market needs - Widespread use of computers has made society
increasingly dependent - Struggle to build software with high reliability
quality - Ability to support and enhance programs is
threatened by poor design and few resources
8Coming Up Next...
- Project Overview
- Team Organization
- Project planning and organization