11
Software Development http:// www.greymatterindia.com

Software Development

Embed Size (px)

DESCRIPTION

Software development is a process that requires descipline. In order to create quality products, there must be a streamlined process to follow. Check out the details here.See More At : http://www.greymatterindia.com/offshore-software-development

Citation preview

Page 1: Software Development

Software Development

http://www.greymatterindia.com/

Page 2: Software Development

Software Development Process Overview

The general elements of a software engineering discipline

The phases of any significant software development project

Personnel involved

Ongoing activities regardless of the phase

Software process models

The importance of a disciplined process

For experienced software developers, the component-level process is often less conspicuous, involving well-established and automated patterns of thinking. This does not diminish its importance.

Software developers need good automated thinking habits to free their minds for dealing with more complex issues.

http://www.greymatterindia.com/

Page 3: Software Development

Software Enigineering Elements

Abstraction

Analysis and Design Methods and Notations

User Interface Prototyping

Software Architecture

Software Process

Software Reuse

Measurement (Metrics)

Tools and Integreated Environments

http://www.greymatterindia.com/

Page 4: Software Development

Software Development Phases

Requirements Analysis and Definition

System Design

Program Design

Program Implementation

Unit Testing

Integration Testing

System Testing

System Delivery

Maintenance/Evolution

http://www.greymatterindia.com/

Page 5: Software Development

Ongoing Activities

Risk Analysis

Planning

Program Design

Verification and Validationn

Documentation

Integration Testing

System Testing

System Delivery

Maintenance/Evolution

http://www.greymatterindia.com/

Page 6: Software Development

Process Models

Software process models are general approaches for organizing a project intoactivities.

The Opportunistic Approach

The Waterfall Model

The Uncontrolled Approach

The Prototype as a Central Element

The Phased-Release Model

The Spiral Model

Extreme Programming (AGILE) & The Transformational Model

http://www.greymatterindia.com/

Page 7: Software Development

The Importance of a Disciplined Process

A disciplined software process serves two main purposes:

Helps developers better understand what they are doing

Helps managers make more accurate predictions about how long a project will take

Predictability is crucial for setting reasonable goals and planning resource allocation.

http://www.greymatterindia.com/

Page 8: Software Development

The Importance of a Disciplined Process - Understanding

As software developers work through a disciplined process, they are developing a complex mental roadmap of:

The values of the client

The concepts that are important to the client

Software patterns for achieving the desired behavior

Software patterns for achieving the desired behavior

Common sense and experience both support the importance of this understanding.

http://www.greymatterindia.com/

Page 9: Software Development

The Importance of a Disciplined Process - Predictability

When undertaking a new project, software managers must be able to estimate the resources required so that:

A reasonable estimate of cost can be given to the purchaser

Internally, managers can anticipate needs and coordinate between multiple projects.

A disciplined process is essential for managers to call upon previous experience in order to make resource estimates:

With an undisciplined process, there is too much variation in how long it takes to accomplish a task among previous projects, and a reliable estimate cannot be made for new projects

With a disciplined process, managers develop a better sense of how long it takes to accomplish various kinds of tasks and what kinds of skills are needed.

http://www.greymatterindia.com/

Page 10: Software Development

http://www.greymatterindia.com/

Page 11: Software Development

http://www.greymatterindia.com/