Академический Документы
Профессиональный Документы
Культура Документы
Lecture 1A.1
Lecture Outline
Unit Outline
What is Software Engineering?
Why Bother with Software Engineering?
Product and Process
Lecture 1A.2
Unit outline
Objectives
Assessment
Passing the unit
Lectures, practice classes, the lecturer and
consultation
Recommended reading
Assignment work
Web pages
Lecture 1A.3
Objectives (1)
Lecture 1A.4
Objectives (2)
Lecture 1A.5
Lecture 1A.6
Lectures
Lecture 1A.7
Practice Classes
Lecture 1A.8
Lecture 1A.9
Recommended Reading
Lecture 1A.10
Assignment work
Lecture 1A.11
Extensions
If you believe that your assignment will be delayed because of
circumstances beyond your control, you must apply for an
extension before the due date
Medical certificates or certification supporting your
application may be required
Lecture 1A.12
Web site
Lecture 1A.13
Lecture 1A.14
Many Definitions
the establishment and use of sound engineering
principles in order to obtain economically software that is
reliable and works efficiently on real machines. (Bauer
1969)
The application of science and mathematics by which the
capabilities of computer equipment are made useful to man
via computer programs, procedures, and associated
documentation. (Boehm 1981)
The application of a systematic, disciplined, quantifiable
approach to the development, operation and maintenance
of software; that is the application of engineering to
software. (IEEE 1993)
Designing, building and maintaining large software systems
in a cost-effective way.
Lecture 1A.15
Lecture 1A.16
Lecture 1A.17
Lecture 1A.18
Some statistics
Lecture 1A.19
Lecture 1A.20
Lecture 1A.21
Lecture 1A.22
Is composed of
Programs
Data
Documentation
requirements, analysis & design documents, walk-through
minutes, test plan, user manuals, etc.
Lecture 1A.23
Lecture 1A.24
Understandability
Visibility
Supportability
Acceptability
Reliability
Robustness
Maintainability
Rapidity
Lecture 1A.25
Two questions
Is
Lecture 1A.26
5,000
Gigatron 2 50,000
Deluxe
Effort
Required
1
20
Errors
after
release
25
375 (15
times
Lecture 1A.27
Determining Process
Several Schemes
US Department of Defense use the Project
Formality Worksheet [McC1997]
Projects rate between 12 (minimal formality)
to 60 (maximum formality)
Most student projects are well under 20 and
require very minimal formal process to be
successful
Lecture 1A.28
Project Definition
Requirements Analysis
Design
Program Implementation
Component Testing
Integration Testing
System Testing
System Delivery
Maintenance
Lecture 1A.29
Project Definition
States the purpose of the project
Makes initial decision on political and technical feasibility
of the project
Requirements Analysis
High level definition of the functionality of the system,
primarily from the point of view of the users
Design
Looks at the software requirements of the system and the
architecture of the system
Lower level design activities - data structures, interface
representations, procedural (algorithmic) details
Lecture 1A.30
Program Implementation
Writing or generating the code to build the system
Component Testing
Testing of the individual components while they are being
built and after they have been completed
Integration Testing
Testing of the way individual components fit together
System Testing
Testing of the whole system usually in concert with the
users (acceptance testing)
Lecture 1A.31
System Delivery
Implementation of the system into the working
environment and replacement of the existing system
Maintenance
Corrective
Adaptive
Perfective
Lecture 1A.32
References
Lecture 1A.33