Information technology is continuously changing and with it come many innovations that enhance the way of life more so by increasing the availability as well as accessibility of information. Cloud-based solutions present the next evolution in technology where IT resources will be freely accessed through online platforms i.e. the internet. In essence, users, both individuals and organisations will be able to lease resources that they cannot afford or that they have minimal requirement to incorporate in their own structure (Fernández-Cardeñosa, Torre-Díez & López-Coronado, 2015). Furthermore, cloud solutions facilitate real-time systems which constantly require access to IT resources. In addition to this, cloud solutions will offer other complimentary benefits such as mobility, flexibility and resilience all through their models of operations.
It is through these benefits and affordability outcomes that the Commonwealth Government proposes the project ‘My Health Record’. A project that will develop a modern information system to manage information owned by the department of health. This system is required to have a high accessibility rate owing to the number of users envisioned for it. Furthermore, most of them are distributed over wide areas thus it should be mobile. This report analyses the proposed system in the context of development and the linking to a cloud resource.
For the proposed system to meet the needs of the users, it must have certain attributes that are based on its design and development approach. For instance, it must possess adequate security measures to mitigate attacks and must be efficient to satisfy the users (Baylor, 2013).
As outlined by the name, these requirements do not directly affect the core functions of the system however, they are meant to improve the interaction between the end user and the system by facilitating an easier exchange of commands and instructions. For big projects, these requirements are hard to satisfy owing to the number of people who have varying individual needs. Nevertheless, a compromise can be met using cognitive design approach that analyses the user behaviours to understand their preferences (Kathuria, 2011).
1. Usability– a requirement that generally determines the practicality of the system to the user. It will outline the ability to meet the user’s requirements i.e. levels of satisfactions.
2. Performance–having met the needs of the user for instance through a simple design structure, the system must respond to the request given by the user. Therefore, the performance will gauge the system’s level of responsiveness based on user’s actions.
3. Reliability– the overall ability to withstand faults and environmental changes.
4. Security– The developed system also needs to outline methods to verify user’s identity and protect the system itself from threats or attacks (Microsoft, 2017).
As in many extended systems, the constraints experienced will stem from its size and application environment. In the development process based on the platform used, the system will always be inclined to perform better when dealing with the set environment e.g. developed in Windows, performs well with Window operation systems (Microsoft, 2017). In addition to this, based on the resource allocated, the IT infrastructure might be overwhelmed when faced with many requests. Therefore, the cloud solution may help this constraint by providing flexible IT resources however, the same resources may fall short if networking elements are insufficient such as bandwidth.
Review of Cloud Solutions
Cloud solutions offer flexibility and mobility benefits which based on the project outlined above will serve to increase the accessibility and availability of resources (Harding, 2017). Consider the potential users of the system; doctors, nurses and other medical officials, they are based in different locations, having different access resources and preferences. While using in-house facilities (data centres and servers) these resources must consider these outcomes thus offer multiple access points and use compatible standards for all the systems involved. However, using a service provider eliminates this hustle where the organisation needs to only identify its requirements and they are implemented by the cloud resources (Taylor, 2000).
1. Offers flexible resources – cloud resource can be accessed from multiple platforms in different locations so long as the user have an internet connection.
2. Cost saving – the subscribers have minimal set-up and maintenance costs as the infrastructure is managed by the service provider.
3. Reliable – most service providers have many established IT resource centres which boost redundancy programs thus enhancing the reliability of the systems used (Ward, 2017)
1. Security – first, remember that data or information is entrusted to a third party member whose storage system are unknown including the security protocols. Secondly, resources are accessed using the internet which has many vulnerabilities and threats
2. Downtime – the resources availability is affected by the internet resource therefore in case of fluctuations the service output will vary.
3. Control issues – it’s hard for the subscribers to track their resource across the online platform which minimises the accountability measures and objectives (Level cloud, 2017).
System Development Lifecycle (SDLC) Approach
In general, SDLC defines the procedures or methods used to develop applications based on certain set of objectives. These methods will facilitate the development and implementation of high-quality systems which have high-performance outputs as well as enhanced control. Furthermore, these procedures ensure the developed system meet all the requirements set by the user or based on the target audience (Cerritos, 2011). In the system outlined by this project, data ownership is seen as a sensitive subject that should serve as a selection criterion of the chosen development platform. Therefore, the developers, in this case, could consider the overall functionality of a health system as the main objective but at the same time facilitate the security concern. This requirement depends on the approach chosen as they have varying attributes and development processes (Bender RBT Inc., 2003).
The Predictive Approach
This approach applies the classical methods of system development where solutions are conceived using constant strategic plans i.e. a pre-determined sequence of events is used to develop the entire system with minimal changes. To start with, a strategic plan is developed where all the requirements and variables involved are determined. These items will include personnel, system requirements (functional and non-functional) and other resources. From this outline, a systematic procedure of implementing the solution is developed. Finally, the development is done followed by testing and deployment. In all the steps identified, there are never any overlaps e.g. deployment can never come before testing. Furthermore, the development stage will involve other extended phases but as in the outline above they also will have to follow a sequential procedure that has zero adjustments (MSB, 2011).
So what happens in case changes are needed? The entire process has to start a fresh as the adjustments will always lead to different solutions other than the preconceived ones. A good example of this approach is the waterfall model whose development cycles are characterised by logical and sequential phases that never overlap
1. It’s a very easy and simple approach, this because all the requirements and variables are always given.
2. An accountable method owing to its documentation requirement.
3. Since all the resource available are known, it’s easier to determine the system requirements and functionalities (Mikoluk, 2013).
1. A time-consuming process as all the development stages has to be followed sequentially.
2. Highly inflexible, there is never room for errors or changes.
3. It also bears a lot of uncertainties because not all requirements are ever known.
The Adaptive Approach
An approach developed as a result of the market demands which are always varying and changing based on the needs of the users. Furthermore, with the rapid change in technology, the method outlines a procedure for developing systems that are adaptable to any technological environment (MSB, 2011). Nevertheless, the adaptive approach also follows a logical procedure to develop systems however unlike before it provides room for change and adjustments. In essence, any changes either in personnel, requirements and variables can be accommodated to provide a solution based on the immediate needs. In an adaptive approach, the development process is split into several sections each having specific functionalities. Now, the roles or duties in each section are executed concurrently which optimises the time resource. After the completion of the section’s functionalities, they are assembled to give the final system using iterative techniques.
Iterative techniques are repeated cycles of assembling a system when at end of each cycle a unique solution is obtained. These preliminary solutions are known as prototypes and are usually tested for the requirements set by the users. Therefore, through the iterative process, the prototypes are optimised to yield the best systems possible (Gupta, 2014).
1. A flexible approach that gives room for changes an important feature for modern development ventures.
2. Optimises resources, mostly time (Stoica, Mircea, & Ghilic-Micu, 2013).
3. It’s user-centred which when combined with the testing of the iterative solutions yields good system based on user demands i.e. performance, usability and reliability.
1. Adaptive techniques require a lot of expertise based on the specialisation of the development cycles and sections.
2. It also hard to predict the development timelines as the method is characterised with changes and extensive iterative procedures.
An adaptive approach is better suited for this projects, this because it offers the most desirable features needed to meet the needs of the users. Furthermore, it will meet the requirements for cloud resources which based on their underlying infrastructure will frequently change. So, how is this recommendation justified? First, the objectives set by the Commonwealth Government are basic in nature which means there are other detailed requirements that will emerge, for instance, the proposed number of users. It's good to have an accurate number of users to optimise resource, on one hand too many resources could prove wasteful while too little will strain the system (Kommalapati & Zack, 2011). An adaptive approach will always meet such requirements based on its development cycle. Furthermore, technology is always evolving, in that the technology proposed at the start of the project may be surpassed by a newer and better technology. This change can be accommodated by an adaptive approach, unlike the predictive approach that explicitly requires the developers to hold technological changes (Kathuria, 2011).
The requirements outlined by this project present many development challenges, for one, the organisation must consider a suitable cloud solution based on the existing service model. This solution must also satisfy the needs of the organisation based on its system’s requirements. Secondly, the system developed must satisfy the needs of the end user who in this case are many thus have varying preferences. Two development methods are suggested and based on their ability to meet the user requirements (non-functional) and cloud resources have been outlined. An adaptive approach e.g. an agile model would comfortably meet the needs of the users owing to its adaptability. Moreover, it will also accommodate any technological changes more so with the cloud resources and thus is recommended for this system and project.
Baylor. (2013). Cloud storage. Non-profit Technology Collaboration. Retrieved 17 April, 2017, from: https://www.baylor.edu/business/mis/nonprofits/doc.php/197132.pdf
Cerritos. (2011). Chapter 8 –Approaches to System Development. Systems Analysis and Design in a Changing World, 6(1). Retrieved 20 May, 2017, from:
Fernández-Cardeñosa. G, Torre-Díez. I & López-Coronado. M. (2015). Analysis of cloud
-based solutions on EHRs systems in different scenarios. Department of Signal Theory and Communications, University of Valladolid. Retrieved 20 May, 2017, from: https://netgna.it.ubi.pt/files/Cloud%20computing%20EHRs_JOMS_FV.pdf
Harding. N. (2017). Key aspects of cloud computing services. Tech target. Retrieved 20 May, 2017, from: https://searchitchannel.techtarget.com/tip/Key-aspects-of-cloud-computing-services
Gupta. N. (2014). Project Management Life Cycle-Iterative & Adaptive. IZenBridge. Retrieved 24 January, 2017, from: https://www.izenbridge.com/blog/project-management-life-cycle-iterative-adaptive/
Kathuria. K. (2011). Software Development Lifecycle and Cloud Computing. Scribd. Retrieved 24 January, 2017, from: https://www.scribd.com/document/37345932/SDLC-and-Cloud-Computing
Kommalapati. H & Zack. W. H. (2011). The SaaS Development Lifecycle. InfoQ. Retrieved 24 January, 2017, from: https://www.infoq.com/articles/SaaS-Lifecycle
Level cloud. (2017). Advantages and Disadvantages of Cloud Computing. Retrieved 22 May, 2017, from: https://www.levelcloud.net/why-levelcloud/cloud-education-center/advantages-and-disadvantages-of-cloud-computing/
McCombs school of business (MSB). (2011). the System Development Life Cycle. Retrieved 24 January, 2017, from: https://utexas.instructure.com/courses/1166782/files/38198507/download
Stoica. M, Mircea. M & Ghilic-Micu. (2013). Software Development: Agile vs. Traditional. Informatica Economic? 17(4). Retrieved 20 May, 2017, from: https://www.revistaie.ase.ro/content/68/06%20-%20Stoica,%20Mircea,%20Ghilic.pdf
Mikoluk. K. (2013). Agile vs. Waterfall: Evaluating The Pros and Cons. Udemy blog. Retrieved 24 January, 2017, from: https://blog.udemy.com/agile-vs-waterfall/
Taylor. A. (2000). Design Constraints and Limitations. Introduction. Retrieved 22 May, 2017, from: