handout 2
DESCRIPTION
TRANSCRIPT
* Property of STIPage 1 of 12
Software Engineering
I0065
Software Engineering
Software Engineering
Software Engineering Layers
Software Engineering Paradigms
1 _________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________
* Property of STIPage 3 of 12
Software Engineering
I0065
Software Engineering Layers
process — the glue that holds the technology layers together and enables rational and timely development of computer software
methods — provide the technical “how to’s” for building software
tools — provide automated or semi-automated support for the process and the methods
3 __________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________
* Property of STIPage 2 of 12
Software Engineering
I0065
Software Engineering
According to Fritz Bauer, software engineering is the establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines.
According to IEEE, software engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software – that is, the application of engineering to software.
2 _________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________
* Property of STIPage 4 of 12
Software Engineering
I0065
Software Engineering Paradigms
Classic Life Cycle
Prototyping
Spiral Model
Fourth Generation Technique
Object-Oriented Model
4 __________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________
* Property of STIPage 5 of 12
Software Engineering
I0065
Classic Life Cycle Model
5 _________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________
* Property of STIPage 7 of 12
Software Engineering
I0065
Prototyping Model
Prototyping can be problematic for the following reasons:
The customer sees what appears to be a working version of the software, unaware that in the rush to get it working we haven’t considered overall software quality or long-term maintainability.
The developer often makes implementation compromises in order to get a prototype working quickly.
7 __________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________
* Property of STIPage 6 of 12
Software Engineering
I0065
Prototyping Model
listen tocustomer
build/revisemock-up
customertest-drivesmock-up
6 _________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________
* Property of STIPage 8 of 12
Software Engineering
I0065
Spiral Model
8 __________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________
* Property of STIPage 9 of 12
Software Engineering
I0065
Spiral Model
SIX TASK REGIONS
customer communication — tasks required to establish effective communication between developer and customer
planning — tasks required to define resources, timelines, and other project related information
risk analysis — tasks required to assess both technical and management risks
engineering — tasks required to build one or more representations of the application
construction & release — tasks required to construct, test, install and provide user support (e.g., documentation and training)
customer evaluation — tasks required to obtain customer feedback based on evaluation of the software representations created during the engineering stage and implemented during the installation stage
9 _________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________
* Property of STIPage 11 of 12
Software Engineering
I0065
Fourth Generation Techniques
automatically generates source code based on the developer’s specification
focus on the ability to specify software to a machine at a level that is close to natural language or using a notation that imparts significant function
include some or all of the following tools: nonprocedural languages for database query, report generation, data manipulation, screen interaction and definition, and code generation
11 _________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________
* Property of STIPage 10 of 12
Software Engineering
I0065
Spiral Model
10 ________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________
* Property of STIPage 12 of 12
Software Engineering
I0065
Fourth Generation Techniques
Summary of the current state of 4GT approaches:
The use of 4GT has broadened considerably over the past decade and is now a viable approach for many different application areas.
Data collected from companies who are using 4GT indicates that the time required to produce software is greatly reduced for small and intermediate applications and that the amount of design and analysis for small applications is also reduced.
The use of 4GT for large software development efforts demands as much or more analysis, design, and testing to obtain the substantial time saving that can be achieved through the elimination of coding.
12 _________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________