Technology has come a long way. From the 80s when the only convenient way you could run a program on your PC was to insert a floppy disk with MS-DOS commands. Then came Windows and a revolution of software development began. We are off floppy disks and software drives literally everything in the world, all technologies included. Simply put, anytime you use the computer you interact with software. Software development is at the center of technology just as software developers are.
Certified developers whether they have undertaken certified scrum master training are a significant part of technology. As we know, the technology exists to solve problems and make life easier.
Bjarne Stroustrup better illustrated this in the quote, “our civilization runs on software.”
How software development has progressed
Since Tom Kilburn wrote the first stored-program in 1948, software development has gone through drastic evolution to what we see today. The birth of software development is not as ancient a concept as computers are.
The year 1957 saw a team of programmers under the leadership of John Backus develops Fortran, a programming language that makes it easy to translate math formulas into code. A year later and the term ‘software’ was used for the first time by John Tukey, a statistician in his article on computer programming.
In the next era, up to the 80s, the software industry was already experiencing a big boom with several other programming languages like Cobol, Pascal, C, and BASIC being developed and software development models like Waterfall coming to life. This was around the same time that personal computers entered the scene.
Software development methodologies have also gone through drastic evolution. The once hailed waterfall model that was used for software development two decades back is certainly not viable in this era. The waterfall model required each development phase to be handled separately and in succession so that one phase had to be over and done with before tackling the next phase.
Other models came and went. From the very first cascade-style waterfall, the Iterative model that combines the linear approach in the waterfall model but divides the process into small repeated cycles, the spiral model which adopts the iterative concept but focuses more on risk management, the V-model which modified the waterfall to include testing in every stage, to the agile model which promotes collaboration at every stage and faster deployments that is widely used today.
Today, with the advent of technologies like Blockchain, IoT, cloud computing, voice assistants, and AI, trends are changing and clients have become more biased towards easy-to-operate features and natural languages in software.
What is Agile and Scrum
Agile is a widely used software development model that encompasses the iterative approach but with a focus on collaboration, customer satisfaction, and rapid deployment of high-quality software. This model breaks the development process into smaller incremental parts bound by timelines. Cross-functional teams work simultaneously on different parts of the project to deliver specific client requirements faster.
Under Agile, are different working frameworks including:
- Extreme Programming
Of these methodologies, Scrum is the most popular.
Scrum is an agile framework mostly used in managing complex software development projects as it uses the iterative/incremental concept and features increased productivity, quality, and predictability while allowing the development team to respond faster to changing requirements. Scrum allows more effective collaborations between cross-functional teams.
A brief history of Scrum
In 1986, two Japanese businessmen Hirotaka Takeuchi and Ikujiro Nonaka developed Scrum as a flexible and effective approach to product development with inspiration drawn from the automotive, photocopier, and printer production industries.
Later in 1993, Jeff Sutherland successfully worked on the first Scrum software-development project. By 1995, Sutherland alongside Ken Schwaber developed the Scrum framework. 6 years later, Scrum was incorporated as a methodology within the Agile model when the Agile Manifesto was created. This would soon replace the then-popular waterfall software production model that was proving ineffective due to its rigid and costly.
There are three main roles within the Scrum framework which include:
- Product Owner
The product owner is the bearer of the project vision who represents the interest of the end-user and stakeholders. He is the link between the customers and the development team.
- He comes up with the project requirements
- Prioritize project tasks into defined timelines
- Ensures that deliveries adhere to the Scrum framework
- Development Team
Ideally, a development team will consist of three to nine members including architects, researchers, designers, analysts, programmers, engineers, and others. The team carries out all product development tasks under the leadership of a ScrumMaster and within the requirements of the product owner. A team can have only one ScrumMaster. However, A ScrumMaster can be in charge of two or more development teams.
The team is self-organizing and cross-functional meaning that it has the authority to decide how to divide tasks and work in collaboration.
The ScrumMaster is the expert in charge of ensuring that the development process runs smoothly by eliminating obstacles. He guides the team on the project requirements and ensures that the development process complies strictly with the Scrum framework laid out.
While the ScrumMaster will be in charge of educating the team and other stakeholders on the Scrum framework, he does not interfere with the team’s self-organizing and cross-functional roles.
What is CSM
CSM is a credential offered by Scrum Alliance to those who assume the role of ScrumMaster or Scrum team member. This credential is recognized by recruiters worldwide across several industries. It is an indication that an individual has mastered the elements of the Scrum framework including team roles, events, and artifacts together with the values and principles governing the scrum framework.
Among other roles (listed above) the CSM has the responsibility of driving the team to achieve its project goals and deliverables successfully within the scrum framework.
The CSM certification is valid for two years. Within this period, a certification holder will be
a member of the Scrum Alliance and have exclusive access to scrum resources like access to user-groups.
How to become a Certified Scrum Master
There are no laid down prerequisites to becoming a ScrumMaster. However, evaluate yourself to see if you have the following skills that a ScrumMaster should have.
- A people’s person
- Good communication skills, problem-solving, and conflict-resolution
- Keenness on leadership, coaching, team motivation, and team development
- Deep understanding and interest in the Scrum framework, its principles, and elements and can implement it within the team
- Years of experience performing Scrum-related duties
If you have the above skills you can consider enrolling for the Certified Scrum Master course. The requirements for taking the certification exam include:
- Taking a two-day classroom training
- The CSM open book exam contains 50 multiple choice questions and should be taken within 60 minutes.
- The pass mark is 37 correct answers out of the 50 questions which translates to 74%.
- Passing the exams qualifies you for a certificate that you download after signing the Scrum Alliance Digital License Agreement.
- This certificate is valid through two years after which you can renew by either taking a higher-level certification exam or displaying 20 Scrum Educational Units, a process that costs 100 USD.