0% found this document useful (0 votes)
162 views16 pages

Understanding Software Engineering Basics

This document discusses software engineering and provides definitions and context. It defines software as both a product and a vehicle for delivering functionality. Software engineering is introduced as applying engineering principles to the development, operation, and maintenance of software. The document notes that historically only 28% of software projects are completed on time and on budget, with time and cost overruns being common. It also mentions that software must change over time to meet new needs and integrate with other systems.

Uploaded by

Taqi Shah
Copyright
© Attribution Non-Commercial (BY-NC)
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
0% found this document useful (0 votes)
162 views16 pages

Understanding Software Engineering Basics

This document discusses software engineering and provides definitions and context. It defines software as both a product and a vehicle for delivering functionality. Software engineering is introduced as applying engineering principles to the development, operation, and maintenance of software. The document notes that historically only 28% of software projects are completed on time and on budget, with time and cost overruns being common. It also mentions that software must change over time to meet new needs and integrate with other systems.

Uploaded by

Taqi Shah
Copyright
© Attribution Non-Commercial (BY-NC)
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

SoftwareEngineering

SoftwareandSoftwareEngineering

SoftwaresDualRole

Softwareisaproduct

Softwareisavehiclefordeliveringaproduct

Deliverscomputingpotential Produces,manages,acquires,modifies,displays,ortransmits information Supportsordirectlyprovidessystemfunctionality Controlsotherprograms(e.g.,anoperatingsystem) Effectscommunications(e.g.,networkingsoftware) Helpsbuildothersoftware(e.g.,softwaretools)

WhatisSoftware?
Softwareisasetofitemsorobjects thatformaconfigurationthat includes programs documents data...

WhatisSoftware?

softwareisengineered softwaredoesntwearout softwareiscomplex

SoftwareApplications

systemsoftware applicationsoftware engineering/scientificsoftware embeddedsoftware productlinesoftware WebApps(Webapplications) AIsoftware

LegacySoftware
Whymustitchange?

softwaremustbeadaptedtomeettheneedsofnew computingenvironmentsortechnology. softwaremustbeenhancedtoimplementnew businessrequirements. softwaremustbeextendedtomakeitinteroperable withothermoremodernsystemsordatabases. softwaremustberearchitectedtomakeitviable withinanetworkenvironment.

WhatisSoftwareEngineering?
Ahistoricaldefinition:
Theestablishmentanduseofsoundengineeringprinciplesinorderto obtaineconomicallysoftwarethatisreliableandworksefficientlyonreal machines[FritzBauer,atthe1stNATOConferenceonSoftwareEngineering,
1969]

IEEEdefinition:

Softwareengineeringistheapplicationofasystematic,disciplined, quantifiableapproachtothedevelopment,operation,andmaintenanceof software;thatis,theapplicationofengineeringtosoftware.

FactsaboutSoftwareProjects
28%
completed on time and on budget canceled before completion overran original estimates: -Time overrun averaged 63% - Cost overrun averaged 45%

23%

49%

SoftwareMyths
Affectmanagers,customers(andothernontechnical stakeholders)andpractitioners Arebelievablebecausetheyoftenhaveelementsoftruth, but Invariablyleadtobaddecisions, therefore Insistonrealityasyounavigateyourwaythrough softwareengineering

10

SoftwareMyths

11

DevelopersPrespective

12

Management'sPerspective

13

Management'sPerspective

14

15

16

You might also like