unit 1 se

24
1 Software and Software Engineering Software and Software Engineering www.jntuworld.com www.jntuworld.com www.jwjobs.net

Upload: azhar-shaik

Post on 10-Feb-2017

121 views

Category:

Education


2 download

TRANSCRIPT

Page 1: Unit 1 se

1

Software and Software EngineeringSoftware and Software Engineering

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 2: Unit 1 se

2

SoftwareSoftware’’s Dual Roles Dual Role

Software is a productSoftware is a productDelivers computing potentialDelivers computing potentialProduces, manages, acquires, modifies, displays, or transmits Produces, manages, acquires, modifies, displays, or transmits informationinformation

Software is a vehicle for delivering a productSoftware is a vehicle for delivering a productSupports or directly provides system functionalitySupports or directly provides system functionalityControls other programs (e.g., an operating system)Controls other programs (e.g., an operating system)Effects communications (e.g., networking software)Effects communications (e.g., networking software)Helps build other software (e.g., software tools)Helps build other software (e.g., software tools)

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 3: Unit 1 se

3

What is Software?What is Software?

Software is a set of items or objects that form a “configuration” that includes

• programs • documents• data ...

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 4: Unit 1 se

12/30/2008 4

SoftwareSoftware

Software is the collection of computer programs, procedures, Software is the collection of computer programs, procedures, Rules and associate with documentation and dataRules and associate with documentation and data

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 5: Unit 1 se

12/30/2008 5

Software Engineering Software Engineering

Software Engineering is a systematic approach to development, Software Engineering is a systematic approach to development, operation, maintenance and retirement of software.operation, maintenance and retirement of software.

Or Or Software Engineering is the application of science and Software Engineering is the application of science and

mathematic by which the capabilities of computer equipment are mathematic by which the capabilities of computer equipment are made useful to man via computer programs, procedures and made useful to man via computer programs, procedures and

associated with documentation.associated with documentation.

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 6: Unit 1 se

12/30/2008 6

Goal of the Software Goal of the Software Engineering Engineering

The software produce high quality software at low cost The software produce high quality software at low cost

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 7: Unit 1 se

7

What is Software Engineering ? or What is Software Engineering ? or characteristicscharacteristics

software is engineeredsoftware is engineeredsoftware doesnsoftware doesn’’t wear outt wear outsoftware is complexsoftware is complex

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 8: Unit 1 se

8

Time

Failu

re ra

te

Idealized curve

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 9: Unit 1 se

9

Wear vs. DeteriorationWear vs. Deterioration

idealized curve

change

actual curve

Failurerate

Time

increased failurerate due to side effects

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 10: Unit 1 se

10

Wear outInfant Mortality

Failu

re ra

te

Time

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 11: Unit 1 se

11

Software ApplicationsSoftware Applications

system softwaresystem softwareapplication softwareapplication softwareengineering/scientific software engineering/scientific software embedded software embedded software productproduct--line softwareline softwareWebApps (Web applications)WebApps (Web applications)AI softwareAI software

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 12: Unit 1 se

12

SoftwareSoftware——New CategoriesNew Categories

Ubiquitous computingUbiquitous computing——wireless networkswireless networksNetsourcingNetsourcing——the Web as a computing enginethe Web as a computing engineOpen sourceOpen source——””freefree”” source code open to the computing source code open to the computing community (a blessing, but also a potential curse!)community (a blessing, but also a potential curse!)

Data miningData mining

Grid computingGrid computingCognitive machinesCognitive machinesSoftware for nanotechnologiesSoftware for nanotechnologies

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 13: Unit 1 se

13

Legacy SoftwareLegacy Software

software must be software must be adaptedadapted to meet the needs of new to meet the needs of new computing environments or technology.computing environments or technology.software must be software must be enhancedenhanced to implement new to implement new business requirements.business requirements.software must be software must be extended to make it interoperableextended to make it interoperablewith other more modern systems or databases.with other more modern systems or databases.software must be software must be rere--architectedarchitected to make it viable to make it viable within a network environmentwithin a network environment.

Why must it change?

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 14: Unit 1 se

14

Software EvolutionSoftware EvolutionThe Law of Continuing Change (1974):The Law of Continuing Change (1974): EE--type systems must be continually adapted else they type systems must be continually adapted else they become progressively less become progressively less satisfactorysatisfactory..

The Law of Increasing Complexity (1974):The Law of Increasing Complexity (1974): As an EAs an E--type system evolves its complexity increases type system evolves its complexity increases unless work is done to unless work is done to maintain or reduce itmaintain or reduce it..

The Law of Self Regulation (1974):The Law of Self Regulation (1974): The EThe E--type system evolution process is selftype system evolution process is self--regulating with regulating with distribution of product and process measures close to normal.distribution of product and process measures close to normal.

The Law of Conservation of Organizational Stability (1980):The Law of Conservation of Organizational Stability (1980): The average effective global activity The average effective global activity rate in an evolving Erate in an evolving E--type system is invariant over product type system is invariant over product lifetimelifetime..

The Law of Conservation of Familiarity (1980):The Law of Conservation of Familiarity (1980): As an EAs an E--type system evolves all associated with it, type system evolves all associated with it, developers, sales personnel, usersdevelopers, sales personnel, users, for example, must maintain mastery of its content and behavior, for example, must maintain mastery of its content and behaviorto achieve satisfactory evolution. to achieve satisfactory evolution.

The Law of Continuing Growth (1980):The Law of Continuing Growth (1980): The functional content of EThe functional content of E--type systems must be type systems must be continually increased to continually increased to maintain user satisfactionmaintain user satisfaction over their lifetime.over their lifetime.

The Law of Declining Quality (1996):The Law of Declining Quality (1996): The quality of EThe quality of E--type systems will appear to be declining type systems will appear to be declining unless they are rigorously maintained and adapted to unless they are rigorously maintained and adapted to operational environment changesoperational environment changes..

The Feedback System Law (1996):The Feedback System Law (1996): EE--type evolution processes constitute multitype evolution processes constitute multi--level, multilevel, multi--loop, loop, multimulti--agent feedback systems and must be treated as such to achieve siagent feedback systems and must be treated as such to achieve significant improvement over gnificant improvement over any reasonable base.any reasonable base.

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 15: Unit 1 se

15

Software MythsSoftware Myths

Affect managers, customers (and other nonAffect managers, customers (and other non--technical technical stakeholders) and practitionersstakeholders) and practitionersAre believable because they often have elements of truth, Are believable because they often have elements of truth,

but but ……Invariably lead to bad decisions, Invariably lead to bad decisions,

therefore therefore ……Insist on reality as you navigate your way through Insist on reality as you navigate your way through software engineeringsoftware engineering

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 16: Unit 1 se

16

Software Engineering Layers Software Engineering Layers

Tools

Methods

Process

A quality focus

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 17: Unit 1 se

17

Software Process FrameworkSoftware Process Framework

Process framework

Umbrella activities

Framework activity 1

Framework activity n

Software Process

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 18: Unit 1 se

18

Generic process framework activities Generic process framework activities

Communication Communication Planning Planning Modeling Modeling Construction Construction Deployment Deployment

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 19: Unit 1 se

19

Software project tracking and controlSoftware project tracking and control

Risk management Risk management Software quality assurance Software quality assurance Formal technical reviewsFormal technical reviewsMeasurement Measurement Reusability management Reusability management Work product preparation and productionWork product preparation and production

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 20: Unit 1 se

20

The capability maturity model integration The capability maturity model integration (CMMI)(CMMI)

PP

REQM

MA

CM

PPQA

Process area

coo

Cap

abili

ty le

vel

PP Project planning

REQM Requirements management

MA Measurement and analysis

CM Configuration management

PPQA Process and product QA

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 21: Unit 1 se

21

Level of CMMILevel of CMMI

Incomplete Incomplete PerformedPerformedManaged Managed Defined Defined Quantitatively managed Quantitatively managed Optimized Optimized

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 22: Unit 1 se

22

Process PatternsProcess Patterns

Customer communication Customer communication Requirements gathering Requirements gathering Spiral model or prototyping modelSpiral model or prototyping modelResulting contextResulting contextdeploymentdeployment

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 23: Unit 1 se

23

Process Assessment Process Assessment

Software process

Software ProcessAssessment

Software ProcessImprovement

CapabilityDetermination

Identifies capabilities and risk of SP

Is examined by SPAIdentifies modification to SPA

Leads to Leads to

Motivates

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net

Page 24: Unit 1 se

24

Personal and Team Process ModelsPersonal and Team Process Models

Personal Software Process (PSP)Personal Software Process (PSP)

Planning, High level design, High level design review, Planning, High level design, High level design review, Development, Postmortem.Development, Postmortem.

Team Software Process (TSP)Team Software Process (TSP)

Build selfBuild self--directed, Managers, Software process, directed, Managers, Software process, improvement guidance, teaching improvement guidance, teaching

ww

w.jntuw

orld.com

ww

w.jntuw

orld.com

ww

w.jw

jobs.net