INFORMATION SYSTEM
INTRODUCTION
Information system is a kind of system which is used by organizations to interact with the technology in order to support business processes (Rao, Kumar and Reddy, 2018). There are various methods, approaches, methodologies that are used for development of these information system which is also known as system development lifecycle. While developing these systems it is extremely important to maintain and focus on overall quality of the system. But there are various kinds of issues that are associated with development of these systems that can result in failure of a project or degraded quality of the project. It is important for project team members to focus on these issues and reduce the chances of occurrence of these issues in order to maintain the quality of end product. There are various kinds of methodologies or approaches that can help in addressing issues associated with system development lifecycle that can lead to project failure (Usman and Ogwueleka, 2018). Agile approaches is one of those approaches that can be used to address these issues or generate solution to deal with these issues. This assignment will lay emphasis on addressing issues related to project failure using agile approaches and ways in which Agile approaches are related to today’s business environment within the IT Service Management arena.
MAIN BODY
System development lifecycle (SDLC) and issues that occur within this process
SDLC is a kind of project management model that helps in defining various stages involved in completing a project from inception stage to completion stage. There are various kinds of SDLC models such as waterfall mode, spiral model, prototype model and agile processes. SDLC life cycle consist of few phases through which each project has to go through in order to be completed. Phases of SDLC are: planning, system analysis, design, development, implementation, integration, testing and operations & management (Tsui, Davis and Sahlin, 2018). These phases help in faster development and completion of a system. iteration of these phases helps in developing the system without any issues or problems. If newer version of the system is required to be introduced with additional specifications then in such case development process is repeated and additional specifications are added to the system and at the end of iterated development process newer version of the system is introduced. So, it can be said that at the end of each iteration a newer version of the system can be introduced. This SDLC model can also be used to develop software applications but in development of such applications security becomes one of the main and primary concern as most of the times software application’s security is breeched or attacked (Egwoh and Nonyelum, 2017). As a result, testing phase plays a vital role in development of these systems or software applications.
There are various kinds of issues that are associated with System development lifecycle that many times become a reason for project failure or degraded quality of product. Few of the most common issues associated with SDLC model are as follows:
- Poor or unclear requirements: It is one of the major issues associated with this lifecycle i.e. if the requirements are unclear, too general, incomplete or are not testable then it can create various problem in system development or can also affect overall quality of the system which is being developed.
- Unrealistic Schedule: It is another kind of issue that can occur in this process i.e. if too much work is required to be delivered in less time then various kinds of unrequired problems can occur and most of them are unavoidable.
- Inadequate testing: Testing is one of the main and major issue that can become ne of the main reason of project failure i.e. if testing is not done properly and any kind of problem associated with the system can remain untested which in future can create problem (Selvarani and Sankar, 2016). Other than this it can also degrade the overall quality of the system.
- Additional features demand: Many times, in the middle of development phase clients request to add more additional features in the system even after agreeing on all kinds of development goals. This demand of additional features in the middle of the process can create various kinds of problems. It is one of the main issues that can occur at any stage of the system development process and can create many problems in future or can also result in failure of the system development process.
- Miscommunication: Another issue that can occur within these stages of development process is miscommunication. If requirements of clients are not communicated to the developer in a proper manner and they are not clear about requirements of the client then various kinds of unexpected problems can occur in development process of the system which can also result in failure of the project or degraded quality of the system (Nugroho, Waluyo and Hakim, 2017).
- Integration issues: Final integration of overall system developed is extremely important to be done in a proper manner as any kind of issue in this integration process can lead to unexpected issues or problems and can result in some nasty surprises.
There are many different ways or processes through which these issues can be avoided in order to ensure the overall quality of the system or end product. One of the most basic way is to adopt appropriate kind of agile approaches. These agile approaches can help in addressing such issues in a much better manner and can help in reducing changes of project failure. These approaches can help in addressing or fulfilling project needs, meet financial objectives, proper management, proper communication and many more.
Ways in which Agile approaches can address these issues related to project failure
Agile approaches are those kinds of SDLC approaches that can help in increasing efficiency and flexibility of the projects (Sugiandi and Kerlooza, 2018). Agile software development comprises of various kinds of software development approaches that can help in evolving solution to resolve project failure issues. So, one the basis of this Agile methodology or approaches can be defined as a kind of practise that helps in promoting continuous iteration of testing and development phases throughout SDLC process. In this both development and testing activities are concurrent unlike waterfall model (Hobbs and Petit, 2017). This Agile approaches work on four main core values such as: both team and individuals interacts with each other over tools and processes, work on system or software instead of comprehensive documents, focuses on customer collaboration instead of contract negotiation and lastly it focuses on responding to the required changes instead of following the plan or defined process. These core values of agile approaches help the project manager to ensure that project is completed successfully and project failure can be avoided. There are many ways in which Agile methodologies or approaches can help in reducing issues associated with system development life cycle or with failure of the project. Some of the aspects of agile methodology that helps in ensuring success of the project are as follows:
- Agile approaches help in providing flexibility to the project i.e. scope of the work or project can get changed as per the new requirements of the project (Chauhan, Probst and Babar, 2019).
- All kinds of new requirements of the project can be fulfilled or added at the end of small cycles i.e. in this project is broken down into small cycles that are also known as Sprints in Scrum (one of the agile methodologies).
- All the team members work together so that they can have a clear vision of their roles and responsibilities so that any kind of new requirements of changes can be easily entertained and new requirements of the client can be fulfilled.
- In this iterative improvement are done in order to bring improvements within final work i.e. in this frequent reassessment of work is done within small cycles so that a final product can be developed (Vergara, Palma and Nelson, 2018).
- In this methodology customers are closely engaged with the system development so that if they want to bring changes within their requirements, want to add some more functionalities or features or want to suggest anything then they can easily do that within appropriate time period.
These aspects of agile approaches help in addressing all kinds of issues that are associated with SDLC lifecycle so that chances of project failure can be reduced. These approaches help in managing changing priorities of a project, increase team productivity through daily task allocation, increases project visibility with the help of simple planning.
Agile approach is vast term with various kinds of methodologies and methods that share same principles and values. Each of these methods or techniques have their own distinct features that are used as per the requirements of the project. Some of the most popular agile approaches that are used within industry are: Scrum, Hybrid, Kanban, Bimodal, lean and XP. Each of these approaches/ frameworks have their own distinct features and based on the project requirements these approaches are used (Cooper and Sommer, 2016). It is important to evaluate all of these approaches and use appropriate approach as per the project so that chances of system or project failure can be reduced. Some of the main features of these approaches are explained below:
- Scrum: Entire work of the project is broken down into small cycles known as sprints. It is important for team members to follow workplan for each sprint. All the team members have their predefined roles.
- Hybrid: In this project development is done under waterfall model conditions so, it can also be said that agile and waterfall model compliment each other as per this methodology.
- Kanban: based on workflow visualization development is done. Current work done is one of the major priorities, there Are no time bound development cycles and team members can change their work plan any time as per the changes within the project or project requirements.
- Bimodal: In this two separate teams work on a project with two different goals. First team maintains system infrastructure and another team works on delivering innovative applications. But in this collaboration of both the team is extremely important (Ghezzi and Cavallo, 2018).
- Lean: In this development cycle is as short as possible. Products that are delivered early are continuously improved.
- XP: it is also known as extreme programming and in this main focus in on technical aspects of system development. It helps in introducing engineering practises so that developers can write clear code. Lastly, there is clear face to face communication done between customer and team as in this development is one of the major and crucial tasks.
Relevancy of Agile Approaches in today’s business environment within the IT service management arena
In today’s business environment agile approaches are most commonly used as per the requirements of the project. There are various kinds of agile methods that have been discussed above are used by organizations today. These approaches are also known as methodologies, method or techniques as well. Adaptation of these methodologies helps the organizations in gaining competitive advantage (Whiteley, Pollack and Matous, 2019). One of the major reason because of which agile methodologies or approaches are widely used in today’s business is that with the help of these approaches organizations can entertain any kind of changes within the project and can also help in addressing any kind of issues related to project failure and increases chances of successful development of the project. Today most of the organizations prefer to use these approaches in order to increase efficiency of their work and success of their projects.
Change is an integral part of business that can become a main reason of success or failure of any project. These changes can affect any business but most prominently they can affect It service management industry (Mills, Berthon and Pitt, 2018). Due to this, most of the IT service management organizations are starting to adopt Agile development methodologies more as compared to other SDLC methodologies. It is slowly becoming one of the most important methodology which is required to be used especially in IT projects. Slowly business values and IT department capabilities are slowly becoming difficult to address because of continuously changing client’s requirements, advancement in technology and many more reason. Agile approaches are slowly becoming a solution to these kinds of changing requirements that can affect a project and its success (Mergel, Gong and Bertot, 2018). IT service management arena people continuously work with business people. They need to adopt this methodology in order to fulfil their customers needs, business needs working with IT team for the success of the project. Usage of agile methodology helps in highlighting needs of business that are required to be focused on so that IT team can work with. Relevance of agile approaches for today’s business environment within IT service management arena can be explained with the help of few business scenarios which will help in explaining growing use of this methodology:
- One of the main key ingredient of business success today is go to market strategy in which addressing user’s requirement in short period of time has become quite essential. This helps in gaining trust and reliability of customers which further helps in increasing brand value. Agile approaches make it possible for business organizations to address their user’s requirements within a short duration of time (Rigby, Sutherland and Noble, 2018).
- Due to rapid advancement in technology it has become quite difficult for IT organizations to gain competitive advantage and in order to gain competitive advantage they continuously need to bring improvement within products and services.
- Due to constant change in business requirements of customers it has become important for business organizations to adopt a disruptive market strategy. Agile methodologies makes it possible for the organizations to adopt these constant changes in business requirements.
These business scenarios helps in explaining relevancy of agile methodology for today’s business environment especially within IT Service Management arena as it is one of those business sector in which changes or advancement in technology occur quite frequently.
CONCLUSION
From the above assignment it has been summarized that System development lifecycle is a kind of project management model which helps in proper development of a system. It has been analysed that there are various kinds of issues that are associated with system development that can lead to project failure as well. It has also been analysed that agile approaches is one of those approaches that can be used to address all kinds of issues related to project failure. There are various kind of agile approaches that can be used by organizations but the choice of approach completely depends upon the type of project and its requirements. Each of the approach has its own distinct features. It has also been analysed that agile approaches are quite relevant in today’s business environment and is been frequently being used in IT service management arena.