You are on page 1of 18

Scribd

Upload a Document

Top of Form

Search Documents
Bottom of Form

Explore

• Mohanapriya Kannan

/ 65
Top of Form

Bottom of Form
Download this Document for Free
Sub: CE
: Software Engineering
Chapter 1 - The Product
Overview

Software is designed and built by software engineers.

Software is used by virtually everyone in society.

Software engineers have a moral obligation to build reliable software that
does no harm to other people.

Software engineers view computer software, as being made up of the
programs, documents, and data required to
design and build the system.

Software users are only concerned with whether or not software products
meet their expectations and make their
tasks easier to complete.
Software

Software is both a product and a vehicle for developing a product.

Software is engineered not manufactured.

Software does not wear out, but it does deteriorate.

Currently, most software is still custom-built.
Software Application Types

System software

Real-time software

Business software

Engineering and scientific software

Embedded software

Personal computer software

Web-based software

Artificial intelligence software
Software Crisis

Software failures receive a lot more publicity than software engineering
success stories.
Charotar Institute of Technology-Changa
Page 1 of 65

Sub: CE
: Software Engineering

The software crisis predicted thirty years ago has never materialized and
software engineering successes
outnumber the failures.

The problems that afflict software development are associated more with
how to develop and support software
properly, than with simply building software that functions correctly.
Software Myths

Software standards provide software engineers with all the guidance they
need. The reality is the standards may
be outdated and rarely referred to.

People with modern computers have all the software development tools. The
reality is that CASE tools are more
important than hardware to producing high quality software, yet they are
rarely used effectively.

Adding people is a good way to catch up when a project is behind schedule.
The reality is that adding people only
helps the project schedule when is it done in a planned, well-coordinated
manner.

Giving software projects to outside parties to develop solves software project
management problems. The reality ispeople who can’t manage internal
software development problems will struggle to manage or control the
externaldevelopment of software too.

A general statement of objectives from the customer is all that is needed to
begin a software project. The reality is
without constant communication between the customer and the developers
it is impossible to build a software
product that meets the customer's real needs.

Project requirements change continually and change is easy to
accommodate in the software design. The reality is
that every change has far-reaching and unexpected consequences. Changes
to software requirements must be
managed very carefully to keep a software project on time and under
budget.

Once a program is written, the software engineer's work is finished. The
reality is that maintaining a piece of
software is never done, until the software product is retired from service.

There is no way to assess the quality of a piece of software until it is actually
running on some machine. The reality
is that one of the most effective quality assurance practices (formal technical
reviews) can be applied to any
software design product and can serve as a quality filter very early in the
product life cycle.

The only deliverable from a successful software project is the working
program. The reality is the working program
is only one of several deliverables that arise from a well-managed software
project. The documentation is also
important since it provides a basis for software support after delivery.

Software engineering is all about the creation of large and unnecessary
documentation. The reality is that softwareengineering is concerned with
creating quality. This means doing things right the first time and not having
to createdeliverables needed to complete or maintain a software product.
This practice usually leads to faster delivery timesand shorter development
cycles.
Charotar Institute of Technology-Changa
Page 2 of 65

Sub: CE
: Software Engineering
Chapter 2 - The Process
Overview

The roadmap to building high quality software products is software process.

Software processes are adapted to meet the needs of software engineers
and managers as they undertake the
development of a software product.

A software process provides a framework for managing activities that can
very easily get out of control.

Different projects require different software processes.

The software engineer's work products (programs, documentation, data) are
produced as consequences of the
activities defined by the software process.

The best indicators of how well a software process has worked are the
quality, timeliness, and long-term viability of
the resulting software product.
Software Engineering

Software engineering encompasses a process, management techniques,
technical methods, and the use of tools.
Generic Software Engineering Phases

Definition phase - focuses on what (information engineering, software project
planning, requirements analysis).

Development phase - focuses on how (software design, code generation,
software testing).

Support phase - focuses on change (corrective maintenance, adaptive
maintenance, perfective maintenance,
preventative maintenance).
Software Engineering Umbrella Activities

Software project tracking and control

Formal technical reviews

Software quality assurance

Software configuration management

Document preparation and production

Reusability management
Charotar Institute of Technology-Changa
Page 3 of 65

Sub: CE
: Software Engineering

Measurement

Risk management
Common Process Framework

Software engineering work tasks

Project milestones

Work products

Quality assurance points
Software Engineering Institute (SEI) Capability Maturity Model (CMM)

Level 1: Initial (ad hoc software processes)

Level 2: Repeatable (able to repeat earlier successes)

Level 3: Defined (management and engineering processes documented,
standardized, and integrated into
organization-wide software process)

Level 4; Managed (software process and products are quantitatively
understood and controlled using detailed
measures)

Level 5: Optimizing (continuous process improvement is enabled by
quantitative feedback from the process and
testing innovative ideas)
Software Process Models

Linear Sequential Model (old fashioned but reasonable approach when
requirements are well understood)

Prototyping Model (good first step when customer has a legitimate need, but
is clueless about the details,
developer needs to resist pressure to extend a rough prototype into a
production product)

Rapid Application and Development (RAD) Model (makes heavy use of
reusable software components with an
extremely short development cycle)

Incremental Model (delivers software in small but usable pieces, each piece
builds on pieces already delivered)

Spiral Model (couples iterative nature of prototyping with the controlled and
systematic aspects of the linear
sequential model)

Win-Win Spiral Model (eliciting software requirements defined through
negotiation between customer and
developer, where each party attempts to balance technical and business
constraints)

Concurrent Development Model (similar to spiral model often used in
development of client/server applications)

Component-Based Development (spiral model variation in which applications
are built from prepackaged software
components called classes)
Charotar Institute of Technology-Changa
Page 4 of 65
Software Engginering Roger Pressman
Download this Document for FreePrintMobileCollectionsReport Document
Info and Rating
Education-Colleges-and-Universities
architecture styles
text
modules like
defect
solution set
(more tags)
dharmik6610
Ads by Google

SyncroFIT 2010 Software


Now Available
from Vistagy, Inc.
www.vistagy.com

BSc / BCA & BCM graduates


of 2011, work with Wipro & get
sponsored MS degree from BITS
wipro.institute.net.in/Apply

Software Testing Courses


Find Top Training Centers in India.
Get Info on Courses,Admission,Fees.
www.Shiksha.com/Software-Testing
Sections
show all« prev | next »
 Chapter 1 - The Product
 Chapter 2 - The Process
 Chapter 3 - Project Management Concepts
 Chapter 4 - Software Process and Project Metrics
 Chapter 5 - Software Project Planning
 Chapter 6 - Risk Analysis and Management
 Chapter 7 - Project Scheduling and Tracking
 Chapter 8 - Software Quality Assurance
 Chapter 9 - Software Configuration Management
Share & Embed
Related Documents

PreviousNext
1.
p.

p.

p.

2.
p.

p.

p.
3.
p.

p.

p.

4.
p.

p.

p.
5.
p.

p.

p.

6.
p.

p.
p.

7.
p.

p.

p.

8.
p.

p.
p.

9.
p.

p.

p.

10.
p.

p.
p.

11.
p.

p.

p.

12.
p.
p.

p.

13.
p.

p.

p.

14.
p.
p.

p.

15.
p.

p.

p.

16.
p.
p.

More from this user

PreviousNext
1.
104 p.

65 p.

Recent Readcasters
Add a Comment
Top of Form
Bottom of Form

Alka Jhaleft a comment


Plz send me too the notes..at alkajha87@gmail.com
4 days ago

Pravat Pandaleft a comment


notes...................!!!
02 / 08 / 2011

Rahul Kansalleft a comment


left a comment
01 / 05 / 2011
Sanjay Kumarleft a comment
can any body plz. send me these notes @goyalfrequent@gmail.com
12 / 23 / 2010

richaarya23left a comment
is reading Software Engginering Roger Pressman.
12 / 19 / 2010
Upload a Document
Top of Form

Search Documents
Bottom of Form
• Follow Us!
• scribd.com/scribd
• twitter.com/scribd
• facebook.com/scribd
• About
• Press
• Blog
• Partners
• Scribd 101
• Web Stuff
• Scribd Store
• Support
• FAQ
• Developers / API
• Jobs
• Terms
• Copyright
• Privacy
Copyright © 2010 Scribd Inc.
Language:
English

You might also like