Vous êtes sur la page 1sur 6

4/28/2016

IntroductiontoSoftwareEngineering/Tools/ModellingandCaseToolsWikibooks,openbooksforanopenworld

IntroductiontoSoftware
Engineering/Tools/ModellingandCaseTools
Computeraidedsoftwareengineering(CASE)
isthescientificapplicationofasetoftoolsand
methodstoasoftwaresystemwhichismeantto
resultinhighquality,defectfree,and
maintainablesoftwareproducts.[1]Italsorefersto
methodsforthedevelopmentofinformation
systemstogetherwithautomatedtoolsthatcanbe
usedinthesoftwaredevelopmentprocess.[2]

Contents
1 Overview
2 History
3 Supportingsoftware
3.1 Tools
3.2 Workbenches
3.3 Environments
4 Applications
5 Risksandassociatedcontrols
6 References
7 Externallinks

ExampleofaCASEtool.

Overview
Theterm"computeraidedsoftwareengineering"(CASE)canrefertothesoftwareusedforthe
automateddevelopmentofsystemssoftware,i.e.,computercode.TheCASEfunctionsincludeanalysis,
design,andprogramming.CASEtoolsautomatemethodsfordesigning,documenting,andproducing
structuredcomputercodeinthedesiredprogramminglanguage.
CASEsoftwaresupportsthesoftwareprocessactivitiessuchasrequirementengineering,design,
programdevelopmentandtesting.Therefore,CASEtoolsincludedesigneditors,datadictionaries,
compilers,debuggers,systembuildingtools,etc.
CASEalsoreferstothemethodsdedicatedtoanengineeringdisciplineforthedevelopmentof
informationsystemusingautomatedtools.
CASEismainlyusedforthedevelopmentofqualitysoftwarewhichwillperformeffectively.

History

https://en.wikibooks.org/wiki/Introduction_to_Software_Engineering/Tools/Modelling_and_Case_Tools

1/6

4/28/2016

IntroductiontoSoftwareEngineering/Tools/ModellingandCaseToolsWikibooks,openbooksforanopenworld

TheISDOSprojectattheUniversityofMichiganinitiatedagreatdealofinterestinthewholeconcept
ofusingcomputersystemstohelpanalystsintheverydifficultprocessofanalysingrequirementsand
developingsystems.SeveralpapersbyDanielTeichroewfiredawholegenerationofenthusiastswiththe
potentialofautomatedsystemsdevelopment.HisPSL/PSAtoolwasaCASEtoolalthoughitpredated
theterm.Hisinsightsintothepowerofmetametamodelswasinspiring,particularlytoaformer
student,Dr.HasanSayani,currentlyProfessor,ProgramDirectoratUniversityofMarylandUniversity
College.
AnothermajorthreademergedasalogicalextensiontotheDBMSdirectory.Byextendingtherangeof
metadataheld,theattributesofanapplicationcouldbeheldwithinadictionaryandusedatruntime.
This"activedictionary"becametheprecursortothemoremodern"modeldrivenexecution"(MDE)
capability.However,theactivedictionarydidnotprovideagraphicalrepresentationofanyofthemeta
data.Itwasthelinkingoftheconceptofadictionaryholdinganalysts'metadata,asderivedfromthe
useofanintegratedsetoftechniques,togetherwiththegraphicalrepresentationofsuchdatathatgave
risetotheearlierversionsofICASE.
ThetermCASEwasoriginallycoinedbysoftwarecompanyNastecCorporationofSouthfield,Michigan
in1982withtheiroriginalintegratedgraphicsandtexteditorGraphiText,whichalsowasthefirst
microcomputerbasedsystemtousehyperlinkstocrossreferencetextstringsindocumentsanearly
forerunneroftoday'swebpagelink.GraphiText'ssuccessorproduct,DesignAid,wasthefirst
microprocessorbasedtooltologicallyandsemanticallyevaluatesoftwareandsystemdesigndiagrams
andbuildadatadictionary.
UnderthedirectionofAlbertF.Case,Jr.vicepresidentforproductmanagementandconsulting,and
VaughnFrick,directorofproductmanagement,theDesignAidproductsuitewasexpandedtosupport
analysisofawiderangeofstructuredanalysisanddesignmethodologies,notablyEdYourdonandTom
DeMarco,ChrisGane&TrishSarson,WardMellor(realtime)SA/SDandWarnierOrr(datadriven).
ThenextentrantintothemarketwasExceleratorfromIndexTechnologyinCambridge,Mass.While
DesignAidranonConvergentTechnologiesandlaterBurroughsNgennetworkedmicrocomputers,
IndexlaunchedExceleratorontheIBMPC/ATplatform.While,atthetimeoflaunch,andforseveral
years,theIBMplatformdidnotsupportnetworkingoracentralizeddatabaseasdidtheConvergent
TechnologiesorBurroughsmachines,theallureofIBMwasstrong,andExceleratorcameto
prominence.HotontheheelsofExceleratorwerearashofofferingsfromcompaniessuchas
Knowledgeware(JamesMartin,FranTarkentonandDonAddington),TexasInstrument'sIEFand
Accenture'sFOUNDATIONtoolset(METHOD/1,DESIGN/1,INSTALL/1,FCP).
CASEtoolswereattheirpeakintheearly1990s.AtthetimeIBMhadproposedAD/Cycle,whichwas
anallianceofsoftwarevendorscenteredaroundIBM'sSoftwarerepositoryusingIBMDB2in
mainframeandOS/2:
Theapplicationdevelopmenttoolscanbefromseveralsources:fromIBM,fromvendors,andfrom
thecustomersthemselves.IBMhasenteredintorelationshipswithBachmanInformationSystems,
IndexTechnologyCorporation,andKnowledgeware,Inc.whereinselectedproductsfromthese
vendorswillbemarketedthroughanIBMcomplementarymarketingprogramtoprovideofferings
thatwillhelptoachievecompletelifecyclecoverage.[3]
Withthedeclineofthemainframe,AD/CycleandtheBigCASEtoolsdiedoff,openingthemarketfor
themainstreamCASEtoolsoftoday.NearlyalloftheleadersoftheCASEmarketoftheearly1990s
endedupbeingpurchasedbyComputerAssociates,includingIEW,IEF,ADW,Cayenne,andLearmonth
&BurchettManagementSystems(LBMS).
https://en.wikibooks.org/wiki/Introduction_to_Software_Engineering/Tools/Modelling_and_Case_Tools

2/6

4/28/2016

IntroductiontoSoftwareEngineering/Tools/ModellingandCaseToolsWikibooks,openbooksforanopenworld

Supportingsoftware
AlfonsoFuggettaclassifiedCASEinto3categories:[4]
1.Taskssupportonlyspecifictasksinthesoftwareprocess.
2.Workbenchessupportonlyoneorafewactivities.
3.Environmentssupport(alargepartof)thesoftwareprocess.
Workbenchesandenvironmentsaregenerallybuiltascollectionsoftools.Toolscanthereforebeeither
standaloneproductsorcomponentsofworkbenchesandenvironments.

Tools
CASEtoolsareaclassofsoftwarethatautomatemanyoftheactivitiesinvolvedinvariouslifecycle
phases.Forexample,whenestablishingthefunctionalrequirementsofaproposedapplication,
prototypingtoolscanbeusedtodevelopgraphicmodelsofapplicationscreenstoassistendusersto
visualizehowanapplicationwilllookafterdevelopment.Subsequently,systemdesignerscanuse
automateddesigntoolstotransformtheprototypedfunctionalrequirementsintodetaileddesign
documents.Programmerscanthenuseautomatedcodegeneratorstoconvertthedesigndocumentsinto
code.Automatedtoolscanbeusedcollectively,asmentioned,orindividually.Forexample,prototyping
toolscouldbeusedtodefineapplicationrequirementsthatgetpassedtodesigntechnicianswhoconvert
therequirementsintodetaileddesignsinatraditionalmannerusingflowchartsandnarrativedocuments,
withouttheassistanceofautomateddesignsoftware.[5]
ExistingCASEtoolscanbeclassifiedalong4differentdimensions:
1.Lifecyclesupport
2.Integrationdimension
3.Constructiondimension
4.KnowledgebasedCASEdimension[6]
Letustakethemeaningofthesedimensionsalongwiththeirexamplesonebyone:
LifeCycleBasedCASETools
ThisdimensionclassifiesCASEToolsonthebasisoftheactivitiestheysupportintheinformation
systemslifecycle.TheycanbeclassifiedasUpperorLowerCASEtools.
UpperCASEToolssupportstrategicplanningandconstructionofconceptlevelproductsand
ignorethedesignaspect.TheysupporttraditionaldiagrammaticlanguagessuchasERdiagrams,
Dataflowdiagram,Structurecharts,DecisionTrees,Decisiontables,etc.
LowerCASEToolsconcentrateonthebackendactivitiesofthesoftwarelifecycle,suchas
physicaldesign,debugging,construction,testing,componentintegration,maintenance,
reengineeringandreverseengineering.
Integrationdimension
ThreemainCASEIntegrationdimensionshavebeenproposed:[7]
1.CASEFramework
2.ICASETools
3.IntegratedProjectSupportEnvironment(IPSE)
https://en.wikibooks.org/wiki/Introduction_to_Software_Engineering/Tools/Modelling_and_Case_Tools

3/6

4/28/2016

IntroductiontoSoftwareEngineering/Tools/ModellingandCaseToolsWikibooks,openbooksforanopenworld

Workbenches
WorkbenchesintegrateseveralCASEtoolsintooneapplicationtosupportspecificsoftwareprocess
activities.Hencetheyachieve:
ahomogeneousandconsistentinterface(presentationintegration).
easyinvocationoftoolsandtoolchains(controlintegration).
accesstoacommondatasetmanagedinacentralizedway(dataintegration).
CASEworkbenchescanbefurtherclassifiedintofollowing8classes:[4]
1.Businessplanningandmodeling
2.Analysisanddesign
3.Userinterfacedevelopment
4.Programming
5.Verificationandvalidation
6.Maintenanceandreverseengineering
7.Configurationmanagement
8.Projectmanagement

Environments
AnenvironmentisacollectionofCASEtoolsandworkbenchesthatsupportsthesoftwareprocess.
CASEenvironmentsareclassifiedbasedonthefocus/basisofintegration[4]
1.Toolkits
2.Languagecentered
3.Integrated
4.Fourthgeneration
5.Processcentered
Toolkits
Toolkitsarelooselyintegratedcollectionsofproductseasilyextendedbyaggregatingdifferenttoolsand
workbenches.Typically,thesupportprovidedbyatoolkitislimitedtoprogramming,configuration
managementandprojectmanagement.Andthetoolkititselfisenvironmentsextendedfrombasicsetsof
operatingsystemtools,forexample,theUnixProgrammer'sWorkBenchandtheVMSVAXSet.In
addition,toolkits'looseintegrationrequiresusertoactivatetoolsbyexplicitinvocationorsimplecontrol
mechanisms.Theresultingfilesareunstructuredandcouldbeindifferentformat,thereforetheaccessof
filefromdifferenttoolsmayrequireexplicitfileformatconversion.However,sincetheonlyconstraint
foraddinganewcomponentistheformatsofthefiles,toolkitscanbeeasilyandincrementally
extended.[4]
Languagecentered
Theenvironmentitselfiswrittenintheprogramminglanguageforwhichitwasdeveloped,thus
enablinguserstoreuse,customizeandextendtheenvironment.Integrationofcodeindifferent
languagesisamajorissueforlanguagecenteredenvironments.Lackofprocessanddataintegrationis
alsoaproblem.Thestrengthsoftheseenvironmentsincludegoodlevelofpresentationandcontrol
Width:1360
[4]
integration.Interlisp,Smalltalk,Rational,andKEEareexamplesoflanguagecenteredenvironments.
Integrated
https://en.wikibooks.org/wiki/Introduction_to_Software_Engineering/Tools/Modelling_and_Case_Tools

4/6

4/28/2016

IntroductiontoSoftwareEngineering/Tools/ModellingandCaseToolsWikibooks,openbooksforanopenworld

Theseenvironmentsachievepresentationintegrationbyprovidinguniform,consistent,andcoherenttool
andworkbenchinterfaces.Dataintegrationisachievedthroughtherepositoryconcept:theyhavea
specializeddatabasemanagingallinformationproducedandaccessedintheenvironment.Examplesof
integratedenvironmentareIBMAD/CycleandDECCohesion.[4]
Fourthgeneration
Fourthgenerationenvironmentswerethefirstintegratedenvironments.Theyaresetsoftoolsand
workbenchessupportingthedevelopmentofaspecificclassofprogram:electronicdataprocessingand
businessorientedapplications.Ingeneral,theyincludeprogrammingtools,simpleconfiguration
managementtools,documenthandlingfacilitiesand,sometimes,acodegeneratortoproducecodein
lowerlevellanguages.Informix4GL,andFocusfallintothiscategory.[4]
Processcentered
Environmentsinthiscategoryfocusonprocessintegrationwithotherintegrationdimensionsasstarting
points.Aprocesscenteredenvironmentoperatesbyinterpretingaprocessmodelcreatedbyspecialized
tools.Theyusuallyconsistoftoolshandlingtwofunctions:
Processmodelexecution
Processmodelproduction
ExamplesareEast,EnterpriseII,ProcessWise,ProcessWeaver,andArcadia.[4]

Applications
Allaspectsofthesoftwaredevelopmentlifecyclecanbesupportedbysoftwaretools,andsotheuseof
toolsfromacrossthespectrumcan,arguably,bedescribedasCASEfromprojectmanagementsoftware
throughtoolsforbusinessandfunctionalanalysis,systemdesign,codestorage,compilers,translation
tools,testsoftware,andsoon.
However,toolsthatareconcernedwithanalysisanddesign,andwithusingdesigninformationtocreate
parts(orall)ofthesoftwareproduct,aremostfrequentlythoughtofasCASEtools.CASEapplied,for
instance,toadatabasesoftwareproduct,mightnormallyinvolve:
Modelingbusiness/realworldprocessesanddataflow
Developmentofdatamodelsintheformofentityrelationshipdiagrams
Developmentofprocessandfunctiondescriptions

Risksandassociatedcontrols
CommonCASErisksandassociatedcontrolsinclude:
Inadequatestandardization:LinkingCASEtoolsfromdifferentvendors(designtoolfrom
CompanyX,programmingtoolfromCompanyY)maybedifficultiftheproductsdonotuse
standardizedcodestructuresanddataclassifications.Fileformatscanbeconverted,butusually
noteconomically.Controlsincludeusingtoolsfromthesamevendor,orusingtoolsbasedon
standardprotocolsandinsistingondemonstratedcompatibility.Additionally,iforganizations
obtaintoolsforonlyaportionofthedevelopmentprocess,theyshouldconsideracquiringthem
fromavendorthathasafulllineofproductstoensurefuturecompatibilityiftheyaddmore
tools.[5]
https://en.wikibooks.org/wiki/Introduction_to_Software_Engineering/Tools/Modelling_and_Case_Tools

5/6

4/28/2016

IntroductiontoSoftwareEngineering/Tools/ModellingandCaseToolsWikibooks,openbooksforanopenworld

Unrealisticexpectations:OrganizationsoftenimplementCASEtechnologiestoreduce
developmentcosts.ImplementingCASEstrategiesusuallyinvolveshighstartupcosts.Generally,
managementmustbewillingtoacceptalongtermpaybackperiod.Controlsincluderequiring
seniormanagerstodefinetheirpurposeandstrategiesforimplementingCASEtechnologies.[5]
Slowimplementation:ImplementingCASEtechnologiescaninvolveasignificantchangefrom
traditionaldevelopmentenvironments.Typically,organizationsshouldnotuseCASEtoolsthe
firsttimeoncriticalprojectsorprojectswithshortdeadlinesbecauseofthelengthytraining
process.Additionally,organizationsshouldconsiderusingthetoolsonsmaller,lesscomplex
projectsandgraduallyimplementingthetoolstoallowmoretrainingtime.[5]
Weakrepositorycontrols:FailuretoadequatelycontrolaccesstoCASErepositoriesmayresultin
securitybreachesordamagetotheworkdocuments,systemdesigns,orcodemodulesstoredin
therepository.Controlsincludeprotectingtherepositorieswithappropriateaccess,version,and
backupcontrols.[5]

References
1.Kuhn,D.L(1989)."Selectingandeffectivelyusingacomputeraidedsoftwareengineeringtool".
AnnualWestinghousecomputersymposium67Nov1989Pittsburgh,PA(U.S.)DOEProject.
2.P.LoucopoulosandV.Karakostas(1995).SystemRequirementsEngineering.McGrawHill.
3."AD/Cyclestrategyandarchitecture",IBMSystemsJournal,Vol29,NO2,1990p.172.
4.AlfonsoFuggetta(December1993)."AclassificationofCASEtechnology".Computer26(12):
2538.doi:10.1109/2.247645.
http://www2.computer.org/portal/web/csdl/abs/mags/co/1993/12/rz025abs.htm.Retrieved2009
0314.
5.SoftwareDevelopmentTechniques(http://www.ffiec.gov/ffiecinfobase/booklets/d_a/10.html).In:
FFIECInfoBase.Retrieved26Oct2008.
6.SoftwareEngineering:Tools,PrinciplesandTechniquesbySangeetaSabharwal,Umesh
Publications
7.EvansR.Rock.CaseAnalystWorkbenches:ADetailedProductEvaluation.Volume1,pp.229
242by

Externallinks
CASETools(http://casetools.org/)ACASEtools'communitywithcomments,tags,forums,
articles,reviews,etc.
CASEtoolindex(http://www.unl.csi.cuny.edu/faqs/softwareenginering/tools.html)A
comprehensivelistofCASEtools
UMLCASEtools(http://www.objectsbydesign.com/tools/umltools_byProduct.html)A
comprehensivelistofUMLCASEtools.MainlyhaveresourcestochooseaUMLCASEtooland
somerelatedtoMDACASETools.
Retrievedfrom"https://en.wikibooks.org/w/index.php?
title=Introduction_to_Software_Engineering/Tools/Modelling_and_Case_Tools&oldid=3037644"

Thispagewaslastmodifiedon14January2016,at11:37.
TextisavailableundertheCreativeCommonsAttributionShareAlikeLicense.additionalterms
mayapply.Byusingthissite,youagreetotheTermsofUseandPrivacyPolicy.

https://en.wikibooks.org/wiki/Introduction_to_Software_Engineering/Tools/Modelling_and_Case_Tools

6/6

Vous aimerez peut-être aussi