[size=12pt]ThisglossaryisintendedforthosevisitorstotheRSP&Aweb-sitewhomaybeunfamiliarwithbasicsoftwareengineeringterminology.Alldefinitionsareinformal.[size=12pt][size=12pt]Abstraction-(1)theleveloftechnicaldetailofsomerepresentationofsoftware;(2)acohesivemodelofdataoranalgorithmicprocedure[size=12pt][size=12pt]Action(alsocalledSoftwareengineeringaction)-anamedcollectionofsoftwareengineeringtasks(e.g.,”interfacedesign”)thatoccurswithinasoftwareengineeringactivity[size=12pt][size=12pt]Activity(alsocalledSoftwareengineeringactivity)-seeFrameworkactivity[size=12pt][size=12pt]Adaptivemaintenance-activityassociatewithchanginganapplicationtomakeitconformtochangesinitsexternalenvironment[size=12pt][size=12pt]Aestheticdesign-aWebengineeringactionthatfocusesontheaesthetics(e.g.,theartisticelements)ofaWebApp(oftenencompassesgraphicdesign)[size=12pt][size=12pt]Agiledevelopment(alsoreferredtoasagileprocessmodel)-anadaptedversionofsoftwareengineeringthatemphasizescustomercommunication,incrementalsoftwaredelivery,informalmethodsandworkproducts,andhighlymotivatedteams.[size=12pt][size=12pt]Analysis-asetofactivitiesthatattempttounderstandandmodelcustomerneedsandconstraints[size=12pt][size=12pt]Analysismethods-anotationandheuristicsforcreatingmodelsofcustomerneedsandconstraints[size=12pt][size=12pt]Architecturaldesign-anactivitythatattemptstolayoutthemodule”floorplan”forthesoftware[size=12pt][size=12pt]Architecture-theoverallstructureofsoftwarecomponents,thedataand/orcontentthatcomponentsmanipulate,andtherelationshipsbetweenthem[size=12pt][size=12pt]Aspect-orienteddevelopment-adevelopmentapproachthatemphasizes”concerns”(alsocalled”aspectualrequirements”thatincorporatefeatures,functionsandinformationcontent)thatcutacrossmultiplesystemfunctions[size=12pt][size=12pt]Automatedestimationtools-toolsthathelpinestimatingprojectcostoreffort[size=12pt][size=12pt]Automaticcodegeneration-toolsthatgeneratesourcecodefromarepresentationofsoftwarethatisnotsourcecode[size=12pt][size=12pt]Baseline-apointatwhichsomedeliverableproducedduringthesoftwareengineeringprocessisputunderformalchangecontrol[size=12pt][size=12pt]Basispathtesting-awhiteboxtestcasedesigntechniquethatusedthealgorithmicflowoftheprogramtodesigntests[size=12pt][size=12pt]Basisset-thesetoftestsderivedusingbasispathtesting[size=12pt][size=12pt]Behavioralmodeling-representingthemodeofbehavior(calledstates)ofanapplicationandtheeventsthatcausetransitionsfromstatetostate[size=12pt][size=12pt]Betatesting-testingthatisconductedbytheuser[size=12pt][size=12pt]Blackboxtesting-testingthatdoesnotfocusontheinternaldetailsoftheprogrambutusesexternalrequirements[size=12pt][size=12pt]Boundaryvalueanalysis-ablackboxtestingmethodthatdesignstestcasesthatexercisedataboundaries[size=12pt][size=12pt]Bounding-removingambiguityfromspecification[size=12pt][size=12pt]Builds-seeClusters[size=12pt][size=12pt]Businessrisks-thesetofpotentialbusinessproblemsoroccurrencesthatmaycausetheprojecttofail[size=12pt][size=12pt]CASE-Computer-aidedsoftwareengineering,seealso,Tools[size=12pt][size=12pt]Cause-effectgraphing-ablack-boxtestingmethod[size=12pt][size=12pt]Changecontrol-anumbrellaprocessthatenablesaprojectteamtoaccept,evaluate,andactonchangesinasystematicmanner
:victory::handshake
了解一下,不知道看过之后能记住几个。。
Outsourcing-contractingsoftwareworktoathirdparty
Pairprogramming-twopeopleworktogether(side-by-side)todesignandconstructasoftwarecomponent,providingreal-timeproblemsolvingandqualitycontrol.
Paperprototype-apaperrepresentationofanapplication(e.g.,storyboardsthatdescribetheinteractionatahumaninterface)
Paradigms-theprocessmodel
Patterns-astylizeddescriptionorcharacterizationofasoftwareproblemorcapabilityand/orthemannerinwhichasolutiontotheproblemorcapabilitymaybecharacterized,applied,andimplemented
PDL-programdesignlanguage;acombinationofnaturallanguagewithprogramminglanguage-likeconstructs
Perfectivemaintenance-enhancement,
Portability-theabilitytotransportsoftwarefromonetargetenvironmenttoanother
Preliminarydesign-createsrepresentationofthedataandarchitecture
Proceduraldesign-createsrepresentationsofalgorithmicdetailwithinamodule
Processframework-arelativelysmallsetoffundamentalsoftwareengineeringactivitiesthatdefineasoftwareprocess
Processingnarrative-anaturallanguagedescriptionofamodel(programcomponent)
Productivity-workoutputperunittime
Programdesignlanguage,seePDL
Projectdatabase-theplacewhereconfigurationitemsarekept
ProjectPlan-adescriptionofthemanagementapproachforaproject
Projectplanning-theactivitythatcreatestheProjectPlan
Projectrisks-thesetofpotentialprojectproblemsoroccurrencesthatmaycausetheprojecttofail
Projectscope-astatementofbasicrequirementsofthesoftwaretobebuilt
Projectsize-anindicationoftheoverallefforttobeexpendedorthenumberofpeopleworkingontheproject
Projecttracking-theactivitythatenablesamanagertounderstandthestatusofaproject
Projectcontrol-thecontrolofqualityandchange
Prototyping-thecreationofamock-upofanapplication
Quality-thedegreetowhichaproductconformstobothexplicitandimplicitrequirements
Qualityfunctiondeployment(QFD)-atechniquethattranslatestheneedsofacustomerintechnicalrequirementsforsoftwarebyassessingthevalueofeachrequirement
Qualitymanagement-asetofsoftwareengineeringactionsthathelpsensurethatsoftwareisbuiltinawaythatachieveshighquality
Qualitymetrics-measuresofquality
Re-engineering-aseriesofactivitiesthattransformlegacysystems(withpoormaintainability)intosoftwarethatexhibitshighquality
Refactoring-changingsoftwareinawaythatimprovesitsinternalstructurebutdoesnotchangeitexternalbehavior;oftenconductediterativelyasdesignevolvesintocode.
Regressiontesting-teststhatareconductedrepeatedtoensurethatachangehasnotintroducedsideeffects
Reliability-ameasureofthedegreetowhichsoftwareoperatesreliablyoversomeperiodoftime
Repository-seeProjectDatabase
Requirementsanalysis-amodelingactivitywhoseobjectiveistounderstandwhatthecustomerreallywants
Requirementsengineering-theactivitiesrequiredtoelicit,elaborate,negotiate,specify,andvalidatesystemorsoftwarerequirements
Resources-anythingthatisrequiredtogettheprojectdone,people,hardware,materials,information,etc.
Reusability-theabilitytoreuseanalready-existingprogramcomponentinanotherapplication
Reusablecomponents-configurationitemsthatarereusable
Reverseengineering-tryingtodevelopdesignmodelsoranunderstandingofdesignusingprogramcodeasastartingpoint
Reviews-seeformaltechnicalreviews
Risk-apotentialproblemoroccurrencethatputaprojectinjeopardy
Riskanalysis-atechniquesforidentifyingandevaluatingrisks
RiskManagementandMonitoringPlan(RMMP)-aplanformitigating,monitoringandmanagingrisks
Scheduling-theactivitythatlaysoutatimelineforworktobeconductedonaproject
Scope-aboundedstatementofwhatmustbeaccomplished
Security-theabilityofsoftwaretooperateinamannerthatissecurefrominternalorexternalattack
Securitytesting-testingtasksthatprobethevulnerabilityofbothclient-sideandserver-sidesoftware
Selectivetesting-testingonlyaselectedsetofprogrampathsanddatainputs
Sideeffects-errorsthatoccurbecauseofchanges
Sixsigma-awidelyusedstrategyforstatisticalqualityassurance
Smoketesting-anintegrationtestingapproachthatconstructsandtestssoftwareonadailybasis
Software-programs,documentsanddata
Softwareengineering-adisciplinethatencompassestheprocessassociatedwithsoftwaredevelopment,themethodsusedtoanalyze,designandtestcomputersoftware,themanagementtechniquesassociatedwiththecontrolandmonitoringofsoftwareprojectsandthetoolsusedtosupportprocess,methods,andtechniques
Softwaremaintenance-seealso,Maintenance,
Softwaremetrics-quantitativemeasuresoftheprocessortheproduct
Softwareproblemreport-areportofadefect
Softwarequality-seequality
Softwareprocessimprovement(SPI)-asetofsoftwareengineeringactivitiesthatattempttoimprovethestateofsoftwareengineeringpracticewithinanorganization
Softwarequalityassurance(SQA)-aseriesofactivitiesthatassistanorganizationinproducinghighqualitysoftware
SoftwareRequirementsSpecification-adeliverablethatdescribesalldata,functionalandbehavioralrequirements,allconstraints,andallvalidationrequirementsforsoftware
Softwaresafety-anSQAactivitythatfocusesontheidentificationandassessmentofpotentialhazardthatmayhaveanegativeimpactontheoperationofsoftware
Softwaretesting-asetofactivitiesconductedwiththeintentoffindingerrorsinsoftware
Spiralmodel-anevolutionarysoftwareengineeringparadigm
Stakeholders-anypersonofgroupthathasastakeinthesuccessfulcompletionofasoftwareproject
Statetransitiondiagram(STD)-anotationforbehavioralmodeling
Statisticalqualityassurance-techniquesforprocessimprovementthatarebasedonmeasurementsoftheproductandtheprocess
Stepwiserefinement-atechniqueforaccomplishingfunctionaldecompositionorproceduraldesign(alsocalledpartitioning)
Stresstesting-atestingtaskthatdetermineshowsoftwarerespondswhenitisforcedtomeetorexceedoperationallimits
Structuredprogramming-adesignmethodthatlimiteddesignconstructstoonlythreebasicformsandconstrainsprogramflowforbetterquality
Systemengineering-focusesontheanalysisanddesignofallelementsofacompleteproduct,service,ortechnologyforthetransformationofinformationorcontrol
Taskanalysis-asoftwareengineeringactionthatisconductedaspartofuserinterfacedesign;intendedtobetterunderstandhowauseristointeractwithasystem
Taskset-acollectionfosoftwareengineeringtasksthatarerequiredtocompleteanactivityoractionthatispartofasoftwareprocessframework
Technicalrisks-thesetofpotentialtechnicalproblemsoroccurrencesthatmaycausetheprojecttofail
Testcasedesign-asetoftechniquesforderivingeffectivetestcases
Testcases,derivationof-thecreationofdatathatcanbeusedtouncovererrorsinthesoftware
Testplanandprocedure-adescriptionoftestingstrategyandtactics
Testing-asetofactivitiesthatattempttofinderrors
Time-boxing-aprojectschedulingandcontroltechniquethatestablishestimeboundariesforthecompletionofaspecificprojecttask
Tools-applicationsoftwareusedtoperformsoftwareengineeringtasks(e.g.,designtools,testingtools);seealsoCASEtools
Totalqualitymanagement-acompanycommitmenttodevelopaprocessthatachieveshighqualityproductandcustomersatisfaction
UML(UnifiedModelingLanguage)-acomprehensivediagrammaticnotationfortheanalysisanddesignofsoftware
Unifiedprocess-a”use-casedriven,architecture-centric,iterativeandincremental”softwareprocessthatemphasizestheuseofUMLnotation
Unittesting-partofthetestingstrategythatfocusesonteststoindividualprogramcomponents
Usability-Aninformalmeasureoftheeasewithwhichauserinterfacecanbelearnedandappliedwithefficiencyandwithouterrors
Use-case-awrittendescriptionthatdefinesaveryspecificinteractionbetweenauserandasystem,often(butnotalways)writtenintheformofausagescenario
User-thepersonwhoactuallyusedtosoftwareortheproductthathassoftwareembeddedwithinit
Userhierarchy-ahierarchicalrepresentationofthecategoriesofusersthatwillinteractwithanytypeofsoftware
User-story-ausagescenariothatisusedaspartofExtremeprogramming
Validation-teststoensurethatthesoftwareconformstoitsrequirements
WebApps(WebApplications)-anyapplicationthatdeliversmeaningfulcontentorfunctionalitytoendusersviatheWeb.
Webengineering-theapplicationofsoftwareengineeringprinciples,concepts,andmethods(oradaptationsofthem)tothedevelopmentofWeb-basedapplicationsorsystems.
Whiteboxtesting-atestcasedesigntechniquethatmakesuseofaknowledgeoftheinternalprogramlogic
Workbreakdownstructure(WBS)-thesetofworktasksrequiredtobuildthesoftware;definedaspartoftheprocessmodel
Workflow-thesequenceoftasksthatarerequiredtoaccomplishsomeactivityoraction;often(butnotalways)usedinconjunctionwithsoftwareprocessmodels
Workproduct-anycohesiveandpersistentinformationthatisproducedasaconsequenceofoneormoresoftwareengineeringactionsoftasks
Design-anactivitythattranslatestherequirementsmodelintoamoredetailedmodelthatistheguidetoimplementationofthesoftware
Designspecification-adocumentthatdescribesthedesign
Designwalkthrough-aformaltechnicalreviewofthedesign
Detaildesign-adesignactivitythatfocusesonthecreationofanalgorithm
Documentation-descriptiveinformation
Documents-deliverablesproducedaspartofthesoftwareengineeringprocess
Domainanalysis-anobject-orientedsoftwareengineeringactivitythatattemptstoidentifyclassesthatarerelevanttoanentireapplicationdomain,ratherthanaspecificapplication
Effort-thework-timeproduct(e.g.,person-days)associatedwithaproject
Engineeringchangeorder(ECO)-amini-specificationthatdescribesthetechnicalaspectsofachange
Enhancement-anextensionoffunctionalorperformancerequirements
Equivalencepartitioning-ablack-boxtestingmethod
Errors-alackofconformancefoundbeforesoftwareisdeliveredtothecustomer
Estimation-aprojectplanningactivitythatattemptstoprojecteffortandcostforasoftwareproject
Extremeprogramming-anagileprocessmodelthatemphasizesscenario-basedplanning,incrementaldelivery,refactoring,pairprogrammingandcontinuoustesting.
Factoring-atechniquethatdistributescontrolandworkinatop-downmannerwithinasoftwarearchitecture(usedapartofstructuredanalysis)
FAST-Facilitatedapplicationspecificationtechniques,astructuredmeetingbetweendeveloperandcustomer;intentistodefinebasicrequirements
Formalmethods-asoftwareengineeringapproachinwhichspecificationanddesignaredescribedusingmathematically-basedformalnotation
Formaltechnicalreviews-astructuredmeetingconductedbysoftwareengineeringwiththeintentofuncoveringerrorsinsomedeliverableorworkproduct
Formulation-aWebengineeringactionthatidentifiesbusinessneed,describesWebAppobjectives,definesmajorfeaturesandfunctions,andestablishesmechanismsforrequirementsgathering
Functionpoints-ameasureoftheutilitydeliveredbyanapplication
Functionaldecomposition-atechniqueusedduringplanning,analysisanddesign;createsafunctionalhierarchyforthesoftware
Go,no-godecision-apointatwhichmanagerorthecustomerdecideswhethertheprojectshouldproceed
GQM(Goal,Question,Metric)paradigm-atechniquefordefiningmeaningfulmetricsforanypartofthesoftwareprocess
Grammaticalparse-atechniquethatisusedduringanalysisandintendedtohelpisolatebasicdataobjectsandfunctions
High-ordertests-black-boxtestsconductedoncethesoftwarehasbeenintegrated
Independenttestgroup(ITG)-agroupofpeoplewhoseprimaryresponsibilityissoftwaretesting
Interfacedesign-asoftwareengineeringactionthatestablishesthestructureandworkflowforauserinterface;followsthree”goldenrules:”placetheuserincontrol,reducetheuser’smemoryleoad,maketheinterfaceconsistent.
Integrationtesting-atestingstepthatconstructsthesoftwarewhiletestingit
Integration-thespecificapproachtointegrationtesting
Interoperability-thedegreetowhichoneapplicationcommunicatesorinterfaceswithanother
ISO9001:2000-aqualityassurancestandardthatappliestosoftwareengineering
Jointapplicationdevelopment(JAD)-aspecificFASTtechnique
Levelsofabstraction-thedegreeofdetailwithwhichsomerepresentationofthesoftwareispresented
Line-of-codemetrics-measuresofqualityorproductivitythatarenormalizedusinglinesofcodeproduced
Loadtesting-atestingtaskthatdetermineshowsoftware(oftenaWebApp)willrespondtovariousloadingconditions
LOC-linesofcode
Looptesting-awhiteboxtestingtechniquethatexercisesprogramloops
Maintainability-thedegreetowhichaprogramisamenabletochange
Maintenance-theactivitiesassociatedwithchangestosoftwareafterithasbeendeliveredtoend-users
Make-buydecision-determiningwhethersoftwareshouldbebuiltinternally,acquired,contractedorbuiltfromreusablecomponents
Measurement-collectingquantitativedataaboutthesoftwareorthesoftwareengineeringprocess
Metrics-aspecificmeasurement
Milestones-apointintimethatisusedtoindicateprogressduringaproject
Modulardesign-adesignapproachthatstressesmodularity
Modularity-anattributeofadesignthatleadstothecreationofhighqualityprogramcomponents
Navigationanalysis-aWebengineeringactionthatestablisheshowauserwillnavigatebetweenvariouselements(e.g.,content,functions)ofaWebApp
Object-oriented-anapproachtosoftwaredevelopmentthatmakesuseofaclassificationapproachandpackagesdataandprocessingtogether
Object-orientedanalysis(OOA)-atechniquefordefinedclassesofobjects,theirrelationshipsandbasicstructure
Object-orienteddesign(OOD)-atechniquefortranslatingtheOOAmodelintoanimplementationmodel
Objects-anamedelementoftheproblemdomaincontainingdataandprocessing
OCL(ObjectConstraintLanguage)-asupplementtoUML,thisformallanguageallowsasoftwareengineertoconstructunambiguousstatementsaboutthecharacteristicsofvariousdesignmodelelements
Changecontrolauthority(CCA)-theperson(s)whohaveresponsibilityfordecidingwhetherachangeistobemade
Changemanagement-asetofsoftwareengineeringactionsthathelpsensurethatchangesareproperlyidentified,controlled,andreported
Changereport-providesdetailonthenatureofworkrequiredtomakeachange
Changerequest-providesdetailonthetypeofchangethatisrequested
Chiefprogrammerteam-onewayoforganizingprojectstaff
Classes-abasicconstructinobject-orientedmethodsthatcategorizeselementsoftheproblem
Classiclifecycle-alinear,sequentialapproachtoprocessmodeling
Clusters-acollectionofprogramcomponents(modules)thatistestedasagroup
Coding-thegenerationofsourcecode
Cohesion-aninformalmeasureofthedegreetowhichasoftwarecomponentimplementsasingle,focusedfunction
Complexity-aquantitativemeasureofaprogram’scomplexity
Component(alsocalledSoftwarecomponent)-anamed,modularbuildingblockforcomputersoftware
Componentreuse-theabilitytoreuseaportionofamodel,sourcecode,testcase,etc.
Configuration-thecollectionofprograms,documentsanddatathatmustbecontrolledwhenchangesaretobemade
Configurationaudit-anactivityperformedbyanSQAgroupwiththeintentofensuringthatthechangecontrolprocessisworking
Configurationcontrol-thecontrolofchangestoprograms,documentsordata
Configurationitems-theindividualpiecesofprograms,documentsanddatathatarecontrolledusingSCM
Configurationstatusreporting(CSR)-anactivitythathelpsoftwaredevelopertounderstandwhatchangeshavebeenmadeandwhy
Constraints-anrestrictionsorlimitationsplacedonrequirementsordesign
Correctivemaintenance-findingandfixingdefectsthathavebeenreportedbyusers
Coupling-aninformalmeasureofthedegreetowhichasoftwarecomponentisconnectedtoothercomponents,todata,andtotheexternalenvironment
CRC(class-responsibility-collaborator)modeling-anobject-orientedmodelingmethodthatidentifiesandorganizesclassesarearerelevanttoasystem
Customer-thepersonorgroupthathasrequestedthesoftwareandwillbepayingthebillforitsdevelopment
Cyclomaticcomplexity-ameasureofthelogicalcomplexityofanalgorithm,usedinwhite-boxtesting
Datadesign-anactivitythattranslatesthedatamodeldevelopedduringanalysisintoimplementabledatastructures
Datadictionary-adatabasethatcontainsdefinitionsofalldataitemsdefinedduringanalysis;seealso,Requirementsdictionary
Dataflowdiagram(DFD)-amodelingnotationthatrepresentsafunctionaldecompositionofasystem
Datamodeling-ananalysismethodthatmodelsdataobjectsandtheirrelationships
Dataobjects-aninputoroutputthatisuservisible
Datawarehouse-alarge,independentdatabasethathasaccesstodatabasesthatservemanydifferentapplicationsthatarerequiredbyabusiness
Debugging-theactivityassociatedwithfindingandcorrectinganerrorordefect-alackofconformancetorequirementsfoundinthesoftwareafterdeliverytothecustomer
Defectamplification-whenadefectisintroducedearlyinthesoftwareprocessandremainsundetected,itoftenisamplifiedintomultipledefectslaterinthesoftwareprocess
Defectremovalefficiency(DRE)-anondimensionratio(between0and1)thatprovidesanindicationofthedegreetowhicherrorsareremovedfromsoftwarebeforeitisreleasedtoend-users