Thursday, October 3, 2019
Use Case: An Analysis
Use Case: An Analysis Use Case A use case diagram depicts the units of functionality of the system as well as the actors capable of carrying out these functions. An actor is a person within the system needed to carry out a particular function. A function is depicted by an oval text box and is referred to as a use case as well, use case in this terms meaning unit of functionality. A Use Case diagram is a compilation of Use Cases to form a system. There are four actors within the MPP system. This does not suggest that only four literal people are responsible for operating the entire system. An actor is a classification of a person. In essence an actor refers to something general such as a job title as in this example the four actors are Secretary, HR Manager, Accountant and Staff Member. This use case diagram suggests that the classification of actors are responsible for the duties they are connected to. As such all persons holding that job title will be required to fulfil the duties depicted. The duties or use cases are explain further as use case specifications and the actors are details as classes in task two. Use Case Specifications Number: UC0001 Name Create Employee Actors Secretary, HR Manager Goal: To add a new member of staff Use Case Relationships Extend: Include: Associations: Secretary, HR Manager Generalisation: Description Index Actor Event 1 Secretary gives member a form 2 Member fills form an returns it to secretary 3 HR Manager reviews form and approves employee 4 Secretary notifies employee 5 HR Manager confirms details Alternatives Index Actor Event A 1/1 Person Not Approved A 1/1.1 HR Manager disapproves person A 1/1.2 Secretary notifies person A 1/2 Invalid Data A 1/2.1 Person confirms data invalid A 1/2.2 HR Manager edits details A 1/2.3 Person confirms details This use case specification explains the procedure to be undertaken when adding a new member of staff to the MPP payroll. This process involves both the HR manager and the secretary in terms of the system. The secretary initially distributes a form to the potential employee to fill within which the applicants qualifications and contact information is kept on file. The details mentioned within the specification encompass all the personal information of the applicant inclusive of contact information as well as personal details. This information is then sent to the HR manager to review where a decision is made to approve the employee for an interview. This decision dictates whether the secretary contact the applicant to inform them of an upcoming interview or to inform them that their application has been rejected. The assumption here is that MPP only hires members of the party to become staff members. Number: UC0002 Name Create a Member Actors Secretary Goal: To add a new member to the MPP party Use Case Relationships Extend: Include: Associations: Secretary Create an Election Candidate Create a Member of Parliament Create a Regional Assembly Member Generalisation: Description Index Actor Event 1 Person requests membership 2 Secretary creates new member record 3 Secretary confirms persons details to be accurate 4 Member is added to membership list Alternatives Index Actor Event A 2/1 Incorrect Details A 2/1.1 Secretary enters incorrect details A 2/1.2 Secretary edits details A 2/1.3 Person confirms details This use case specification depicts how a new member of MPP is added to the system. There is an estimated fifty thousand members of the party whom which information is needed to be stored as they are relied on during election time when the party is campaigning for election. The political party most probably doesnt discriminate the right of membership by any one person. Seeing that not much clerical data needs to be manipulated the secretary is fully capable of adding a member to the party. The process begins as a person requests membership to the party. The secretary then enters the members personal information especially their contact information as given by the applicant. Once the member confirms the information to be accurate the record is saved and thereby added to the membership list of MPP. Number: UC0003 Name Create an Election Candidate Actors Staff Member Goal: To add a new Election Candidate Use Case Relationships Extend: Create a Member Include: Associations: Generalisation: Description Index Actor Event 1 Staff Member elects Member to become candidate 2 Staff Member contacts Member 3 Member confirms 4 Staff Member adds member to shortlist 5 Staff Member changes member position to EC Alternatives Index Actor Event A 3/1 Member Disapproves A 3/1.1 Staff Member elects another Member to become candidate This system assumes that only existing members of the party are elected to become election candidates for a particular seat. A member therefore can be classified as an election candidate once their name has been added to a shortlist, which is a list of potential election candidates for a particular area. Using this assumption a member position classification was created within the member file an as such a member may have many classifications ranging from volunteer represented as VOL and election candidate represented as EC. Once an election candidate wins an election for a post they may be contending their position will be changed to Member of Parliament or Regional Assembly Member respectively as will be discovered. Number: UC0004 Name Create a Member of Parliament Actors Staff Member Goal: To add a new Member of Parliament Use Case Relationships Extend: Create a Member Include: Associations: Generalisation: Description Index Actor Event 1 Candidate is voted member of parliament 2 Staff Member changes member position to MOP Alternatives Index Actor Event A 4/1 Member Looses Election A 4/1.4 Staff Member changes Member position to VOL Number: UC0005 Name Create a Regional Assembly Member Actors Staff Member Goal: To add a new Regional Assembly Member Use Case Relationships Extend: Create a Member Include: Associations: Generalisation: Description Index Actor Event 1 Candidate is voted Regional Assembly Member 2 Staff Member changes member position to RAM Alternatives Index Actor Event A 4/1 Member Looses Election A 4/1.4 Staff Member changes Member position to VOL Both the Create a member of parliament and Create a regional assembly member use cases rely on the Create a member use case. Once a member looses an election his position within the party is reassigned to a volunteer. Number: UC0006 Name Add Member to shortlist Actors Staff Member Goal: To add a Member to a shortlist Use Case Relationships Extend: Include: Associations: Generalisation: Description Index Actor Event 1 Member approves to become a candidate 2 Staff Member adds member details to shortlist 3 Staff Member changes Member position to EC Alternatives Index Actor Event A 4/1 Member Steps Down A 4/1.1 Member notifies Staff Member A 4/1.2 Staff Member removes member from shortlist A 4/1.3 Staff Member edits Member position A staff member is responsible for adding a member to the shortlist thereby creating an election candidate. The shortlist is a record of potential election candidates of the MPP. Editing of the shortlist is as simple as editing a table. A staff member is responsible for this responsibility. This use cases is used in conjunction with the Create an election candidate use case within which adding a member to a shortlist is referred to. Once a member agrees to become an election candidate their personal information is added to a list of potential candidates for a particular seat within a respective area. Number: UC0007 Name Contact Members Actors Staff Member, Secretary Goal: To contact members of the party Use Case Relationships Extend: Include: Associations: Generalisation: Description Index Actor Event 1 Staff Member/Secretary queries member details 2 Secretary/Staff Member contacts Member Alternatives Index Actor Event A 7/1 Contact Unavailable A 7/1.1 Contact unavailable at given contact A 7/1.2 Use another form of contact given by the member This use case the procedure to be undertaken when contacting a member of the party. As shown, only full time workers and secretaries contact members. There are many uses of this unit of functionality beyond the boundry of this system. The political party requires that sufficient contact information is stored on each member as individual members are relied on during the campaigning process to organise meetings and assist with advertisement. The contact information that is stored on an individual member of the party includes a telephone contact, home mailing address and email address. The staff members as well as the secretary therefore have three options in which to utilise when contacting a member. Number: UC0008 Name Record Income Actors Staff Member Goal: To record income generated by MPP Use Case Relationships Extend: Include: Associations: Generalisation: Description Index Actor Event 1 Staff Member records Invoice Number 2 Staff Member records income Details 3 Staff Member records the ID number 4 Staff Member records the Amount 5 Staff Member records the date generated Alternatives Index Actor Event A 8/1 Incorrect Record A 8/1.1 Income is recorded incorrectly A 8/1.2 Staff Member confirms details with Invoice A 8/1.2 Staff Member edits details The member of the party responsible for recording income will be a full time employee of the party. Since there are several offices each of which generate individual incomes there must be persons within each regional office to account for funds the party may receive, either by subscriptions received or from other sources such as donations from persons interested in supporting the party and its objectives. The person receiving income distributes an invoice through which a record is kept of individual payments to the party. This invoice must contain all the information needed on the transaction such as what the payment was for, whether it is a subscription or donation. The invoice also contains who made the payment, how much money was paid to MPP and what date was the payment made. In the instance of a donation a record is kept of the donor personal information so they are kept on record an assigned a donor identification number. This is to ensure full accountability of the finances reaching the party. This donor number is entered into the ââ¬Å"ID Numberâ⬠field in the income table. Where a member pays their annual subscription to the party their member ID is stored within the same field. This ensures accountability for the transaction as well as a record of the subscription received for that individual member. Number: UC0009 Name Record Expenditure Actors Staff Member Goal: To record expenditure incurred by MPP Use Case Relationships Extend: Include: Associations: Generalisation: Description Index Actor Event 1 Staff Member records Receipt Number 2 Staff Member records expenditure Details 3 Staff Member records the ID number 4 Staff Member records the Amount 5 Staff Member records the date incurred Alternatives Index Actor Event A 9/1 Incorrect Record A 9/1.1 Expenditure is recorded incorrectly A 9/1.2 Staff Member confirms details with receipt A 9/1.3 Staff Member edits details Full time employees are also responsible for recording the expenditure incurred by the party. The operation of any political party requires a host of expenses in which to organise and manage the party properly. The individual offices of the party will incur expenses for each office it maintains. The main expenses that must be accounted for include payment of rent for the various offices that the party operates. Salaries must also be accounted for as MPP employs over a hundred individuals which accounts for a major portion of the partys expenditure. A major part of any election campaign is advertising which as for MPP includes television advertising as well as leaflets that need to be distributed by the partys members. Along with these major expenditures the party may also incur miscellaneous expenses in order to keep the offices running such as telephone bills and mailing expenses, all of these are classified as sundry expenses. Whenever any expenditure is incurred all receipts given to the party is filed and documented. These receipts are used to document all the expenditure incurred by the party as the amount, dates and to whom payments are made are documented on the receipt. Each office, member and advertiser are assigned an ID number so that a level of accountability can be maintained as to whom payments are made. Number: UC0010 Name Generate Financial Report Actors Staff Member, Accountant Goal: To generate a financial report for each office Use Case Relationships Extend: Include: Associations: Generalisation: Description Index Actor Event 1 Staff Member/Accountant selects Financial Report table 2 Staff Member/Accountant print Financial Report Alternatives Index Actor Event A 10/1 Incorrect Report Printed A 10/1.1 User selects correct report A 10/1.2 User prints correct report Each regional office is expected to produce a financial report to account for its activities. This will make for easier planning and budgeting by the national officers responsible for this such as the accounts department of the party. Therefore both party members as well as the national accountant can generate a financial report. To ensure the legitimacy of the financial reports the political party is expected to employ an internal as well as external auditor that examines the financial reports and compares them to the income and expenditure of the party. The financial report entails the total income generated as well as the total expenditure incurred for a particular office. These s can be used to determine the General Reserve available for funding the partys activities. Activity Diagrams An Activity Diagram the logical flow of data within a particular use case. The following diagrams show the Create a Member use case but in two different activity diagram formats. The first diagram simply the logical order in a flow chart fashion. The second diagram the same use case with the implication of swim lanes. Class Diagram Class diagrams are used to identify the objects of the system and show how they relate to each other and their attributes. The class diagram used to analyse the objects associated with the MPP and depict their relationships with each other. Everything is related to each other through the MPP class. It is an empty class but is there to show that the generalisation relationship exists between the Regional Office and Head Office Class and the MPP class. Most other relationships within this diagram are generalisation relationships depicted by the empty arrow head. This diagram is structured in a hierarchal format. A generalisation relationship allows the subclasses of any parent class to inherit the properties of the parent class. This feature is also show in the diagram by the empty boxes within the Secretary, Staff Member, Accountant and HR Manager classes. This does not suggest that these classes dont have any attributes but that they inherit the attributes of their parent class. The other relationships depicted is; the relationship between the Staff Member class and the Income, Expenditures and Financial Report classes, and between the Accountant class and the Financial Report class. These relationships show an association relationship as the classes interact with each other on some level of their functionality. The individual classes are explained in detail within their respective CRC card. CRC Cards A tool used to document the purpose and capability of a class is the CRC card. CRC stand for Class-Responsibility-Collaboration, as will be discovered, is exactly what the cards depict along with several other features of the class. The CRC cards represented in this section depict the classes identifies in the MPP system and show how they relate to each other. Name: Regional Office ID:1 Type: Concrete Description A MPP office representing a region of Contentedland Associated Use Cases: Record Expenditure Responsibilities Collaborators Full Time Employee Employee Attributes Relationships Office ID Generalisation: MPP(super class) Region Member (subclass) Address Donor (subclass) Monthly Rent Employee (subclass) Aggregation: Other Association: Full Time Employee Expenditure The regional office class is a subset of the MPP as a whole. There are several regional offices namely; Northland, Southland, Eastland, Westland and Central. Each office will possess the same characteristics as the other and as such are represented by a single regional office class within the class diagram. Distinction between classes is possible through the attributes of the class utilised and as such can be uniquely identified. The assumption made is that the entire system is divided into regions and as such all corresponding members and records are also presented in that regional office category. Name: Member ID: 2 Type: Abstract Description A Member of MPP Associated Use Cases: Create Member, Create an Election Candidate, Create a Member of Parliament, Create a Regional Assembly Member Responsibilities Collaborators Full Time Employee Income Attributes Relationships Member ID Address Generalisation: Regional office(concrete class) Last Name E-mail Aggregation: First Name Office Other Association: Full Time Employee Title County Secretary Date-of-Birth Position Telephone The member class comprises all the attributes of all the members of MPP. The assumption is that, regardless of hierarchal qualification all members of the party share common attributes and inevitably are all members of the party. This assumption gives way for the ââ¬Å"positionâ⬠attribute within the member class. A member according to the party can be a volunteer that assists the party in some way for no charge. Members are also election candidates who contend regional and national elections. The member doesnt change their nature only their position when they are elected and become either a Member of Parliament or a Regional Assembly Member. As such the member class depicts that it is associated with the creation of all members of the party as they relate to their appropriate use cases within the system. Sufficient contact information is stored on members of the party as they may need to be contacted during election time when the party wishes to implement a rigorous advertising campaign. The email contact of each member may be a useful attribute as it is more efficient to send a mass email to all members than to individually contact them. Name: Donor ID:3 Type: Abstract Description A person other than a member of MPP that donates to the party Associated Use Cases: Record Income Responsibilities Collaborators Full Time Employee Income Attributes Relationships Donor ID Telephone Generalisation: Regional Office(Abstract class) Last Name Address Aggregation: First Name E-mail Other Association: Full Time Employee Title Office Income Date-of-Birth County Income is earned through subscriptions as well as through donations. People who donate to the party does not necessarily have to be a member. A person whos interests are aligned with the policies of the party may choose to donate to their campaign in a hope that they may win the election. Information needs to be stored on such individuals to account for the sometimes large sums of money they may give to the political party. It is also useful where the party wishes to contact these members for one reason or the other. A Donor share similar attributes to members however as they are not members of the party they do not require a position field. However sufficient contact information is kept on these individuals so the party can always keep in touch with them. Name: Employee ID: 4 Type: Concrete Description An Employee of MPP Associated Use Cases: Create a Staff Member Responsibilities Collaborators HR Manager Attributes Relationships Employee ID Telephone Generalisation: Regional Office(Abstract class) Last Name Address Secretary(sub class) First Name E-mail Staff Member(sub class) Title Office Aggregation: Date-of-Birth County Other Association: HR Manager Position The political party hires full time employees to coordinate their activities. These employees are classified under each regional office and withdraw a salary from the party. Employees include Staff Members whose hierarchal classification is determined within each regional office as well as Secretaries who attend to each office of MPP. Name: Secretary ID: 5 Type: Abstract Description An Employee of MPP Associated Use Cases: Create a Member, Contact Member Responsibilities Collaborators Create a Member Member Edit Member HR Manager Delete Member Staff Member Contact Member Attributes Relationships Employee ID Telephone Generalisation: Employee(Abstract class) Last Name Address Aggregation: First Name E-mail Other Association: HR Manager Title Office Member Date-of-Birth County Staff Member Position The Secretary of the party is responsibilities include contacting members as well as adding members to the party. However they can only maintain volunteer records. Staff Members are responsible for the management of the other members of the party. Name: Staff Member ID: 5 Type: Concrete Description An Employee of MPP Associated Use Cases: Create Member, Contact Member, Add Member to Shortlist, Create an Election Candidate, Create a Regional Assembly Member, Create a Member of Parliament, Record Income, Record Expenditure, Generate Financial Report Responsibilities Collaborators Record Income HR Manager Record Expenditure Secretary Generate Financial Report Add Member Edit Member Delete Member Attributes Relationships Employee ID Telephone Generalisation: Employee(Abstract class) Last Name Address Aggregation: First Name E-mail Other Association: Income Title Office Expenditure Date-of-Birth County Financial Report Position HR Manager Secretary Staff members handle the brunt of the work within the party. Staff Members is a general term used to describe all the full time party workers who are employed within the regional offices of the political party. Staff members include all the party workers represented for each county of Contentedland. The duties of these members function similarly to clerical duties within an office. These staff members are allocated duties within the office structure oven though each member is responsible for their respective county that they oversee. Name: Head Office ID: 6 Type: Concrete Description The Head Office of MPP Associated Use Cases: Record Expenditure Responsibilities Collaborators National Officer HR Manager Accountant Attributes Relationships Office ID Generalisation: MPP (super class) Region National Officer(subclass) Address Aggregation: Monthly Rent Other Association: Staff Member Expenditure The Head Office posses the same characteristics as a regional office and it functions similarly as well. The difference between the head office and the regional office aside from its geography, is the employees that it houses. The assumption made is that the national officers within the head office function as managerial employees as would happen within a typical company. It should be structured in a way so that the ten national officers act as the managerial departments of the political party inclusive of the accounts department and the human resource department used within this scenario. Name: Accountant ID: 7 Type: Abstract Description The accountant responsible for the finances of MPP Associated Use Cases: Generate Financial Report Responsibilities Collaborators Financial Report Attributes Relationships Employee ID Telephone Generalisation: National Officer(concrete class) Last Name Address Aggregation: First Name E-mail Other Association: Financial Report Title Office Date-of-Birth County Position The accountant of the MPP is housed within the head office of the party. The accountant has the duty of managing the finances of MPP. The accountant is also responsible for generating the financial reports that are to be audited to produce a tax which the party must incur annually. This expenditure is classified as a sundry expense and must be accounted for within the finances of the party. The accountant is also responsible for ensure that proper control procedures are in place in terms of managing money the party receives. After all he is responsible for maintaining the integrity of the financial records and ensuring that they are in good standing with the laws of the country. Name: HR Manager ID: 8 Type: Abstract Description The HR Manager of MPP Associated Use Cases: Create a Staff Member Responsibilities Collaborators Add Employee Employee Edit Employee Delete Employee Attributes Relationships Employee ID Telephone Generalisation: National Officer(concrete class) Last Name Address Aggregation: First Name E-mail Other Association: Employee Title Office Accountant Date-of-Birth County Position In keeping with the assumption, the HR Manager is classified under the head office as this position is a managerial role. The human resource manager holds the same attributes as any other employee of MPP how ever his duties implicate him to be the one to manage the records of all the employees of the party. Name: Income ID: 9 Type: Abstract Description Revenue generated by MPP Associated Use Cases: Record Income Responsibilities Collaborators Print Staff Member Display Attributes Relationships Invoice Number Generalisation: Income Details Aggregation: ID Number Other Association: Staff Member Amount Financial Report Date Generated Income is generated through two sources in the party. The attributes of income allow for any sort of income to be documented, whether it is a subscription received from a member or a donation given to the party. A staff member is responsible for recording income into the system. The summation of the income table is exported to the financial report to form the net income . Name: Expenditure ID: 10 Type: Abstract Description Expenditure incurred by MPP Associated Use Cases: Record Expenditure Responsibilities Collaborators Print Staff Member Display Attributes Relationships Receipt Number Generalisation: Expenditure Details Aggregation: ID Number Other Association: Staff Member Amount Financial Report Date Incurred Expenditure is incurred from several means. A Staff Member is responsibl
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.