ADD USER SEQUENCE DIAGRAM27 TASK 5: OBJECT ORIENTED METHODS29 RELATIONS 29 INHERITANCE30 ASSOCIATION 31 AGGREGATION31 COMPOSITION32 TASK 6 SPECIFICATION OF DATABASE TABLE DESIGN33 ENITY RELATIONSHIP DIAGRAM33 DATABASE TABLES 34 TASK7 INTERFACE DESIGN36 REFERENCE40 ACKNOWLEDGEMENT Firstly we would like to give thanks to God for leading us until we finally finished this assignment given to us. All tasks have been carefully examined by our group members and we have done the best we can to tackle the questions according to the guidelines we received from our lecturer Mr. Sheik.

We would like to direct further appreciation to Mr. Sheik, because if it wasn’t of him, we wouldn’t have managed to finish this assignment in an acceptable manner like we did. He gave us a lot of guide lines and took his time to explain to us the Object Oriented System Design Concepts in a way we really appreciate. We are forever indebted to UEL as a whole and specifically to Linton University College for giving us a platform conducive for us to receive more knowledge and committing themselves to feeding us with the so required knowledge needed for us to face the co-operate world in the future.

Special thanks to all my group members who put effort to make the outcome of this project realizable. We really appreciate the time given by members and the research they did. Last but not least we would like to extend our gratitude towards our parents who made it possible for us to be here today. We really appreciate their support and understanding and for whatever form of help direct or indirect they provided to the accomplishment of this project. 1. 0 INTRODUCTION The writing of this documentation is based on a scenario given involving the designing of a payroll system which reduces the manual work of calculating employee’s salary.

To do this a lot of tasks are involved which need to broken and in-turn employ Object Oriented Methods to design the System. This documentation goes through the whole process from the decomposition of the task to the designing of the interface. 1. 1 BACKGROUND OF STUDY The calculation of employee salary can be a very tedious activity when done manually. A lot of calculations are involved and every detail matters, simple human errors can result in over payment or under payment of an employee.

The manual calculations of each employee’s pay, keeping the records and maintaining them are a great amount of work. For this cause, an automated system of salary calculation is needed. This System will reduce the task involved in performing calculation, make it easy to maintain records, provide more security and enhance speed and efficiency. 1. 2 PROBLEM STATEMENT * The separation and isolation of data – there is no continuous information flow as its separated thus payroll management has isolated data * Duplication of data- The same information might be held by several top employees i. e. anagers and clerks hence duplication of data is present * Provision for security and recovery capability is very limited * No standardised control over organisation of files and structure of files as most is done manually * Difficulty in maintaining a number of transactions as is manually driven 1. 3 BUSINESS VALUE The development of this Payroll system is anticipated in facilitating that users can have access to online system features and be able manage information, create accounts, manage accounts, etc. and thereby the business attaining an increased information management technique.

With a great turn out we look forward to an increasing effectiveness and ease workflow as a centralized payroll system would have been built.. Expected tangible value in our business is an estimate range in * Improvement in performance and full utilization of its current resources * Speed of operations improvements 2. 0 TASK 1: PAYROLL PROCESING SYSTEM DECOMPOSITION DIAGRAM PAYROLL SYSTEM PAYROLL SYSTEM EMPLOYEE MAINTANCE EMPLOYEE MAINTANCE View promotion details View promotion details GET ELIGIBILTY DETAILS GET ELIGIBILTY DETAILS LOAN DETAILS MAINTANANCE LOAN DETAILS MAINTANANCE GENERATE ATTENDANCE REPORT


SALARY CALCULATION GENERATE SALARY REPORT GENERATE SALARY REPORT GENERATE PAYSLIP GENERATE PAYSLIP CALCULATE DEDUCTIONS CALCULATE DEDUCTIONS DELETE EMPLOYEE DETAILS DELETE EMPLOYEE DETAILS EDIT/UPDATE EMPLOYEE DETAILS EDIT/UPDATE EMPLOYEE DETAILS 2. 1 OPERATIONS ON THE DECOMPOSITION Diagram1 The purpose of the decomposition done on the Payroll System is to break up the complex payroll operation into small functions which will help design and manage the system. OPERATIONS * EMPLOYEE MAINTANACE – Employee maintenance is on the first level of the decomposition. This function includes operations which can be implemented on employee details. Register Employee – Gets Employee details from the user both personal and the job the employee is getting into * View Employee Details- Allows retrieving and viewing of stored Employee details, it has functions under it too such as * Updating/Editing- The employees Information e. g manipulating it removing errors, changing phone numbers pictures etc. * Delete Employee- Is the actual removal of the Employee from the system completely * Generate Report-This function generates a report based on the employee details available, when the button is clicked the report is generated automatically. ATTENDANCE MAINTANCE – This function specifically deals with recording the attendance from the user when an Employee card is swiped on entry by the employee. It has its own sub functions which are: * Get Attendance- As explained above this function records the hours worked by the employee, from the time he/she swipes the employee card on entry on the companies’ premises to the time he/she swipes it again on exit. Hours worked are recorded into the database. Update/Edit Attendance – The system has the ability to increment hours decrement and stop worked on its own, the function allows this automatic calculation every time it reads the card from the employee. * Generate Attendance Report- A report for each employee’s attendance will then be generated when a button is clicked. * CALCULATE SALARY- Calculates the gross until the net salary of the employee after certain deductions. * Calculate Deductions- Deducts loan payments tax etc from the employee’s gross salary. * Generate Payslip- Generates a payslip with written deductions from gross salary hours worked etc. Generate Report- Generates transaction report and stores into the database * LOAN DETAIL MAINTANANCE- This function deals with loans and determines their approval or rejection. * Loan Application- Gets the initial application from the employee. * Get Eligibility Details- Determines weather or not the loan applicant is in line with the requirements to getting a loan. If the details filled on the form are in sink with the requirements then, it will be approved if not, it will be rejected. * Approve Loan- As explained above the approval is based on the applicant’s eligibility. Issue Loan- When the Loan is approved it is then issued to the applicant. * PROMOTION DETAILS MAINTANANCE * Update/Edit- Allows the updating of an Employees Promotion Status * Delete- Allows Deleting Status from the database. * 3. 0 TASK 2 REQUIREMENT ANALYSES 3. 1 FUNCTIONAL REQUIREMENTS NO| REQUIREMENT NAME| REQUIREMENT DESCRIPTION | PRIORITY| 1| LOGIN| Users of the system must enter their login details. A user can only access specified areas according to his or her level of access. In this case users will be asked to enter their employee I. D and password.

If the details provided by the employee are not correct access to the system will be denied until the correct details are input| HIGH| 2| REGISTER EMPLOYEE | The system must allow the addition of a new employee details into the database. These include the employees personal details and the job details. | HIGH| 3. | VIEW DETAILS| The system must allow the viewing of employee’s details. You can only manipulate what you can see. The system retrieves the stored information from the database for viewing| HIGH| 4. | DELETE DETAILS| The system must allow the deleting of employees details from the records| HIGH| 5. GET ATTENDANCE| The system must be able to record from employee’s attendance when an employee swipes his/her card on a swipe card reader. | HIGH| 6. | LOAN APPLICATION| The system should be able to get loan application from the employee. The employee has to fill out a form on the system interface and submit it. | HIGH| 7. | GET ELIGIBILITY DETAILS| The system interface also provides a form to be filled, when the necessary requirements to get a loan are true, only then will the employee be marked as qualified to receive a loan. | HIGH| 8. LOAN APPROVAL| The system must be able to compare the employee’s loan qualifications and the company requirements to issue a loan. If the employee qualifies an approval message will be generated, the opposite is true. | HIGH| 9. | CALCULATE SALARY| The system should be able to perform mathematical calculations for the salary. This involve calculating hours worked by the employee and multiplying them by the hourly rate given in the business rule. | HIGH| 10. | GENERATE REPORT| The system should generate reports after transactions, or when a report is requested. This happens as the system takes | MODERATE| 11. GENERATE PAYSLIP| After salary calculation the system must generate a payslip for the employee. Showing deductions from gross salary| HIGH| 12. | LOGOUT| System should allow users to sign out after they are done using the system| HIGH| 3. 2 NON FUNCTIONAL REQUIREMETNS OF THE SYSTEM NO| REQUIREMENT NAME| REQUIRMENTE DISCRIPTION| PRIORITY| 1. | PERFORMANCE| The system should enhance speed of calculation, data storage and data retrieval and remaining accurate at the same time| HIGH| 2. | MAINTANABILITY| The system must be easy to maintain, in terms of deleting updating and manipulating employee details and also maintain an overall report. MODERATE| 3. | USABILITY| The systems interface must be user friendly, with content which can be easily understood by the user. This content includes such things as buttons which are clear and symbolize the action to be taken. For examble an exit or close button can be given in red color. Also the layout of the text and forms should not be classterd but that which the user can understand and navigate through easily| | 4. | ACCESSIBILITY| The system should be accessible to users anywhere and anytime, hence the use of the internet. This mean the system should be having an online database. | MODERATE| 5. NETWORKING ENVIRONMENT| The system must be able to function on a network platform to allow data sharing from all participants. It must allow multiple users to use it remotely however linking their information; this is done via the online database. | HIGH| 6. | SECURITY| The system must have a platform that allows users to input a specific username and password, which then allows them to use their limited area of the system. The system also requires Anti-virus system, in this case we will use AVG Total Security 2012, which will protect the system from viruses, spyware, phishing and crackers. HIGH| 4. 0 TASK 3 REQUIREMENTS SPECIFICATION 4. 1 HARDWARE REQUIREMENTS The hardware requirements are the physical items that are needed by the system to perfom its work. These Include: * MONITOR- This is generally the basic output device. This will display the interface that the user will be working on. The monitor should have a screen area of 1024x768 and at least 24 bit of colour. * VIDEO CARD. A 32-bit video card is required. * CPU-The PC should be having a minimum of 1 GHz speed Pentium Processor. * RAM- The PC should be having at least 512 RAM to run the application. HARD DISK- A hard disk of 4GB or more is a necessity. * PRINTER- An inkjet colour printer is needed for the printing of reports and payslips. A good example is a Canon Inkjet color printer * RFID CARD READER- uses biometric technology to capture employee attendance * Keyboard- A basic keyboard is required. * MOUSE OR A POINTING DEVICE- Any mouse conforming to the systems requirements will do. * CDROM 4. 2 NETWORK REQUIREMETMENTS Due to the reason that the system will also function or a network the following items are necessary: * A LAN adapter capable of supporting TCP/IP protocol. Spy/Network Intrusion prevention system like MacAfee network intrusion prevention system. * 56 kbps of internet connection * Firewall * Ethernet LAN Network cables 4. 3 OPERATING SYSTEM * Windows XP sevice pack 3 or later versions. * Windows Vista service pack 3 or later versoins * Windows 8 * Mac Os X and above 4. 5 SOFTWARE REQUIRMENTS Applications needed to develop, make tasks easy, compute, process and help arrange our data in a meaningful way that help solve a problem and present a solution. * IBM RATIONAL ROSE- its basically a UML modelling software which lets you design software using the Unified Modeling Language. VISUAL BASIC. NET- it’s a programing language based on Objesct Oriented Computer programming. * MICRISOFT OFFICE WORD- used to create documents and provides essential characteristics for document design editing and appearance enhancement. * MICROSOFT POWER POINT- used to create visual presentations with a professional outlook and display information to an audience baked by audio, video and attractive transitions. * MICROSOFT ACCESS- used to create databases. Its very simple and easy to use providing the basic features of a database software. MACAFEE- Anti virus software for protection against viruses, malicious behaviour and intrusion. 4. 6 USER REQUIREMENTS The user requirement might differ from person to person. : * Basic understanding use on the use of a computers * Accounting Knowledge 4. 7 VALIDATION OF INPUT AT CLASS LEVEL Extract from the class diagram showing a Boolean condition A Boolean condition illustrates a relationship between model constrains. Boolean refers to either true or false condition. In the case above the user specifies the employee type.

If “hourly” is input then the attribute is_hourly_emlpoyee will be set TRUE, otherwise I_salaried_will be invoked if the condition is FALSE. CLASS CODE SAMPLE Public Class Loan_Maintanace; Public applicant name; Private integer Amount; { Public void View_Loan_Details{ } Public void Update_Loan_Details{ } Public Class Employee_Maintanance; Puplic string IC; Private string Empid; Private string Emp_password; Private integer Emp_Age; Private string sex; Private char DOB; Public void Get_Employee_Details(){ } Public void View_Employee_Details{ } Public Class Salary_Calculation; Public integer hourly_rate;

Private integer deduction; Private_bonus; Public Void View_Salary_Details{ } Public Void_Calculate_Salary{ 5. 0 TASK 4 5. 1 PAYROLL SYSTEM USECASE DIAGRAM Actors: Employee, Clerk, Cashier, Accountant, Administrator, Manager All the actors can log into the system with their own unique Employee ID and password. Users are limited to the use cases they can interact with. After the use of the system they can logout The Employees role is to provide his details to the system during registration. The system also records the employee’s attendance so the employee interacts with the attendance usecase also.

During registration the employee provides his personal details and job details hence the use of “include” on the registration usecase. The employee also interacts with the generated payslip and the loan issued to him if eligible. The Clerk interacts with the “maintain Employee details usecase, in which case he can facilitate the registration or register the employee personally. He also interacts with the “view employee details” usecase which extends from the “maintain employee details”, in this case the clerk can update or modify employee details and the deletion is reserved for the administrator.

The Cashier interacts with the “maintain loan details use case which include the “loan application usecase”. When an employee applies for a loan the application is handled by the cashier who the passes it to the manager for approval. The manager approves the loan application based on hoe eligible the employee is to receive the loan. This can be seen as the manager interacts with the “get eligibility details” and the “loan approval” usecase. Once the loan is approved it can be issued to the user and a report generated for the transaction. The accountant calculates the salary and makes necessary deductions on the salary.

The administrator interacts with all the main functions in the use case as he has the overall authority to delete and manipulate the database. 5. 2 CLASS DIAGRAM This class diagram describes online a Payroll system * It consist of Employees as generalized users * The main actors of the system are Administrator, Manager, Clerk, Accountant and Cashier * Administrator runs the overall user accounts, he can make changes * Cashier maintains and views the loan applications * Clerk updates maintains and keep record of attendance * Manager maintains and has overall access loan application. Accountant is responsible for calculating salaries generating pay slips and getting attendance 5. 3 LOGIN SEQUENCE DIAGRAM : Employee : Login Form : Login Control : Employee Table : Home Page Key in username and password "Click" on the Login button Send Information Chek Information Retrive Infomation Return Display E1 Invalid password ... : Employee : Login Form : Login Control : Employee Table : Home Page Key in username and password "Click" on the Login button Send Information Chek Information Retrive Infomation Return Display E1 Invalid password ... User case name: Login Primary actors: Clerk, Manager, Accountant, Administrator,

Brief description: This use case enables the user to log into the system. Pre-condition: User must have user ID and valid password. Flow of events Basic flow * The use case begins when user keys in Username and password on the login form. * The user then clicks on the login button. [A1: Cancel]. * The system will send information and verify username and password. [E1: Invalid username or password]. * The system will display the homepage and allow interaction. Alternative flow * A1: Cancel * The user can click on the cancel button. * The system will cancel login. Exceptional flow * E1: Invalid username and password The system will display an error message to show that username and password is invalid “Invalid password’. Post condition * The user can view the homepage. 5. 3 GENERATE REPORT SEQUENCE DIAGRAM : Report Page Manager :Employee Page : Report Form : Report Control : Report Table Return Key Report information () Click Generate report Click on submit button Send Information Check Information Save () Display Display : Report Page Manager :Employee Page : Report Form : Report Control : Report Table Return Key Report information () Click Generate report Click on submit button Send Information Check Information

Save () Display Display Use case descriptions User case name: Generate report Primary actors: Manager. Brief description: This use case allows the user to generate a report. Pre-condition: The user must be the manager and must be on the employee page. Flow of events Basic flow * The use case begins when the user clicks on the generate report button inventory page. * The system will display a report form. * The user keys in report information (report type, ). * The user the clicks on the submit button. A1: Cancel * The system will send and save information. * The system will generate report. The system will display the report page and message “Successfully generated report”. Alternative flow * A1: Cancel * The user can click on the cancel button. * The system will display the homepage. Post condition * The system generates report and displays the report. 5. 4 ADD USER SEQUENCE DIAGRAM User case name: Add User Primary actors: Administrator Brief description: This use case enables the user to add new users to the system. Pre-condition: The user must be logged onto the homepage and must be the Administrator. Flow of events Basic flow * The user clicks on the add user button on the homepage. The system displays user account page. * The user clicks on create new account button. * The displays add user form. * The user keys in user information ( Name, Surname, Phone number, Email address, Home address, ID number, Username, password) * The user clicks on the Create account button. [A1: Cancel]. * The systems checks and saves information. [E1: Fill in blank fields] [E2: User account exists]. * The system displays the home page and a message “User account created”. Alternative flow * A1: Cancel. * The user clicks on the cancel button. * The system displays the User account page.

Exceptional flow * E1: Fill in blank fields. * The system displays message to show were specified fields require information “Fill in blank fields”. * E2: User account exists * The system displays a message to show that the user already exists in the system “User account exists”. Post condition * The user successfully added a new user to the system. 6. 0 TASK 5: OBJECT ORIENTED METHODS 6. 1 a). RELATIONS Extract from class diagram showing relation Relation depicts a connection between objects or classes. Below is an example of a relation from the payroll system class diagram 6. 2b). INHERITANCE

Inheritance is when a class inherits its attributes and behaviours from a parent class also called super class. It shows the possibility of creating a class from another class. The concert illustrates a situation were class Q takes attribute and behaviours from class Y. Q is the subclass while Y is the super class. Super class Super class inheritance inheritance Base class Base class Extract from class diagram showing inheritance According to the example above the base classes like cahier manager, clerk etc, inherit the members of the class in a existence already, that’s the Employee class.

The base classes take all the attributes like name age etc from the super class and those attribute do not have to be re-mentioned again in the base classes. The same applies to the functions. Example of Inheritance code, Clerk inheriting from Employee. Public Class Employee{ String EmpID; String Name; Class Clerk: Public Employee{ Public : Login(); }; 6. 3 ASSOCIATION Association depicts the relationship between objects or classes. It is the most basic type of relationship between two classes. The more specialized ones are aggregation and composition An example of an association is below. The classes are connected semantically.

ASSOCIATION ASSOCIATION 6. 3 AGGREGATION Aggregation Aggregation It’s a special type of association which illustrates a whole part relationship between the aggregate the whole and its part. part part whole whole 6. 4 COMPOSITION It is aggregation on a higher level. It depicts strong ownership. Whole Whole Aggregation Aggregation Part Part 7. 0 TASK 6 SPECIFICATION OF DATABASE TABLE DESIGN 7. 1 ENITY RELATIONSHIP DIAGRAM Entity * An entity is an object in which information is stored * In the given ER diagram we have eleven entities present namely Attendance, Accountant, Payment as some of the main entities Attributes Attributes are the main characters that describe an entity * On the entity Accountant the attributes are AccEmpId, Name, D. O. B, etc. 7. 2 DATABASE TABLES IN DESIGN VIEW MODE MICROSOFT ACCESS TABLE NAME| SCREEN SHOT | DESCRIPTION| CLERK| | ClkEmpID is the primary keyNo foreign key| EMPLOYEE DETAILS| | EmpID is the foregn keyPayslipID,ClkEmpID,AdminID are foreign keys defining the -relationship with other tables| ADMINISTRATOR| | -AdminID is the primary key-No foreign key| LOAN APPLICATION| | -Application No is the foreign key-EmpID, MangrEmpID,CashEmpID are foreign keys| MANAGER| | MangrEmpID is the primary keyNo foreign key|

PAYMENT| | PayslipID is the primary keyEmpID and AccEmpID are foreign keys| REPORTS| | Report No is the primary keyMangrEmpID is foreign key| SALARY| | Salary No is primary keyAccEmpId is foreign key| LOAN APPLICATION| | Applno is primary keymangrEmpID,EmpID, CashEmpID are foregn keys| CASHIER| | CashEmpID is the primary keyNo foreign key| 8. 0 TASK7 INTERFACE DESIGN The interface for the payroll system was designed using Visual Studio 2010.

The following is a description of the Employee Maintenance part of the interface Welcome Screen * User launches application * Screen welcome screen pops up and gives way for Login screen * Login Screen * User enters unique EmpID (username) and password * Login button will call for the next page, reset button eraces details from the text boxes close button shuts down the application. * If the login details are wrong the system automatically resets. If correct the next screen appears. Option Screen Blue buttons show the area which the clerk or employee can access * Grey buttons cannot be accessed by employees with the login details provided at the login screen * Clerk or Employee in this case will choose the first button Employee Information * Logout will log the employee out and shutdown the application Option screen 2 * User chooses wether to view existing employee details or to register a new employee. * In this case he chooses Employee Registration. Registration form * User can fill up the details on the form PICTURE * A picture can also be uploaded as a profile image. If the radio button is selected, upload will be enabled and the user can click and upload from his/ her PC, else he/she can take a snap using the web camera. FORM FIELD| DATA TYPE| RULES| Employee ID| char| Characters, letters and figures allowed| Employee Name| string| Limit of 25 characters, excess box will freeze| Surname| string| Limit of 25 characters, excess box will freeze until reset| Address| char| Limit of 200 characters, excess box will freeze until reset| phone| integer| Digits only, prints error message if wrong value entered | Date of birth| date| 1955-1994 only allowed| ex| radio| Only one option selectable | Marital Status| radio| Only one option selectable| Designation| string| Alphabetic letters only , limit of 25 characters| Department| Dropdown menu(text)| Only departments listed can be selected, of which one is allowed. | Payment| radio| Optional, one can be selected| Basic Salary| double| Might contain decimal places. | REFERENCE 10. 5 Case Study: Payroll System Using Polymorphism | Object-Oriented Programming: Polymorphism | InformIT. 2012. 10. 5 Case Study: Payroll System Using Polymorphism | Object-Oriented Programming: Polymorphism | InformIT. ONLINE] Available at: http://www. informit. com/articles/article. aspx? p=1329139&seqNum=5. [Accessed 20 June 2012]. 5 More Object-Oriented Concepts. 2012. 5 More Object-Oriented Concepts. [ONLINE] Available at: http://www. desy. de/gna/html/cc/Tutorial/node6. htm. [Accessed 26 June 2012]. article-stack » Class diagram for Payroll system. 2012. article-stack » Class diagram for Payroll system. [ONLINE] Available at: http://article-stack. com/education/class-diagram-for-payroll-system. amty. [Accessed 18 June 2012]. HR Payroll System Requirements RFI/RFP Checklist. 012. HR Payroll System Requirements RFI/RFP Checklist. [ONLINE] Available at: http://www. axia-consulting. co. uk/html/payroll_hr. html. [Accessed 2 July 2012]. Introduction to Object Oriented Programming Concepts (OOP) and More - CodeProject. 2012. Introduction to Object Oriented Programming Concepts (OOP) and More - CodeProject. [ONLINE] Available at: http://www. codeproject. com/Articles/22769/Introduction-to-Object-Oriented-Programming-Concep. [Accessed 1 July 2012]. Introduction to Object-Orientation and the UML . 012. Introduction to Object-Orientation and the UML . [ONLINE] Available at: http://www. agiledata. org/essays/objectOrientation101. html. [Accessed 18 July 2012]. Introduction to  UML 2 Use Case Diagrams. 2012. Introduction to  UML 2 Use Case Diagrams. [ONLINE] Available at: http://www. agilemodeling. com/artifacts/useCaseDiagram. htm. [Accessed 1 July 2012]. Object-oriented programming concepts: Inheritance | Adobe Developer Connection. 2012. Object-oriented programming concepts: Inheritance | Adobe Developer Connection. ONLINE] Available at: http://www. adobe. com/devnet/actionscript/learning/oop-concepts/inheritance. html. [Accessed 26 June 2012]. Payroll Software - System Requirements. 2012. Payroll Software - System Requirements. [ONLINE] Available at: http://www. cyberaid. com/pages/system-requirements-395. htm. [Accessed 28 June 2012]. Payroll System Requirements. 2012. Payroll System Requirements. [ONLINE] Available at: http://www. linuxledgers. com/PR/pr_systemrqmts. htm. [Accessed 26 June 2012]. Payroll System Requirements. 2012. Payroll System Requirements. ONLINE] Available at: http://www. linuxledgers. com/PR/pr_systemrqmts. htm. [Accessed 4 July 2012]. System Requirements | AccountEdge | Accounting Software for Mac and Windows. 2012. System Requirements | AccountEdge | Accounting Software for Mac and Windows. [ONLINE] Available at: http://www. accountedge. com/sysreq/. [Accessed 1 July 2012]. Use Case Diagram - Wikipedia, the free encyclopedia. 2012. Use Case Diagram - Wikipedia, the free encyclopedia. [ONLINE] Available at: http://en. wikipedia. org/wiki/Use_Case_Diagram. [Accessed 15 July 2012].