Case tools and data modeling, Lecture notes of Software Engineering

Case tools and data modeling and it's types

Typology: Lecture notes

2019/2020

Uploaded on 08/11/2020

kirithika.kec
kirithika.kec 🇮🇳

3 documents

1 / 8

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Casetoolsconceptsandapplications
Unit1
1.1Datamodeling
Whatisdatamodelingincasetools?
CaseTools
CASE(ComputerAidedSoftwareEngineering)toolsareintendedtoreducetheoveralleffort
andincreasetheaccuracyofsoftwaredevelopment.Theyaccomplishthisbyautomatingthe
moremundanetasksassociatedwithsoftwaredevelopment.Thegoalistoprovideatoolthat
enableshigherlevelmodelingandsoftwarespecification,usingknownmethodologies,andthen
togenerateoutputthatwouldnormallybehand-crafted.
Becausedatamodelinganddataconceptsarewellunderstoodandhavegenerallyagreedupon
principlesthatdictatehow aconceptualorlogicaldatamodelistranslatedintoaphysical
implementation,CASEtoolshaveproventobeveryeffectiveinautomatingthekeydatabase
implementation deliverablessuchas DDL,candidate indexes,and data constraints(data
validationandbusinessrules).Itcaneliminatehoursoftediousmanualtasks.Mostimportantly
theaccuracyoftheimplementationdeliverablesaregreatlyimproved.Forexample,foreach
relationshipbetweenentities,therewillneedtobeforeignkeysorphysicallinkscreatedduring
implementation.Sometimesthisrequiresadditionalta0blesorphysicalconstructscreatedto
implementmany-to-manyrelationships.ACASEtoolwillgenerateallofthesewiththepressof
abutton.
CASEtoolscanalsoaidingeneratingprototypeUIelements,especiallywhentheuserdialogs
arefocusedondatacaptureandvalidation.
DataModeling
Datamodelingistheprocessofdocumentingacomplexsoftwaresystem designasan
easilpyunderstooddiagram,usingtextandsymbolstorepresentthewaydataneedstoflow.
Thediagram canbeusedtoensureefficientuseofdata,asablueprintfortheconstructionof
newsoftwareorforre-engineeringalegacyapplication.
Datamodelingisanimportantskillfordatascientistsorothersinvolvedwithdataanalysis.
Traditionally,datamodelshavebeenbuiltduringtheanalysisanddesignphasesofaprojectto
ensurethattherequirementsforanewapplicationarefullyunderstood.Datamodelscanalso
beinvokedlaterinthedatalifecycletorationalizedatadesignsthatwereoriginallycreatedby
programmersonanadhocbasis.
Datamodelingapproaches
Datamodelingcanbeapainstakingupfrontprocessand,assuch,issometimesseenasbeing
pf3
pf4
pf5
pf8

Partial preview of the text

Download Case tools and data modeling and more Lecture notes Software Engineering in PDF only on Docsity!

Casetoolsconceptsandapplications Unit 1

  1. 1 Datamodeling Whatisdatamodelingincasetools? CaseTools CASE(ComputerAidedSoftwareEngineering)toolsareintendedtoreducetheoveralleffort andincreasetheaccuracyofsoftwaredevelopment.Theyaccomplishthisbyautomatingthe moremundanetasksassociatedwithsoftwaredevelopment.Thegoalistoprovideatoolthat enableshigherlevelmodelingandsoftwarespecification,usingknownmethodologies,andthen togenerateoutputthatwouldnormallybehand-crafted. Becausedatamodelinganddataconceptsarewellunderstoodandhavegenerallyagreedupon principlesthatdictatehow aconceptualorlogicaldatamodelistranslatedintoaphysical implementation,CASEtoolshaveproventobeveryeffectiveinautomatingthekeydatabase implementation deliverables such as DDL,candidate indexes,and data constraints (data validationandbusinessrules).Itcaneliminatehoursoftediousmanualtasks.Mostimportantly theaccuracyoftheimplementationdeliverablesaregreatlyimproved.Forexample,foreach relationshipbetweenentities,therewillneedtobeforeignkeysorphysicallinkscreatedduring implementation.Sometimesthisrequiresadditionalta 0 blesorphysicalconstructscreatedto implementmany-to-manyrelationships.ACASEtoolwillgenerateallofthesewiththepressof abutton. CASEtoolscanalsoaidingeneratingprototypeUIelements,especiallywhentheuserdialogs arefocusedondatacaptureandvalidation. DataModeling Datamodelingistheprocessofdocumentingacomplexsoftwaresystem designasan easilpyunderstooddiagram,usingtextandsymbolstorepresentthewaydataneedstoflow. Thediagram canbeusedtoensureefficientuseofdata,asablueprintfortheconstructionof newsoftwareorforre-engineeringalegacyapplication. Datamodelingisanimportantskillfordatascientistsorothersinvolvedwithdataanalysis. Traditionally,datamodelshavebeenbuiltduringtheanalysisanddesignphasesofaprojectto ensurethattherequirementsforanewapplicationarefullyunderstood.Datamodelscanalso beinvokedlaterinthedatalifecycletorationalizedatadesignsthatwereoriginallycreatedby programmersonanadhocbasis. Datamodelingapproaches Datamodelingcanbeapainstakingupfrontprocessand,assuch,issometimesseenasbeing

atoddswithrapiddevelopmentmethodologies.AsAgileprogramminghascomeintowideruse tospeeddevelopmentprojects,after-the-factmethodsofdatamodelingarebeingadaptedin someinstances.Typically,adatamodelcanbethoughtofasaflowchartthatillustratesthe relationshipsamongdata.Itenablesstakeholderstoidentifyerrorsandmakechangesbefore anyprogrammingcodehasbeenwritten. Datamodelersoftenusemultiplemodelstoviewthesamedataandensurethatallprocesses, entities,relationships and data flows have been identified.Theyinitiate new projects by gatheringrequirementsfrom businessstakeholders.Datamodelingstagesroughlybreakdown intocreationoflogicaldatamodelsthatshow specificattributes,entitiesandrelationships amongentitiesandthephysicaldatamodel. Thelogicaldatamodelservesasthebasisforcreationofaphysicaldatamodel,whichis specifictotheapplicationanddatabasetobeimplemented.Adatamodelcanbecomethe basisforbuildingamoredetaileddataschema.

datamodelingtechniques 2 .LogicalModel Thelogicalmodeldocumentsthestructureofthedataandpreparesittoimplementinthe database.Itcanincludealltypesofdatathatneedtobecapturedbyabusinessanalyst. datamodelingtechniques 3 .PhysicalModel Thenthephysicalmodelorganizesthedatawiththehelpofthedatabasemanagementsystem. Adatabaseadministratordefinesitintables,accountsaccess,performance,andCRUDsystem. TypesofDataModels FiveTypesoftheDataModel: 1 .HierarchicalModel: ThehierarchicalmodelisthefirstDBMSmodel;itrepresentsthedatainahierarchicaltree structure.Thedataissortedhierarchically,andthearrowsareusedtonavigatethroughthe storeddata. Datamodelingasadisciplinebegantoariseinthe 1960 s,accompanyingtheupswinginuseof databasemanagementsystems(DBMSes).Data modeling enabled organizationsto bring consistency,repeatabilityandwell-ordereddevelopmenttodataprocessing.Applicationend usersandprogrammerswereabletousethedatamodelasareferenceincommunicationswith datadesigners. Hierarchicaldatamodelsthatarraydataintreelike,one-to-manyarrangementsmarkedthese earlyeffortsandreplacedfile-basedsystemsinmanypopularusecases.IBM'sInformation ManagementSystem (IMS)isaprimaryexampleofthehierarchicalapproach,whichfoundwide use in businesses,especiallyin banking.Although hierarchicaldata models were largely superseded--beginninginthe 1980 s--byrelationaldatamodels,thehierarchicalmethodis

common stillin XML(ExtensibleMarkup Language)and geographicinformation systems (GISes)today.NetworkdatamodelsalsoaroseintheearlydaysofDBMSesasameansto providedatadesignerswithabroadconceptualviewoftheirsystems.Onesuchexampleisthe ConferenceonDataSystemsLanguages(CODASYL),whichformedinthelate 1950 stoguide thedevelopmentofastandardprogramminglanguagethatcouldbeusedacrossvarioustypes ofcomputers. 2 .RelationalModel: Therelationalmodelrepresentsthedataintables,anditisbasedonfirst-orderpredicatelogic. Whileitreducedprogram complexityversusfile-basedsystems,thehierarchicalmodelstill requireddetailedunderstandingofthespecificphysicaldatastorageemployed.Proposedasan alternativetothehierarchicaldatamodel,therelationaldatamodeldoesnotrequiredevelopers todefinedatapaths.Relationaldatamodelingwasfirstdescribedina 1970 technicalpaperby IBM researcherE.F.Codd.Codd'srelationalmodelsetthestageforindustryuseofrelational databasesinwhichdatasegmentsareexplicitlyjoinedbyuseoftables,ascomparedtothe hierarchicalmodelwheredataisimplicitlyjoinedtogether.Soonafteritsinception,therelational datamodelwascoupledwiththeStructuredQueryLanguage(SQL)andbegantogainanever largerfootholdinenterprisecomputingasanefficientmeanstoprocessdata. 3 .NetworkDatabaseModel: NetworkDatabaseModelissimilartotheHierarchicalModel.However,theNetworkdatabase allowsarecordtohavemorethanoneparentwhileHierarchicalModeldoesnotallow more thanoneparent. NetworkDatabasedoesnotrequiretheparenttochildrelation,unlikethehierarchicalmodel.It representsthedataasagraphandtherecordtypeandallowsonetomanyrelationships. 4 .Entity-RelationshipModel: Entity-RelationshipModelisusefulindevelopingaconceptualdesignforthedatabase.This modeliseasytodesignwithanERmodelconstructed. Relationaldatamodelingtookanotherstepforwardbeginninginthemid- 1970 sasuseofentity relationship(ER)modelsbecamemoreprevalent.Closelyintegratedwithrelationaldatamodels, ER models use diagrams to graphicallydepictthe elements in a database and to ease understandingofunderlyingmodels. Withrelationalmodeling,datatypesaredeterminedandrarelychangedovertime.Entities compriseattributes;forexample,anemployeeentity'sattributescouldincludelastname,first name,yearsemployedandsoon.Relationshipsarevisuallymapped,providingareadymeans to communicate data design objectives to various participants in data developmentand maintenance.Overtime,modelingtools,includingIdera'sER/Studio,ErwinDataModelerand

DataVisualizations Afteryouknowwhatdatayouneedtogatherforyourbusinesstogrow,it’stimetothinkabout howtopresentit.Agraphicalvisualizationcanmakeiteasiertonotonlyunderstanddatabut alsogatherdatafrom multiplesources.Youcanrepresentthedatamoreclearlywhenpresent inavisualcontext. StaringYourDataModelingRight Attheinitialstageofyourdatamodeling,youdon’tknowhowfastorbigyourdatawillgrow. Makingitsmallandeasytounderstandatthebeginningwillensureyouseethegrowthrateand arepreparedtohandleeverything.Moreover,itwillalsomakeiteasiertocorrectanyproblem youencounterinyourmodelordataattheinitialstage.Asyougettheknowledge-withtimeand experience-whatworksandwhatdoesnotwork,youcanaddmoredatasets.Inanycase,you shoulduseascalabledatamodeltoreflectthechangingnatureofbusinessneeds. MakeYourDataEasiertoUnderstand Ausefuldatamodelisacombinationoftechnologyandbusiness.Whilemakingadatamodel, youshouldkeepinmindthatmostpeoplewhoreadyourdataknowthebusinessbutnotthe technology.Yourmodelshouldtakeintoaccountthewaypeoplethinkandhowpeoplemeasure business.Yourdatamodelshouldbebasedonthreethings:Whatyourbusinessrequirements are,thedatayouhaveandthebusinessintelligence. ConcentrateontheDataYouNeed Usewhatyouneed,notwhatyouwant.Know yourpurposeanduseonlyrelevantdata.Too muchdatacancreateclutterandcausemanyproblemsaswellasmakeithardtomonitorthe relevantdata. KeepaRegularCheckonYourData Keepinmindtheearlieryoucatchaproblem,theeasieritistofixit.Therefore,keeparegular checkonyourdatamodelsothatyoufindanyproblem atitsinitialstageandaddressesitas soonaspossible. AvoidMisleading Sometimesdataisusedinawaythatcanmisleadpeopletobelievesomethingthatmightnot betrue.Avoidmisleading;trustisearnednotgiven,providingcorrectinformationyoucanprove isessential.Trytoavoidthepracticesthatcanmislead,suchassometricksusuallyusedin

datavisualization.Moreover,trytoshowacauseandeffectrelationshipinsteadofCorrelation. MakeUseoftheTechnologies Nowadays,therearemanysoftwareandonlinetoolsavailablefordatamodeling.Makeyourlife easieranduseavailabletoolsforbetterandfasterperformance. Keeplearningandimprovingalongwithyourbusiness Asyourbusinessexpands,keeplearningalongside.Broadenyourdatamodelingstructureas yourbusinessgrowthornewdatabecomeavailableistherightnextstep.Sincetheevolutionof MachineLearning and Artificialintelligence,datatechnologiesareanew ragenowadays. Therefore,nomatteryouareabouttobuildadatamodelforyourbusinessoryouwanttolearn datamodeling;thisistherighttimetolearnsmartdatatechnologies.