Important NSCH Aspects to Consider Requirements Management
System analysis and design is a high level process that consist of methodologies to develop a high quality system. System analysis and design helps in understanding the logics behind the system and the best possible ways to turn those logics into functional components of the system. Information requirement techniques and system requirements are parts of the system analysis phase. The use cases, UML modelling are part of system design phase.
In this report, system analysis and design processes of North Shore Community Hospital system will be discussed. The first discussion is on the various system development approaches as well as recommending one particular methodology for the project. After that, three information requirement investigation requirement techniques will be discussed and justification of choosing those techniques. Then system requirements collected using those investigation techniques will be discussed in detail. System design part will be provided in the form of use cases, domain model and class diagram. Finally some conclusions will be provided based on the descriptions of report as well as few recommendations on completing the system analysis and design phase successfully.
Waterfall: It is the initial SDLC model. The waterfall model has six phases. The phases are completed in sequential way. These phases are requirement analysis, system design, implementation, testing, deployment, post-implementation phase.
The primary advantage of waterfall model is allowing better manageable project. Waterfall model depends on documentation. The chance of scope creep is very low. Suitable for small and simple projects. All the data required to start phase is available beforehand.
The disadvantage is that developer cannot turn back to previous phase if needed. Developers need to be highly skilled and experienced which can increase project cost. Project duration is more than other methods. Project owner cannot have any working prototype before the project is finished.
Rapid Action Development: RAD can be considered as the extension of iterative software development methodology. RAD is popular because it can speed up the prototype development. In a RAD methodology, four to six members exists in the project team. There are six phases in RAD, such as planning, analysis, design, build, test and deploy. The iterative process starts from analysis and ends at testing.
The advantage of RAD is that implementation is very easy. User satisfaction can be increased through this methodology. Finally, system can be up and running in a very short time.
The biggest advantage can become its biggest disadvantage if system is not planned properly. Quickly developed system can result into poorly designed product. Developer experience is a very huge factor. Project management and control must be very strong on the project.
Suitable System Development Approach for NSCH Project
Agile: Agile can be the perfect example of incremental and iterative model hybrid. The agile model consists of phases like planning, analysis, design, build and test as iterative processes.
Advantage of agile is that it can be used in very complex and big projects that can last for years. Agile breaks the whole system in features which allows developing the system more efficiently. Agile allows code bases to be fixed very quickly. Rather than focusing on only product release, developers now can focus on both quick delivery and quality delivery.
In agile projects, system go out of track easily. Large team is required ti handle a project. If amount of scope creep is very high then project can later be impossible to complete.
Chosen Methodology: As per the description provided about above three methodologies, agile seems to be the perfect one. The proposed system can take years to complete which is only supported by agile. Code should have high quality and product must be delivered in iterations which is not possible without agile.
Stakeholders:
Patient: Each patient is an external stakeholder of the project. The patient has high interest on the project but has no power over it.
Government of Queensland: Government of Queensland is the owner of the project and has highest power on the project. Government of Queensland is an internal stakeholder.
Doctors: Doctors are internal stakeholder who will be using the system for day to day operations.
Receptionists: Like doctors, receptionists are also internal stakeholder. They have medium interest on the project and very low power over it.
System Administrator: System administrator will have medium power over the project and medium interest.
Management of North Shore Community Hospital: Management executives will be responsible for tracking and controlling the activities in the hospital. The system will provide reports to them. Management will also create the rules and regulations that the system will follow in day to day operation. They are internal stakeholders. Management executives have high interest from system as well as high power over it.
Information Gathering:
Questionnaire, interview and document analysis have been chosen as the three investigation techniques for investigating the new automated information system.
Questionnaire: It is the most popular and easy investigation technique among all. In this technique, the analyst share some pre-created questionnaire with the stakeholders or participants. Within the given time period, the participants sent the questionnaires back to the analyst with their answers or feedback. Analyst can chose to have close ended questions, open ended questions or combination of both in the questionnaire. Close ended questionnaire means participant have to select only the available options like a multiple choice questions. In open ended questions, the participant can share their thoughts in one or two paragraphs. It will be the primary and initial investigation technique for this project.
Internal and External Stakeholders for NSCH Project
Questionnaire is extremely popular because analyst can collect hundreds of feedbacks simultaneously. This technique is time and cost efficient. If the analyst is skilled enough, with right questions and correct answers, extremely valuable information can be collected in a short period of time.
Interview: Interview is a more sophisticated and complex way of collecting information from the participants or interviewees. Interview is conducted between the analyst or interviewer and interviewee. The interviewer asks questions to interviewee and also validate the answer after hearing it. Interviewer may choose to stick to pre-created questions or asks more unprepared questions based on the interviewee’s responses. All the answers are collected and stored in a spreadsheet or similar tool so that collected data can be later evaluated.
Interview is a very lengthy and costly investigation method. Despite of being more costly approach, interview is preferred in crucial situations because of information integrity. Questionnaire often has unreliable and incorrect data but interview provides the way of collecting authentic data that can be trusted.
Document Analysis: Scope creep is a very common issue in iterative SDLCs. As the system development continues, scope creep becomes more common in each step. The scope creep is the outcome of having wrong or insufficient data on the proposed system. Interview and questionnaire provides stakeholders and end user views on the system, an organization has its own elements that are not possible to be collected from users. A system of huge scale, like North Shore Community Hospital Automated System will have many underlying processes that cannot be understood by end users. Analysing a current system and its way of handling organizational processes helps analyst in understanding the in-depth processes much better way.
Document analysis allows the system analyst to rise up above the user centred requirements and see the system as a whole. Proper document analysis also helps in maintaining the project objectives. If the analyst is skilled enough then efficient and sophisticated processes than currently observing system can be generated.
Functional Requirements:
Patient Registration: Details of individual patients will be stored in the system once they reach for treatment at North Shore Community Hospital. A unique identifier will be assigned to patient while storing the data so that each patient can be uniquely identified later. Optional quick registration can also be possible in terms of emergencies where patient name and contact person details can be stored. In both cases, unique identifier is essential.
Information Requirement Techniques and System Requirements for NSCH Project
Login: In order to access the system, end users have to login. The system consists of various important data that cannot be shown to any user. Login allows only authentic users to access the system. Based on the user role defined during registration, the user can see the specific data. In order to login, user will enter user id, password as well as biometrics. If all the data is verified positive, then only user will be considered as authorized and can access the system.
Insurance Eligibility Check: Based on the inputs of insurance claims, system will check the eligibility and accept an upfront deposit to cover the estimated cost of care.
Electronic Medical Record: System will generate EMR to track and maintain the patient health records. The EMR will be integrated with LIS, RIS and PACS so that automation of information flow can be achieved.
Security: It is the most important non-functional requirement of the proposed system. The Government of Queensland wants complete security in terms data. The proposed security measures will be sound enough to prevent any unauthorized access or malware attacks on the system. Different user roles will be created at the core of the system so that any unauthorized access to system can be prevented at any cost. Behaviour of the system for different user roles will be properly tested and coded into system so that other users cannot access any information that was meant for them. Encryption methods can be used for data transactions between end user device and server. Hashing mechanisms will be used to store passwords.
Usability: The system is very complex and has different user types. It is essential to make sure that each user can properly understand the system and use it productively in their day to day operations. Important informations should be more than two clicks away from the user. However, importance of information can be different for different user types. The users must be able to learn to use the system as fast as possible. If the users can learn to use the system quickly then tasks can be performed better and correctly. As the system will be implemented in the hospital, it has to be make sure end users get minimum if not zero chances for making an error in the system.
Reliability: Reliability is also a vital non-functional requirement, based on the environment it will be used in. The developers have to make sure that system runs each operation correctly every single time without failure. The reliability of the system should always be above 92% percent.
Functional and Non-Functional Requirements for NSCH System
Maintainability: Maintainability can be defined as the time needed for a system or its component to be fixed, increased in performance or changed. The system should have at least 80% maintainability for 24 hours. This can be illustrated as probability of fixing the system is 80% within a day.
Availability: It can be referred to as the likeliness of the system to be accessible at a given point in time for a user. The availability of the system must be 100%. In order to make sure system is running while some maintenance needs to be done, a backup server can be arranged to keep the system running. The people responsible for system maintenance must plan their maintenance ahead of time.
The use cases of the system are as following.
- Login
- Register Patient
- Emergency Registration
- Schedule Appointment
- Check EMR
- Check Appointments
- Suggest Test
- Enter Prescription
- Update Test Data
- Enter Test Data
- Check Medical Report
- Check Prescriptions
Domain Model:
Class Diagram:
Conclusion:
From the above report it can be concluded that developing the system for North Shore Community Hospital can be a highly complex task. Without having accurate idea about what needs to be implemented and how, the whole project will fall. The report has provided easily understand-able and accurate data on various system analysis and design factors. The approach for system development has a great impact on the behavior of the system analysis and design processes. That is why selecting an appropriate system development methodology is very essential for completing a project successfully.
- Analyst should be highly skilled so that each information passed to designers and developers can be interpreted easily
- Stakeholders should always be informed about the project progress
Arora, R. and Arora, N., 2016. Analysis of SDLC models. International Journal of Current Engineering and Technology, 1(1), pp.1-6.
Corrêa, J.É., Turrioni, J.B., Mello, C.H.P., Santos, A.C.O., Da Silva, C.E.S. and De Almeida, F.A., 2018. Development of a System Measurement Model of the Brazilian Hospital Accreditation System. International journal of environmental research and public health, 15(11), p.2520.
Faitelson, D. and Tyszberowicz, S., 2017, May. UML diagram refinement (focusing on class-and use case diagrams). In 2017 IEEE/ACM 39th International Conference on Software Engineering (ICSE) (pp. 735-745). IEEE.
Roaten, K., Johnson, C., Genzel, R., Khan, F. and North, C.S., 2018. Development and implementation of a universal suicide risk screening program in a safety-net hospital system. The Joint Commission Journal on Quality and Patient Safety, 44(1), pp.4-11.
Septian, I., Alianto, R.S. and Gaol, F.L., 2017. Automated test case generation from UML activity diagram and sequence diagram using depth first search algorithm. Procedia computer science, 116, pp.629-637.
Shaydulin, R. and Sybrandt, J., 2017. To Agile, or not to Agile: A Comparison of Software Development Methodologies. arXiv preprint arXiv:1704.07469.
Stoica, M., Ghilic-Micu, B., Mircea, M. and Uscatu, C., 2016. Analyzing Agile Development-from Waterfall Style to Scrumban. Informatica Economica, 20(4).
Torre, D., Labiche, Y., Genero, M., Baldassarre, M.T. and Elaasar, M., 2018, May. UML diagram synthesis techniques: a systematic mapping study. In Proceedings of the 10th International Workshop on Modelling in Software Engineering (pp. 33-40).