Professional Documents
Culture Documents
Introduction:
CASEtoolsknownasComputeraidedsoftwareengineeringtoolsisakindof
componentbaseddevelopmentwhichallowsitsuserstorapidlydevelopinformation
systems.Themaingoalofcasetechnologyistheautomationoftheentireinformation
systemsdevelopmentlifecycleprocessusingasetofintegratedsoftwaretools,such
as modeling, methodology and automatic code generation. Component based
manufacturing has several advantages over custom development. The main
advantagesaretheavailabilityofhighquality,defectfreeproductsatlowcostandat
afastertime.Theprefabricatedcomponentsarecustomizedaspertherequirementsof
thecustomers.Thecomponentsusedareprebuilt,readytestedandaddvalueand
differentiation by rapid customization to the targeted customers. However the
productswegetfromcasetoolsareonlyaskeletonofthefinalproductrequiredanda
lotofprogrammingmustbedonebyhandtogetafullyfinished,goodproduct.
CharacteristicsofCASE:
Someofthecharacteristicsofcasetoolsthatmakeitbetterthancustomized
developmentare;
Itisagraphicorientedtool.
Itsupportsdecompositionofprocess.
SometypicalCASEtoolsare:
UnifiedModelingLanguage
Datamodelingtools,and
Sourcecodegenerationtools
IntroductiontoUML(UnifiedModelingLanguage):
1 Classdiagram
2 Usecasediagram
3 Behaviordiagram
1 Interactiondiagram
1 sequencediagram
2 collaborationdiagram
2 statechartdiagram
3 activitydiagram
4 Implementationdiagram
1 componentdiagram
2 deploymentdiagram
1 UMLclassdiagram:
2.Usecasediagram:
Thefunctionalityofasystemcanbedescribedinanumberofdifferentuse
cases,eachofwhichrepresentsaspecificflowofeventsinasystem.Itisagraphof
actors, a set of usecases enclosed in a boundary, communication, associations
betweentheactorsandtheusecases,andgeneralizationamongtheusecases.
3.Behaviordiagram:
Itisadynamicmodelunlikealltheothersmentionedbefore.Theobjectsofan
objectorientedsystemarenotstaticandarenoteasilyunderstoodbystaticdiagrams.
Thebehavioroftheclasssinstance(anobject)isrepresentedinthisdiagram.Every
usecaseofthesystemhasanassociatedbehaviordiagramthatindicatesthebehavior
oftheobject.Inconjunctionwiththeusecasediagramwemayprovideascriptor
interaction diagram to show a time line of events. It consists of sequence and
collaborationdiagrams.
4.Interactiondiagram
Itisthecombinationofsequenceandcollaborationdiagram.Itisusedto
depicttheflowofeventsinthesystemoveratimeline.Theinteractiondiagramisa
dynamicmodelwhichshowshowthesystembehavesduringdynamicexecution.
5.Statechartdiagram:
6.Activitydiagram:
Itshowsorganizationandtheirdependenceamongthesetofcomponents.
Thesediagramsareparticularlyusefulinconnectionwithworkflowandindescribing
behavior that has a lot of parallel processing. An activity is a state of doing
something:eitherarealworldprocess,ortheexecutionofasoftwareroutine.
7.Implementationdiagram:
Itshowstheimplementationphaseofthesystemsdevelopment,suchasthe
sourcecodestructureandtheruntimeimplementationstructure.Thesearerelatively
simplehighleveldiagramscomparedtotheothersseensofar.Theyareoftwosub
diagrams,thecomponentdiagramandthedeploymentdiagram.
8.Componentdiagram:
TheseareorganizationalpartsofaUMLmodel.Theseareboxestowhicha
modelcanbedecomposed.Theyshowthestructureofthecodeitself.Theymodelthe
physicalcomponentssuchassourcecode,userinterfaceinadesign.Itissimilarto
theconceptofpackages.
9.Deploymentdiagram:
Thedeploymentdiagramshowsthestructureoftheruntimesystem.Itshows
theconfigurationofruntimeprocessingelementsandthesoftwarecomponentsthat
liveinthem.Theyareusuallyusedinconjunctionwithdeploymentdiagramstoshow
howphysicalmodulesofcodearedistributedonthesystem.
Notationelements:
TheseareexplanatorypartsofUMLmodel.Theyareboxeswhichmayapply
todescribeandremarkaboutanyelementinthemodel.Theyprovidetheinformation
forunderstandingthenecessarydetailsofthediagrams.
RelationsintheUML:
ThesearefourkindsofrelationshipsusedinanUMLdiagram,theyare:
Dependency
Association
Generalizatio
nRealization
Dependency:
Itisasemanticrelationshipbetweentwothingsinwhichachangeonething
affectsthesemanticsofotherthings.Graphicallyadependencyisrepresentedbya
noncontinuousline.
Association:
Generalization:
Realization:
Itisasemanticrelationbetweenclassifiers.Graphicallyitisrepresentedasa
crossbetweengeneralizationanddependencyrelationship.
WhereUMLcanbeused:
UMLisnotlimitedtomodelingsoftware.Infactitisexpressivetomodel
nonsoftwaresuchastoshowinstructureandbehaviorofhealthcasesystemandto
designthehardwareofthesystem.
ConceptualmodelbeUML:
UMLyouneedtoformtheconceptualmodelofUML.Thisrequiresthree
majorelements:
UMLbasicbuildingblocks.
Rulesthatdictatehowthisbuildingblocksareputtogether.
Somecommonmechanismthatapplythroughoutthelanguage.
Onceyouhavegraspedtheseideas,youmaybeabletoread.UMLcreate
somebasicones.Asyougainmoreexperienceinapplyingconceptualmodelusing
moreadvancedfeaturesofthislanguage.
BuildingblocksoftheUML:
ThevocabularyofUMLencompassesthesekindsofbuildingblocks.
UseCASEdefinition:
Description:
Ausecaseisasetofscenariostiedtogetherbyacommonusergoal.Ause
case is a behavioral diagram that shows a set of use case actions and their
relationships.
Purpose:
Thepurposeofusecaseisloginandexchangemessagesbetweensenderand
receiver(Emailclient).
Mainflow:
First,thesendergiveshisidandentershislogin.Now,heentersthemessage
tothereceiverid.
Alternateflow:
Iftheusernameandidbythesenderorreceiverisnotvalid,theadministrator
willnotallowenteringandInvalidpasswordmessageisdisplayed.
Precondition:
ApersonhastoregisterhimselftoobtainaloginID.
Postcondition:
Theuserisnotallowedtoenterifthepasswordorusernameisnotvalid.
Classdiagram:
Description:
Aclassdiagramdescribesthetypeofobjectsinsystemandvarious
kindsofrelationshipsthatexistsamongthem.
Class diagrams and collaboration diagrams are alternate
representationsofobjectmodels.
Duringanalysis,weuseclassdiagramtoshowrolesandresponsibilitiesof
entities that provide email client system behaviors design. We use to capture the
structureofclassesthatformtheemailclientsystemarchitecture.
Theclassesusedinsystemare:
1 user
2 login
3 s
4 ds
Aclassdiagramisrepresentedas:
<<Classname>>
<<Attribute1>>
<<Attributen>>
<<Operation()>>
Relationshipused:
Achangeinoneelementaffectstheother
Generalization:
Itisakindofrelationship
Statechart:
Description:
Thestatechartdiagrammadethedynamicbehaviorofindividualclasses.
Statechartshowsthesequencesofstatesthatanobjectgoesthroughevents
andstatetransitions.
Astatechartcontainsonestatestartandmultipleendstates.
Theimportantobjectivesare:
Decision:
Itrepresentsaspecificlocationstatechartdiagramwheretheworkflowmay
branchbaseduponguardconditions.
Synchronization:
Itgivesasimultaneousworkflowinastatechartdiagram.Theyvisuallydefine
forksandjointsrepresentingparallelworkflow.
Forksandjoins:
Aforkconstructisusedtomodelasingleflowofcontrol.
Everyworkmustbefollowedbyacorrespondingjoin.
Jointshavetwoormoreflowthatunitintoasingleflow.
State:
Astateisaconditionorsituationduringalifeofanobjectinwhichitsatisfies
conditionorwaitsforsomeevents.
Transition:
Itisarelationshipbetweentwoactivitiesandbetweenstatesandactivities.
Startstate:
Endstate:
Itisafinalorterminalstate.
Activitydiagram
Description:
Activitydiagramprovidesawaytomodeltheworkflowofadevelopment
process.Wecanalsomodelthiscodespecificinformationsuchasclassoperation
using activity diagram. Activity diagrams can model different types of diagrams.
Therearevarioustoolsinvolvedintheactivitydiagram.
Activity:
Anactivityrepresentstheperformanceofataskonduty.Itmayalsorepresent
theexecutionofastatementinaprocedure.
Decision:
Adecisionrepresents aconditiononsituationduringthelifeofanobject,
whichitsatisfiessomeconditionorwaitsforanevent.
Startstate:
Objectflow:
Anobjectonanactivitydiagramrepresentstherelationshipbetweenactivity
andobjectthatcreatesorusesit.
Synchronization:
Itenablesustoseeasimultaneousworkflowinanactivity.
Endstate:
Anendstaterepresentsafinalorterminalstateonanactivitydiagramorstate
chartdiagram.
Sequencediagram:
Description:
Thesequencediagramfortheemailclientsystemconsistsofthefollowing
objectives:
Object:
Anobjecthasstate,behaviorandidentity.Anobjectisnotbasedisreferredto
asaninstance.
Thevariousobjectsinemailclientsystemare:
User
Website
Login
Groups
Messageicon:
Amessageiconrepresentsthecommunicationbetweenobjectsindicatingthat
an action will follow. The message icon is the horizontal solid arrow connecting
lifelinestogether.
Collaborationdiagram:
Description:
Collaborationdiagramandsequencediagramsarealternaterepresentationsof
aninteraction.Acollaborationdiagramisaninteractiondiagramthatshowstheorder
ofmessagesthatimplementanoperationoratransaction.Collaborationdiagramisan
interactiondiagramthatshowstheorderofmessagesthatimplementanoperationora
transaction.Collaborationdiagramshowsobjects,theirlinksandtheirmessages.
Theycanalsocontainsimpleclassinstancesandclassutilityinstances.
Whenweworkineitherasequenceorcollaborationdiagram,itispossibleto
viewthecorrespondingdiagrambypressingF5key.
ATMSYSTEM
Aim:
TocreateasystemtoperformBankATMtransaction
Problemstatement:
Thissystemisbuildforthebankclientandthemanager.
Thebankclientmustbeabletodepositandwithdrawamountfrom
his/heraccountsusingtheATMmachine.Eachtransactionmustbe
recorded and the client must be able to review all transactions
performedinhis/heraccount.Recordedtransactionsmustincludethe
date, time, transaction type, amount and account balance after the
transaction.
ThebankmanagermustbeabletoviewtheATMmachinestatusthat
isthetotalbalanceoftheATMmachine,todayswithdrawal,todays
balanceandthelimitationsofthemachine.
Thebankclientisprovidedbyloginverification.Ifitisvalidhe/she
willaccesstheiraccountotherwiseanappropriatemessageisdisplayed
totheclient.
Softwarerequirements:
Microsoftvisualbasic6.0isusedasfrontendforourprojectandmsaccessis
usedasbackendtostorethedata.
USECASEdiagram:
TheATMtransactionusecasesinoursystemare:
1 Login
2 Withdraw
3 Ministatement
4 ATMmachinestatus
5 Deposit
Actorsinvolved:
1 User
2 Bankmanager
USECASEname:Login
Theuserentersausernameandpassword.Ifitisvalid,theusersaccount
becomesavailable.Ifitisinvalid,anappropriatemessageisdisplayedtotheuser.
USECASEname:Withdraw
Theusertriestowithdrawanamountfromhisorhercheckingaccount.The
amountislessthanorequaltothecheckingaccountsbalance,thetransactionis
performedandtheavailableinformationisdisplayed.Thesystemcreatesarecordof
thetransactionandthedisplayconfirmationmessageisdisplayedtotheclient.
USECASEname:Ministatement
Thebankuserrequestsahistoryoftransactionsforacheckingaccount.The
system displays the transaction history for the checking account. The transaction
history consists of amount, date, transaction type and balance of the particular
account.
USECASEname:ATMmachinestatus
Thebankmanagerentersausernameandpassword.Ifitisvalid,thebank
manager accesses the machine status. If it is invalid, an appropriate message is
displayedtotheuser.
USECASEname:Deposit
Thebankuserrequeststhesystemtodepositmoneytoanaccount.Theuser
accessestheaccountforwhichadepositisgoingtobemadeandenterstheamount.
The system creates a record of the transaction and an appropriate confirmation
message (display confirmation) is displayed to the client. The transaction must
includethedate,type,amountandaccountbalanceafterthetransaction.
Classdiagram
The class diagram, also referred to as object modeling is the main static
analysisdiagram.Themaintaskofobjectmodelingistographicallyshowwhateach
objectwilldointheproblemdomain.Theproblemdomaindescribesthestructureand
therelationshipsamongobjects.
TheATMsystemclassdiagramconsistsoffourclasses:
1 Userclass
2 ATMmachinestatus
3 Account
4 Transaction
1 Userclass:
Itconsistsoffourattributesandtwooperations.Theattributesareusername,
password,addressandDOB.Theoperationsofthisclassareread(),display()and
write().
2)ATMmachinestatus:
The attributes of this class are ATM balance, todays withdrawal, todays
balance,andlimitations.Theoperationsareloginverification(),ATMstatus()and
displayconfirmation().
3)Account:
Theattributesareaccountno.andbalanceandtheoperationsarewithdraw(),
deposit()anddisplayavailability().
4)Transaction:
The attributes of this class are account no,transaction type, data, amount,
balanceandtheoperationsareministatement()andcreatetransaction().
Sequencediagram:
AsequencediagramrepresentsthesequenceandinteractionsofagivenUSE
CASEorscenario.Sequencediagramscancapturemostoftheinformationaboutthe
system. Most object to object interactions and operations are considered events and
eventsincludesignals,inputs,decisions,interrupts,transitionsandactionstoorfrom
usersorexternaldevices.
Aneventalsoisconsideredtobeanyactionbyanobjectthatsendsinformation.
Theeventlinerepresentsamessagesentfromoneobjecttoanother,inwhichtheform
objectisrequestinganoperationbeperformedbythetoobject.
Thetoobjectperformstheoperationusingamethodthattheclasscontains.
Itisalsorepresentedbytheorderinwhichthingsoccurandhowtheobjectsinthe
systemsendmessagetooneanother.
ThesequencediagramforeachUSECASEthatexistswhenauserwithdraws,
deposits,needsinformationaboutATMmachinestatusandaccountaredrowned.
ThediagramsshowtheentiredepositprocessinanATMsystem.Theuserhasto
logintotheATMmachineanddeposittheamountofmoneyasrequiredbytheuser.The
usermaywishtogetaministatementandascreenaboutthedetailsofthetransaction.
ThediagramsshowtheprocessofloginbytheusertotheATMsystem.Theuser
hastoenterhisdetails.Thedetailsenteredareverifiedbythesystemandtheuseris
approvedifthedetailsmatch,otherwiseanappropriateerrormessageisdisplayed.
TheAdministratoroftheATMsystemhastomaintainthedetailsabouttheATM,He
hastocheckifthereisenoughmoneyintheATMandiftheATMisfunctionalwithout
majorerrors.Forthis,hemaychecktheATMmachinestatusoccasionally.Theprocess
isshownintheabovediagrams.
Afteratransactioniscarriedoutsuccessfully,theusermustgetaministatementtotell
him his accounts details such as balance and transaction number. This process is
depictedintheabovediagrams.
Theusercanmakewithdrawmoneyfromhisaccount.Theprocessisdepictedin
the diagrams above. The user has to login to the system using his username and
password,whichareverifiedbythesystem.Aftersuccessfulverification,theusercan
choose the amount of money he wants to withdraw from his account. The amount
specifiedbytheuserischeckedbythesystemtomakesurethereisenoughbalanceinhis
accounttocarryoutthetransaction.Afterthetransactioniscarriedouttheresulting
amountisdisplayedandthedetailsareupdatedtothedatabase.
6. STATE DIAGRAM
Statechart diagram describes the flow of control from one state to another state.
States are defined as a condition in which an object exists and it changes when some
event is triggered. So the most important purpose of Statechart diagram is to model life
time of an object from creation to termination.
Statechart diagrams are also used for forward and reverse engineering of a
system. But the main purpose is to model reactive system.
Contents
Simply state and composite states Transitions, including events and actions
Common use
They are use to model the dynamic aspects of a system. Event ordered behavior of any
kind of objects, to model reactive objects.
Fork
A fork represents the splitting of a single flow of control into two or more concur-
rentFlow of control. A fork may have one incoming transition and two or more outgoing
transi-tions, each of which represents an independent flow of control. Below fork the
activities asso-ciated with each of these path continues in parallel.
Join
Branching
Swimlane:
ACITVITY DIAGRAM
COMPONENT DIAGRAM
Component diagrams are used to model physical aspects of a system. Now the
question is what are these physical aspects? Physical aspects are the elements like
executables, libraries, files, documents etc which resides in a node. So component
diagrams are used to visualize the
organization and relationships among components in a system. These diagrams are also
used to make executable systems.
Purpose:
Before drawing a component diagram the following artifacts are to be identified clearly:
Now after identifying the artifacts the following points needs to be followed:
Use a meaningful name to identify the component for which the diagram is to be
drawn. Prepare a mental layout before producing using tools.
Use notes for clarifying important points.
Contents