Case Study of Collins Car Parking System
Task : In this assessment item, you are required to provide the detailed architecture and design of the system presented in Assessment Item 1 in report form. The total number of words should be between 1800-2000. Please note the words included in the diagrams/figures will not be counted. Amongst the information sought are answers to the following questions:
Questions you need to address are:
- Identify and briefly describe the main functional and non-functional requirements for the major systems areas of the case study.
- Draw a use case model for the information system. Write brief Use Case description for each Use Case in the diagram. Write one fully developed Use Case description for one of the important Use Cases identified. Select an important Use Case that is key part of the system, not a basic simple Use Case.
- Draw a UML domain model class diagram for all systems in your chosen case study. Be as specific and accurate as possible, given the information provided. If needed information is not given, make realistic assumptions. 4. For each of the five d
- For each of the five design activity of SDLC, list and briefly describe some specific tasks required for each design activities (i.e., describing the environment, designing application components, user interfaces, the database, and software methods.
1. Identification and Brief description of Main Functional and Non-functional Requirements for the Major System
This part of the assessment will discuss about different functional as well as non-functional requirements
1.1 Functional Requirements: Authorisation, database, report generation, authentication, interfaces, back-up and recovery, payment handling and access to pillars are considered as different types of functional requirements. These functional requirements will be discussed below.
- Authorization: First of all, the authorisation process will generally help to validate the user requirement. Most importantly, it is important to propose that the particular system will have several types of authorisation levels, which create a distinct separation between the ordinary customer request and fixed customer request. This ticket will help the company in customer identification strategy.
- Authentication: The authentication process will be implemented to verify a user. This particular system will help to read the important information associated with the ticket. The authentication process will also help the company to retrieve the information. The authentication of the particular ticket strongly depends upon the validity period of ticket.
- System Database: System database is considered as the most important functional requirement. It will help the company to store all the important data. In addition, this process will also help the company to retrieve all the stored data.
- Report Generation: Report generation is also an important functional requirement. The report generation process will be completed successfully through the consideration of important data and information. Most importantly, this is acceptable that the executive managers of the company will be responsible for the report generation process (Harman & Zhang, 2015). This particular system will help to develop the reports on yearly, weekly and monthly basis. This particular report will be stores in the system for a longer period of time.
- Back-up Generation: The back-up technique and recovery technique are highly important. These two techniques will be integrated with the secured server. This particular back-up and recovery system will be used for creating a virtual storage for the important information. In case of the loss of different data and information, it will be important for the system for having a back-up. Most importantly, this particular procedure will help to automatically retrieve all the important information associated with the system.
- Interface: This particular system will have different types of interfaces and displays. The developed interface is important for the system as it will act as an important interaction medium between the system and customers. This particular display or interface will show different kinds of messages, such as Full, Press Button and Take Ticket.
- Access to Pillars: The access to available pillars is also considered as an important functional requirement. Overall, these pillars can be accessed after the successful completion of the customer authorisation process.
- Payment Handle: Last but not the least; payment handling can be regarded as an important functional requirement. The payment handling process for the fixed customers used to vary from the payment handling process for the ordinary customers. This particular system will consider all the charges during the ticket generation process for the fixed customers. On the other hand, this particular process will generate payment after the proper calculation of all the charges in case of the ordinary customers (kempka et al., 2015). Overall, it is acceptable that the payment should be done through cash or card in this particular system for the ordinary customers.
1.2 Non Functional Requirements: Performance, availability, security, scalability, usability, recoverability and data integrity are considered to be some important non-functional requirements. These non-functional requirements will be discussed below.
- Performance: The proposed system will be highly efficient, effective and multi-functional in case of the performance. In terms of time efficiency, the system will complete the user process request within the five seconds. In terms of quality maintenance and effectiveness, the system will generate only one ticket at a particular time. Overall, the system will take almost 7 seconds.
- Scalability: Scalability is also considered to be an important non-functional requirement, which helps a system to develop individual ability by coping up with the needs and requirements of business operation process. Resource based frequency approach will be used to improve the degree of scalability of this particular system. The proper and effective scalability management process will assist to provide effective customer services (gay & Antoniol, 2015).
- Availability: In terms of availability, the system will work for almost 24*7. The target customers can gain the required customer service during any time in a day.
- Security: In terms of security, the developed system will not entertain any kind of peripheral device as it will crack down such devices. The integration of the advanced information communication technology approaches will help to improve the degree of security of the associated software applications and hardware devices.
- Recovery: In terms of recovery, the system is developed with high quality and effective recovery system. This is acceptable that the integrated disaster recovery technique will assist the company as well as the system to recover the destroyed magnetic tapes, which are used to collect and store the valuable data and information.
- Usability: In terms of usability, the particular system will be of higher quality. It is acceptable that the customers will perform tasks through the user friendly manual guide. However, this particular system is of superior quality and user friendly.
- Data Integrity: In terms of data integrity, this particular system will maintain consistence and accuracy of the collected and stored data. Different authentic validation and checking methods will ensure the degree of integrity and validity of the data and information (Harman et al., 2014).
2. Use Case Modelling
2.1 Designing of Use Case Modelling
This partiucular model can be used in five different aspects. All of these five different uses are discussed below.
First of all, this particular model can be implicated by the company in the poaymet process as it will allow the custyomers to make payment dcor a particular time period after the car is parked in the parking areas. Fixed customers can make the payment through tickets. On the other hand, the ordinary customers can make the payment through cash and card.
During the point of entry, a sensor can be activated in the car in the entry gate. This particular process of the model will notify the stafs and the customers that the car is parked.
An exist sensor is asspociated with the sustem, which will notify the customers as well as the staffs that a partuicular car is making exit. This is considered to be an important utilisation (Marculescu et al., 2017).
Administration maintenance also can be considered as an important utilisatioin of this model. A system administrator is employed to evaluate, control and administrate the important functionality of the particular system.
2.2 Description of Use Cases
Use case 1: Get Ticket
The permanent customer can reserve their space for parking as well as they are required to validate and provide their key detail like registration number of the vehicle, date & time, length of stay and lastly submit their details. The authentication of the information will be performed on the system and for developing reservation, data storage within the information system.
Use case 2- Parking
In the customers try to move near the entry barrier, then the licensed plate will be identified by the camera and the database will instantly search the whether the customer is a permanent customer or not. The fixed customers are also allowed to see the fixed spot detail and in case the customer is not in the record or registered, the empty spot will be displayed. Consequently, in case the license plate is not identified, the customers are allowed with the alternative to manually put in their registration number and utilize the system of the information.
Use case 3- manage account
The information of the account will be updated by the customers itself and for the said purpose, the customers are required to associate with the information by validating the records with their old details.
Use Case 4- View Reservation
The prevailing spots which are allocated to the fixed customers can be altered by validating into the customer account and indented the free spots accessible within the system. Thus, the edit options are utilized in terms of sub case.
Use Case 5- Register
This is generally utilized by the unregistered customers in order to register the prevailing parking system. The customers are required to fill-up the registration form for recording with the prevailing information system.
Use case 6- manage parking
The present custom history, parking prices, obtainable wallet balance, etc can be seen by the user after getting connected with the application and logging into their dedicated account which was created at the time of registering process.
Use case 7- Edit reservation
In order to cancel the process of registration or editing the data such as time for reservation, parking space, etc it is essential for the customers to edit the same prior to the starting of actual time.
Use case 8- Register vehicle
This is mainly utilized for registering some other vehicle within the dedicated account of the customer. The customers are required to fill a form up and submit the same for registering the information of the vehicle within the information system
Use case 9- Edit vehicle details
The registered customers can edit the information of their vehicle after validating into the information system.
Use case 10- Authenticate user
The account for the fixed customer is generated and they are required to utilize their recorded email ID and password for entering into the system. The information is gathered from the database and a new session is developed for the customers in order to manage the access into the information system.
Use case 11– Set price
The tariff scheme is pursued and is shown to the fixed customer for selecting the suitable plan as per the requirement of the customers.
Use case 12- Inspect usage history
The system observer can effectively see the history of the usage and they are required to validate according to the system for accumulating the records and generating a statistics for the usage
Use case 13 – Monthly billing
The records of the permanent customers are evaluated and every reservation which are not cancelled are recognized and a bill is developed for the users and sent via email.
2.3 Fully Developed Use Case Description: Ticket generation is considered to be the most important utilisation of this particular model.
Situation: The system will generate a ticket for the customer based on the made request.
Activating episode: Request for generation of a ticket made by the customers.
Brief explanation: Customers can approach for requesting a ticket by pressing the start button, which will help the system to generate a ticket for the customers. The generated ticket will be of unique ID, which will help to park a car.
Individuals: Customers are the major individuals.
Associated Use Case: Generation of the Tickets.
Stakeholders: System Administration, customers and Collin’s Car Park
Pre-conditions: Fixed customers will be considered, the parking area should have one free space, and the proper functionality of the system will be ensured.
Post conditions: The system should allocate a space for customer and the tickets should be generated basis on the request of the customers.
Movement of activities
- Customers request the system
- Customer should press the start button
- The customer can receive generated tickets
- system finds available space
- Generation of tickets is completed
- The ticket service offers space, which is associated with.
- The particular system records the entry time.
- System helps to print the ticket.
- The ticket is lacking of important information.
- The system helps to access the local time.
- The system is significantly integrated with the database.
3. Designing of UML Domain Model Class Diagram
The above mentioned model is the class diagram, which has successfully represented the UML class model of the mentioned parking system. This particular class diagram is comprised of different important classes. The types of payment and types of tickets have been represented through the generalisation approach. The associated customer data will be saved and utilised for the particular fixed tickers.
4. Activities of SDLC: It is considered as an important universal software development cyclic model. This particular model is comprised of five important st6ages, such as system engineering and modelling, software requirement analysis, system design and analysis, code generation, testing, and maintenance. All of these stages will be discussed below.
In terms of system engineering and mod, this is acceptable that the proposed software model is a large system used in the world. Therefore, the system developers and implementers generally consider the identification of the system requirement is the first and most important step. In this particular process, the business analysts generally identify the effective and supportive environment for the development of the system. However, all the requirements are allocated to the particular system after the successful allocation of the sub-sets of the requirement.
Software requirement analysis is considered as the second most important stage of this particular model. This particular stage is also considered as feasibility study. The associated development team members generally visit the customers, understand their requirements, and examine the operation environment quite effectively. The associated system analysts also investigate the required designing approaches and technological applications to enhance the automation of the system functions. In this particular step, the analysts are generally able to understand the integrated software domain quite effectively (Feldt & Poulding, 2015). In addition, the particular analysts are also responsible for the effective and accurate documentation of the gathered information and data. These particular aspects will help the designers to identify and understand the crucial factors.
System design and analysis is considered to be the most important step of this model as this particular model helps to define the overall structure of a particular model. The system structure can be considered as a basic layout of the particular system. Most importantly, this is acceptable and identified that the structure is developed basis on the designing application components. Most importantly, it is identified that the activity diagram development and process management will be done by the user and system interaction process. An effective interaction process is required for the conceptual, physical and logical designing of the particular database.
Code generation is considered to be the fourth and most important stage of this model. This particular stage will help to convert the existing design to the readable machine format. The major changes and transformations are done based on the demands of the user review (Sahin et al., 2015).
Testing and maintenance can be considered as the last stage of the model. Different types of testing are done to understand the effectiveness of the system, such as unit testing, black box testing etc. In terms of maintenance, after delivery system changes and functionalities are maintained by the individuals.
Harman, M., Jia, Y., & Zhang, Y. (2015, April). Achievements, open problems and challenges for search based software testing. In Software Testing, Verification and Validation (ICST), 2015 IEEE 8th International Conference on (pp. 1-12). IEEE.
Kempka, J., McMinn, P., & Sudholt, D. (2015). Design and analysis of different alternating variable searches for search-based software testing. Theoretical Computer Science, 605, 1-20.
Gay, G., & Antoniol, G. (2015, May). 8th international workshop on search-based software testing (SBST 2015). In Proceedings of the 37th International Conference on Software Engineering-Volume 2 (pp. 1001-1002). IEEE Press.
Harman, M., Jia, Y., Krinke, J., Langdon, W. B., Petke, J., & Zhang, Y. (2014, September). Search based software engineering for software product line engineering: a survey and directions for future work. In Proceedings of the 18th International Software Product Line Conference-Volume 1 (pp. 5-18). ACM.
Marculescu, B., Feldt, R., Torkar, R., & Poulding, S. (2017). Transferring Interactive Search-Based Software Testing to Industry. Marculescu, B., Feldt, R., Torkar, R., & Poulding, S. (2017). Transferring Interactive Search-Based Software Testing to Industry.
Feldt, R., & Poulding, S. (2015, May). Broadening the search in search-based software testing: It need not be evolutionary. In Search-Based Software Testing (SBST), 2015 IEEE/ACM 8th International Workshop on (pp. 1-7). IEEE.
Sahin, D., Kessentini, M., Wimmer, M., & Deb, K. (2015). Model transformation testing: a bi?level search?based software engineering approach. Journal of Software: Evolution and Process, 27(11), 821-837.
Zeller, A. (2017, May). Search-based testing and system testing: a marriage in heaven. In Search-Based Software Testing (SBST), 2017 IEEE/ACM 10th International Workshop on (pp. 49-50). IEEE.