[go: up one dir, main page]

100% found this document useful (1 vote)
472 views12 pages

Software Engineering II

The document discusses software engineering and provides the following key points: 1. Software engineering is the application of a systematic, disciplined, and quantifiable approach to developing, operating, and maintaining software. 2. Software engineering involves all aspects of software production, including project management and development of tools and methods to support software development. 3. A software engineer must produce high-quality software within budget and schedule constraints while balancing requirements like cost, efficiency, reliability, and usability.

Uploaded by

M Yasin Memon
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
472 views12 pages

Software Engineering II

The document discusses software engineering and provides the following key points: 1. Software engineering is the application of a systematic, disciplined, and quantifiable approach to developing, operating, and maintaining software. 2. Software engineering involves all aspects of software production, including project management and development of tools and methods to support software development. 3. A software engineer must produce high-quality software within budget and schedule constraints while balancing requirements like cost, efficiency, reliability, and usability.

Uploaded by

M Yasin Memon
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 12

Software Engineering II

Lecture 1
Software Engineering - IEEE

1. The application of a systematic, disciplined,


quantifiable approach to the development,
operation, and maintenance of software;
that is, the application of engineering to
software.
Software Engineering

all aspects of software production - Software


engineering is not just concerned with the
technical processes of software development but
also with activities such as software project
management and with the development of tools,
methods and theories to support software
production.

-Sommerville
A software engineer is challenged to
produce high-quality software with
finite amount of resources and to a
predicted schedule and budget.
Law of diminishing returns
Cost

Benefit
Making the engineering decision!
Software Engineering

Software Engineering is not just about producing software,


but about producing software in a COST-EFFECTIVE
manner.
The Balancing Act!

Potentially conflicting requirements

Cost vs. Efficiency


Cost vs. Reliability
Efficiency vs. User-interface

Challenge is to balance these requirements.


Software Development Loop

Problem
Definition

Technical
Status Quo
Development

Solution
Integration
The name of the game is continuous
change and evolution in all dimensions!
Well-Engineered Software

Provides the required functionality

Reliable Efficient
User-friendly Maintainable
Cost-effective
Breakdown of Effort Cost - Software
Cost Estimation by Capers Jones
No. Activity Effort 13 Configuration Mgt. 0.41%
1 Requirements 3.84% 14 Integration 2.71%
2 Prototyping 4.50% 15 User Documentation 9.67%
3 Architecture 2.25% 16 Unit Testing 4.50%
4 Project Plans 1.33% 17 Function Testing 4.50%
5 Initial Design 3.84%
18 Integration Testing 3.84%
6 Detailed Design 4.50%
19 System Testing 3.38%
7 Design Reviews 3.02%
20 Beta Testing 3.02%
8 Coding 13.50%
21 Acceptance Testing 1.94%
9 Reuse acquisition 1.13%
22 Independent Testing 3.38%
10 Package Purchase 1.69%
11 Code Inspection 4.50% 23 Quality Assurance 4.50%
12 Independent V&V 5.42% 24 Installation and Training 1.94%
25 Project Management 6.75%
A Software Engineering Framework

Method T
O
Task Set Process O
L
Quality Focus S

You might also like