Solutions

Waterfall Waterfall methodology is the most common project management approach in today’s workplace. It is based on a top-down approach to works and problem solving. Its strength is its processes that focus on the production of a tangible product and in any process related to compliance or regulation. In a waterfall model, each phase must be completed before the next phase can begin and there is no overlapping in the phases, hence the derivation of the name Waterfall. The Waterfall Model was the first Process Model to be introduced. It is also referred to as a linear-sequential life cycle model.

The sequential phases:
• Requirement Gathering and analysis: All possible requirements of the system to be developed are captured in this phase and documented in a requirement specification doc.
• System Design: The requirement specifications from first phase are studied in this phase and system design is prepared. System Design helps in specifying hardware and system requirements and also helps in defining overall system architecture.
• Implementation: With inputs from system design, the system is first developed in small programs called units, which are integrated in the next phase. Each unit is developed and tested for its functionality which is referred to as Unit Testing.
• Integration and Testing: All the units developed in the implementation phase are integrated into a system after testing of each unit. Post integration the entire system is tested for any faults and failures.

Click here to Read More

AGILE The term ‘agile’ was created in 2001 (www.agilemanifesto.org) when a group of ‘independent thinkers around software development’ came together to talk about an alternative to the heavyweight, document-driven processes that existed at the time. Known as the ‘Waterfall method’, these old-fashioned processes comprised a sequence of technical phases that were slow and struggled to respond to changing requirements, particularly when they were mired in too much detail from the start.

The group was already working in ways that later become described as agile; an output from this meeting was the Manifesto for Agile Software Development, or the ‘Agile Manifesto’ as it is more commonly known, and its impact and success have been quite dramatic. The Agile Manifesto contains 12 principles. The Agile movement seeks alternatives to traditional project management. Agile approaches help teams respond to unpredictability through incremental, iterative work cadences and empirical feedback. Agilists propose alternatives to waterfall, or traditional sequential development. Agile development methodology provides opportunities to assess the direction of a project throughout the development lifecycle.
This is achieved through regular cadences of work, known as sprints or iterations, at the end of which teams must present a potentially shippable product increment. By focusing on the repetition of abbreviated work cycles as well as the functional product they yield, agile methodology is described as “iterative” and “incremental.” In waterfall, development teams only have one chance to get each aspect of a project right. In an agile paradigm, every aspect of development — requirements, design, etc. — is continually revisited throughout the lifecycle. When a team stops and re-evaluates the direction of a project every two weeks, there’s always time to steer it in another direction.

Click here to Read More

SCRUM Scrum is a simple, people-centric framework for organizing and managing work. It is built on a specific set of foundation values, principle and practices. Practitioners & adopters typically add their own unique approaches to the Scrum framework, creating a version of Scrum that is unique to their circumstances, whilst ensuring the core values of Iterative development remains relatively unchanged. Scrum has been focused and used primarily for software development in order to improve speed of development and adaptation to customer needs and values.

efforts consist of one or more Scrum teams, each made up of three Scrum roles: Product Owner, Scrum Master, and the Development team. There can be other roles when using Scrum, but the Scrum framework requires only the three as listed. The Product Owner is the empowered central point of product leadership, He is sometimes known as the face of the business and ensure value is produced. He decides which features and functionality to build and the order in which to build them. The Scrum Master acts as coach, facilitator, and impediment remover. this role helps everyone involved understand and embrace the Scrum values, principles, and practices to help the organization obtain exceptional results from applying Scrum. The development team is a diverse, cross-functional collection of all of the types of people needed to design, build, and test a desired product. The development team self-organizes to determine the best way to accomplish the goal set out by the product owner. Development teams can be as small as three people but are typically five to nine people in size. 

XP – Extreme Programming Beck calls XP a “lightweight methodology” that challenges the assumption that getting the software right the first time is the most economical approach in the long run. Beck’s fundamental idea is to start simply, build something real that works in its limited way, and then fit it into a design structure that is built as a convenience for further code building rather than as an ultimate and exhaustive structure after thorough and time-consuming analysis. Rather than specialize, all team members write code, test, analyze, design, and continually integrate code as the project develops. Because there is much face-to-face communication, the need for documentation is minimized. 

Extreme Programming emphasizes teamwork. Managers, customers, and developers are all equal partners in a collaborative team. Extreme Programming implements a simple, yet effective environment enabling teams to become highly productive. The team self-organizes around the problem to solve it as efficiently as possible.
Extreme Programming improves a software project in five essential ways; communication, simplicity, feedback, respect, and courage. Extreme Programmers constantly communicate with their customers and fellow programmers. They keep their design simple and clean. They get feedback by testing their software starting on day one. They deliver the system to the customers as early as possible and implement changes as suggested. Every small success deepens their respect for the unique contributions of each and every team member. With this foundation Extreme Programmers are able to courageously respond to changing requirements and technology.

Click here to Read More

DevOps is a descriptive not a prescriptive concept whose purpose is to increase collaboration, reduce waste and automate as much of the processes involved. DevOps emphasizes the importance of communication and collaboration between software developers and production IT professionals, while automating the deployment of software and infrastructure changes. Ultimately DevOps attempts to create a working environment in which building, testing, and deploying software can occur rapidly, frequently and reliably. In turn, this enables an organization to expose value more quickly, allowing for a faster turnaround time in the deployment of new features, security patches, and bug fixes.

The term “DevOps” typically refers to the emerging professional movement that advocates a collaborative working relationship between Development and IT Operations, resulting in the fast flow of planned work, while simultaneously increasing the reliability, stability, resilience and security of the production environment. Why Development and IT Operations? Because that is typically the value stream that is between the business (where requirements are defined) and the customer (where value is delivered).

The origins of the DevOps movement are commonly placed around 2009, as the convergence of numerous adjacent and mutually reinforcing movements:
• The Velocity Conference movement, especially the seminal “10 Deploys A Day” presentation given by John Allspaw and Paul Hammond

Click here to Read More

Scaling Scrum Large-Scale Scrum is Scrum scaled up to multiple teams. It isn’t a bigger process that includes Scrum, but is Scrum at its core. 

Exponents of Scaling Scrum are
www.scrum.org with the Nexus Guide – Nexus is a framework that drives to the heart of scaling: cross-team dependencies and integration issues. It is an exoskeleton that rests on top of multiple Scrum Teams who work together to create an Integrated Increment. It builds on the Scrum framework and values. The result can be an effective development group of up to 100 people. For larger initiatives, there is Nexus+, a unification of more than one Nexus.
www.scrumalliance.org with the Scaling Scrum fundamentals
www.less.works with LeSS (Large Scale Scrum) – Scaling Scrum starts with understanding standard one-team Scrum. From that point, your organization must be able to understand and adopt LeSS, which requires examining the purpose of one-team Scrum elements and figuring out how to reach the same purpose while staying within the constraints of the standard Scrum rules.
www.scaledagileframeworks.com – SAFe’s practices are grounded on nine fundamental principles that have evolved from Agile principles and methods, Lean product development, systems thinking, and observation of successful enterprises.

LEAN traces its roots back to people’s desire to create products. It consists of continuously evolving concepts and deeper thinking on business performance. Since Lean principles are applied in many contexts, tools and methods have multiple sources. However, many of the iconic elements of Lean come from the Toyota Production System. Lean helps to focus on customer value. By doing so, organizations add more value to their products and services while reducing sources of waste and increasing their agility and ability to adapt. An improved dialogue and connection with customers and end-users enables an IT organization to drastically increase the loyalty of satisfied customers

A consequence of Lean is a paradigm shift in the way we think. It challenges our assumptions of how work is supposed to be done and how responsibilities are supposed to be executed.
The Lean organization continuously improves process performance which offers them great strategic value. Their services are of better quality, their delivery times are shorter and their efficiency of development and deployment keeps increasing. The most important asset for a ‘knowledge worker’ organization is its people: Lean promises higher involvement and motivation of employees. Additionally are financial benefits to be expected from reducing process waste, optimizing value-adding work that frees up time to add even more value. also, the reduction of the duration between order intake and delivery will improve cash flow. It must be stressed, however, that increasing profit margins is not the primary goal of Lean, although it can be expected to be a secondary effect of improving and thereby reducing effort spent on non-value adding activities.

Six Sigma is a disciplined, data-driven approach and methodology for eliminating defects (driving toward six standard deviations between the mean and the nearest specification limit) in any process – from manufacturing to transactional and from product to service. 

Six Sigma is now according to many business development and quality improvement experts, the most popular management methodology in history. Six Sigma is certainly a very big industry in its own right, and Six Sigma is now an enormous ‘brand’ in the world of corporate development. Six Sigma began in 1986 as a statistically-based method to reduce variation in electronic manufacturing processes in Motorola Inc in the USA. Today, twenty-something years on, Six Sigma is used as an all-encompassing business performance methodology, all over the world, in organizations as diverse as local government departments, prisons, hospitals, the armed forces, banks, and multi-nationals corporations. While Six Sigma implementation continues apace in many of the world’s largest corporations, many organizations and suppliers in the consulting and training communities have also seized on the Six Sigma concept, to package and provide all sorts of Six Sigma ‘branded’ training products and consultancy and services.

While Six Sigma has become a very widely used ‘generic’ term, the name Six Sigma is actually a registered trademark of Motorola Inc., in the USA, who first pioneered Six Sigma methods in the 1980’s.

Click here to Read More

KANBAN Kanban is a technique for managing a software development process in a highly efficient way. Kanban underpins Toyota’s “just-in-time” (JIT) production system. Although producing software is a creative activity and therefore different to mass-producing cars, the underlying mechanism for managing the production line can still be applied.
A software development process can be thought of as a pipeline with feature requests entering one end and improved software emerging from the other end.
Inside the pipeline, there will be some kind of process which could range from an informal ad hoc process to a highly formal phased process. In this article, we’ll assume a simple phased process of: (1) analyse the requirements, (2) develop the code, and (3) test it works.

The Effect of Bottlenecks
A bottleneck in a pipeline restricts flow. The throughput of the pipeline as a whole is limited to the throughput of the bottleneck.

Kanban reveals bottlenecks dynamically

Kanban is incredibly simple, but at the same time incredibly powerful. In its simplest incarnation, a kanban system consists of a big board on the wall with cards or sticky notes placed in columns with numbers at the top.
Limiting work-in-progress reveals the bottlenecks so you can address them.

Click here to Read More

Prince2 / Prince 2 Agile The term ‘agile’ is very broad and is viewed in many different ways throughout the agile community. There is a set of well-known frameworks referred to as ‘agile methods’ and there are also well-known behaviours, concepts and techniques that are recognized as characterizing the agile way of working. But there is no single definition of agile that accurately encapsulates them all, although the Agile Manifesto comes the closest to achieving this. PRINCE2 Agile describes how to configure and tune PRINCE2 so that PRINCE2 can be used in the most effective way when combining it with agile behaviours, concepts, frameworks and techniques. 

PRINCE2 and PRINCE2 Agile are only suitable for use on projects, whereas agile can be used for projects and routine ongoing work as well. Throughout this manual, routine ongoing work is referred to as ‘business as usual’ (BAU) and covers such areas as ongoing product development, product maintenance and continual improvement.

The distinction between project work and BAU work is important because some of the agile ways of working need to be applied differently in each situation. Therefore, when carrying out a piece of work it is important to understand the type of work being undertaken, to ensure that it is addressed in the appropriate way and that agile is used appropriately.

Click here to Read More

ITIL is a framework providing best practice guidelines on all aspects of end to end service management. It covers complete spectrum of people, processes, products and use of partners. ITIL® enables organizations to utilize leading edge IT capabilities to provide world class services and maximize value. Employing IT service management best practices described in ITIL®, organizations have been proven to increase productivity, optimize costs and improve customer experience. ITIL is split into 5 core areas: Service Strategy, Service Design, Service Transition, Service Operation and Continual Service Management. 

ITIL service strategy – specifies that each stage of the service lifecycle must stay focused upon the business case, with defined business goals, requirements and service management principles.
ITIL service design – provides guidance for the production and maintenance of IT policies, architectures and documents.
ITIL service transition – focuses upon change management role and release practices, providing guidance and process activities for transitioning services into the business environment.
ITIL service operation – focuses upon delivery and control process activities based on a selection of service support and service delivery control points.

Click here to Read More

Waterfall Waterfall methodology is the most common project management approach in today’s workplace. It is based on a top-down approach to works and problem solving. Its strength is its processes that focus on the production of a tangible product and in any process related to compliance or regulation. In a waterfall model, each phase must be completed before the next phase can begin and there is no overlapping in the phases, hence the derivation of the name Waterfall. The Waterfall Model was the first Process Model to be introduced. It is also referred to as a linear-sequential life cycle model.

The sequential phases:
• Requirement Gathering and analysis: All possible requirements of the system to be developed are captured in this phase and documented in a requirement specification doc.
• System Design: The requirement specifications from first phase are studied in this phase and system design is prepared. System Design helps in specifying hardware and system requirements and also helps in defining overall system architecture.
• Implementation: With inputs from system design, the system is first developed in small programs called units, which are integrated in the next phase. Each unit is developed and tested for its functionality which is referred to as Unit Testing.
• Integration and Testing: All the units developed in the implementation phase are integrated into a system after testing of each unit. Post integration the entire system is tested for any faults and failures.

Click here to Read More

AGILE The term ‘agile’ was created in 2001 (www.agilemanifesto.org) when a group of ‘independent thinkers around software development’ came together to talk about an alternative to the heavyweight, document-driven processes that existed at the time. Known as the ‘Waterfall method’, these old-fashioned processes comprised a sequence of technical phases that were slow and struggled to respond to changing requirements, particularly when they were mired in too much detail from the start.

The group was already working in ways that later become described as agile; an output from this meeting was the Manifesto for Agile Software Development, or the ‘Agile Manifesto’ as it is more commonly known, and its impact and success have been quite dramatic. The Agile Manifesto contains 12 principles. The Agile movement seeks alternatives to traditional project management. Agile approaches help teams respond to unpredictability through incremental, iterative work cadences and empirical feedback. Agilists propose alternatives to waterfall, or traditional sequential development. Agile development methodology provides opportunities to assess the direction of a project throughout the development lifecycle.
This is achieved through regular cadences of work, known as sprints or iterations, at the end of which teams must present a potentially shippable product increment. By focusing on the repetition of abbreviated work cycles as well as the functional product they yield, agile methodology is described as “iterative” and “incremental.” In waterfall, development teams only have one chance to get each aspect of a project right. In an agile paradigm, every aspect of development — requirements, design, etc. — is continually revisited throughout the lifecycle. When a team stops and re-evaluates the direction of a project every two weeks, there’s always time to steer it in another direction.

Click here to Read More

SCRUM Scrum is a simple, people-centric framework for organizing and managing work. It is built on a specific set of foundation values, principle and practices. Practitioners & adopters typically add their own unique approaches to the Scrum framework, creating a version of Scrum that is unique to their circumstances, whilst ensuring the core values of Iterative development remains relatively unchanged. Scrum has been focused and used primarily for software development in order to improve speed of development and adaptation to customer needs and values.

efforts consist of one or more Scrum teams, each made up of three Scrum roles: Product Owner, Scrum Master, and the Development team. There can be other roles when using Scrum, but the Scrum framework requires only the three as listed. The Product Owner is the empowered central point of product leadership, He is sometimes known as the face of the business and ensure value is produced. He decides which features and functionality to build and the order in which to build them. The Scrum Master acts as coach, facilitator, and impediment remover. this role helps everyone involved understand and embrace the Scrum values, principles, and practices to help the organization obtain exceptional results from applying Scrum. The development team is a diverse, cross-functional collection of all of the types of people needed to design, build, and test a desired product. The development team self-organizes to determine the best way to accomplish the goal set out by the product owner. Development teams can be as small as three people but are typically five to nine people in size. 

XP – Extreme Programming Beck calls XP a “lightweight methodology” that challenges the assumption that getting the software right the first time is the most economical approach in the long run. Beck’s fundamental idea is to start simply, build something real that works in its limited way, and then fit it into a design structure that is built as a convenience for further code building rather than as an ultimate and exhaustive structure after thorough and time-consuming analysis. Rather than specialize, all team members write code, test, analyze, design, and continually integrate code as the project develops. Because there is much face-to-face communication, the need for documentation is minimized. 

Extreme Programming emphasizes teamwork. Managers, customers, and developers are all equal partners in a collaborative team. Extreme Programming implements a simple, yet effective environment enabling teams to become highly productive. The team self-organizes around the problem to solve it as efficiently as possible.
Extreme Programming improves a software project in five essential ways; communication, simplicity, feedback, respect, and courage. Extreme Programmers constantly communicate with their customers and fellow programmers. They keep their design simple and clean. They get feedback by testing their software starting on day one. They deliver the system to the customers as early as possible and implement changes as suggested. Every small success deepens their respect for the unique contributions of each and every team member. With this foundation Extreme Programmers are able to courageously respond to changing requirements and technology.

Click here to Read More

DevOps is a descriptive not a prescriptive concept whose purpose is to increase collaboration, reduce waste and automate as much of the processes involved. DevOps emphasizes the importance of communication and collaboration between software developers and production IT professionals, while automating the deployment of software and infrastructure changes. Ultimately DevOps attempts to create a working environment in which building, testing, and deploying software can occur rapidly, frequently and reliably. In turn, this enables an organization to expose value more quickly, allowing for a faster turnaround time in the deployment of new features, security patches, and bug fixes.

The term “DevOps” typically refers to the emerging professional movement that advocates a collaborative working relationship between Development and IT Operations, resulting in the fast flow of planned work, while simultaneously increasing the reliability, stability, resilience and security of the production environment. Why Development and IT Operations? Because that is typically the value stream that is between the business (where requirements are defined) and the customer (where value is delivered).

The origins of the DevOps movement are commonly placed around 2009, as the convergence of numerous adjacent and mutually reinforcing movements:
• The Velocity Conference movement, especially the seminal “10 Deploys A Day” presentation given by John Allspaw and Paul Hammond

Click here to Read More

Scaling Scrum Large-Scale Scrum is Scrum scaled up to multiple teams. It isn’t a bigger process that includes Scrum, but is Scrum at its core. 

Exponents of Scaling Scrum are
www.scrum.org with the Nexus Guide – Nexus is a framework that drives to the heart of scaling: cross-team dependencies and integration issues. It is an exoskeleton that rests on top of multiple Scrum Teams who work together to create an Integrated Increment. It builds on the Scrum framework and values. The result can be an effective development group of up to 100 people. For larger initiatives, there is Nexus+, a unification of more than one Nexus.
www.scrumalliance.org with the Scaling Scrum fundamentals
www.less.works with LeSS (Large Scale Scrum) – Scaling Scrum starts with understanding standard one-team Scrum. From that point, your organization must be able to understand and adopt LeSS, which requires examining the purpose of one-team Scrum elements and figuring out how to reach the same purpose while staying within the constraints of the standard Scrum rules.
www.scaledagileframeworks.com – SAFe’s practices are grounded on nine fundamental principles that have evolved from Agile principles and methods, Lean product development, systems thinking, and observation of successful enterprises.

LEAN traces its roots back to people’s desire to create products. It consists of continuously evolving concepts and deeper thinking on business performance. Since Lean principles are applied in many contexts, tools and methods have multiple sources. However, many of the iconic elements of Lean come from the Toyota Production System. Lean helps to focus on customer value. By doing so, organizations add more value to their products and services while reducing sources of waste and increasing their agility and ability to adapt. An improved dialogue and connection with customers and end-users enables an IT organization to drastically increase the loyalty of satisfied customers

A consequence of Lean is a paradigm shift in the way we think. It challenges our assumptions of how work is supposed to be done and how responsibilities are supposed to be executed.
The Lean organization continuously improves process performance which offers them great strategic value. Their services are of better quality, their delivery times are shorter and their efficiency of development and deployment keeps increasing. The most important asset for a ‘knowledge worker’ organization is its people: Lean promises higher involvement and motivation of employees. Additionally are financial benefits to be expected from reducing process waste, optimizing value-adding work that frees up time to add even more value. also, the reduction of the duration between order intake and delivery will improve cash flow. It must be stressed, however, that increasing profit margins is not the primary goal of Lean, although it can be expected to be a secondary effect of improving and thereby reducing effort spent on non-value adding activities.

Six Sigma is a disciplined, data-driven approach and methodology for eliminating defects (driving toward six standard deviations between the mean and the nearest specification limit) in any process – from manufacturing to transactional and from product to service. 

Six Sigma is now according to many business development and quality improvement experts, the most popular management methodology in history. Six Sigma is certainly a very big industry in its own right, and Six Sigma is now an enormous ‘brand’ in the world of corporate development. Six Sigma began in 1986 as a statistically-based method to reduce variation in electronic manufacturing processes in Motorola Inc in the USA. Today, twenty-something years on, Six Sigma is used as an all-encompassing business performance methodology, all over the world, in organizations as diverse as local government departments, prisons, hospitals, the armed forces, banks, and multi-nationals corporations. While Six Sigma implementation continues apace in many of the world’s largest corporations, many organizations and suppliers in the consulting and training communities have also seized on the Six Sigma concept, to package and provide all sorts of Six Sigma ‘branded’ training products and consultancy and services.

While Six Sigma has become a very widely used ‘generic’ term, the name Six Sigma is actually a registered trademark of Motorola Inc., in the USA, who first pioneered Six Sigma methods in the 1980’s.

Click here to Read More

KANBAN Kanban is a technique for managing a software development process in a highly efficient way. Kanban underpins Toyota’s “just-in-time” (JIT) production system. Although producing software is a creative activity and therefore different to mass-producing cars, the underlying mechanism for managing the production line can still be applied.
A software development process can be thought of as a pipeline with feature requests entering one end and improved software emerging from the other end.
Inside the pipeline, there will be some kind of process which could range from an informal ad hoc process to a highly formal phased process. In this article, we’ll assume a simple phased process of: (1) analyse the requirements, (2) develop the code, and (3) test it works.

The Effect of Bottlenecks
A bottleneck in a pipeline restricts flow. The throughput of the pipeline as a whole is limited to the throughput of the bottleneck.

Kanban reveals bottlenecks dynamically

Kanban is incredibly simple, but at the same time incredibly powerful. In its simplest incarnation, a kanban system consists of a big board on the wall with cards or sticky notes placed in columns with numbers at the top.
Limiting work-in-progress reveals the bottlenecks so you can address them.

Click here to Read More

Prince2 / Prince 2 Agile The term ‘agile’ is very broad and is viewed in many different ways throughout the agile community. There is a set of well-known frameworks referred to as ‘agile methods’ and there are also well-known behaviours, concepts and techniques that are recognized as characterizing the agile way of working. But there is no single definition of agile that accurately encapsulates them all, although the Agile Manifesto comes the closest to achieving this. PRINCE2 Agile describes how to configure and tune PRINCE2 so that PRINCE2 can be used in the most effective way when combining it with agile behaviours, concepts, frameworks and techniques. 

PRINCE2 and PRINCE2 Agile are only suitable for use on projects, whereas agile can be used for projects and routine ongoing work as well. Throughout this manual, routine ongoing work is referred to as ‘business as usual’ (BAU) and covers such areas as ongoing product development, product maintenance and continual improvement.

The distinction between project work and BAU work is important because some of the agile ways of working need to be applied differently in each situation. Therefore, when carrying out a piece of work it is important to understand the type of work being undertaken, to ensure that it is addressed in the appropriate way and that agile is used appropriately.

Click here to Read More

ITIL is a framework providing best practice guidelines on all aspects of end to end service management. It covers complete spectrum of people, processes, products and use of partners. ITIL® enables organizations to utilize leading edge IT capabilities to provide world class services and maximize value. Employing IT service management best practices described in ITIL®, organizations have been proven to increase productivity, optimize costs and improve customer experience. ITIL is split into 5 core areas: Service Strategy, Service Design, Service Transition, Service Operation and Continual Service Management. 

ITIL service strategy – specifies that each stage of the service lifecycle must stay focused upon the business case, with defined business goals, requirements and service management principles.
ITIL service design – provides guidance for the production and maintenance of IT policies, architectures and documents.
ITIL service transition – focuses upon change management role and release practices, providing guidance and process activities for transitioning services into the business environment.
ITIL service operation – focuses upon delivery and control process activities based on a selection of service support and service delivery control points.

Click here to Read More