Professional Documents
Culture Documents
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 1
Objectives
l
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 2
Topicscovered
l l
FAQsaboutsoftwareengineering Professionalandethicalresponsibility
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 3
Softwareengineering
l
l l
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 4
Softwarecosts
l
IanSommerville2006
FAQsaboutsoftwareengineering
l l l
l l
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 6
FAQsaboutsoftwareengineering
l l l
l l
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 7
Whatissoftware?
l
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 8
Whatissoftwareengineering?
l
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 9
Whatisthedifferencebetweensoftware engineeringandcomputerscience?
l
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 10
Whatisthedifferencebetweensoftware engineeringandsystemengineering?
l
Systemengineeringisconcernedwithall aspectsofcomputerbasedsystems developmentincludinghardware,softwareand processengineering.Softwareengineeringis partofthisprocessconcernedwithdeveloping thesoftwareinfrastructure,control,applications anddatabasesinthesystem. Systemengineersareinvolvedinsystem specification,architecturaldesign,integration anddeployment.
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 11
Whatisasoftwareprocess?
l
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 12
Whatisasoftwareprocessmodel?
l
Genericprocessmodels
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 13
Whatarethecostsofsoftwareengineering?
l
IanSommerville2006
Activitycostdistribution
Wat er fallmodel 0 25 5 0 75 100 Specification Design Development Integ rationandtesting
It erativedevelopment 0 2 5 5 0 75 1 00
Specification
Iterativedevelopment ineering 5 0 75
Systemtesting
Componentbasedsoftwareeng 0 2 5
1 00
Specification
Development
Integ rationandtesting
Developmentandevolutioncostsforlonglifetimesyst 0 10 200
ems 30 400
Systemdevelopment
Systemevolution
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 15
Productdevelopmentcosts
2 5
50
7 5
100
Specification
Development
Systemtesting
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 16
Whataresoftwareengineeringmethods?
l
Rules
Recommendations
Processguidance
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 17
WhatisCASE(ComputerAidedSoftware Engineering)
l
l l
LowerCASE
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 18
Whataretheattributesofgoodsoftware?
l
Dependability
Efficiency
Acceptability
IanSommerville2006
Whatarethekeychallengesfacingsoftware engineering?
l l
Heterogeneity,deliveryandtrust. Heterogeneity
Developingtechniquesforbuildingsoftwarethatcancopewith heterogeneousplatformsandexecutionenvironments Developingtechniquesthatleadtofasterdeliveryofsoftware Developingtechniquesthatdemonstratethatsoftwarecanbe trustedbyitsusers.
Delivery
Trust
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 20
Professionalandethicalresponsibility
l
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 21
Issuesofprofessionalresponsibility
l
Confidentiality
Engineersshouldnormallyrespecttheconfidentiality oftheiremployersorclientsirrespectiveofwhether ornotaformalconfidentialityagreementhasbeen signed.
Competence
Engineersshouldnotmisrepresenttheirlevelof competence.Theyshouldnotknowinglyacceptwork whichisoutwiththeircompetence.
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 22
Issuesofprofessionalresponsibility
l
Intellectualpropertyrights
Engineersshouldbeawareoflocallawsgoverningtheuseof intellectualpropertysuchaspatents,copyright,etc.They shouldbecarefultoensurethattheintellectualpropertyof employersandclientsisprotected. Softwareengineersshouldnotusetheirtechnicalskillsto misuseotherpeoplescomputers.Computermisuseranges fromrelativelytrivial(gameplayingonanemployersmachine, say)toextremelyserious(disseminationofviruses).
Computermisuse
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 23
ACM/IEEECodeofEthics
l
TheprofessionalsocietiesintheUShave cooperatedtoproduceacodeofethicalpractice. Membersoftheseorganisationssignuptothe codeofpracticewhentheyjoin. TheCodecontainseightPrinciplesrelatedtothe behaviourofanddecisionsmadebyprofessional softwareengineers,includingpractitioners, educators,managers,supervisorsandpolicy makers,aswellastraineesandstudentsofthe profession.
SoftwareEngineering,8th edition.Chapter1 Slide 24
IanSommerville2006
Codeofethicspreamble
l
Preamble
Theshortversionofthecodesummarizesaspirationsatahigh leveloftheabstractiontheclausesthatareincludedinthefull versiongiveexamplesanddetailsofhowtheseaspirations changethewayweactassoftwareengineeringprofessionals. Withouttheaspirations,thedetailscanbecomelegalisticand tediouswithoutthedetails,theaspirationscanbecomehigh soundingbutemptytogether,theaspirationsandthedetails formacohesivecode. Softwareengineersshallcommitthemselvestomakingthe analysis,specification,design,development,testingand maintenanceofsoftwareabeneficialandrespectedprofession. Inaccordancewiththeircommitmenttothehealth,safetyand welfareofthepublic,softwareengineersshalladheretothe followingEightPrinciples:
SoftwareEngineering,8th edition.Chapter1 Slide 25
IanSommerville2006
Codeofethicsprinciples
l
PUBLIC
Softwareengineersshallactconsistentlywiththepublic interest. Softwareengineersshallactinamannerthatisinthebest interestsoftheirclientandemployerconsistentwiththepublic interest. Softwareengineersshallensurethattheirproductsandrelated modificationsmeetthehighestprofessionalstandardspossible.
CLIENTANDEMPLOYER
PRODUCT
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 26
Codeofethicsprinciples
l
JUDGMENT
Softwareengineersshallmaintainintegrityandindependence intheirprofessionaljudgment. Softwareengineeringmanagersandleadersshallsubscribeto andpromoteanethicalapproachtothemanagementof softwaredevelopmentandmaintenance. Softwareengineersshalladvancetheintegrityandreputationof theprofessionconsistentwiththepublicinterest.
MANAGEMENT
PROFESSION
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 27
Codeofethicsprinciples
l
COLLEAGUES
Softwareengineersshallbefairtoandsupportiveof theircolleagues.
SELF
Softwareengineersshallparticipateinlifelong learningregardingthepracticeoftheirprofession andshallpromoteanethicalapproachtothepractice oftheprofession.
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 28
Ethicaldilemmas
l
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 29
Keypoints
l
Softwareengineeringisanengineeringdisciplinethatis concernedwithallaspectsofsoftwareproduction. Softwareproductsconsistofdevelopedprogramsand associateddocumentation.Essentialproductattributes aremaintainability,dependability,efficiencyandusability. Thesoftwareprocessconsistsofactivitiesthatare involvedindevelopingsoftwareproducts.Basicactivities aresoftwarespecification,development,validationand evolution. Methodsareorganisedwaysofproducingsoftware.They includesuggestionsfortheprocesstobefollowed,the notationstobeused,rulesgoverningthesystem descriptionswhichareproducedanddesignguidelines.
SoftwareEngineering,8th edition.Chapter1 Slide 30
IanSommerville2006
Keypoints
l
CASEtoolsaresoftwaresystemswhicharedesignedto supportroutineactivitiesinthesoftwareprocesssuchas editingdesigndiagrams,checkingdiagramconsistency andkeepingtrackofprogramtestswhichhavebeenrun. Softwareengineershaveresponsibilitiestothe engineeringprofessionandsociety.Theyshouldnot simplybeconcernedwithtechnicalissues. Professionalsocietiespublishcodesofconductwhichset outthestandardsofbehaviourexpectedoftheir members.
IanSommerville2006
SoftwareEngineering,8th edition.Chapter1
Slide 31