{"id":182,"date":"2012-07-26T16:00:28","date_gmt":"2012-07-26T16:00:28","guid":{"rendered":"http:\/\/blog.devexperts.com\/?p=182"},"modified":"2022-05-18T11:02:11","modified_gmt":"2022-05-18T11:02:11","slug":"agile","status":"publish","type":"post","link":"https:\/\/devexperts.com\/blog\/agile\/","title":{"rendered":"The Agile Approach in Software Development: Why Should You Care?"},"content":{"rendered":"\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>&#8220;Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.&#8221;<\/p><cite> Manifesto for Agile Software Development, 2001 <\/cite><\/blockquote>\n\n\n\n<p>In recent years, Agile methodology has become increasingly popular in the software industry. The reason is simple\u2014 the Agile approach results in increased customer satisfaction. <\/p>\n\n\n\n<p>As a consequence, this increases the competitiveness of the development company, and both sides win. As the software market continues to develop and software products and technologies keep expanding into more web and mobile applications, there is a rapidly increasing demand for functionality and quality in developed software, time-to-market and speed of response to customer\u2019s needs. <\/p>\n\n\n\n<p>These days customer of software development services can no longer afford himself to ignore the question of how organized the production process is in the development company so that they can know what to expect and when. <\/p>\n\n\n\n<p>So, what does &#8220;Agile&#8221; mean in software development? Is this just another buzzword, or a real chance to meet these new challenges? How it can affect the customer&#8217;s business and their ROI? Let\u2019s examine this in more detail.<\/p>\n\n\n\n<p>Agile methodology is primarily about software development in a world of changing business needs and, consequently, the changing requirements of the product in development. <\/p>\n\n\n\n<p>For example, in the field of financial software this trend is especially evident. Exchanges change the rules for calculating their fees, introduce new trading instruments and supply increasingly diverse analytical data. Regulators adjust various regulations imposed on market participants, introducing new constraints and modifying existing ones. Brokerages and banks provide customers with new services for managing their assets, trading on exchanges and the FOREX market.<\/p>\n\n\n\n<p>Under such circumstances, the expectations of the customer and his vision of the software product can change dramatically during the development of the project. Similarly, the software requirements are influenced by the very IT industry itself. The emergence of new mobile devices and tablets; an increase in the popularity of social networks; the growing capabilities of hardware and networks \u2014 these advances must all be met with an appropriate response in the software.<\/p>\n\n\n\n<p>The traditional \u00abWaterfall\u00bb model of software development that arose in past years involves the sequential execution of the individual phases of the project. There is a linear path of development from start to finish, beginning with an analysis of the project\u2019s requirements. Once all requirements are established and confirmed by customer, technical solutions are developed, followed by the actual writing of code. Finally the development concludes with comprehensive testing, documentation and the delivery of the completed software product. Obviously, in this approach it is very difficult\u2014or even impossible\u2014to change individual requirements during late stages of the project.<\/p>\n\n\n\n<p>The situation is comparable to building a house. When the foundation is laid and the walls built, you cannot change the floor plan, or make any other serious modifications to the design without having to start over again from scratch. In fact, after agreeing on the building design, the client is basically eliminated from the process, and simply gets handed the keys to the finished house that they ordered once it is done. It is difficult to come up with any viable alternative in the building industry, but in the software industry other approaches are feasible.<\/p>\n\n\n\n<p>The Agile approach offers an alternative that allows one to adapt the model of software development to the reality of rapidly changing business needs. The basic principles of Agile development from the perspective of the customer are as follows:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>The project is accomplished in short iterations ranging from a couple of weeks to a couple of months. At the end of each iteration the customer is shown the result achieved so that they can gauge the progress made and evaluate the results against their expectations.<\/li><li>At any time the customer has the opportunity to add or remove something by changing the requirements of the developed product. Also, if customer\u2019s vision of certain parts of the system has not yet been formed, it can be refined later \u2013 even during the development process.<\/li><li>The result of each iteration is always working software (with the possible exception of certain phases at the beginning of the project). At any time the customer can start using the product within the range of features that have been implemented by that time.<\/li><\/ul>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>A full list of agile principles can be found at <a href=\"http:\/\/agilemanifesto.org\">agilemanifesto.org<\/a>.<\/p><\/blockquote>\n\n\n\n<p>To use the house building analogy again, if it was possible to construct a home using the Agile approach, one could go into the kitchen on the second floor of the house under construction and look out the window, even before all the walls were installed on the ground level. If you didn\u2019t like the view from the window, then next week the kitchen could be moved to the first floor. You could even start to cook in your new kitchen, and store your things in the attic while the other rooms were having the doors installed, and the walls were still being painted\u2014you would not interfere with anything, and nothing would impede you.<\/p>\n\n\n\n<p>Agile development minimizes the costs of making changes in the product\u2019s vision, providing the customer with the option of eliminating excessive features, as well as adding on previously overlooked features on the fly. Plus, early versions of the software can be turned to commercial use before all features are completed. But what does the customer have to pay for such an efficient and transparent process? The answer is simple: customers invest their time. They must be ready to talk with developers throughout the project, answer questions, clarify requirements, to evaluate the intermediate results of the project and provide feedback. Developers, in turn, provide a more rapid and efficient response to changing business.<\/p>\n\n\n\n<p>As opposed to Agile, with the classic Waterfall model the results of the software project only become visible much later on in the final stages of the project. Moreover, late changes are much more difficult to introduce with Waterfall and, consequently, require more time and are significantly more expensive. The important thing here is that the customer pays these extra expenses \u2013 either as additional hours under the contract clauses of &#8220;time and materials&#8221;, or as extra work in the scheme of \u201cfixed price\u201d.<\/p>\n\n\n\n<p>If two or more software companies are offering to develop a similar product, it is important to clarify the development process that will be used before you sign a contract. At Devexperts, we use Agile methodologies in all of our projects. Our experience has proven that this is the best choice \u2013 and in relation to financial software domain \u2013 the only practical one.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>&#8220;Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.&#8221; Manifesto for Agile Software &hellip; <\/p>\n","protected":false},"author":7,"featured_media":1624,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[2020],"tags":[13,36,11],"class_list":["post-182","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-fintech","tag-agile","tag-development","tag-financial-software"],"acf":{"nifty_post_card_image":null,"nifty_post_card_index_big":null,"nifty_post_inner_image":null,"nifty_post_card_banner":null},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>The Agile Approach in Software Development \u2013 Devexperts Blog<\/title>\n<meta name=\"description\" content=\"Agile methodology is used in software development in a world of changing business needs and, consequently, the changing requirements.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/devexperts.com\/blog\/agile\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"The Agile Approach in Software Development: Why Should You Care?\" \/>\n<meta property=\"og:description\" content=\"Agile methodology is used in software development in a world of changing business needs and, consequently, the changing requirements.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/devexperts.com\/blog\/agile\/\" \/>\n<meta property=\"og:site_name\" content=\"Devexperts Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/devexperts\/\" \/>\n<meta property=\"article:published_time\" content=\"2012-07-26T16:00:28+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-05-18T11:02:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/devexperts.com\/blog\/app\/uploads\/2017\/10\/black-full.png\" \/>\n\t<meta property=\"og:image:width\" content=\"3840\" \/>\n\t<meta property=\"og:image:height\" content=\"700\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Valentin Anoprenko\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@devexperts\" \/>\n<meta name=\"twitter:site\" content=\"@devexperts\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Valentin Anoprenko\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":[\"Article\",\"BlogPosting\"],\"@id\":\"https:\/\/devexperts.com\/blog\/agile\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/devexperts.com\/blog\/agile\/\"},\"author\":{\"name\":\"Valentin Anoprenko\"},\"headline\":\"The Agile Approach in Software Development: Why Should You Care?\",\"datePublished\":\"2012-07-26T16:00:28+00:00\",\"dateModified\":\"2022-05-18T11:02:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/devexperts.com\/blog\/agile\/\"},\"wordCount\":1109,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\/\/devexperts.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/devexperts.com\/blog\/agile\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/devexperts.com\/blog\/app\/uploads\/2017\/10\/black-full.png\",\"keywords\":[\"agile\",\"development\",\"financial software\"],\"articleSection\":[\"Fintech\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/devexperts.com\/blog\/agile\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/devexperts.com\/blog\/agile\/\",\"url\":\"https:\/\/devexperts.com\/blog\/agile\/\",\"name\":\"The Agile Approach in Software Development \u2013 Devexperts Blog\",\"isPartOf\":{\"@id\":\"https:\/\/devexperts.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/devexperts.com\/blog\/agile\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/devexperts.com\/blog\/agile\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/devexperts.com\/blog\/app\/uploads\/2017\/10\/black-full.png\",\"datePublished\":\"2012-07-26T16:00:28+00:00\",\"dateModified\":\"2022-05-18T11:02:11+00:00\",\"description\":\"Agile methodology is used in software development in a world of changing business needs and, consequently, the changing requirements.\",\"breadcrumb\":{\"@id\":\"https:\/\/devexperts.com\/blog\/agile\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/devexperts.com\/blog\/agile\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/devexperts.com\/blog\/agile\/#primaryimage\",\"url\":\"https:\/\/devexperts.com\/blog\/app\/uploads\/2017\/10\/black-full.png\",\"contentUrl\":\"https:\/\/devexperts.com\/blog\/app\/uploads\/2017\/10\/black-full.png\",\"width\":3840,\"height\":700},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/devexperts.com\/blog\/agile\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/devexperts.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"The Agile Approach in Software Development: Why Should You Care?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/devexperts.com\/blog\/#website\",\"url\":\"https:\/\/devexperts.com\/blog\/\",\"name\":\"Devexperts Blog\",\"description\":\"We make complex finance ideas on technology, innovation and business simple\",\"publisher\":{\"@id\":\"https:\/\/devexperts.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/devexperts.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/devexperts.com\/blog\/#organization\",\"name\":\"Devexperts LLC\",\"url\":\"https:\/\/devexperts.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/devexperts.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/devexperts.com\/blog\/app\/uploads\/2019\/08\/DX-logo.png\",\"contentUrl\":\"https:\/\/devexperts.com\/blog\/app\/uploads\/2019\/08\/DX-logo.png\",\"width\":167,\"height\":30,\"caption\":\"Devexperts LLC\"},\"image\":{\"@id\":\"https:\/\/devexperts.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/devexperts\/\",\"https:\/\/x.com\/devexperts\",\"https:\/\/www.linkedin.com\/company\/devexperts\",\"https:\/\/www.youtube.com\/channel\/UCF3FRmes2KrcVsTXQ1aAB5w\/featured\"]}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"The Agile Approach in Software Development \u2013 Devexperts Blog","description":"Agile methodology is used in software development in a world of changing business needs and, consequently, the changing requirements.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/devexperts.com\/blog\/agile\/","og_locale":"en_US","og_type":"article","og_title":"The Agile Approach in Software Development: Why Should You Care?","og_description":"Agile methodology is used in software development in a world of changing business needs and, consequently, the changing requirements.","og_url":"https:\/\/devexperts.com\/blog\/agile\/","og_site_name":"Devexperts Blog","article_publisher":"https:\/\/www.facebook.com\/devexperts\/","article_published_time":"2012-07-26T16:00:28+00:00","article_modified_time":"2022-05-18T11:02:11+00:00","og_image":[{"width":3840,"height":700,"url":"https:\/\/devexperts.com\/blog\/app\/uploads\/2017\/10\/black-full.png","type":"image\/png"}],"author":"Valentin Anoprenko","twitter_card":"summary_large_image","twitter_creator":"@devexperts","twitter_site":"@devexperts","twitter_misc":{"Written by":"Valentin Anoprenko","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["Article","BlogPosting"],"@id":"https:\/\/devexperts.com\/blog\/agile\/#article","isPartOf":{"@id":"https:\/\/devexperts.com\/blog\/agile\/"},"author":{"name":"Valentin Anoprenko"},"headline":"The Agile Approach in Software Development: Why Should You Care?","datePublished":"2012-07-26T16:00:28+00:00","dateModified":"2022-05-18T11:02:11+00:00","mainEntityOfPage":{"@id":"https:\/\/devexperts.com\/blog\/agile\/"},"wordCount":1109,"commentCount":2,"publisher":{"@id":"https:\/\/devexperts.com\/blog\/#organization"},"image":{"@id":"https:\/\/devexperts.com\/blog\/agile\/#primaryimage"},"thumbnailUrl":"https:\/\/devexperts.com\/blog\/app\/uploads\/2017\/10\/black-full.png","keywords":["agile","development","financial software"],"articleSection":["Fintech"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/devexperts.com\/blog\/agile\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/devexperts.com\/blog\/agile\/","url":"https:\/\/devexperts.com\/blog\/agile\/","name":"The Agile Approach in Software Development \u2013 Devexperts Blog","isPartOf":{"@id":"https:\/\/devexperts.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/devexperts.com\/blog\/agile\/#primaryimage"},"image":{"@id":"https:\/\/devexperts.com\/blog\/agile\/#primaryimage"},"thumbnailUrl":"https:\/\/devexperts.com\/blog\/app\/uploads\/2017\/10\/black-full.png","datePublished":"2012-07-26T16:00:28+00:00","dateModified":"2022-05-18T11:02:11+00:00","description":"Agile methodology is used in software development in a world of changing business needs and, consequently, the changing requirements.","breadcrumb":{"@id":"https:\/\/devexperts.com\/blog\/agile\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/devexperts.com\/blog\/agile\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/devexperts.com\/blog\/agile\/#primaryimage","url":"https:\/\/devexperts.com\/blog\/app\/uploads\/2017\/10\/black-full.png","contentUrl":"https:\/\/devexperts.com\/blog\/app\/uploads\/2017\/10\/black-full.png","width":3840,"height":700},{"@type":"BreadcrumbList","@id":"https:\/\/devexperts.com\/blog\/agile\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/devexperts.com\/blog\/"},{"@type":"ListItem","position":2,"name":"The Agile Approach in Software Development: Why Should You Care?"}]},{"@type":"WebSite","@id":"https:\/\/devexperts.com\/blog\/#website","url":"https:\/\/devexperts.com\/blog\/","name":"Devexperts Blog","description":"We make complex finance ideas on technology, innovation and business simple","publisher":{"@id":"https:\/\/devexperts.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/devexperts.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/devexperts.com\/blog\/#organization","name":"Devexperts LLC","url":"https:\/\/devexperts.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/devexperts.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/devexperts.com\/blog\/app\/uploads\/2019\/08\/DX-logo.png","contentUrl":"https:\/\/devexperts.com\/blog\/app\/uploads\/2019\/08\/DX-logo.png","width":167,"height":30,"caption":"Devexperts LLC"},"image":{"@id":"https:\/\/devexperts.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/devexperts\/","https:\/\/x.com\/devexperts","https:\/\/www.linkedin.com\/company\/devexperts","https:\/\/www.youtube.com\/channel\/UCF3FRmes2KrcVsTXQ1aAB5w\/featured"]}]}},"_links":{"self":[{"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/posts\/182","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/comments?post=182"}],"version-history":[{"count":23,"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/posts\/182\/revisions"}],"predecessor-version":[{"id":4129,"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/posts\/182\/revisions\/4129"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/media\/1624"}],"wp:attachment":[{"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/media?parent=182"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/categories?post=182"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/tags?post=182"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}