Tag Archives: agile development

  • Developing Mobile Application

    Why Should You Choose React Native for developing mobile Application?

    Why Should You Choose React Native for developing mobile application

    React Native is a popular option in designing social apps, e-commerce applications, or more interactive software in a mobile.

    The mobile application world is evolving and dynamic. It experiences a constant niche technology, platforms, and frameworks niche when developing mobile application. This enables innovators to come up with revolutionary mobile software. You should choose React Native as it is a native mobile app development framework used in developing mobile applications. Hybrid mobile app development like CSS, HTML5, and JavaScript bridges the gap between native app performance and web app development. This article highlights eight reasons why you should use React Native in the developing mobile application.

    1. Easy Learning

    React native development supports the creation of excellent app experiences on iOS and Android devices using a similar mode in React and JavaScript. React Native uses JavaScript engine to execute JavaScript. You just require JavaScript knowledge and a consistent environment to create React Native in development of mobile related-apllications.

    2. Exact Native

    React Native allows you to develop real mobile software that is hard to differentiate from an application built using Java or Objective-C. It uses exact Android UI and iOS components. React Native puts the UI Elements together using React and JavaScript. The user interface remains active throughout the operations as React Native supports the JavaScript code on its background thread different from the main strand. Animations keep flowing making the React Native graceful and responsive.

    3. Faster Development

    React Native offers hot reloading meaning that you do not have to wait for Android Studio or Xcode to finish recompiling it. You only need to reload your application instantly or view the changes live after coding. React Native can put JavaScript code in a single form. The bundle can be served from server or application. The developer can employ other developer apps for debugging. React Native can take various forms depending on its usage like, for instance, inline styling and Flexbox CSS styling enables native mobile app development to speed.

    4. Faster Updating

    Mobile applications need updating after some time to receive new features and fix the bug. The iOS takes up to two days as you must go through the review process. JavaScriptCore saves you time since you can update all apps over the air without the review process from the App Store. With CodePush you can use the App new elements directly to your devices.

    5. Speedy Feedback Loop

    It was easy to come up with an app in the initial stages of iOS development. Xcode was fast, APIs never existed, and the available few devices were fast as applications were small. Over the years, the mobile apps keep growing in complexity, and the infrastructures have not responded in a comparable way to the development. Xcode is cumbersome and slow and compile times have gotten slower especially those with Swift. React Native eliminates the compile times allowing you to add file watchers to reload downloads when saving files.

    6. Plain Text Editor

    Keeping files simple is an essential part of developing mobile application. Lowering entry barriers and keeping steps easy to understand is a milestone to productivity. Many iOS innovators use Xcode while Android developers go for Android Studio. The IDEs provide outstanding features to enhance the developer to develop debug and code. They are hard and slow to use for first-timers. A simple text editor increases overall productivity as it does not crash, lose syntax highlighting or hang.

    7. Community

    React Native has a positive community. Its founding principles were instilled well. These components are growing the native app. It is possible to manage any iOS dependencies using the Cocoapods and Carthage. With the React Native, you can download everything and run applications from any internet enabled device.

    8. User interface

    React Native focuses on the user interface unlike the previous framework like MeteroJS and AngularJs. It will give you a highly responsive interface due to the JavaScript interactions between Native environment and React Native of your device. This action increases the load time of an application and makes sure it is running smoothly without any interruptions.

    Select React Native for Developing Mobile Application

  • Agile Development

    How to build an app using Agile Development?

    How to build an app using Agile Development

    Agility is the ability to respond quickly and easily to changes in your environment. Agile development refers to the set of ideals behind efficiently building a piece of software that is easily adaptable to the needs of the users. The mobile app development market is a volatile place. What people want can change quickly. As someone interested in this world you need to be able to adapt to the needs of your target audience efficiently. The agile development can help you do just that.

    What is the Agile Approach
    The basic tenants of the agile approach are that the team will:
    Value individuals and interactions over processes and tools
    Provide working software over comprehensive documentation
    Involve customer collaboration over contract negotiation
    Respond to change over following a plan

    With the agile development approach your business will focus more on responding to the needs of the client, and the teams involved rather than sticking with a strict set of goals that minimize the human element in app development. In a market where people will quickly lose interest if their needs aren’t being met, agility is an important attribute. Sticking to rigid goals may work in some environments, but it has been found that a more flexible approach is better suited to the world of software development. You can make a great product that is exactly what you envisioned, but if this doesn’t match what your customers are looking for then you run the risk of the product never becoming a success.

    The Agile approach normally works in increments on relatively short timescales. This allows project teams to develop usable products within short time frames. By focusing on quality short term projects the development team can analyze how their products do in the open market at a more rapid pace and make changes accordingly in subsequent phases of project development.

    How you can use app in Agile development
    Mobile apps are pieces of software specifically designed to run on a smartphone or tablet type device. They usually offer access to a limited and specific function. Not everyone uses their mobile devices for the same purposes and apps provide a way to personalize your mobile device with the programs you find the most useful.

    Agile development is a perfect approach for app design. Apps don’t generally need very robust programs and an experienced team will be able to roll out a usable prototype in a short period of time. As you learn how customers use your app it will be easier to make adjustments to fit their needs from there. Each iteration is intended to be a complete and usable product with room to grow. The team should also try to build on what they have to keep from having to reinvent the wheel. If something works, keep it. If something needs to go, drop it.

    In this kind of development, specific tasks are assigned to the appropriate specialists. In that sense every part of a project is its own individual project which will then be pieced together to form the whole. Communication between project teams is vital for the success of projects when using this technique.

    Some key components to include are:
    Set up a schedule for when you want specific tasks done.
    Focus on getting smaller projects done quickly and efficiently.
    Include time for regular communication between project teams.

    Benefits of the Agile development
    Breaking projects down into smaller tasks and using the right teams to get the job done make for a more focused and comfortable work environment for those involved. Using the agile approach will allow teams to do what they do best and keep a steady flow of high quality products coming. If the process is implemented properly then the final product should be an app that meets clients expectations in a timely fashion. With skilled workers and clear communication your teams should enjoy high rates of productivity and job satisfaction when using this approach to develop apps.

    Contact with agile development team

  • What are the most useful cloud based tools used in agile based project management?

    What are the most useful cloud based tools used in agile based project management?

    A project is an attempt to achieve a unique goal by temporarily focusing people and resources on creating a result. That result can be a product, service, organizational change, software application or any other result that brings value to the project’s sponsor.

    Project managers apply skills, tools, knowledge, and methods to the activities performed on behalf of the project in order to meet its requirements. Only by effectively applying all of this can a project succeed. It starts with a strategy on how best to bring into reality the project manager’s vision, ideas, and goals. The decision on method and tools is critical to the project’s success. The increasing availability and lower cost of digital solutions allow powerful tools and methods to be used in even the smaller projects. There is no longer a need to manage a project exclusively with tools such as sticky notes, paper, and whiteboards. The increasing understanding of collaboration to achieve results and the use of virtual teams demand new tools and methods for managing projects.

    Today, if your project result is a software application, the methodology of choice is agile. Agile is a widely adopted method used for many years now. It applies incremental iterations in a flexible and interactive manner with the end customer to deliver over several releases a solution or application that meets customer requirements. Agile development emphasizes collaboration and a non-hierarchical management structure between developers, product managers, and customers.

    Until a few years ago small businesses and organizations would not have the budget or inclination to purchase information technology systems and tools for exclusive use in managing projects. The capital costs, investment in training and maintenance costs were factors that prevented their widespread use.

    But things began to change when cloud-based solutions and tools for project management lowered the entry costs and training requirements, providing anywhere, anytime access with zero maintenance costs. You don’t have to develop and purchase IT infrastructure. The user interface and procedures are designed to be easy to learn and intuitive for any individual with a basic understanding of personal computers. Those are the prime reasons why more and more businesses and organizations are opting for solutions based in the cloud.

    If you are tasked with developing and managing software application projects here are four examples of cloud-based tools for managing projects.

    1. Jira

    Developed by Atlassian, it was initially created and marketed as an issue tracking tool. Today it goes beyond that and it’s one of the most popular tools for managing agile software development projects and encouraging collaboration between teams and individuals. It can be customized to a particular project or work culture and has over 25,000 customers around the world including some of the largest corporations such as Walmart. It provides functions for managing projects and tracking bugs, issues, and tasks throughout the full agile development life-cycle.

    2. Asana

    Asana is advertised as a work tracking tool with agile project management features. Used mostly for web and mobile applications development, it started as an internal tool developed at Facebook for improving the productivity of its employees. It has functions that allow users to manage tasks and projects online without the need of external communications such as e-mail. Teams create workspaces and those workspaces can have projects and projects can have tasks. To each task, users can add comments, notes, and tags that allow all team members and managers to instantly know task status and issues. Followers of a task can get updates on their workspace inbox.

    3. Basecamp

    This is the calmer, saner and better-organized way to communicate and manage projects enterprise-wide according to Basecamp marketing. It has a reputation as a user-friendly tool requiring little training on how to use most of its features such as sharing ideas, getting status reports on your e-mail account, finding and recovering files easily and managing user access. It’s lacking in time management and analytical tools.

    4. Trello

    By now you have realized that collaboration is at the heart of the agile way of doing things. Trello is for many the tool of choice in this regard. Managers can organize projects into boards and in a glance know what’s being worked on who is doing it. It also shows where a task is in the process workflow. It has a beautiful graphical interface for creating and organizing the boards, lists, and cards that are at the heart of Trello’s organizational capabilities.

    5. Pivotal

    Pivotal Tracker breaks your project into manageable chunks that you can prioritize, organize, and collaborate. Agile tools such as backlogs and user stories are explicitly supported. Project managers and team members can quickly find out on status, task responsibilities and what’s next.

    6. Wrike

    Another online tool for enabling users to manage workflows and schedules while collaborating with one another. Multilingual project teams will be pleased to know that it supports Japanese, English, Spanish, French, Portuguese, German, Russian and Italian. A free version with limited features is available with task creation, task assignment and task status markings for a basic but still powerful workflow management tool.

  • agile development

    How to write effective user stories in agile development?

    Writing Effective User Stories for Agile Development

    The software world has been changing rapidly, and a new approach to engineering is at the heart of these changes. By embracing self-organizing teams, flexibility and iterative development, agile development methodologies have revolutionized the world of software engineering. Traditional software engineering used the waterfall method, in which each step of the software engineering process was completed before moving on to the next step. This, however, tends to create bloated software that lags behind the needs of the users. Agile developments methodologies seek to address these inefficiencies by running through all the stages of agile development in short iterations, called sprints. At the heart of these sprints are user stories, which are the ideas your engineering teams will put into action.

    User Stories
    User stories approach software problems from the perspective of the user, placing developers in the shoes of their customers. These replace traditional software specifications, which outline some kind of functionality expected of the software. Each user story consists of a way in which a user would hope to interact with the application. For example, a user might wish to visit the website, log in to their account, and check the remaining balance from a gift card. This user story is written out by the team, and functionality is designed around it. In this way, engineers and designers are able to empathize with users, allowing them to build their product to meet their needs more effectively.

    However, writing quality user stories can be challenging. Engineers and designers have a nuanced understanding of their product, and may not easily place themselves in the shoes of an individual trying the product for the first time. Furthermore, stories can be vague or even fail to reflect the needs of their actual user base, and this can lead to products that simply don’t do what the customer needs. Developing best practices around writing and managing your user stories will help your teams efforts stay aligned to the needs of your customers.

    Writing Quality User Stories

    There is no silver bullet for writing good user stories for agile development, but incorporating best practices will increase the overall quality of the stories your teams come up with. Ensure that writing these stories is a collaborative process. Empathizing with your user base will be easier for teams than individuals, who only bring a single perspective to the process. Stories should be as concise as possible. Using a simple template for stories will help developers keep them from becoming overly verbose or too complex. It is also important that these user stories remain visible and accessible to the team at all times, so they can remember the goals they’re working towards.

    There are pitfalls for teams to avoid as well. Often, user stories aren’t refined until they’re testable, which keeps them from being resolved. Ensure that all stories your teams work on meet certain criteria before they’re released. Remember that user stories can’t define all possible requirements, and ensure that teams don’t get locked into thinking about their product solely in those terms. It is also important for executives and product managers to ensure that the real-world needs of the targeted users are being met in the stories. Participation by all stakeholders in product development can be the difference between the success and failure of that product, and it is the job of management to ensure that participation takes place.

    Agile development incorporates user stories because it allows for more flexibility than traditional specifications. They also force developers and designers to see the product from the perspective of the end user, which leads to a more useful and better-received product for your client at the end of the day. By building best practices around user stories into your teams’ agile development process, the quality of your teams’ output and the suitability of their software to its real world applications will increase dramatically.

    Request for agile development quotes

  • Methodology for Project Management

    How to choose the right methodology for project management?

    Choosing the right methodology for project management

    In the world of project management, the methodology for project management you use to develop the product is an extremely important decision. It will affect the entire process and can make or break the success of a project, which is why knowing the specifics about the these methods is necessary.


    The waterfall methodology for project management is a more traditional route and is very common across the software industry. It consists of a linear sequence of stages during which one aspect of the project is completed before moving on to the next, which has both advantages and disadvantages. These stages are Requirements, Design, Implementation, Test, Installation and Maintenance.

    Waterfall is useful when all of the requirements and deliverable for the project are known upfront. This methods linear nature makes it structured and inflexible. Structure is provided, making milestones easily understood. Quality is emphasized over costs and time. If you know for a fact that specifications are not going to change, or the technology being used is well understood, then using this methodology for project management may be a good choice. Example situations could be creating new versions of existing products or porting a product to a new platform. In addition, if your team is more familiar with Waterfall than Agile methodologies it is possible that training the team in something such as Scrum is not worth it.

    On the other hand, uncertainties in the project are a sign that Agile is a better fit. Due to the fact that the project development is done in stages, going back to a previous stage once finished is impossible. This gives little opportunity for the client to preview the system and makes deliverable pretty much set in stone for each phase. Also practically speaking, since implementation is done all at once, integration of modules or components is also done as one big bang at the end.


    In direct contrast with the Waterfall methodology, Agile is a much more dynamic project management style which takes into account the iterative nature of software. It emphasizes communication, collaboration, flexibility and a working product over documentation. This makes Agile a good fit for projects with co-located teams, less rigid constraints and a schedule that is not finalized.


    Scrum is a very well-known and common Agile methodology for project management with a high focus on communication and accountability. It uses a technique called Sprints which are two to six week periods during which a specific set of high priority tasks are completed. Tools such as burn down charts and scrum boards are used to track progress, and meetings are an integral part of the process. These meetings and tools are meant to increase collaboration and ensure that necessary functionality is being implemented. Additionally, a retrospective meeting is also held after every Sprint so that issues in the process can be addressed and improved upon for the next sprint.

    If quick iteration and responding to changes is important for your project, then Scrum is a good project development methodology to use. There should be a stable product at the end of each Sprint, with business needs always prioritized. In addition, Scrum team members often work on many tasks without specializing in one role. It is good to take your teams skill sets into consideration when deciding on a management methodology.

    Scrum is not all sunshine and rainbows however. Customer interaction is a valuable part of Scrum, so a customer that is unclear about what is needed will make implementing this methodology difficult. Also, as mentioned earlier, documentation is difficult due to the ever changing state of the project. It quickly becomes obsolete, along with some of the work that has already been completed in previous sprints.

    In conclusion, two common methodologies for project management are Waterfall and Agile. They each take very different approaches. Waterfall is a linear sequence that is structured and relatively easy to understand. It defines a strict set of requirements up front at the cost of flexibility. Agile is a more iterative approach that prioritizes communication and embraces the changing quality of most projects.

    Select right methodology for project management

  • Agile Scrum Development

    How to use Agile & Scrum to develop software efficiently?

    Development of computer technology and its advancement is the best event that ever happened to our society. It becomes useful and functions with the use of computer software and also with small devices. Life has eventually become easier and better. Appropriate software should be developed for best results. The software is a program that is run on a computer. It instructs the computer to perform specific tasks. This article will give you an insight of how to carry out the activity by the use of Agile & Scrum.


    Agile development refers to classifying procedures that are depending on their iterative growth to enhance software development. Agile development processes should be within the set Manifesto. The solutions and necessities develop if the self-organizing team collaborate with the cross functional team. The methods advocate for a management process that aid in the following;
    • Frequent examination and adaptation.
    • A qualified and well-supported teamwork by the leaders.
    • Accountability and self-planning.
    • Best engineering practices with the aim of delivering quality software.
    • A business model capable of fulfilling the customers’ needs and the goals of the organization.


    It is a set procedure that is used in the development of software. The framework involves a lightweight process that is used in development. A particular set of tasks is done as directed to have consistency with the framework. Development cycles known as Sprints are required in the context process while pair programming requires XP framework. The process involves little work. It saves a lot of time.

    Specific notions and tasks such as time boxes, responsibility, and artifacts differentiate it from other procedures. Complicated software and product growth use it for management by practicing increment and iteration. Time is saved, and productivity is increased remarkably. Organizations can smoothly adjust to the ever changing demands. This creates a product that helps in accomplishing the actual business goals.

    Advantages to the firm
    • Deliverables increase in quality.
    • Adapt well to change.
    • Estimates provided are better and less time is used to create them.
    • More control of the project program and state.

    You must comprehend the following significant terms used for you to understand how to develop software efficiently;
    1. Team.
    This consists of database people, developers, product owner, support people, master, and a tester. They work together relatively and at intervals to create and apply the features.

    2. Sprint.
    The duration in which the work should be completed and presented for review or deployment is called Sprint. It lies between 2-4 weeks in most cases.

    3. Product Owner.
    The primary stakeholder of the developed application is the product owner. He or she is responsible for customer clarification. The team should be able to access the product owner whenever they need him.

    4. Master.
    The master coordinates the team and ensures that they produce and progress efficiently.

    5. User Story.
    The necessities implemented are called user story. They appear in the form of a short paragraph.

    6. Epics.
    The unspecified user stories reserved for the future are called Epics.

    7. Product Backlog.
    User stories get stored in a place called Product Backlog that is managed by the owner.

    8. Sprint Backlog.
    All the collected user stories that are worked on by the team at a particular sprint are known as Sprint Backlog.

    9. Story Points.
    Story points quantify and show the complication in the user story. The complexity gets presented as small, medium, or high.

    10. Burn Down Chart.
    It tracks the everyday work of the team to determine whether the progress towards completion of the user stories is achievable within a particular sprint.

    11. Velocity.
    The total of all story points stored by the team within a particular sprint is known as speed. It helps in judging the team’s efforts.


    Software development is as follows:

    a) Plan for a meeting
    The team gathers for a meeting. The product owner chooses a user story according to priority. They size the story based on its complexity after discussing it.

    b) Implementing of Sprint Tasks
    The team works on the user story until it is finished.

    c) Daily Meetings.
    The team should meet daily for at least 15 minutes to articulate on what each member did yesterday, plans for today, and any barriers available.

    d) Meeting to Review.
    The team member should come together to demonstrate the applied user stories to the owner after every sprint.

    e) Retrospective Meeting.
    The meeting is held by the team after every sprint to brainstorm on what went on smoothly, the rough times, learned lessons, and actions to take on specific items.


    The above methodologies may be difficult for some people at the beginning. Your application will start growing if you have enough practice and sufficient resources. Allocating the team members for self-study and presenting their findings every day offers an excellent platform for knowledge and skill enhancement on this development.

  • Agile Software Development

    Why is agile software development important?

    Why is agile software development important

    Agile software development solutions evolve through self-organized teams. It encourages fast and flexible changes through adaptive planning. While other methodologies have their proponents, there’s little doubt in any Agile software development shop that this method works well. To understand why agile project management is important, you only need to look at the rewards it provides.

    Scrum and Sprints

    In Agile, a sprint is a fixed time period where certain goals are met. At each sprint, your team and often the client will meet to discuss what’s to be accomplished and what criteria need to be observed.

    Scrum agile methodology is the repeatable framework. A scrum team consists of cross-functional members, a Scrum Master or project leader, and a product owner, or person representing the client or stakeholder. All work together on sprint completion. Scrum principles allow your team to work on various features in shorter sprints as requirements emerge, rather than following a sequential process that can easily be derailed if long phases of work have to be rolled back.

    The Benefits of Agile

    Since agile software development is iterative in nature, features are delivered in increments, so that testing, approval, and revenue can be realized early and continue with project development.

    One of the key benefits of agile software development comes from integration of testing throughout the development cycle. Regular, specific testing during all phases ensures that quality issues are more likely to be identified, and allows time for corrections. Meeting quality standards at each increment also ensures that the finished product will meet your customer’s requirements.

    Agile principles encourage user involvement and a cooperative approach. This allows stakeholders to monitor progress and examine the product for assurances that your are satisfying expectations.

    Lower Risk
    Incremental testing, user involvement, and releases make it easier to identify issues. Any changes can be captured and dealt with at any early stage of development. This drastically lowers the risk that the final product will not meet requirements.

    In many other approaches to development, significant changes can result in overhauls of planning, funding, and specifications that delay progress or inflate costs. With agile project management, change is an expected part of the process. Requirements evolve as the product evolves. Transparency and incremental progress allow your clients to make timely decisions.

    Cost Effective
    Establishing adaptive policies within fixed time frames make it easier to stand by fixed budgets. Variation comes iteratively in the evolution of the product, and does not impact cost. The agile philosophy of early release of features also means the competitive edge of faster time-to-market.

    Customer Engagement
    Direct involvement of stakeholders or their representatives, along with the level of visibility into progress and response to change, creates a better relationship between your business and the client. This leads to greater customer engagement with the process and greater likelihood they will consult you on future projects.

    Better Environment
    Agile software development methods provide a better experience for software developers. Rather than dwelling on specifications and long-term planning, teams get together regularly to discuss issues and progress with each sprint. The team can make decisions and explore options on their own. This provides you more motivated and focused teams.


    Kanban agile methodology is more loosely structured than Scrum. It works as a model introducing change as incremental improvements. In Kanban, work is planned on a visual board as states which every work item must go through. This generally includes In Progress, Testing, Ready for Release, and Released columns. Variation may be allowed through horizontal pipes, or “swim lanes”, but Kanban is focused primarily on managing work in progress.

    Scrum vs Kanban

    You won’t find it difficult to introduce Kanban to any Agile project. Scrum agile methodology offers a tighter structure for more focus, control, and direction where these things may be lacking and development is off track. But if there are already efficient, productive processes in place, Kanban agile methodology can improve your process over time without requiring any radical change.

    Some critics of agile point out that it is less predictable, and teams and product owners don’t always mesh productively. Collaboration is essential to success. Where that’s the case, the possible benefits of agile software development make it an important strategy you should consider.

    Contact for Agile Software Development

  • Agile development OTS Solutions

    Making agile development more predictive and less risky

    Healthy sales often depend on being first to market. Innovation and rapid deployment are important to tech and startup companies. This is why Agile software development methods are so popular. It can deliver software quickly while allowing for flexibility, feedback, and risk and change management.

    Making development predictable

    But fast turnaround is only the first phase. Speed has to be balanced against performance, reliability, and costs. Your product has to be sustainable in the long term. It has to integrate with existing systems, often across a variety of platforms.
    What this all boils down to is predictability – software development that can be consistently delivered on time and trusted to meet requirements, pass quality assurance testing, and bring value to partners and customers.

    The level of uncertainty

    Many companies adopt Agile or hybrid Waterfall approaches because they’ve seen and heard that it works for today’s development environments. But because it’s flexible, small and large companies may not be using it the same way or for the same reasons.
    These methods require defining and identifying requirements and risks, planning, estimation, and incremental development through Agile timeboxes. But discovering and designing as you go along is often too big and complex, depending on both the size of the project and the size of the team. Too many people. too many components, and undisciplined management can cause things to be overlooked. Changing requirements and priorities can make an iterative process essentially useless.

    Enterprise Agile software development depends on control and visibility to reduce uncertainty. Using velocity, story points, and release reporting help create early confidence on progress and more accurate timelines. Relying on the methodology itself to reduce time and costs is a fallacy.

    Redefining the process

    The software development process should involve doing enough investigation upfront to create more reliable plans and estimates. This in turn means more faith in commitments to meeting requirements while assuring higher levels of quality. Using Agile is not about responding to changes in plans, but sticking to a plan that can incorporate change. A better plan is more likely to accommodate change without disrupting the project.

    Agile software development can reduce the “cone of uncertainty” by delivering smaller, working pieces of code, and correlating the progress with project data through velocity. As the project moves forward, predictability comes with increasing ability to deliver on estimates, and the experience translates to future projects. There is still going to be a need for changes and priorities, but these can be viewed in terms of the incremental rather than the iterative process.

    Small projects may be better realized by iteration and fast, adaptive change, depending on the team and the requirements. But larger, more complex problems will have to involve predictability in obtaining results, and that’s gained from making everything align with an incremental, controlled process. Big projects may be slowed not by requirements, risks, or even the size of the team, but by bad planning.

    Want to learn more on techniques of agile development – learn here for comparison on scrum and kanban.