online voting Batch No:6 and Project No: 6 1.

PROBLEM STATEMENT The basic methodology as applied to online voting system wouldinvolve giving voter realistic voting tasks to accomplish using a variety of ballotdesigns. A rigorous methodology is used to sample variable aspects of thesystem, such as voters and ballots. The sample is constructed so as to provide astatistical basis for generalization from the sample to the populations theyrepresent. Voting task performance is measured using variables such as accuracy,time, and workload.In online voting mechanism each voter receives a unique ballot code.The ballot code has an arbitrary length and is generated randomly to help preventmanipulation. Online voting system mails virtual ballot papers, including theballot code, to the voters before the election. The voters can then use their emailclients to return their votes to the voting server.The voting server collects the votes and filters out duplicate andinvalid votes. Each voter can then check her/his vote online to ensure that her vote has been counted correctly. Pa g e 3 9 Analysis Use case view 2. IDENTIFICATION OF ACTORS Actors represent system users. They help delimit the system and givea clear picture of what the system should do. It is important to note that an actor interacts with, but has no control over the use cases.An actor is someone or something that:1. interacts with or uses the system2. Provides input to & receive information from the system3. is external to the system and has no control over the use casesAn actor can be represented as shown below:1. Administrator Administrator (from Actors) 2. Candidate Candidate (from Actors) 3. E-mail client

Pa g e 3 9 email client (from Actors) 4. Server server (from Actors) 5. Voter voter (from Actors)

The following question should be answered to identify actors: 1.Who is interested in a certain requirement? 2.Where in the organization the system is used? 3.Who will benefit from the use of the system? 4.Who will supply the system with the information, use this information andremove this information? 5.Who will support and maintain the system? 6.Does the system use the external resource? 7.Does one person play several different roles? 8.Do several people play same role? 9.Does the system interact with the legacy system?

Pa g e 3 9 Actors identified are:1. Administrator : The person who takes care of conducting the elections bydeclaring the election details and declaring the results. 2 .Voter : A member of the organisation who participates in the election bycasting his/her vote. 3. Candidate : A member of the organisation who participates in election bycontesting in it.4. E-mail client : It is used to sent the ballot paper to the voter and voter can replyby sending an e-mail. It is also used to send acknowledgement to the voter after vote is polled.5. Server : It maintains the database. Pa g e 3 9 3. IDENTIFICATION OF USECASES AND SUB USE CASES In its simplest form a use case can be described as a specific way of using the system from a user’s perspective.A more detailed description might characterize a use case as: • A pattern of behavior the system exhibits • A sequence of related transactions performed by an actor and the system •

What use cases will support and maintain the system?7.What are the tasks of each actor? 2. . change.An ellipse containing the name of the use case inside it. Voting : Each voter is allowed to cast his/her vote for the candidate of his/her choice with the online voting system and after casting the vote the ballot number of that voter is made invalid which avoids multiple votes.Does any actor needs to be perform about certain occurrences in the system?6. Authentication Process : Any member of the organisation can log on to theonline voting system by entering their e-mail ID and Ballot number and thisprevents multiple votes by deactivating the account after casting the vote5.capture system requirements2. Since all needs of asystem typically cannot be covered in one use case.4.Delivering something of value to the actor. View profiles : This use case allows the voters to view the profiles of differentcandidates contesting in the election and their personal profile.Use case provides a mean to:1.Will any actor create. it is usual to have a collectionof use cases. Update profiles : The candidates can update their profiles after passing throughan authentication process.communicate with the end users and domain experts3.test the systemUse cases are the best discovered by examining the actors anddefining what the actor will be able to do with the system. Call an election : The announcement for the election date.2.Will any actor need to inform the system about sudden external changes. change.UML notation for the use case:1.What use cases will store. candidate list and theeligible voter’s qualifications is done. Send Acknowledgement : The server sends the reply after the voter has enrolledin which it includes the ballot number of voter which can be used as passwordwhile authentication process.7.An ellipse containing the name of the use case below it Voting Pa g e 3 9 voting (from voting) The following questions are to be answered to identify the use cases:1.5.6. store.3.Can all functional requirements be performed by the use cases?Use cases identified are:1.Error: Reference source not found2. Create profiles : Voters can enroll themselves by sending a request to theserver. remove or read this information?4. or read information in the system?3. remove. Together this use case collection specifies all ways of using thesystem.

Special Requirements : None. Pre-Conditions : Profile must exist. The system prompts the voter to cast the vote by providing the ballot paper. 1. then the system willprompt with message “invalid vote” and makes that vote as invalid whilecounting the votes. Pa g e 3 9 4. written in termsof what the system should do. Number of votes : Administrator can know the number of votes polled till date. The system sends a message to voter indicating that the vote is polled. Post-Conditions . The server automatically deactivates the ballot number. The voter chooses the candidate in the ballot paper and castes his vote 3.9. not how the system accomplishes the task. They atypically contain very detailed information. 4.Pa g e 3 9 8. Alternative Flow Pa g e 3 9 Invalid voteIf. Flow of events are created as separate files or documents in your favorite text editor andthen attached or linked to a use case using the files tab of a model element. Results : Final results of the election are declared and voters can verify whether their vote is considered or not. Flow of EventsBasic Flow This use case begins when the voter chooses to cast his vote using ballot paper. FLOW OF EVENTS A flow of events is a sequence of transactions (or events) performedby the system. in the Basic Flow. 2. the voter fails to select a candidate.Flow of events should include: • When and how the use case starts and ends • Use case / actor interactions • Data needed by the use case • Normal sequence of events for the use case • Alternate or exceptional flowsFlow of events in our system is: Brief Description This use case allows the voter to cast his vote during the time of election and thenthe server deactivates the account inorder to avoid the duplicate votes.

A use case diagram may depict all or some of the use cases of a system.: Numbers of votes are counted for results. This new use case then can be used byother use cases. you can extract the common subflow and make it a use case of its own. Extends association An extends association is a stereo typed association that specifieshow the functionality of one use case can be inserted in to the functionality of another use case. The relationships among the other use cases and this newextracted use case are called uses association. CONSTRUCTION OF USE CASE DIAGRAMS Use case diagrams depict system behavior (use cases). The main use case diagram: . dependencies. and generalizations. Includes association An include association is a stereo typed association that connects abase use case to an inclusion use case. Uses associations The uses association occurs when we are describing our use casesand notice that some of them have sub flows in common to avoid describing asub flow more than once in several use cases. Extend relationships between use cases are modeled asdependency by using the extend stereotype.A use-case diagram can contain: • actors (“things” outside the system) • use case(system boundaries identifying what the system should do) • interactions or relationships between actors and use case in the systemincluding the associations. 5. Extension Points : None.Thesediagrams present a high level view of how the system is used as viewed from anoutsider’s (actor’s)perspective.

.

The following tools are used on the activity diagramtoolbox to model activity diagrams. Activity diagrams can model many different types of work flows.  End States: An end state represents a final or terminal state. BUILD A BUSINESS PROCESS MODEL USING ACTIVITY DIAGRAM Pa g e 3 9 Activity diagrams provide a way to model the workflow of a businessprocess.  SwimLane: A unique diagram feature that defines who or what isresponsible for carrying out activity or state. A joinconsists of two or more flows of control that unite into a single flow of control. A software company could use activity diagrams to model a softwaredevelopment process.  Decisions: A decision represents a specific location on activity diagramwhen the workflow may branch based upon guard conditions.  Start States: A start state (also called an “initial state”) explicitly showsthe beginning of a workflow.  Synchronization: Synchronization visually defines forks and joinsrepresenting parallel workflow.  States: “A state represents a condition or situation during the life of anobject during which it satisfies some condition or waits for some event.6.  Transitions: A state transition indicates that an object in the source statewill perform certain specified actions and enter the destination state whena specified event occurs or when certain conditions are satisfied. Pa g e 3 9 The activity diagram for our system is as follows: . An activity diagram is typically used for modeling the sequence of Activities in a process.  Work Flow: Each activity represents the performance of a group of actions in a workflow.  Forks and Joins: A fork construct is used to model a single flows.

.

and Luaren Wiener. thecommon class patterns approach. Event Class: These are points in time that must be recorded. fuzzy classes andthe irrelevant classes. Places Class : These are the physical locations. we read through the requirements or use-cases looking for noun phrases. CLASSES RESPONSIBILITIES AND COLLABORATORS This technique is used to identify the classes. the nounsare listed.Out of these. IDENTIFICATION OF ANALYSIS CLASSES Identification of classes can be done by the noun phrase approach. OranisationClass: It is a collection of people. In this method. Nouns in the textual description areconsidered to be classes and verbs to be methods of the classes then. Tangible things and Devices Class : It includes physical objects or groups of objects that are tangible . Thecandidate classes can be formulated using the following: Concept Class: Concept is an understanding of our world. the noun phrase is used to identify the classes to increase our understanding of the subject.Logical View 7. USE-CASE DRIVEN APPROACH : Here the scenarios are described in text or through a sequence of steps. Brain Wilker-son.1. facilities or groups towhich the users belong. the use-case driven sequence/collaborationmodeling approach and the classes’ responsibilities and collaborators (CRC)approach. It is a problem driven approach to object oriented analysis in which thedesigner first considers the problem at hand and not the relationship betweenobjects. COMMON CLASS PATTERN APPROACH It is based on the knowledge base of common existing classes.Reviewing the irrelevant classesIt is safe to eliminate the . NOUN PHRASE APPROACH This approach was proposed by Rebecca Wirfs-Brock. resources. People class : The people class represents the different roles users play ininteracting with the application. and divided in to three categories: relevant classes. It is based on the idea that an object caneither accomplish a certain responsibility by itself or it may require the assistanceof other objects in which case it collaborates. responsibilities andtherefore their attributes and methods.The initial list of noun phrases:Administrator AcknowledgementBallotBallot codeBallot number Ballot paper CandidateElectionElection dateE-mail addressE-mail clientE-mail messageInformationLogin idMember MessageNameNatural hazards Pa g e 3 9 Online voting systemPasswordProfileRation card number Results dateSecurity questionSystemVoter Voting server Website2.

The following irrelevant classescan be eliminated:Administrator AcknowledgementBallotBallot codeBallot number Ballot paper CandidateElectionElection dateE-mail addressE-mail clientE-mail messageInformationLogin idMember MessageNameNatural hazardsOnline voting system Pa g e 3 9 PasswordProfileRation card number Results dateSecurity questionSystemVoter Voting server Website3. Results date.Reviewing the possible attributesThe noun phrases used only as values should be restated as attribute classes.5. Ballot paper = Ballot paper Online voting system. System. Security question. Name. Login id = login idE-mail message. Ballot number. Election date.Reviewing the redundant classes and building a common vocabularyH e r e t h e s e v e r a l c l a s s e s a p p e a r m or e t h a n o nc e . Ballot number. Election = Online voting systemBallot code. Ballot paper. Information. Message.The following are attribute classes:Acknowledgement. Acknowledgement = AcknowledgementMember. H e n c e w e e l i m i n a t e t h e redundant classesBallot.irrelevant classes. Password = Ballot number E-mail address. The candidate classes must beselected from relevant classes and fuzzy classes.Administrator AcknowledgementBallot number Ballot paper CandidateElection dateE-mail clientInformationLogin idNameOnline voting systemProfileRation card number Results date . Voter = Voter Administrator AcknowledgementBallotBallot codeBallot number Ballot paper CandidateElectionElection dateE-mail addressE-mail clientE-mail messageInformationLogin idMember Pa g e 3 9 MessageNameOnline voting systemPasswordProfileRation card number Results dateSecurity questionSystemVoter Voting server 4. Ration card number.Login id. Reviewing the classes containing adjectives:In this system we have no classes containing adjectives that we ca eliminate.

They also help in identifying theclasses. Responsibilities. Identify collaborators Class name Administrator CandidateE-mail client Online voting System ProfileVoter Voting server Responsibilities This class gives the information aboutelection and status of election.It controls the whole system. and Collaborators process consists of three steps:1.It maintains profiles and update thestatus of election. Classes Responsibilities and Collaborators is based on the idea that anobject either can accomplish a certain responsibility itself or it may require theassistance of other objects .It provides to cast the vote anddeactivates the account.Pa g e 3 9 8. Assign responsibilities3.The Classes.This class provides the access to profilesof their own. By identifying anobject’s responsibilities and collaborators attributes and methods can beidentified. Wilkerson.If it requires the assistance of other objects. IDENTIFY THE RESPOSIBILITIES OF CLASSES CRC developed by Cunningham. ClassesResponsibilities and Collaborators is a technique used for identifying classes’responsibilities and their attributes and methods. and Beck.This is used to send ballot paper andacknowledgement to the voters. Identify classes’ responsibilities(and identify classes)2. it mustcollaborate with those objects to fulfill its responsibility.It provides candidate profile. .

CONSTRUCTION OF USE CASE REALIZATIONS A use case realization is a graphic sequence of events.The use case realizations for our system are: Authentication processAuthentication process (from Authentication process) Call an electioncall an election (from Call an election) create profilecreate profile (from create profile) polled votespolled votes (from polled votes) ResultsResults (from Results) send acksend ack (from send ack) . also referred to as ascenario or an instance of a use case. These realizations or scenarios are depictedin either a sequence or collaboration diagrams.Pa g e 3 9 9.

.

The horizontal ordering of the life lines is arbitrary. what happensnext. An object is shown as abox at the top of a dashed vertical line. Each message is labeled with the message name. call arrows arearranged to proceed in one direction across the page. Sequence diagrams establish the roles of objects and help provide essentialinformation to determine class responsibilities and interfaces. A role is a slot for an object within acollaboration that describes the type of object that may play the role and itsrelationships to other roles. An object roleis shown as a vertical dashed line. a sequence diagram does not show therelationships among the roles ort eh association among the objects. a messagethat an object sends to itself.The sequence diagram is very simple and has immediate visual appeal---this is its great . the lifeline. but this is not alwayspossible and the order conveys no information.Each message is represented by an Arrow between the lifelines of twoobjects. CONSTRUCTION OF SEQUENCE DIAGRAM A sequence diagram is a graphical view of a scenario that showsobject interaction in a timebased sequence-what happens first. However. The lifeline represents the object’s existence during theinteraction. The label also can includethe argument and some control information and show selfdelegation. Often. The vertical line is called theobject’s lifeline. A sequencediagram has two dimensions: the vertical dimension represents time. by sending the message arrow back to the samelifeline. This form was first popularized by Jacobson. The order in which these messages occur is shown top to bottom on thepage.update profileupdate profile (from update profile) view profileview profile (from view profile) v o t i n g (from voting) v o t i n g Pa g e 3 9 10. a messagethe argument and some control information and show self-delegation. thehorizontal dimension represents different objects.

 Message Icons : A message icon represents the communication betweenobjects indicating that an action will follow. Notes may contain any information. Each object Pa g e 3 9 in a diagram indicates some instance of a class. including plaintext. solid arrow connecting two lifelines together. Instead of looking at the code andtrying to find out the overall sequence of behavior.  Note Anchor : A note anchor connects a note to the element that it affects. It does not involve other objectsbecause the message returns to the same object. The structure andbehavior of similar objects are defined in their common class.  Focus of Control : Focus of Control (FOC) is an advanced notationaltechnique that enhances sequence diagrams. Pa g e 3 9 Sequence diagram for our system is as follows : voter : s e r v e r : A u t h e n t i c a t i o n p r o c e s s : e m a i l c l i e n t 1 : e n t e r l o g i n i d a n d b a l l o t number 2 : v e r i f i c a t i o n 3 : V a l i d 4 : b a l l o t p a p e r 5 : c a s t v o t e 7 : s e n d a c k n o w l e d g e m e nt 6: send email id and status . either directly or throughan underlying procedure.strength. It shows the period of timeduring which an object is performing an action. fragments of code.  Note : A note captures the assumptions and decisions applied duringanalysis and design. and identity. behavior.  Message to Self : A Message to Self is a tool that sends a message fromone object back to the same object.The following tools located on the sequence diagram toolbox which enable tomodel sequence diagrams:  Object: An object has state. A sequence diagram is an alternative way to understandthe overall flow of the control of a program. The sender of a messageis the same as the receiver. An object that is notnamed is referred to as a class instance. The message icon is ahorizontal. or references to other documents.

.

arrows indicate the message sent within the given use case. Flat Sequence.  Sequence diagrams are closely related to collaboration diagrams and bothare alternate representations of an interaction. which is a set of messages exchanged among the objects within the collaboration to achieve adesired outcome. A collaboration diagram provides several numbering schemes. Pa g e 3 9 Collaboration diagram for our system is as follows : v o t e r : s e r v e r : Authenticationprocess: email client1: enter login id and ballot number 5: cast vote4: ballot paper 2: verification3: Valid6: send email id and status7: send acknowledgement .Two types of Numbering Sequences are: 1 . Ina collaboration diagram. As in asequence diagram.Some people argue that numbering the messages makes it more difficult to seethe sequence than drawing the lines on the page. Another type of interaction diagram is the collaboration diagram. However. Differences between sequence and collaboration diagrams:  Sequence diagrams show time-based object interaction whileCollaboration diagrams show how objects associate with each other.2. In a collaboration diagram. and interaction. other things can be shown moreeasily.  The Create Collaboration Diagram Command creates a collaborationdiagram from information contained in the sequence diagram. A collaboration diagram is aset of objects related in a particular context. conditional behavior can berepresented in sequence or collaboration diagrams for each scenario.Pa g e 3 9 11. Decimal Sequence The disadvantage of interaction diagrams is that they are great only for representing a single sequential process. objects are shown in figures. the sequence is indicated by numbering the messages. they begin to break down when you wantto represent conditional looping behavior. Sequence diagram is easier to read where as collaboration diagram shows how objects are statically connected. However. The CreateSequence Diagram Command creates a sequence diagram frominformation contained in the interaction's collaboration diagram. CONSTRUCTION OF COLLABORATION DIAGRAM Collaboration diagram is an interaction diagram that shows the order of messages that implement an operation or a transaction. since thecollaboration diagram is more compressed.

IDENTIFICATION OF ATTRIBUTESAND METHODS OF CLASSES Guidelines for identifying attributes of classes are as follows:  Attributes usually correspond to nouns followed by prepositional phrases.12.  . State only enough attributes to define the objectstate.Attributes also may correspond to adjectives or adverbs.  Keep the class simple.

The attributes identified in our system are : Attributes for Administrator class : Election date.The following questions help in identifying the responsibilities of classes anddeciding what data elements to keep track  What information about an object should we keep track of?  What services must a class provide?A n s w e r i n g t h e f i r s t q u e s t i o n h e l p w e t o i d e n t i f y t h e a t t r i b ut e s o f a c l a s s .  Omit derived attributes.Methods for Profile class: Create profile. They are:  Association : This relationship represents a physical or conceptualconnection between two or more objects. Ballot number. Results date.  Do not carry discovery attributes to excess. Ask security question. The responsibilities identified in our system are: Methods for Administrator class: Declare results. ConstituencyAttributes for Email client class : NoneAttributes for Online voting system class : None.Methods for Voter class: Casting vote.Attributes for Candidate class: Party symbol. IDENTIFICATION OF RELATIONSHIPSAMONG CLASSES There are three types of relationships between classes.Attributes for Voting server class: Votes polled. Login id. View profile. Viewcandidate profile. Polled votesMethods for Candidate class: Submit nominationMethods for E-mail client class: Send acknowledgement.  Super-sub structure (Generalization hierarchy): These allow objects tobe build from other objects. View results Pa g e 3 9 Methods for Voting server class: Authentication. Ballot paper. Count votes.Attributes for Profile class : Name. Address. Send ballot number Methods for Online Voting System class: None. Ration card number. Update profile. 13. Status of vote. Send ballot paper.Attributes are less likely to be fully described in the problem statement. The super-sub class hierarchy is arelationship between classes .Answering the second question help us to identify class methods. Age.Deactivate ballot number. where one class is the parent class of another class  A-part-of relationship (Aggregation): This represents the situationwhere a class consists of several component classes .Attributes for Voter class : E-mail address.

14. the events that cause a transition from one state to another and the actions that result from a state change.  Start states : A start state (also called an "initial state") explicitly shows thebeginning of a workflow  End States: An end state represents a final or terminal state Pa g e 3 9 . but simultaneous flows. Forks and Joins : A fork construct is used to model a single flow of control that divides into two or more separate. A state chart diagram istypically used to model the discrete stages of an object’s lifetime. Themain difference between the two diagrams is state chart diagrams are statecentric.The following tools are used on the state chart diagram toolbox to modelstate chart diagrams:  Decisions: A decision represents a specific location on state chart diagramwhere the workflow may branch based upon guard conditions.  States : A state represents a condition or situation during the life of an objectduring which it satisfies some condition or waits for some event.  Synchronizations : Synchronizations visually define forks and joinsrepresenting parallel workflow. They show the sequences of states that anobject goes through. while activity diagrams are activity centric. CONSTRUCTION OF UML STATE CHART DIAGRAM State chart diagrams model the dynamic behavior of individualclasses or any other kind of object. Transitions connectthe various states on the diagram. A joinconsists of two of more flows of control that unite into a single flow of control.  Transitions : A state transition indicates that an object in the source state willperform certain specified actions and enter the destination state when aspecified event occurs or when certain conditions are satisfied. whereas anactivity diagram is better suited to model the sequence of activities in a process. A state chart diagramtypically contains one start state and multiple end states .State chart diagrams are closely related to activity diagrams .Each state represents a named condition during the life of an object during whichit satisfies some condition or waits for some event.

The state chart diagrams for our system is as follows LoginRegistrationViewprofileCast voteViewresultsAcknowledgementDeclareresults .

Pa g e 3 9 .

We can change properties or relationships by editing the specificationor modifying the icon on the diagram. interfaces.  Control Class : Control class model sequencing behavior specific to oneor more use-cases. Normallyyou will build class diagrams plus occasional object diagrams illustratingcomplicated data structures or message-passing structures.  Boundary Class : They handle the communication between the systems. You can think of control class as running or executingthe use-case i. Ex:Registration form. andtheir relationships. Class diagrams and collaboration diagrams are alternaterepresentations of object models. Class diagrams contain classes and objectdiagrams contain objects.. so the separation is not rigid. suchclass diagrams are themselves contained by the package enclosing the classesthey depict.Class diagrams are more prevalent than object diagrams. such class diagrams are themselvescontained by the top level of the current model.e.Classes may be of 3 types. Boundary class3. They are:1. Entity class2. but it is possible to mix classes and objects whendealing with various kinds of metadata. they represent the dynamics of the use-case. The associated diagrams or specificationsare automatically updated. Control class  Entity class : An entity class models information and associated behavior that is generally long live. We can also create one or moreclass diagrams to depict classes contained by each package in your model.They can provide the interface to the user or another system.15. We can create one or more class diagrams to depict theclasses at the top level of the current model. CONSTRUCTION OF UML STATIC CLASS DIAGRAM A class diagram is a picture for describing generic descriptions of possible systems. Ex:Registration Manager. the icons representing logical packages and classes in class diagrams.Class diagrams contain icons representing classes. .

METHODS & RELATIONSHIPS The following is the attribute presentation suggested by UML: visibility name:type-expression=initial-value where visibility is one of the following:+ public visibility (accessibility to all classes)# protected visibility (accessibility to sub classes and operations of the class). Type-expression is a language . private visibility (accessibility only to operations of the class).Pa g e 3 9 16. REFINE ATTRIBUTES.

. we need to add more information to these attributes.dependent specification of the implementationtype of an attribute. such asvisibility and implementation type.At this stage. • Copy method: The method that copies the contents of one instance to another instance. • I/O methods: The methods that provide or receive data to or from a device.The UML style guidelines recommend beginning attribute names with a lower-case letter. In the absence of a multiplicity indicator (array). name is the name of the operation. The initial value is optimal. Multiplicity may be indicated by placing a multiplicityindicator in brackets after attribute name. Initial-value is a language-dependent expression for the initial value of a newlycreated object. an attribute holdsexactly one value.The following operation presentation has been suggested by the UML.private visibility (accessibility only to operations of the class). Theoperation syntax is this: visibility name: (parameter-list) : return-type-expression where visibility is one of:+ public visibility(visibility to all classes)# protected visibility(accessibility to sub classes and operations of the class). Refining attributes for the Administrator class: Here is the refined list of attributes for the Administrator class:+ election date: Date+ results date: Date Refining attributes for the Candidate class: Here is the refined list of attributes for the Candidate class:+ party symbol: Symbol+ constituency: String Refining attributes for the Profile class: Here is the refined list of attributes for the Profile class:# name: String# ration card number: Number # Address: String# Age: Number Refining attributes for the Voter class: Here is the refined list of attributes for the Voter class: Pa g e 3 9 e-mail address: String login id: String ballot number: Number Refining attributes for the Voting server class: Here is the refined list of attributes for the Voting server class:.Here. • Attribute get: The method that returns the values of one or more attributes. .votes polled: Number + ballot paper: Paper .status of vote: StringA class can provide several types of methods: • Constructor: Method that creates instances (objects) of the class • Destructor: The method that destroys instances. • Conversion method: The method that converts a value from one unit of measure to another. • Attribute set: The method that sets the values of one or more attributes. • Domain specific: The method specific to the application.

 Refine the associations between classes (if required).structures.Return-type-expression : is a language-dependent specification of theimplementation of the value returned by the method. theoperation does not return a value.Since there are no packages there are no specific refinementin relationships. Apackage may contain both packages and ordinary model elements .subsystems .Refine and complete the static UML class diagram by adding details to thatdiagram.The entiresystem description can be thought of as a single high level sub-system packagewith every thing else in it . Packages may be within other packages. If return-type is omitted.Our system does not contain any packages every class is independentclass .  Refine the class hierarchy and design with inheritance (if required).A package provides a hierarchy of different system components and can reference other packages .Parameter-list : is a list of parameters. Inparticular .  Refine attributes.Some packages may contain groups of classes andtheir relationships .1. The refined class diagram of our system is as follows: .  Design methods and the protocols by utilizing a UML activity diagram torepresent the method’s algorithm. Pa g e 3 9 Refinement of relationships: A package groups and manages the modeling elements . such as classes.so our entire system is considered as a single high level system packagewith every thing in it.Relationships may be drawn between package symbols to showrelationships between atleast some of the elements in the packages. their associations and their structures.Iterate and refine. associations. Pa g e 3 9 17. OVERALL REFINED CLASS DIAGRAM Refining of class diagram involves the following steps:Apply design axioms to design classes.or models .2. seperated by commas. methods.dependency between packages implies one or more dependenciesamong the elements.All kinds of UML model elements and diagrams canbe organized into packages . each specified by name: type-expression = default value. and protocols. their attributes.

Sign up to vote on this title
UsefulNot useful