Agile Model - essay 2 PDF

Title Agile Model - essay 2
Author harshit Rawat
Course National Security Affairs Society Ii
Institution Wilmington University
Pages 7
File Size 98.8 KB
File Type PDF
Total Downloads 11
Total Views 153

Summary

essay 2...


Description

SDLC MODEL

1

Agile Model Gulam Mohammad Wilmington University

SDLC MODEL

2

The Agile model is a combination of both, iterative and incremental model by breaking down a deliverable into several smaller components where on each cycle or iteration, a working model of the deliverable is expressed (Ghahrai, 2016). The Agile model produces open-ended releases, each time adding a small change to the previous release. During each change, as the product is being built, it is also tested to ensure that at the end of the change the final deliverable is delivered (Ghahrai, 2016). The Agile model lays primary emphasis on collaboration, as the customers, developers and the testeres o the product work together throughout the project. The primary advantage of the Agile model is that it quickly delivers a working product and is considered a very pragmatic development approach. This is the primary reason as to why the Agile model is slowly but steadily growing to be the most sought after and looked forward to approach by not only testers but also developers (Ghahrai, 2016). This approach relies heavily on the customers interaction which in return helps the developers and testers to know exactly what are the needs and the demands of the users and customers. One disadvantage of this approach though is that since the approach heavily relies on customer interaction, the project can head into a completely wrong direction if the user or the customer is not sure about the needs and the demands of the project. To sum it up, Agile is an iterative, a unit based approach to development. This approach asserts the rapid delivery of an application or a project in a complete functional components. Rather than developing tasks and schedules, all the time is boxed into phases called “sprints”. Each and every sprint has a predefined duration with a running list of application or project deliverables that are planned at the start of the sprint (Lotz, 2013). Application or project deliverables are prioritized by business value that are determined by the customers. Following are the major six advantages of using the Agile methodology:

SDLC MODEL

3

1. Stakeholder Engagement: Agile methodology provides diverse opportunities for stakeholders and team engagement - before, during, and after each sprint. By involving the customer and the users in each and every step of the project, there is a very high chance and degree of collaboration between the client and the project team, which in return provides many more opportunities for the team to truly understand the user’s perspective. Delivering working software or an application early and frequently increases the stakeholder’s belief in the team’s ability to deliver the high quality working application and encourages them to be more deeply and passionately engaged in the project. 2. Transparency: An Agile approach gives a unique opportunity for the customers and the users to be actively involved in the project, from prioritizing features to the iteration planning and reviews sessions to frequent software build containing new features. However, this also requires the customers to understand that they are seeing a work in progress in exchange for this added advantage of transparency. 3. Early and Predictable Delivery: By using this time-boxed sprints, new features are added and delivered rather quickly and frequently, with a higher level of predictability. This provides the opportunity to beta test the application earlier than planned if there is significant and sufficient business valuation. 4. Predictable costs and schedule: Since the duration of the sprint is predeffinned, the cost is assumed to be predictable and limited to the amount of work that can be performed by the team in the fixed-schedule time box. Combined with the estimates given to the customers prior to each sprint, the customers can more readily understand the approximate cost of

SDLC MODEL

4

each feature and module, which not only improves the decision making about the priority of features but also the need for the additional changes. 5. Allows for change: While the unit needs to stay alert and focused on delivering an agreed-to-subset of the application’s features during each iteration, there is an excellent opportunity to constantly refine and filter the overall application backlog. 6. Improves Quality: By breaking down the project into manageable sections, the project unit can focus on high-quality development, testing, and collaboration. Also, by producing frequent builds and conducting testing and reviews during each and every iteration, quality is highly improved by finding and fixing the flaws much quickly and identifying expectation mismatches in a very early stage (Segue technologies, 2015).

Agile methodology constitutes of six broad steps. Each step is briefly explained as follows: 1. Concept: During the first step of the agile software development life cyce, the unit scopes out the projects and prioritizes the projects. Some of the units may work on more than one assignment at the same time which depends on the department’s organization. For each concept, one should define the business opportunity and determine the time required and the work it will take to finish the project. Based on this information, one can assess technical and economical feasibility and decide which assignments are worth taking and which ones are not. 2. Inception: Once the project has been identified, one needs to work with the stakeholders to determine the requirements for the assignments. One might want to use user flow

SDLC MODEL

5

diagrams or high level UML diagrams to demonstrate how the new features should function and how it will fit into the existing system. 3. Iteration: Once the unit has defined the systems requirements for the initial sprint based on the stakeholder’s feedback and necessary requirements, the actual work begins. UX designers and developers begin work on their initial iteration of the assignment. The deliverable will undergo various rounds of changes, so the first iteration might only include the bare minimum functionality. 4. Release: Some steps are needed to round up the assignment. Testing the system ensures the quality of the product by testing the functionality, detect bugs, and record wins and losses. The testing team needs to address any defects in the application. The unit needs to finalize system and user documentation. 5. Production: This phase involves the ongoing support for the application release. In other words, the unit needs to keep the system running smoothly and needs to show the customers on how to operate it. This phase finishes when the support has ended or when the release is planned for retirement. 6. Retirement: During this phase, the unit removes the system release from the production phase and typically when the unit wants to replace the system with a new release or when the system becomes bombastic (LCT, 2017).

Comparing the Agile model to the Waterfall model, neither the Agile method nor the Waterfall method is inherently better than the other. That being told, each method definitely has its advantages and disadvantages. On one hand where the waterfall model tends to be best for the use of static projects where it is not likely that many changes will be made throughout the

SDLC MODEL

6

development process. In contrast to that, Agile methodology tends to be a viable option for smaller dynamic assignments where changes are likely to be made during the design process. One just needs to understand the project requirements and the customers demands in mind in order to determine the methodology for designing the project (Mikoluk, 2013).

References: Mikoluk. K., (September 9, 2013). Agile Vs. Waterfall: Evaluating The Pros And Cons. Retrieved from: https://blog.udemy.com/agile-vs-waterfall/

SDLC MODEL

7

Lucidchart Content Team., (December 01, 2017). The Stages of the Agile Software Development Life Cycle. Retrieved from:https://www.lucidchart.com/blog/agile-softwaredevelopment-life-cycle Lotz. M., (July 5, 2013). Waterfall vs. Agile: Which is the Right Development Methodology for Your Project?. Retrieved from:https://www.seguetech.com/waterfall-vs-agilemethodology/ Segue Technologies., (August 25, 2015). 8 Benefits of Agile Software Development. Retrieved from: https://www.seguetech.com/8-benefits-of-agile-software-development/ Ghahrai.A., (March 12, 2016). Overview of SDLC Methodologies in Software Testing. Retrieved from: https://www.testingexcellence.com/sdlc-methodologies-advantagesdisadvantages/...


Similar Free PDFs