Thursday, December 12, 2019

Object Oriented Analysis and Design

Question: Discuss about the Object Oriented Analysis and Design. Answer: Introduction This report is aimed at establishing how effective the XYZ Car Park System for both the business and the technical aspects of the proposed solution. It analyses the functionality described in the case study to provide a feasibility report for the implementation of the system by following Object-Oriented-Analysis method. Objected analysis involves the examining the requirements and deriving classes and objects from the requirements (Quillin, 2001). These classes and objects have specific behaviors and are related in a certain way to form the system. There are three analysis techniques used in objected oriented analysis; Object Modelling this involves deriving objects from the static structure of the system. Dynamic modelling- The behavior of the system is examined in relation to external entities. Functional modelling Shows the processes that are performed within an object and the flow of data between the various objects (Booch, 1991). After the analysis, the results are used to come up with a design document. This design document is used during the implementation stage and the testing stage to ensure the system is working correctly. After implementation and testing is complete the product is deployed. Below is the analysis of the system using object oriented methodology. Functionality analysis Object modelling From the case study, there are few classes which can be further classified into objects. There is the customer class which is composed of two objects i.e. ordinary customer and seasonal customer. These two objects belong to the same class because they possess similar attributes but are different in their own way where ordinary customer pays for the parking every time he/she uses it but seasonal customers pay for the parking based on the specified subscriptions. Ticket is another class with two objects i.e. ordinary ticket and seasonal ticket. Ordinary ticket is used by ordinary customers while the seasonal ticket is used by seasonal customers. That is the relationship between the two classes. Mode of payment is another class with two different objects; cash and card. Both modes are used to pay for parking and can be used by both seasonal and ordinary customers. Another object is a car. A car has attributes that enable it to be identified to a specific customer. Intercom is another ob ject which is activated as a result of a ticket being paid for and more than 15 minutes have elapsed before the car leaves the car park. This brings about another object attendant who evaluates if the delay was reasonable and remotely activates the barrier by raising it. An attendant can also serve a customer whose barcode is faulty and cannot be recognized by the payment station. Another object is the security contractor. The security contractor is supposed to visit the car parks regularly. The security uses a card to access the car park. A contract specifies the number of times a contractor is supposed to visit a car park and the duration of every visit. So, the contract is another object. For fault management, fault is an object where by it is recorded with all the details and then assigned to a maintenance company. A fault has attributes for example the object that is faulty, who repaired it and at what time, when it was noticed and so on. The maintenance company is another obje ct that relates to fault because the maintenance company fixes the faults. The diagram below best illustrates the different objects in the system and how they are related. Dynamic modelling This aims to show the behavior of the system due to external entities. In the case study, external entities can be seen as the customer, attendant, security contractor and fault management company. These are the entities that interact with the system and cause a change from one state to another. For example, when a customer pays presses the generate ticket button a ticket is processed and the state of the barrier is changed from being lowered to raise to grant entry to the vehicle. For seasonal customers, entering the ticket in the stand changes the state of the barrier only if the ticket is valid. Another scenario that causes a change in the state of the system is when an attendant verifies that the delay of a customer is reasonable after the customer pays for the ticket and fifteen minutes elapse without the customer exiting the car park. The attendant can grant exit to the customer this changes the state of the system. Paying for the ticket also changes the state of the system for ordinary customers where the ticket is now valid to open the barrier when the customer is leaving. This only happens after the customer has paid for the ticket. After paying the customer can choose to generate a receipt or not. Functional modelling Between the various models, there are operations that occur as shown in the diagram above. These operations cause flow of data between objects thus creating a relationship between the objects. Paying for a ticket for ordinary customers causes the barrier to open when the ticket is inserted. For seasonal customers paying for a subscription enables them to enter and leave the car park during weekdays. Payment depends on the details on a ticket to determine the amount to be charged for ordinary customers. From the class diagram above, there is flow of data between objects as some objects depend on other objects. Resources required To implement the system, a lot of hardware and software resources should be acquired. First of all, the hardware on which the software will run for the car park to be operational based on the specified system is required. This hardware equipment includes; sensors to sense when a vehicle arrives and when a vehicle is departing. These sensors are configured with the barrier to make sure the barrier is lowered and raised at the right time. There should be a ticket generating machine which ordinary customers use to generate ordinary tickets. This machine should also be able to read the different tickets to differentiate between a seasonal customer and ordinary customer. A payment station should also be bought where ordinary customers pay for their tickets. All these machines should be networked so a physical network should be setup to make sure the machine is connected to a central hub. After acquiring the hardware, the software is acquired and deployed to run on the provided hardware. Feasibility study This is the process of studying the business process of the proposed solution to determine whether its implementable or not. It involves coming up with the possible risks that might be incurred during the implementation of the proposed solution. Feasibility study is divided into three; technical, economic and operational feasibility (Sreejith, 2009). Technical specifies the hardware and software ability to satisfy the user requirements. Economic specifies the cost benefit of the solution while the operational specifies the human and organizational aspects of the solution. The following are the aspects to consider; Is the solution cost worthy? - this involves comparing the current system with the proposed system to determine whether the new one is worth the cost Does the vendor have a good reputation for delivering good products- This involves finding the best vendor in the market? Overall, is the vendor sustainable. This means that the vendor should be able to deliver a good product and support afterwards (Williams, 2014). Will maintenance cost more in future- If the maintenance will cost more its good to consider another solution. The proposed solution has shown to be possible to implement as it will help automate all the processes. It will provide better accountability because of report generation thus the city administration is able to evaluate the business. However, there are a few risks that might arise; Failure of the system means that the car park is not operational. Cases of hacking can be a great security risk. Vandalism of the physical hardware could pose a great threat to the business. Customers might find it hard to adapt to the new system and thus opt for other car parks in the city. Although the risks are significant, there are various ways to ensure that the risks can be minimized and this makes the solution possible to implement as it is more beneficial to the business. Use of options like security contractor can be used to solve cases like vandalism. Conclusion From a business perspective, implementing the solution would cost a lot of money but the end return on the investment would be worth it. References Grady, B. (2007). Object-oriented Analysis and Design with Applications (3rd Edition ed.). Addison-Wesley. Quillin, M. J. (2001, November 25). Object Oriented Analysis and Design. Retrieved March 14, 2017, from https://www.umsl.edu/~sauterv/analysis/488_f01_papers/quillin.htm Sreejith. (2009, July 27). FEASIBILITY STUDY SOFTWARE ENGINEERING. Retrieved March 14, 2017, from https://softwarefeasibilitystudy.blogspot.co.ke/2009/07/feasibility-study-software-engineering.html

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.