The Agile methodology has benefited software development for many years, enabling collaboration through an iterative process that speeds time-to-market and normally results in higher quality applications. But what is the Agile software development methodology? While it’s likely that most readers are already familiar with Agile, others may just be starting out in their development careers.
Flow Engineering is the science of creating, visualizing and optimizing the flow of value from your company to the customers. In the end that is the million-dollar (likely more) challenge of most product companies: How to we create value in the form of product and services and ship those to our customers as quickly, sustainably and frictionless as possible.
We talked to Dama Damjanović, Principal Engineer at N26 about how the regulations in finance and banking affect engineering teams behind fintech apps, how they can improve security, and what type of new technology will add the most value to the industry in the coming years.
For something as complex as software development, there can be no “right” way of doing things all the time. Each project has its own set of variables, challenges, and idiosyncrasies. And every developer has a preferred way of working, which makes it difficult to set any hard and fast rules. But this doesn’t mean you should dive into your development projects head first, without guidelines or a methodology—albeit a flexible one—to inform the way forward.
For teams following agile software development practices, regression testing is a must. Agile teams constantly make changes to live software that can introduce regressions (or, code changes that break the functionality of part of an app). Regression testing can keep teams from shipping critical bugs to production by confirming the most important parts of an app are still working every time new code is pushed.
Product failures and defects can occur on many different shapes and levels, impacting any part of the user experience, functionality, and even safety. In the past, organizations were taking the approach of of Failure Mode and Effects Analysis (FMEA) for risk assessment. This allowed teams to identify and prevent failure before a product or update is released.
Software is available everywhere we look. Any machinery we use associates itself with code that controls the way it works. Software teams work to write these applications, and many software developers band together to work on a single project. They keep working on ensuring that the application should work just as designed for the end-user when they deploy the code.