Agile 101: An Intro to Agile Software Development

July 14, 2020
Published by

Agile is the ability to adapt and respond to change (…) Agile organizations view change as an opportunity, not a threat”. -Jim Highsmith.


Let’s put it simply: as software engineer Jim Highsmith defined it, Agile is the ability to adapt and respond to change. It is basically a way of thinking through and dealing with a potentially uncertain and turbulent environment, while determining the best practices to ultimately succeed within it.


So, what is Agile Software Development?


Considering Highsmith’s definition, and according to Agile for All, “Agile is about collaborating to deliver the highest value product increment with high quality, as quickly and as frequently as possible, as well as continuously improving the delivery process”. Therefore, we can say that Agile Project Management, in the context of Software Development, is a mindset that focuses on continuous improvement as well as embracing team input and allowing more flexibility in order to develop quality products. 


So, what does “Scrum” mean?


Following the definition of the Agile Alliance:


Scrum is a process framework used to manage product development and other knowledge work. Scrum is empirical in that it provides a means for teams to establish a hypothesis of how they think something works, try it out, reflect on the experience, and make the appropriate adjustments (…) Scrum is structured in a way that allows teams to incorporate practices from other frameworks where they make sense for the team’s context”.


Therefore, when you hear the term “Scrum”, this is typically referencing a framework that is used to implement Agile practices and development. Scrum is known, when implemented efficiently, to improve teamwork, communications, and speed to market.


Taking all of this into account, what does an Agile Development Team look like? 


Agile teams are usually small, consisting of five to seven members who typically focus on collaboration as well as self-organization. Agile Teams are usually comprised of the following members:



To learn more about the different roles within an Agile team, check out our article on Leadership in an Agile Software Development Environment.


In summary, choosing an Agile approach when it comes to software development means that solutions evolve around a collaboration between self-organizing and cross-functional teams while using appropriate practices for their context. Managers, therefore, provide the proper environment that allows the team to work successfully. They basically make sure that the team members have all the right skillsets for any specific task or project.



Agile is an attitude, not a technique with boundaries. An attitude has no boundaries, so we wouldn’t ask ‘can I use Agile here?’, but rather ‘how would I act in the Agile way here?’.” -Alistair Cockburn


If you want to learn more about Agile and understand how this mindset can help you have a better understanding and relationship with your outsourcing software development team, click here.



Contact Us. Learn how our Agile Team can help you reach your Software Development goals.

Related Posts
Dedicated Software Development Team

How Teravision Technologies can set up a Dedicated Software Development Team in 48 hours: “The Bench”

  • Digital Agencies
  • Software Development
  • . . .
Nearshore Software Development company in Colombia

Teravision Technologies opens new Nearshore Software Development center in Bogotá, Colombia.

  • Agile
  • Software Development
  • . . .


Nearshore software outsourcing that just makes sense.

We will follow up with you soon

Try us at 1 888 9898324 or send an email to