Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 45

BTCOL506: SoftwareEngineeringLaboratory

MBE’SCOLLEGEOFENGINEERINGAMBAJOGAI

DEPARTMENTOFCOMPUTERSCIENCEENGINEERING

T.Y.B.Tech.BTCOL506:SoftwareEngineeringLaboratory

ListofExperiments:
1.Toperformthesystemanalysis:Requirementanalysis,SRS.(BothFunctionaland
Nonfunctionalrequirements.Forasetof10sampleproblems,fromabookonSoftware
EngineeringbyRajibMall.)

2.Toperformthefunctionorienteddiagram:DFDandStructuredchart.

3.Toperformtheuser‘sviewanalysis:Usecasediagram.

4.Todrawthestructuralviewdiagram:Classdiagram,objectdiagram.

5.Todrawthebehavioralviewdiagram:Sequencediagram,Collaborationdiagram.

6.Todrawthebehavioralviewdiagram:State-chartdiagram,Activitydiagram.

7. Todrawtheimplementationviewdiagram:Componentdiagram.

8.Todrawtheenvironmentalviewdiagram:Deploymentdiagram.

9.Toperformvarioustestingusingthetestingtoolunittesting,integrationtesting

CASETools

Introduction:CasetoolsknownasComputer-aidedsoftwareengineeringtoolsisakindof
component-baseddevelopmentwhichallowsitsuserstorapidlydevelopinformation
systems.Themaingoalofcasetechnologyistheautomationoftheentireinformation
systemsdevelopmentlifecycleprocessusingasetofintegratedsoftwaretools,suchas
modeling,methodologyandautomaticcodegeneration.

Componentbasedmanufacturinghasseveraladvantagesovercustom
development.Themainadvantagesaretheavailabilityofhighquality,defectfree
productsatlowcostandatafastertime.Theprefabricatedcomponentsare
customizedaspertherequirementsofthecustomers.Thecomponentsusedareprebuilt,ready-
testedandaddvalueanddifferentiationbyrapidcustomizationtothe
targetedcustomers.Howevertheproductswegetfromcasetoolsareonlyaskeleton
ofthefinalproductrequiredandalotofprogrammingmustbedonebyhandtogeta

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

fullyfinished,goodproduct.

CharacteristicsofCASE:someofthecharacteristicsofcasetoolsthatmakeitbetterthan
customizeddevelopmentAreItisagraphicorientedtool.

Itsupportsdecompositionofprocess.SometypicalCASEtoolsare:Unified
ModelingLanguage

DatamodelingtoolsandSourcecodegenerationtools

UNIFIEDMODELINGLANGUAGE

Introduction:Theunifiedmodelinglanguage(UML)isastandardlanguageforwriting
softwareblueprints.TheUMLisalanguageforVisualizingSpecifyingConstructing
documenting.theartifactsofasoftwaresystem:UMLisalanguagethatprovides
vocabularyandtherulesforcombingwordsinthatvocabularyforthepurposeof communication

Amodelinglanguageisalanguagewhosevocabularyandrulesfocusonthe
conceptandphysicalrepresentationofasystem.Vocabularyandrulesofalanguage
tellushowtocreateandrealwellformedmodels,buttheydon’ttellyouwhatmodel
youshouldcreateandwhenshouldcreatethem.

Visualizing:TheUMLismorethanjustabunchofgraphicalsymbols.InUMLeachsymbol
haswelldefinedsemantics.InthismanneronedevelopercanwriteamodelintheUML
andanotherdeveloperorevenothertoolscaninterpretthemodelunambiguously.

Specifying:UMLisusedspecifyingmeansbuildingmodelsthatareprecise,unambiguous
andcomplete.UMLaddressesthespecificationofalltheimportantanalysis,designand
implementationdecisionsthatmustbemadeindevelopinganddeployingasoftware intensivesystem.

Constructing:UMLisnotavisualprogramminglanguagebutitsmodelscanbedirectly
connectedtoavarietyofprogramminglanguages.Thismeansthatitispossibletomap
fromamodelintheUMLtoaprogramminglanguagesuchasjava,c++orVisualBasicor
eventotablesinarelationaldatabaseorthepersistentstoreofanobject-oriented
database.Thismappingpermitsforwardengineering.ThegenerationofcodefromaUML
modelintoaprogramminglanguage.Thereverseengineeringisalsopossibleyoucan

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

reconstructamodelfromanimplementationbackintotheUML.

Documenting:UMLisalanguageforDocumenting.Asoftwareorganizationproducesall
sortsofartifactsinadditiontorawexecutablecode.TheseartifactsincludeRequirements,
Architecture,Design,Sourcecode,Projectplans,Test,Prototype,andRelease.Such
artifactsarenotonlythedeliverablesofaproject,theyarealsocriticalincontrolling,
measuringandcommunicatingaboutasystemduringitsdevelopmentandafterits deployment.

ConceptualmodeloftheUML:TounderstandtheUML,weneedtoformaconceptual
modelofthelanguageandthisrequireslearningthreemajorelements.TheUMLBasic
BuildingBlocks.TheRulesthatdirecthowthosebuildingblocksmaybeputtogether.
SomecommonmechanismsthatapplythroughouttheUML.AsUMLdescribesthereal
timesystemsitisveryimportanttomakeaconceptualmodelandthenproceedgradually.
ConceptualmodelofUMLcanbemasteredbylearningthefollowingthreemajorelements:

UMLbuildingblocks:RulestoconnectthebuildingblocksCommonmechanismsof
UML,UMLbuildingblocks.ThebuildingblocksofUMLcanbedefinedas:Things
RelationshipsDiagrams

Things:ThingsarethemostimportantbuildingblocksofUML.Thingscanbe:Structural
behavioral,grouping,annotational

Structuralthings:TheStructuralthingsdefinethestaticpartofthemodel.Theyrepresent
physicalaconceptualelements.Followingarethebriefdescriptionsofthestructural
things.Class:Classrepresentssetofobjectshavingsimilarresponsibilities.

Interface:Interfacedefinesasetofoperationswhichspecifytheresponsibilityofaclass

Usecase:Usecaserepresentsasetofactionsperformedbyasystemforaspecificgoal.

Component:Componentdescribesphysicalpartofasystem.

Node:Anodecanbedefinedasaphysicalelementthatexistsatruntime.

Behavioralthings:AbehavioralthingconsistsofthedynamicpartsofUMLmodels.
Followingarethebehavioralthings:
Interaction:Interactionisdefinedasabehaviorthatconsistsofagroupofmessages

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

exchangedamongelementstoaccomplishaspecifictask.

Statemachine:Statemachineisusefulwhenthestateofanobjectinitslifecycleis
important.Itdefinesthesequenceofstatesanobjectgoesthroughinresponseto
events.Eventsareexternalfactorsresponsibleforstatechange.

Groupingthings:Groupingthingscanbedefinedasamechanismtogroupelementsofa
UMLmodeltogether.Thereisonlyonegroupingthingavailable.

Package:Packageistheonlyonegroupingthingavailableforgatheringstructuraland
behavioralthings.
Annotationalthings:Annotationalthingscanbedefinedasamechanismtocapture
remarks,descriptions,andcommentsofUMLmodelelements.Noteistheonlyone
Annotationalthingavailable.Note:Anoteisusedtorendercomments,constraintsetc
ofanUMLelement.

RelationshipsInUML:RelationshipisanothermostimportantbuildingblockofUML.It
showshowelementsareassociatedwitheachotherandthisassociationdescribesthe
functionalityofanapplication.Therearefourkindsofrelationshipsavailable.

Dependency:Dependencyisarelationshipbetweentwothingsinwhichchangeinone
elementalsoaffectstheotherone.

Association:AssociationisbasicallyasetoflinksthatconnectselementsofanUML
model.Italsodescribeshowmanyobjectsaretakingpartinthatrelationship.

Generalization:Generalizationcanbedefinedasarelationshipwhichconnectsa
specializedelementwithageneralizedelement.Itbasicallydescribesinheritance
relationshipintheworldofobjects.

Realization:Realizationcanbedefinedasarelationshipinwhichtwoelementsare
connected.Oneelementdescribessomeresponsibilitywhichisnotimplementedandthe
otheroneimplementsthem.Thisrelationshipexistsincaseofinterfaces.

UMLDiagrams:UMLdiagramsaretheultimateoutputoftheentirediscussion.Allthe
elements,relationshipsareusedtomakeacompleteUMLdiagramandthediagram

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

representssystem.ThevisualeffectoftheUMLdiagramisthemostimportantpartofthe
entireprocess.Alltheotherelementsareusedtomakeitacompleteone.UMLincludes
thefollowingninediagramsandthedetailsaredescribedinthefollowingClassdiagram,
Objectdiagram,Usecasediagram,sequencediagram,CollaborationdiagramActivity
diagram,Statechartdiagram,Deploymentdiagram,componentdiagram

ARCHITECTUREOFUML

Anyrealworldsystemisusedbydifferentusers.Theuserscanbedevelopers,testers,
businesspeople,analystsandmanymore.Sobeforedesigningasystemthe
architectureismadewithdifferentperspectivesinmind.Themostimportantpartisto
visualizethesystemfromdifferentviewer’sperspective.Thebetterweunderstandthe
betterwemakethesystem.UMLplaysanimportantroleindefiningdifferent
perspectivesofasystem.Theseperspectivesare:DesignImplementationProcess Deployment

AndthecentreistheUseCaseviewwhichconnectsallthesefour.AUsecase
representsthefunctionalityofthesystem.Sotheotherperspectivesareconnectedwith usecase.

Designofasystemconsistsofclasses,interfacesandcollaboration.UMLprovides
classdiagram,objectdiagramtosupportthis.Implementationdefinesthecomponents
assembledtogethertomakeacompletephysicalsystem.UMLcomponentdiagramis
usedtosupportimplementationperspective.
Processdefinestheflowofthesystem.SothesameelementsasusedinDesignare
alsousedtosupportthisperspective.
Deploymentrepresentsthephysicalnodesofthesystemthatformsthehardware.UML
deploymentdiagramisusedtosupportthisperspective.

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

EXPERIMENTNO1:Toperformthesystemanalysis

Aim:Toperformthesystemanalysis:Requirementanalysis,SRS.(Bothfunctionaland
nonfunctionalrequirement.forasetof10sampleproblem,fromabookonsoftware
engineeringbyRajibMall

Tools:
GoogleChrome/AnyBrowsers

STARUML
Window’s/ubuntu
Objective:TolearnbasicConceptofSoftwareEngineering.

Procedure:
Sampleforfunctionalandnon-functionalrequirement=
1.WithdrawcashfromATM
2.HospitalManagementSystem
3.LibraryManagementSystem 4.MentcareSystem
5.WeatherMappingSystem Functionalrequirement=
Afunctionalrequirementdefinesasystemoritscomponentsitspecifies“Whatshoudbe
softwaresystemdo-?” 1.WithdrawcashfromATM

Sr.no. Functionalrequirement Non- functional


requirement

1 Withdrawcash Securityshouldbetheir

2
TYBTechCSE(SE-LabManual) Selectwithdraw amount Donotsharepincodewith
Page

Option anyone

3 Selectaccounttype Checktheprivacy
BTCOL506: SoftwareEngineeringLaboratory

4 Getrequiredamount Checkthecameraaround ATM

2. Hospitalmanagementsystem
Sr.no Functionalrequirement Non -functional
requirement

1 Addingpatient Security

2 DeletingpatientID LoginID

3 Addingbedsavailablelist password

4 Informationofpatient Staffrights

3. Librarymanagementsystem
Sr.no Functionalrequirement Non -functional
requirement

1 Addnewmembers usability

2 Removemembers Accuracy

3 System can calculates fine Availability

4 Userrequestfornewbook Maintainability

4. MentcareSystem
Sr.no Functionalrequirement Non -functional
requirement

1 Defineproductfeatures Defineproductproperties

2 Focusonuserrequirement Focusonuserexpectations

3 Whattheproductdoes Howtheproductwork

4 Externalinterface usability

5. Weathermappingsystem
Sr.no Functionalrequirement Non-functionalrequirement

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

1 Extensible Security

2 Maintainable portability

3 Portable scalability

4 Systemprovidesfollowing performance
parameterswindspeed..

Conclusion:SuccessfullycompletedRequirementanalysis,SRS.(Bothfunctionalandnon
functionalrequirement).

EXPERIMENTNO2:Toperformthefunctionorienteddiagram
Aim:Toperformthefunctionorienteddiagram:DFDandstructuredchart

Tools:
GoogleChrome/AnyBrowsers

STARUML
Window’s/ubuntu
AutomaticTellerMachine
Objective:TolearnbasicConceptofSoftwareEngineering.

DescriptionofATMSystem:Thesoftwaretobedesignedwillcontrolasimulated
automatedtellermachine(ATM)havingamagneticstripereaderforreadingan
ATMcard,acustomerconsole(keyboardanddisplay)forinteractionwiththe
customer,aslotfordepositingenvelopes,adispenserforcash,aprinterfor
printingcustomerreceipts,andakey-operatedswitchtoallowanoperatorto
startorstopthemachine.TheATMwillcommunicatewiththebank’scomputer
overanappropriatecommunicationlink.(Thesoftwareonthelatterisnotpart
oftherequirementsforthisproblem.)TheATMwillserviceonecustomerata
time.AcustomerwillberequiredtoinsertanATMcardandenterapersonal
identificationnumber(PIN)–bothofwhichwillbesenttothebankfor
validationaspartofeachtransaction.Thecustomerwillthenbeabletoperform
oneormoretransactions.Thecardwillberetainedinthemachineuntilthe

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

customerindicatesthathe/shedesiresnofurthertransactions,atwhichpointit willbereturned–
exceptasnotedbelow.

TheATMmustbeabletoprovidethefollowingservicestothecustomer:

1.Acustomermustbeabletomakeacashwithdrawalfromanysuitableaccount
linkedtothecard.Approvalmustbeobtainedfromthebankbeforecashis dispensed.

2. Acustomermustbeabletomakeadeposittoanyaccountlinkedtothecard,
consistingofcashand/orchecksinanenvelope.Thecustomerwillenterthe
amountofthedepositintotheATM,subjecttomanualverificationwhenthe
envelopeisremovedfromthe

Machinebyanoperator.Approvalmustbeobtainedfromthebankbefore
physicallyacceptingtheenvelope.
3. Acustomermustbeabletomakeatransferofmoneybetweenanytwo
accountslinkedtothecard.
4. Acustomermustbeabletomakeabalanceinquiryofanyaccountlinkedtothe card.

5. Acustomermustbeabletoabortatransactioninprogressbypressingthe
Cancelkeyinsteadofrespondingtoarequestfromthemachine.
TheATMwillcommunicateeachtransactiontothebankandobtainverificationthatit
wasallowedbythebank.Ordinarily,atransactionwillbeconsideredcompletebythe
bankonceithasbeenapproved.Inthecaseofadeposit,asecondmessagewillbesent
tothebankindicatingthatthecustomerhasdepositedtheenvelope.(Ifthecustomer
failstodeposittheenvelopewithinthetimeoutperiod,orpressescancelinstead,no
secondmessagewillbesenttothebankandthedepositwillnotbecreditedtothe
customer.)Ifthebankdeterminesthatthecustomer’sPINisinvalid,thecustomerwill
berequiredtore-enterthePINbeforeatransactioncanproceed.Ifthecustomeris
unabletosuccessfullyenterthePINafterthreetries,thecardwillbepermanently
retainedbythemachine,andthecustomerwillhavetocontactthebanktogetitback.If
atransactionfailsforanyreasonotherthananinvalidPIN,theATMwilldisplayan
explanationoftheproblem,andwillthenaskthecustomerwhetherhe/shewantstodo
anothertransaction.
TheATMwillprovidethecustomerwithaprintedreceiptforeachsuccessful
transaction,showingthedate,time,andmachinelocation,typeoftransaction,account, amount,andending

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

andavailablebalance(s)oftheaffectedaccount(“to”accountfortransfers).TheATM
willhaveakey-operatedswitchthatwillallowanoperatortostartandstoptheservicing
ofcustomers.Afterturningtheswitchtothe“on”position,theoperatorwillberequired
toverifyandenterthetotalcashonhand.Themachinecanonlybeturnedoffwhenitis
notservicingacustomer.Whentheswitchismovedtothe“off”position,themachine
willshutdown,sothattheoperatormayremovedepositenvelopesandreloadthe
machinewithcash,blankreceipts,etc.

Procedure

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

(q1, a, z0) and(q1, b, z0)

Conclusion:Successfullycompleted designoffunctionorienteddiagram:DFDand
Structuredchart
EXPERIMENTNO3:Toperformtheuser’sviewanalysis:UseCasediagram.

Aim:ToperformthefunctionorienteddiagramDFDandstructuredchart:UseCase
diagram.
Tools:
GoogleChrome/AnyBrowsers

STARUML
Window’s/ubuntu

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

Objective:TolearnbasicConceptofSoftwareEngineering.

Procedure:

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

ALGORITHM/ FLOWCHART/PSEUDO CODE1:

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

checkpinno2:pinvalid/invalid3:checkaccount4: displaystatus,5:checkamount,6:displaystatus,

7:updateaccount
ATM ADMIN

1. STATEDiagram:Statechartdiagramisusedtomodeldynamicnature
ofasystem.Theydefinedifferentstatesofanobjectduringitslifetime.
Andthesestatesarechangedbyevents.SoStatechartdiagramsare
usefultomodelreactivesystems.Reactivesystemscanbedefinedasa
systemthatrespondstoexternalorinternalevents.Statechartdiagram
describestheflowofcontrolfromonestatetoanotherstate.Statesare
definedasaconditioninwhichanobjectexistsanditchangeswhen
someeventistriggered.SothemostimportantpurposeofStatechart
diagramistomodellifetimeofanobjectfromcreationtotermination.
Statechartdiagramsarealsousedforforwardandreverseengineering
ofasystem.Butthemainpurposeistomodelreactivesystem.
FollowingarethemainpurposesofusingStatechartdiagrams:
1.Tomodeldynamicaspectofasystem.

2. Tomodellifetimeofareactivesystem.

3. Todescribedifferentstatesofanobjectduringitslifetime.
4.Defineastatemachinetomodelstatesofanobject.

Contents:SimplystateandcompositestatesTransitions,includingeventsand
actionsCommonuse,theyareusetomodelthedynamicaspectsofasystem.
Eventorderedbehaviorofanykindofobjects,tomodelreactiveobjects.

TodesignandimplementUsecasediagramforATMSystem.

THEORY:AUsecaseDiagramisadiagramthatshowsasetofUsecasesandactorsand
theirrelationships.Thesediagramsareusedtomodelthestaticusecaseviewofa
system.Tomodelasystemthemostimportantaspectistocapturethedynamic

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

behavior.Toclarifyabitindetails,dynamicbehaviormeansthebehaviorofthe
systemwhenitisrunning/operating.Soonlystaticbehaviorisnotsufficientto
modelasystemratherdynamicbehaviorismoreimportantthanstaticbehavior.
InUMLtherearefivediagramsavailabletomodeldynamicnatureandusecase
diagramisoneofthem.Nowaswehavetodiscussthattheusecasediagram
isdynamicinnaturethereshouldbesomeinternalorexternalfactorsfor
makingtheinteraction.Theseinternalandexternalagentsareknownasactors.
Sousecasediagramsareconsistsofactors,usecasesandtheirrelationships.
Thediagramisusedtomodelthesystem/subsystemofanapplication.Asingle
usecasediagramcapturesaparticularfunctionalityofasystem.Sotomodel
theentiresystemnumbersofusecasediagramsareused.

Purpose:Thepurposeofusecasediagramistocapturethedynamicaspectofa
system.Butthisdefinitionistoogenerictodescribethepurpose.Becauseother
fourdiagrams(activity,sequence,collaborationandStatechart)arealsohaving
thesamepurpose.Sowewilllookintosomespecificpurposewhichwill
distinguishitfromotherfourdiagrams.Usecasediagramsareusedtogather
therequirementsofasystemincludinginternalandexternalinfluences.These
requirementsaremostlydesignrequirements.Sowhenasystemisanalyzedto
gatheritsfunctionalitiesusecasesarepreparedandactorsareidentified.Soin
brief,thepurposesofusecasediagramscanbeasfollows:

Usedtogatherrequirementsof
systemUsedtogetanoutsideview ofasystem.

Identifyexternalandinternalfactorsinfluencingthe
system.Showtheinteractingamongtherequirements areactors.

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

ALGORITHM/FLOWCHART/PSEUDO CODE:

Inferences:

1.Identificationofusecases. 2.Identificationofactors.

Sample input:Actor: Student

Usecase: Login

WithdrawalUseCase

Awithdrawaltransactionasksthecustomertochooseatypeofaccounttowithdraw
from(e.g.checking)fromamenuofpossibleaccounts,andtochooseadollaramount
fromamenuofpossibleamounts.Thesystemverifiesthatithassufficientmoneyon
handtosatisfytherequestbeforesendingthetransactiontothebank.(Ifnot,the
customerisinformedandaskedtoenteradifferentamount.)Ifthetransactionis
approvedbythebank,theappropriateamountofcashisdispensedbythemachine
beforeitissuesareceipt.Awithdrawaltransactioncanbecancelledbythecustomer
pressingtheCancelkeyanytimepriortochoosingthedollaramount. DepositUseCase

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

Adeposittransactionasksthecustomertochooseatypeofaccounttodepositto(e.g.
checking)fromamenuofpossibleaccounts,andtotypeinadollaramountonthe
keyboard.ThetransactionisinitiallysenttothebanktoverifythattheATMcanaccept
adepositfromthiscustomertothisaccount.Ifthetransactionisapproved,the
machineacceptsanenvelopefromthecustomercontainingcashand/orchecksbefore
itissuesareceipt.Oncetheenvelopehasbeenreceived,asecondmessageissentto
thebank,toconfirmthatthebankcancreditthecustomer‟account–contingenton
manualverificationofthedepositenvelopecontentsbyanoperatorlater.
AdeposittransactioncanbecancelledbythecustomerpressingtheCancelkeyany
timepriortoinsertingtheenvelopecontainingthedeposit.Thetransactionis
automaticallycancelledifthecustomerfailstoinserttheenvelopecontainingthe
depositwithinareasonableperiodoftimeafterbeingaskedtodoso.
TransferUseCase:Atransfertransactionasksthecustomertochooseatypeofaccountto
transferfrom(e.g.checking)fromamenuofpossibleaccounts,tochooseadifferentaccountto
transferto,andtotypeinadollaramountonthekeyboard.Nofurtheractionisrequiredoncethe
transactionisapprovedbythebankbeforeprintingthereceipt.Atransfertransactioncanbe
cancelledbythecustomerpressingtheCancelkeyanytimepriortoenteringadollaramount.

InquiryUseCase:Aninquirytransactionasksthecustomertochooseatypeofaccount
toinquireaboutfromamenuofpossibleaccounts.Nofurtheractionisrequiredoncethe
transactionisapprovedbythebankbeforeprintingthereceipt.Aninquirytransaction
canbecancelledbythecustomerpressingtheCancelkeyanytimepriortochoosingthe accounttoinquireabout.

ValidateUserusecase:Thisusecaseisforvalidatetheuseri.echeckthepin
number,whenthebankreportsthatthecustomer’stransactionisdisapproved
duetoaninvalidPIN.Thecustomerisrequiredtore-enterthePINandthe
originalrequestissenttothebankagain.Ifthebanknowapprovesthe
transaction,ordisapprovesitforsomeotherreason,theoriginalusecaseis
continued;otherwisetheprocessofre-enteringthePINisrepeated.Oncethe
PINissuccessfullyre-entered.

IfthecustomerfailsthreetimestoenterthecorrectPIN,thecardispermanently
retained,ascreenisdisplayedinformingthecustomerofthisandsuggestinghe/she
BTCOL506: SoftwareEngineeringLaboratory

TYBTechCSE(SE-LabManual) Page

contactthebank,andtheentirecustomersessionisaborted.

PrintBillusecase:Thisusecaseisforprintingcorrespondingbillafter
transactions(withdrawordeposit,orbalanceenquiry,transfer)arecompleted.

UpdateAccount:Thisusecaseisforupdatingcorrespondinguseraccountsafter
transactions(withdrawordepositortransfer)arecompleted.

3.INTERACTIONDIAGRAMS:WehavetwotypesofinteractiondiagramsinUML.
Oneissequencediagramandtheotherisacollaborationdiagram.The
sequencediagramcapturesthetimesequenceofmessageflowfromone
objecttoanotherandthecollaborationdiagramdescribestheorganization
ofobjectsinasystemtakingpartinthemessageflow.
Sothefollowingthingsaretoidentifiedclearlybeforedrawingtheinteractiondiagram:

1.Objects taking partin the

Purpose:1Tocapturedynamicbehaviorof a
system.2)Todescribethemessage flow
interaction.
inthesystem.3)Todescribe structural
2.Message flows among the objects. organization of the

3.Thesequenceinwhichthe objects.4)Todescribeinteractionamong objects.


messagesareflowing.
4.Objectorganization.

ContentsofaSequenceDiagram:Objects,Focusofcontrol,MessagesLifeline Contents.

ContentsofaCollaborationDiagram,ObjectsLinksMessages
Conclusion:SuccessfullycompleteddesignoffunctionorienteddiagramDFDand
structuredchart:UseCasediagram.

EXPERIMENTNO4:ToDrawthestructuralviewdiagram
TYBTechCSE(SE-LabManual) Page

Aim:Todrawthestructuralviewdiagram:Classdiagram,objectdiagram.
Tools:

TYBTechCSE(SE-LabManual) Page
BTCOL506: SoftwareEngineeringLaboratory

GoogleChrome/AnyBrowsers

STARUML
Window’s/ubuntu
Objective:TolearnbasicConceptofSoftwareEngineering.

Procedure:
BTCOL506: SoftwareEngineeringLaboratory

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

ClassdiagramforATMSystemTheory:Theclassdiagram isastaticdiagram.Itrepresentsthestaticviewofan
application.Classdiagramisnotonlyusedforvisualizing,
describinganddocumentingdifferentaspectsofasystem
butalsoforconstructingexecutablecodeofthesoftware
application.Theclassdiagramdescribestheattributesand
operationsofaclassandalsotheconstraintsimposedon thesystem.Theclassdiagramshowsacollectionof
classes,interfaces,associations,collaborationsand constraints.Itisalsoknownasastructuraldiagram.

Purpose:Thepurposeoftheclassdiagramistomodelthestaticviewofan
application.Theclassdiagramsaretheonlydiagramswhichcanbedirectly
mappedwithobjectorientedlanguagesandthuswidelyusedatthetimeof
construction.TheUMLdiagramslikeactivitydiagram,sequencediagramcan
onlygivethesequenceflowoftheapplicationbutclassdiagramisabit
different.SoitisthemostpopularUMLdiagraminthecodercommunity.Sothe
purposeoftheclassdiagramcanbesummarizedas:analysisanddesignofthe

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

staticviewofanapplication Describeresponsibilitiesofasystembaseforcomponentanddeployment
diagramforwardandreverseengineering.

Contents:Classdiagramscommonlycontainthefollowingthings ClassesInterfacesCollaborations

Dependency,generalizationandassociationrelationships

ALGORITHM/FLOWCHART/PSEUDOCODE:

Inferences:

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

1.understandtheconceptofclasses
2.Identifyclassesandattributesandoperationsforaclass

3.modeltheclassdiagramforthe
systemsampleinput:Class:BookBook,
Applications:OnlinetransactionOnline banking
Conclusion:Successfullycompleteddesignofstructuralviewdiagram:Classdiagram,object
Diagram

EXPERIMENTNO5:ToDrawthebehavioralviewDiagramviewdiagram.

Aim:TodrawthebehavioralviewDiagramviewdiagram:Sequencediagram,collaboration
diagram.
Tools:

GoogleChrome/AnyBrowsers
STARUML
Window’s/ubuntu

Objective:TolearnbasicConceptofSoftwareEngineering.

Procedure:

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

ASequencediagramisaninteractiondiagramthatemphasizesthetimeorderingof
messages.Thisdiagramisusedtoshowthedynamicviewofasystem.

Sequencediagram:

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

Collaborationdiagram:

Conclusion:SuccessfullycompleteddesignofbehavioralviewDiagramviewdiagram
Sequencediagram,collaborationdiagram.
:

EXPERIMENTNO6:ToDrawtheBehavioralviewdiagram
Aim:ToDrawtheBehavioralviewdiagram:State-chartDiagram,Activitydiagram

Tools:
GoogleChrome/AnyBrowsers

STARUML
Window’s/ubuntu

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

Objective:TolearnbasicConceptofSoftwareEngineering.

Procedure:

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

State-chartDiagram:

TYBTechCSE(SE-LabManual) Pag
BTCOL506: SoftwareEngineeringLaboratory

Activitydiagram:Activitydiagramisbasicallyaflowcharttorepresenttheflowformone
activitytoanother.Theactivitycanbedescribedasanoperationofthesystem.Sothe
controlflowisdrawnfromoneoperationtoanother.Thisflowcanbesequential,
branchedorconcurrent.Activitydiagramsdealswithalltypeofflowbyusingelements
likefork,joinetc.

Contents:Initial/FinalState,Activity,Fork&Join,Branch,Swimlanes.

Fork:Aforkrepresentsthesplittingofasingleflowofcontrolintotwoormore
concurrentFlowofcontrol.Aforkmayhaveoneincomingtransitionandtwoor
moreoutgoingtransitions,eachofwhichrepresentsanindependentflowof
control.Belowforktheactivitiesassociatedwitheachofthesepathcontinues inparallel.

Join:Ajoinrepresentsthesynchronizationoftwoormoreconcurrentflowsof
control.Ajoinmayhavetwoormoreincomingtransitionandoneoutgoing
transition.Abovethejointheactivitiesassociatedwitheachofthesepaths continuesinparallel.

Branching:AbranchspecifiesalternatepathstakesbasedonsomeBoolean
expressionBranchisrepresentedbydiamondBranchmayhaveoneincoming
transitionandtwoormoreoutgoingoneoneachoutgoingtransition,youplace
aBooleanexpressionshouldn‟toverlapbuttheyshouldcoverallpossibilities.

Swimlane:Swimlanesareusefulwhenwemodelworkflowsofbusiness
processestopartitiontheactivitystatesonanactivitydiagramintogroups.
Eachgrouprepresentingthebusinessorganizationresponsibleforthose
activities,thesegroupsarecalledSwimlanes.

Activitydiagram:
BTCOL506: SoftwareEngineeringLaboratory
BTCOL506:SoftwareEngineeringLaboratory

EXPERIMENTNO7:Todrawtheimplementationviewdiagram.
Aim:Todrawtheimplementationviewdiagram:Componentdiagram

Tools:
GoogleChrome/AnyBrowsers

STARUML
Window’s/ubuntu
Objective:TolearnbasicConceptofSoftwareEngineering.

Procedure:

COEA.TY(CSE).SUB:SEPage36
BTCOL506:SoftwareEngineeringLaboratory

COEA.TY(CSE).SUB:SEPage37
BTCOL506:SoftwareEngineeringLaboratory
Componentdiagrams:areusedtomodelphysicalaspectsofasystem.Nowthe
questioniswhatarethesephysicalaspects?Physicalaspectsaretheelements
likeexecutables,libraries,files,documentsetcwhichresidesinanode.So
componentdiagramsareusedtovisualizethe
organizationandrelationshipsamongcomponentsinasystem.Thesediagrams
arealsousedtomakeexecutablesystems.
Purpose:Componentdiagramscanbedescribedasastaticimplementation
viewofasystem.Staticimplementationrepresentstheorganizationofthe
componentsataparticularmoment.

Beforedrawingacomponentdiagramthefollowingartifactsaretobeidentifiedclearly:

Filesusedinthesystem.Librariesandotherartifactsrelevanttotheapplication.
Relationshipsamongtheartifacts.Nowafteridentifyingtheartifactsthe
followingpointsneedstobefollowed:Useameaningfulnametoidentifythe
componentforwhichthediagramistobedrawn.Prepareamentallayout
beforeproducingusingtools.
Usenotesforclarifyingimportantpoints.
Nowtheusageofcomponentdiagramscanbedescribedas:
1.Modelthecomponentsofasystem.2.Modeldatabaseschema.3.Model
executablesofanapplication.4.Modelsystem’ssourcecode.

ComponentDiagram:Contents:Components,Interfaces,Relationships

COEA.TY(CSE).SUB:SEPage38
BTCOL506:SoftwareEngineeringLaboratory

Conclusion:Successfullycompleteddesignimplementationviewdiagram:Component
Diagram

EXPERIMENTNO8:Todrawtheenvironmentalviewdiagram.
Aim:Todrawtheenvironmentalviewdiagram:deploymentdiagram

Tools:
GoogleChrome/AnyBrowsers

STARUML
Window’s/ubuntu
Objective:TolearnbasicConceptofSoftwareEngineering.

Procedure:

COEA.TY(CSE).SUB:SEPage39
BTCOL506:SoftwareEngineeringLaboratory

COEA.TY(CSE).SUB:SEPage40
BTCOL506:SoftwareEngineeringLaboratory

COEA.TY(CSE).SUB:SEPage41
BTCOL506:SoftwareEngineeringLaboratory

COEA.TY(CSE).SUB:SEPage42
BTCOL506:SoftwareEngineeringLaboratory

Deploymentdiagramsareusedtovisualizethetopologyofthephysical
componentsofasystemwherethesoftwarecomponentsaredeployed.So
deploymentdiagramsareusedtodescribethestaticdeploymentviewofa
system.Deploymentdiagramsconsistofnodesandtheirrelationships.

ThenameDeploymentitselfdescribesthepurposeofthediagram.Deployment
diagramsareusedfordescribingthehardwarecomponentswheresoftware
componentsaredeployed.Componentdiagramsanddeploymentdiagramsare
closelyrelated.Componentdiagramsareusedtodescribethecomponentsand
deploymentdiagramsshowshowtheyaredeployedinhardware.

Deploymentdiagram:Contents:Nodes,Dependency&Associationrelationships

COEA.TY(CSE).SUB:SEPage43
BTCOL506:SoftwareEngineeringLaboratory

Conclusion: Successfullycompleteddesignofenvironmentalviewdiagram
Deploymentdiagram

COEA.TY(CSE).SUB:SEPage44
BTCOL506:SoftwareEngineeringLaboratory
EXPERIMENTNO9:Toperformvarioustestingusingthetestingtoolunittesting,
integrationtesting

Aim:Toperformvarioustestingusingthetestingtoolunittesting,integrationtesting.

Tools:
GoogleChrome/AnyBrowsers

STARUML
Window’s/ubuntu
Objective:TolearnbasicConceptofSoftwareEngineering.

Procedure:

*Note:yetnotaddedstepsforunittestingandintegrationtesting

Conclusion:Successfullycompleteddesignoffunctionorienteddiagram

COEA.TY(CSE).SUB:SEPage45

You might also like