{"id":6018,"date":"2024-02-19T15:32:00","date_gmt":"2024-02-19T20:32:00","guid":{"rendered":"https:\/\/canny.io\/blog\/?p=6018"},"modified":"2024-03-20T13:49:18","modified_gmt":"2024-03-20T17:49:18","slug":"what-is-software-development-life-cycle","status":"publish","type":"post","link":"https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/","title":{"rendered":"What is the software development life&nbsp;cycle?"},"content":{"rendered":"\n<p>The software development life cycle (SDLC) is a process developers use to create software. This process helps align teams, avoid extra costs, and stay on&nbsp;schedule.<\/p>\n\n\n\n<p>The SDLC methodology first appeared in the 1960s. Back then, making software was getting very complicated, and people needed a better way to manage it. They came up with the SDLC to help. SDLC began as the <a href=\"https:\/\/www.techtarget.com\/searchsoftwarequality\/definition\/systems-development-life-cycle\" target=\"_blank\" rel=\"noreferrer noopener\">&#8220;systems development&nbsp;lifecycle<\/a>.&#8221;<\/p>\n\n\n\n<p>Over time, the way people use the SDLC has changed. It began with a simple method called Waterfall, where one step follows another in order. Technology and needs have changed. As a result, more flexible methods like Agile and DevOps came&nbsp;about.<\/p>\n\n\n\n<p>Understanding the SDLC is really useful for everyone involved in making software. It&#8217;s not just the people who write the code. It helps everyone turn an idea into a usable software&nbsp;application.<\/p>\n\n\n\n<p>So, what is software development life cycle? In this guide, we&#8217;ll break down the process and various methods of using it. We&#8217;ll also show how to put the SDLC into action and handle any problems that might come&nbsp;up.<\/p>\n\n\n\n<p>Let&#8217;s start with the core phases of the software development life&nbsp;cycle.<\/p>\n\n\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Core phases of SDLC<\/strong><\/h2>\n\n\n\n<p>The software development process consists of several key&nbsp;phases.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img decoding=\"async\" width=\"1024\" height=\"1024\" data-src=\"https:\/\/canny.io\/blog\/wp-content\/uploads\/2024\/03\/SDLC-process.webp\" alt=\"SDLC-process\" class=\"wp-image-6026 lazyload\" style=\"--smush-placeholder-width: 1024px; --smush-placeholder-aspect-ratio: 1024\/1024;width:650px\" data-srcset=\"https:\/\/canny.io\/blog\/wp-content\/uploads\/2024\/03\/SDLC-process.webp 1024w, https:\/\/canny.io\/blog\/wp-content\/uploads\/2024\/03\/SDLC-process-150x150.webp 150w, https:\/\/canny.io\/blog\/wp-content\/uploads\/2024\/03\/SDLC-process-768x768.webp 768w\" data-sizes=\"(max-width: 1024px) 100vw, 1024px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" \/><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\"><strong>Planning<\/strong><\/h3>\n\n\n\n<p>In this planning stage, a project team identifies the need for new software. Then, they outline a plan for the development team to create it. The plan&nbsp;includes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Setting&nbsp;goals<\/li>\n\n\n\n<li>Defining&nbsp;scope<\/li>\n\n\n\n<li>Allocating&nbsp;resources<\/li>\n\n\n\n<li>Project&nbsp;requirements<\/li>\n\n\n\n<li>Software requirement&nbsp;specification<\/li>\n<\/ul>\n\n\n\n<p><strong>Example<\/strong><\/p>\n\n\n\n<p>A company realizes its customer service team needs a more efficient way to track customer queries. They plan to develop a ticketing system that organizes and prioritizes customer support&nbsp;requests.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Design<\/strong><\/h3>\n\n\n\n<p>It&#8217;s time for the software design, architecture, and user interface. This phase turns the plan into a blueprint. It details how the software will work and what it will look&nbsp;like.<\/p>\n\n\n\n<p><strong>Example<\/strong><\/p>\n\n\n\n<p>The team designs the ticketing system with features&nbsp;like:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Ticket status&nbsp;updates<\/li>\n\n\n\n<li>Categorization of query&nbsp;types<\/li>\n\n\n\n<li>Dashboard for tracking query resolution&nbsp;times<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Development<\/strong><\/h3>\n\n\n\n<p>In this phase, programmers write the code based on the system design documents. This is where the software starts to take shape and become&nbsp;functional.<\/p>\n\n\n\n<p><strong>Example<\/strong><\/p>\n\n\n\n<p>Programmers write the code for the ticketing system. They create functionalities based on the design&nbsp;document.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Testing<\/strong><\/h3>\n\n\n\n<p>The software development team rigorously tests the tool to find and fix any errors or bugs. This ensures the software is reliable and performs as intended. Sometimes, there are dedicated QA (quality assurance) testers. Other times, other engineers do software testing. Sometimes, the company finds <a href=\"https:\/\/canny.io\/blog\/finding-beta-testers-saas\/\">beta testers<\/a> willing to try the product before it&#8217;s fully&nbsp;ready.<\/p>\n\n\n\n<p>This stage is super helpful for <a href=\"https:\/\/canny.io\/features\/collect-feedback\">gathering feedback<\/a> and refining the&nbsp;product.<\/p>\n\n\n\n<p><strong>Example<\/strong><\/p>\n\n\n\n<p>Before launch, the system is tested for bugs. For example, they might find that some tickets\u2019 status doesn\u2019t update correctly and fix this&nbsp;issue.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Deployment<\/strong><\/h3>\n\n\n\n<p>The team releases the software once testing is complete and the software is ready. This might involve installing it on users&#8217; devices or launching it on&nbsp;servers.<\/p>\n\n\n\n<p><strong>Example<\/strong><\/p>\n\n\n\n<p>The ticketing system goes live, and the customer support team starts using&nbsp;it.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Maintenance<\/strong><\/h3>\n\n\n\n<p>The final phase updates the software to add new features or fix issues. Once again, <a href=\"https:\/\/canny.io\/blog\/feedback-programs\/\">user feedback<\/a> helps here. This ongoing process ensures the software remains valuable and efficient over&nbsp;time.<\/p>\n\n\n\n<p><strong>Example<\/strong><\/p>\n\n\n\n<p>Over time, <a href=\"https:\/\/canny.io\/blog\/why-feedback-is-important\/\">feedback<\/a> from the customer service team leads to updates. The team adds a feature to assign tickets to specific team members&nbsp;automatically.<\/p>\n\n\n\n<p>Now, let&#8217;s explore various models and methodologies your team can&nbsp;use.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>SDLC models and methodologies<\/strong><\/h2>\n\n\n\n<p>There are lots of different ways to approach the SDLC process. Here are the most common&nbsp;ones.<\/p>\n\n\n\n<p><strong>Waterfall<\/strong><\/p>\n\n\n\n<p><a href=\"https:\/\/www.forbes.com\/advisor\/business\/agile-vs-waterfall-methodology\/\" target=\"_blank\" rel=\"noreferrer noopener\">The Waterfall model<\/a> follows a linear, sequential approach. The team divides a software project into phases. Each phase must be completed before moving to the&nbsp;next.<\/p>\n\n\n\n<p><strong>Example<\/strong>: a government agency is developing a standardized payroll system. Multiple departments will use it. This industry has strict regulations and need a clear audit trail. They choose the Waterfall model to complete and document each phase before moving on to the&nbsp;next.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Agile<\/strong><\/h3>\n\n\n\n<p><a href=\"https:\/\/canny.io\/blog\/what-is-agile-sprint-planning\/\">Agile<\/a> software development focuses on customer feedback and rapid iterative delivery. It&#8217;s highly flexible and promotes adaptive planning. Software startups often use Agile to rapidly iterate based on user&nbsp;feedback.<\/p>\n\n\n\n<p><strong>Example<\/strong>: a mobile app startup is creating a fitness tracking app. They use the Agile methodology to quickly release a basic version of the app. Then, they iterate on it with bi-weekly sprints based on user feedback and usage&nbsp;data.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Spiral<\/strong><\/h3>\n\n\n\n<p><a href=\"https:\/\/www.geeksforgeeks.org\/software-engineering-spiral-model\/\" target=\"_blank\" rel=\"noreferrer noopener\">Spiral<\/a> combines iterative software engineering with risk management. It evaluates risks at each phase. Critical system software companies often use Spiral to minimize potential&nbsp;risks.<\/p>\n\n\n\n<p><strong>Example<\/strong>: a financial services firm is building a new trading platform. They must adhere to various compliance standards. They choose the Spiral model to incrementally develop the software. They also continuously evaluate and mitigate risks associated with financial transactions and data&nbsp;security.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>DevOps\/DevSecOps<\/strong><\/h3>\n\n\n\n<p><a href=\"https:\/\/www.redhat.com\/en\/topics\/devops\/what-is-devsecops\" target=\"_blank\" rel=\"noreferrer noopener\">This model<\/a> integrates development (Dev), operations (Ops), and security (SecOps). It focuses on automation, continuous delivery, and integration. Continuous deployment environments in tech companies often choose DevOps or&nbsp;DevSecOps.<\/p>\n\n\n\n<p><strong>Example<\/strong>: an ecommerce company wants to continuously enhance their online shopping platform. They adopt DevOps to automate their development and deployment processes. They want to release frequent updates with minimal downtime. DevSecOps also helps them ensure that security is a part of the process from the&nbsp;beginning.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Iterative<\/strong><\/h3>\n\n\n\n<p><a href=\"https:\/\/www.techtarget.com\/searchsoftwarequality\/definition\/iterative-development#:~:text=Iterative%20development%20is%20a%20way,that%20build%20upon%20each%20other.\" target=\"_blank\" rel=\"noreferrer noopener\">The iterative model<\/a> develops software in increments. This incremental model helps detect and correct issues early. For example, a software developer might build a web application and add new features in each&nbsp;release.<\/p>\n\n\n\n<p><strong>Example<\/strong>: a video game development company is working on a complex game with multiple levels. They use an Iterative approach to build and release the first level of the game to testers. Then they progressively design, develop, and test subsequent levels. At the same time, they refine previous iterations based on the&nbsp;feedback.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Big Bang<\/strong><\/h3>\n\n\n\n<p><a href=\"https:\/\/www.codecademy.com\/resources\/docs\/general\/software-development-life-cycle\/big-bang-model\" target=\"_blank\" rel=\"noreferrer noopener\">This model<\/a> is quite different. It involves minimal planning, with resources thrown in all at once. This is best for small, personal projects with limited&nbsp;scope.<\/p>\n\n\n\n<p><strong>Example<\/strong>: a student is creating a personal blog website to showcase their portfolio. They decide on the Big Bang approach. They invest a limited amount of time and resources to launch the full site all at once. There\u2019s no need for iterative phases or extensive&nbsp;planning.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>V-shaped<\/strong><\/h3>\n\n\n\n<p><a href=\"https:\/\/www.baeldung.com\/cs\/v-model#:~:text=V%2Dshaped%20software%20development%20follows,thorough%20validation%20before%20moving%20forward.\" target=\"_blank\" rel=\"noreferrer noopener\">The V-shaped framework<\/a> is similar to Waterfall. However, it includes testing at each stage parallel to the development phases. Hardware development projects often require rigorous testing at each development phase. They tend to use the V-shaped&nbsp;model.<\/p>\n\n\n\n<p><strong>Example<\/strong>: an aerospace company is developing software for flight control systems. They use the V-shaped model to ensure that with each development phase, there is a corresponding testing phase. This rigorous testing is critical for the safety and reliability in high-stakes&nbsp;environments.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Prototype<\/strong><\/h3>\n\n\n\n<p><a href=\"https:\/\/www.tutorialspoint.com\/sdlc\/sdlc_software_prototyping.htm\" target=\"_blank\" rel=\"noreferrer noopener\">The prototype-focused approach<\/a> is precisely what it sounds like. The team develops a prototype before developing the entire system. Early-stage software tools demonstrate concepts or potential functionality with the help of&nbsp;prototypes.<\/p>\n\n\n\n<p><strong>Example<\/strong>: a software company is pitching an innovative project management tool to a potential client. They develop a functional prototype of the application. This allows them to demonstrate the proposed features and user interface. They also gather feedback and make improvements before developing the full&nbsp;system.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Models compared<\/h3>\n\n\n\n<p>Each of these models offers distinct advantages and challenges. Here&#8217;s how they all&nbsp;compare.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Model<\/strong><\/td><td><strong>Pros<\/strong><\/td><td><strong>Cons<\/strong><\/td><\/tr><tr><td>Waterfall<\/td><td>Simple and structured<\/td><td>Inflexible to changes<\/td><\/tr><tr><td>Agile<\/td><td>Quick adaptation, promotes user feedback<\/td><td>Can lead to scope creep<\/td><\/tr><tr><td>Spiral<\/td><td>Reduces risks, suitable for complex projects<\/td><td>Costly and time-consuming<\/td><\/tr><tr><td>DevOps\/DevSecOps<\/td><td>Enhances collaboration, accelerates delivery<\/td><td>Requires cultural shift<\/td><\/tr><tr><td>Iterative<\/td><td>Early detection of defects<\/td><td>Repetitive tasks<\/td><\/tr><tr><td>Big Bang<\/td><td>Simple to implement<\/td><td>High risk of failure<\/td><\/tr><tr><td>V-shaped<\/td><td>Clear milestones and testing stages<\/td><td>Struggles with late changes<\/td><\/tr><tr><td>Prototype<\/td><td>Allows for early user feedback<\/td><td>May overlook long-term solutions<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>How about the whole SDLC? Let&#8217;s zoom out and explore the advantages and drawbacks of this&nbsp;approach.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Pros and cons of SDLC<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Aspect<\/strong><\/td><td><strong>Pros<\/strong><\/td><td><strong>Cons<\/strong><\/td><\/tr><tr><td>Structure<\/td><td>Provides clear, structured phases for development<\/td><td>Can be rigid, making it hard to adapt to changes<\/td><\/tr><tr><td>Quality control<\/td><td>Ensures thorough testing and quality software<\/td><td>Extensive testing phases may delay delivery<\/td><\/tr><tr><td>Documentation<\/td><td>Results in well-documented processes and software<\/td><td>Extensive documentation can be time-consuming<\/td><\/tr><tr><td>Risk management<\/td><td>Identifies risks early, allowing for mitigation<\/td><td>Initial planning phase may not catch all risks<\/td><\/tr><tr><td>Feedback integration<\/td><td>Models like Agile allow for continuous feedback<\/td><td>Traditional models may limit feedback integration<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>If you feel like SDLC can still work for you, let&#8217;s explore its implementation and best&nbsp;practices.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Example: implementing SDLC<\/strong><\/h2>\n\n\n\n<p>If you&#8217;re setting up SDLC, review which of the models fits best with the rest of your business and&nbsp;objectives.<\/p>\n\n\n\n<p>Here&#8217;s an example of how you&#8217;d do that. Let&#8217;s say you&#8217;re using Agile and want to add&nbsp;SDLC.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Mapping Agile practices to the SDLC&nbsp;phases<\/li>\n\n\n\n<li>Ensuring that Agile iterations feed into the broader scope of SDLC&nbsp;milestones<\/li>\n\n\n\n<li>Use Scrum sprints to address specific development&nbsp;phases<\/li>\n\n\n\n<li>Use Kanban boards to manage ongoing tasks across the&nbsp;SDLC<\/li>\n\n\n\n<li>Make sure everyone&#8217;s aligned and understands the frameworks you&nbsp;use&nbsp;<\/li>\n\n\n\n<li>Document your processes for easy&nbsp;reference<\/li>\n\n\n\n<li>Regularly review your process and adjust when something&#8217;s not&nbsp;working<\/li>\n<\/ol>\n\n\n\n<p>Remember \u2013 there&#8217;s no perfect way to set up your development process. Most teams use a combination of different&nbsp;methodologies.<\/p>\n\n\n\n<p>There are lots of great tools that can help you get organized. <a href=\"https:\/\/www.atlassian.com\/software\/jira\" target=\"_blank\" rel=\"noreferrer noopener\">Jira (by Atlassian)<\/a> is a great project management tool, especially for developers. <a href=\"https:\/\/github.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">GitHub<\/a> is an excellent version control tool that many developers use to stay&nbsp;organized.<\/p>\n\n\n\n<p>Emerging technologies like <a href=\"https:\/\/canny.io\/blog\/top-ai-tools-product-management\/?\">AI and ML<\/a> come into play here too. They can significantly enhance SDLC by automating tasks and improving&nbsp;decision-making.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Quality assurance and risk management<\/strong><\/h2>\n\n\n\n<p>Focus on three key areas to ensure high-quality and mitigate risks with the&nbsp;SDLC.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Security practices and regulatory standards<\/strong><\/h3>\n\n\n\n<p>Implement security measures from the start. Follow standards like <a href=\"https:\/\/www.iso.org\/standard\/27001\" target=\"_blank\" rel=\"noreferrer noopener\">ISO\/IEC 27001<\/a> for information security. Adhere to regulations such as <a href=\"https:\/\/gdpr-info.eu\/\" target=\"_blank\" rel=\"noreferrer noopener\">GDPR<\/a> for data protection. This ensures software safety and&nbsp;compliance.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>KPIs and testing strategies<\/strong><\/h3>\n\n\n\n<p>Define key performance indicators (KPIs). They&#8217;ll help you measure the quality and effectiveness of your development process. Use testing strategies to catch bugs early and ensure the software meets the set KPIs. For&nbsp;example:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Unit testing<\/strong>: focuses on individual components or code to ensure they work correctly in isolation. It&#8217;s the first level of testing and helps catch bugs early in&nbsp;development.<\/li>\n\n\n\n<li><strong>Integration testing<\/strong>: after unit testing, integration testing checks how different modules or services work together. This step is crucial for identifying issues in the interaction between integrated&nbsp;components.<\/li>\n\n\n\n<li><strong>System testing<\/strong>: comprehensive testing phase where the complete and integrated software system is tested to verify that it meets specified requirements. It covers both functional and non-functional testing&nbsp;aspects.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Identifying and mitigating risks<\/strong><\/h3>\n\n\n\n<p>Early in the SDLC, identify potential risks,&nbsp;including:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Technical&nbsp;challenges<\/li>\n\n\n\n<li>Project&nbsp;delays<\/li>\n\n\n\n<li>Budget&nbsp;overruns<\/li>\n<\/ul>\n\n\n\n<p>There&#8217;s a variety of strategies you can use to mitigate&nbsp;risks:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Regular reviews<\/strong>: systematically check the progress and quality of the software development project at various&nbsp;stages.<\/li>\n\n\n\n<li><strong>Agile model<\/strong>: provides a framework for adapting to changes quickly. It promotes continuous iteration of development and&nbsp;testing.<\/li>\n\n\n\n<li><strong>Contingency planning<\/strong>: prepares you for potential risks by having backup plans and strategies in&nbsp;place.&nbsp;<\/li>\n<\/ol>\n\n\n\n<p>We recommend using a combination of all&nbsp;these.<\/p>\n\n\n\n<p>Ready to make SDLC even&nbsp;better?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Enhancing SDLC<\/strong><\/h2>\n\n\n\n<p>Here are a few extra things you can try to enhance your SDLC&nbsp;process.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img decoding=\"async\" width=\"1024\" height=\"1024\" data-src=\"https:\/\/canny.io\/blog\/wp-content\/uploads\/2024\/03\/Feedback-and-SDLC.webp\" alt=\"Feedback-and-SDLC\" class=\"wp-image-6030 lazyload\" style=\"--smush-placeholder-width: 1024px; --smush-placeholder-aspect-ratio: 1024\/1024;width:650px\" data-srcset=\"https:\/\/canny.io\/blog\/wp-content\/uploads\/2024\/03\/Feedback-and-SDLC.webp 1024w, https:\/\/canny.io\/blog\/wp-content\/uploads\/2024\/03\/Feedback-and-SDLC-150x150.webp 150w, https:\/\/canny.io\/blog\/wp-content\/uploads\/2024\/03\/Feedback-and-SDLC-768x768.webp 768w\" data-sizes=\"(max-width: 1024px) 100vw, 1024px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" \/><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\"><strong>UX design and accessibility<\/strong><\/h3>\n\n\n\n<p>Focus on creating <a href=\"https:\/\/canny.io\/blog\/designer-founder-tips\/\">user-friendly and accessible interfaces<\/a> from the start. This ensures the software meets the needs of all users, including those with&nbsp;disabilities.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Customer feedback and analytics<\/strong><\/h3>\n\n\n\n<p>Use <a href=\"https:\/\/canny.io\/blog\/customer-feedback-in-product-development\/\">customer feedback<\/a> and data analytics to guide development decisions. This helps to refine features and functionalities based on real user experience. <a href=\"https:\/\/canny.io\/register\">A tool like Canny<\/a> can help you collect, organize, and action user&nbsp;feedback.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<div style=\"max-width: 650px; margin: 0 auto;\"> <!--HubSpot Call-to-Action Code --> <span class=\"hs-cta-wrapper\" id=\"hs-cta-wrapper-e1d55d08-a2cf-44a3-a9a0-f3ca5ff21dfa\"> <span class=\"hs-cta-node hs-cta-e1d55d08-a2cf-44a3-a9a0-f3ca5ff21dfa\" id=\"hs-cta-e1d55d08-a2cf-44a3-a9a0-f3ca5ff21dfa\"> <!--[if lte IE 8]><div id=\"hs-cta-ie-element\"><\/div><![endif]--> <a href=\"https:\/\/cta-redirect.hubspot.com\/cta\/redirect\/5705808\/e1d55d08-a2cf-44a3-a9a0-f3ca5ff21dfa\" target=\"_blank\" rel=\"noopener\"> <img decoding=\"async\" class=\"hs-cta-img lazyload\" id=\"hs-cta-img-e1d55d08-a2cf-44a3-a9a0-f3ca5ff21dfa\" style=\"border-width:0px;\" data-src=\"https:\/\/no-cache.hubspot.com\/cta\/default\/5705808\/e1d55d08-a2cf-44a3-a9a0-f3ca5ff21dfa.png\" alt=\"New call-to-action\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" \/> <\/a> <\/span> <script charset=\"utf-8\" src=\"https:\/\/js.hscta.net\/cta\/current.js\"><\/script> <script type=\"text\/javascript\"> hbspt.cta.load(5705808, 'e1d55d08-a2cf-44a3-a9a0-f3ca5ff21dfa', {\"useNewLoader\":\"true\",\"region\":\"na1\"}); <\/script> <\/span> <!-- end HubSpot Call-to-Action Code --> <\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Organizational culture<\/strong><\/h3>\n\n\n\n<p>Choosing a SDLC model profoundly impacts organizational culture. Agile SDLC methodologies, for instance, nurture a flexible environment. Team members need to swiftly adapt to changes. This creates a dynamic workplace where collaboration and continuous improvement are essential. It also encourages open communication and iterative progress. This cultural shift toward agility can lead&nbsp;to:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>More engaged&nbsp;teams<\/li>\n\n\n\n<li>Faster&nbsp;problem-solving<\/li>\n\n\n\n<li>More innovative approach to product&nbsp;development<\/li>\n<\/ul>\n\n\n\n<p>&nbsp;Any change is difficult, so make sure you walk your team through this. You&nbsp;can:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Provide learning&nbsp;resources<\/li>\n\n\n\n<li>Break down implementation&nbsp;steps<\/li>\n\n\n\n<li>Encourage&nbsp;questions<\/li>\n\n\n\n<li>Answer questions&nbsp;fully<\/li>\n\n\n\n<li>Highlight the&nbsp;benefits<\/li>\n\n\n\n<li>Acknowledge the&nbsp;challenges<\/li>\n\n\n\n<li>Explain how you&#8217;ll overcome&nbsp;them<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Customization of SDLC<\/strong><\/h3>\n\n\n\n<p>Tailor the SDLC phases to fit the project&#8217;s specific needs. This could mean combining elements from different methodologies. That way, you can create a hybrid approach that maximizes efficiency and effectiveness in your unique&nbsp;context.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Conclusion: looking forward<\/strong><\/h2>\n\n\n\n<p>SDLC methodologies will increasingly focus on adaptive, user-centered approaches. SDLC will integrate technologies like AI and blockchain for innovation and&nbsp;efficiency.&nbsp;<\/p>\n\n\n\n<p><a href=\"https:\/\/www.itworldcanada.com\/article\/predictions-2024-infrastructure-software-development-enterprise-software\/554323#:~:text=The%20Predictions%202024%3A%20Software%20Development,embedding%20them%20into%20their%20SDLC.\" target=\"_blank\" rel=\"noreferrer noopener\">Experts foresee<\/a> an emphasis on DevSecOps, which will enhance application security. Practices supporting remote collaboration will become more&nbsp;prevalent.<\/p>\n\n\n\n<p>&nbsp;If you walk away with only one thing, let it be this. Tailoring SDLC to project needs is the key. This will help you keep your development processes agile and aligned with everything else. You&#8217;re more likely to build high-quality software when everything works&nbsp;together.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The software development life cycle (SDLC) is a process developers use to create software. It helps align teams, avoid extra costs, and stay on schedule. Let&#8217;s explore it.<\/p>\n","protected":false},"author":26,"featured_media":6043,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"content-type":"","_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"categories":[366],"tags":[741,359,399,78,724,328,601,729,730,373,731,738,739,439,725,742,721,310,736,365,737,720,727,726,503,714,715,716,717,728,719,723,585,83,740,733,734,360],"class_list":["post-6018","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-glossary","tag-accessibility","tag-agile","tag-customer-analysis","tag-customer-feedback","tag-deployment","tag-design","tag-development","tag-devops","tag-devsecops","tag-glossary","tag-iterative","tag-key-performance-indicatiors","tag-key-performance-indicator","tag-kpi","tag-maintenance","tag-organizational-culture","tag-planning","tag-prototype","tag-qa","tag-quality-assurance","tag-risk-management","tag-sdlc","tag-sdlc-methodologies","tag-sdlc-models","tag-software-development","tag-software-development-life-cycle","tag-software-development-lifecycle","tag-software-life-cycle","tag-software-lifecycle","tag-spiral","tag-systems-development-lifecycle-2","tag-test","tag-testing","tag-ux","tag-ux-design","tag-v-shaped","tag-vshaped","tag-waterfall"],"aioseo_notices":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>What is the software development life cycle? - Canny Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What is the software development life cycle? - Canny Blog\" \/>\n<meta property=\"og:description\" content=\"The software development life cycle (SDLC) is a process developers use to create software. It helps align teams, avoid extra costs, and stay on schedule. Let&#039;s explore it.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/\" \/>\n<meta property=\"og:site_name\" content=\"Canny Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/cannyio\/\" \/>\n<meta property=\"article:author\" content=\"\/mvasserman\" \/>\n<meta property=\"article:published_time\" content=\"2024-02-19T20:32:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-20T17:49:18+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/canny.io\/blog\/wp-content\/uploads\/2024\/02\/software-development-lifecycle.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1520\" \/>\n\t<meta property=\"og:image:height\" content=\"800\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Maria Vasserman\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@cannyhq\" \/>\n<meta name=\"twitter:site\" content=\"@cannyHQ\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Maria Vasserman\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"11 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/what-is-software-development-life-cycle\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/what-is-software-development-life-cycle\\\/\"},\"author\":{\"name\":\"Maria Vasserman\",\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/#\\\/schema\\\/person\\\/0cf992c2698be81bcc6e05c04209af49\"},\"headline\":\"What is the software development life&nbsp;cycle?\",\"datePublished\":\"2024-02-19T20:32:00+00:00\",\"dateModified\":\"2024-03-20T17:49:18+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/what-is-software-development-life-cycle\\\/\"},\"wordCount\":2191,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/what-is-software-development-life-cycle\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/canny.io\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/02\\\/software-development-lifecycle.webp\",\"keywords\":[\"accessibility\",\"agile\",\"customer analysis\",\"customer feedback\",\"deployment\",\"design\",\"Development\",\"devops\",\"devsecops\",\"glossary\",\"iterative\",\"key performance indicatiors\",\"key performance indicator\",\"kpi\",\"maintenance\",\"organizational culture\",\"planning\",\"prototype\",\"qa\",\"quality assurance\",\"risk management\",\"SDLC\",\"SDLC methodologies\",\"SDLC models\",\"software development\",\"software development life cycle\",\"software development lifecycle\",\"software life cycle\",\"software lifecycle\",\"spiral\",\"systems development lifecycle\",\"test\",\"testing\",\"ux\",\"ux design\",\"v-shaped\",\"vshaped\",\"waterfall\"],\"articleSection\":[\"Product Management Glossary\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/canny.io\\\/blog\\\/what-is-software-development-life-cycle\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/what-is-software-development-life-cycle\\\/\",\"url\":\"https:\\\/\\\/canny.io\\\/blog\\\/what-is-software-development-life-cycle\\\/\",\"name\":\"What is the software development life cycle? - Canny Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/what-is-software-development-life-cycle\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/what-is-software-development-life-cycle\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/canny.io\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/02\\\/software-development-lifecycle.webp\",\"datePublished\":\"2024-02-19T20:32:00+00:00\",\"dateModified\":\"2024-03-20T17:49:18+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/what-is-software-development-life-cycle\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/canny.io\\\/blog\\\/what-is-software-development-life-cycle\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/what-is-software-development-life-cycle\\\/#primaryimage\",\"url\":\"https:\\\/\\\/canny.io\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/02\\\/software-development-lifecycle.webp\",\"contentUrl\":\"https:\\\/\\\/canny.io\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/02\\\/software-development-lifecycle.webp\",\"width\":1520,\"height\":800,\"caption\":\"software-development-lifecycle\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/what-is-software-development-life-cycle\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/canny.io\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"What is the software development life&nbsp;cycle?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/canny.io\\\/blog\\\/\",\"name\":\"Canny Blog\",\"description\":\"How to build a more informed product\",\"publisher\":{\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/canny.io\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/#organization\",\"name\":\"Canny Blog\",\"url\":\"https:\\\/\\\/canny.io\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/canny.io\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/03\\\/canny-wordmark-1.png\",\"contentUrl\":\"https:\\\/\\\/canny.io\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/03\\\/canny-wordmark-1.png\",\"width\":733,\"height\":201,\"caption\":\"Canny Blog\"},\"image\":{\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/cannyio\\\/\",\"https:\\\/\\\/x.com\\\/cannyHQ\",\"https:\\\/\\\/www.instagram.com\\\/carryoncode\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/#\\\/schema\\\/person\\\/0cf992c2698be81bcc6e05c04209af49\",\"name\":\"Maria Vasserman\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/canny.io\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/Maria-Vasserman-Headshot-150x150.jpg\",\"url\":\"https:\\\/\\\/canny.io\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/Maria-Vasserman-Headshot-150x150.jpg\",\"contentUrl\":\"https:\\\/\\\/canny.io\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/Maria-Vasserman-Headshot-150x150.jpg\",\"caption\":\"Maria Vasserman\"},\"description\":\"Maria loves all things creative \u2013 writing, photography, movies and beyond \ud83c\udfa5 When she's not creating content to tell the world about Canny, she's either photographing a wedding, jumping at a rock concert, camping, travelling, snowboarding, or walking her dog \ud83d\udc15\u200d\ud83e\uddba\",\"sameAs\":[\"\\\/mvasserman\",\"\\\/mariavasserman\\\/\",\"https:\\\/\\\/x.com\\\/cannyhq\"],\"url\":\"https:\\\/\\\/canny.io\\\/blog\\\/author\\\/maria\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"What is the software development life cycle? - Canny Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/","og_locale":"en_US","og_type":"article","og_title":"What is the software development life cycle? - Canny Blog","og_description":"The software development life cycle (SDLC) is a process developers use to create software. It helps align teams, avoid extra costs, and stay on schedule. Let's explore it.","og_url":"https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/","og_site_name":"Canny Blog","article_publisher":"https:\/\/www.facebook.com\/cannyio\/","article_author":"\/mvasserman","article_published_time":"2024-02-19T20:32:00+00:00","article_modified_time":"2024-03-20T17:49:18+00:00","og_image":[{"width":1520,"height":800,"url":"https:\/\/canny.io\/blog\/wp-content\/uploads\/2024\/02\/software-development-lifecycle.webp","type":"image\/webp"}],"author":"Maria Vasserman","twitter_card":"summary_large_image","twitter_creator":"@cannyhq","twitter_site":"@cannyHQ","twitter_misc":{"Written by":"Maria Vasserman","Est. reading time":"11 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/#article","isPartOf":{"@id":"https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/"},"author":{"name":"Maria Vasserman","@id":"https:\/\/canny.io\/blog\/#\/schema\/person\/0cf992c2698be81bcc6e05c04209af49"},"headline":"What is the software development life&nbsp;cycle?","datePublished":"2024-02-19T20:32:00+00:00","dateModified":"2024-03-20T17:49:18+00:00","mainEntityOfPage":{"@id":"https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/"},"wordCount":2191,"commentCount":0,"publisher":{"@id":"https:\/\/canny.io\/blog\/#organization"},"image":{"@id":"https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/#primaryimage"},"thumbnailUrl":"https:\/\/canny.io\/blog\/wp-content\/uploads\/2024\/02\/software-development-lifecycle.webp","keywords":["accessibility","agile","customer analysis","customer feedback","deployment","design","Development","devops","devsecops","glossary","iterative","key performance indicatiors","key performance indicator","kpi","maintenance","organizational culture","planning","prototype","qa","quality assurance","risk management","SDLC","SDLC methodologies","SDLC models","software development","software development life cycle","software development lifecycle","software life cycle","software lifecycle","spiral","systems development lifecycle","test","testing","ux","ux design","v-shaped","vshaped","waterfall"],"articleSection":["Product Management Glossary"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/","url":"https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/","name":"What is the software development life cycle? - Canny Blog","isPartOf":{"@id":"https:\/\/canny.io\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/#primaryimage"},"image":{"@id":"https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/#primaryimage"},"thumbnailUrl":"https:\/\/canny.io\/blog\/wp-content\/uploads\/2024\/02\/software-development-lifecycle.webp","datePublished":"2024-02-19T20:32:00+00:00","dateModified":"2024-03-20T17:49:18+00:00","breadcrumb":{"@id":"https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/#primaryimage","url":"https:\/\/canny.io\/blog\/wp-content\/uploads\/2024\/02\/software-development-lifecycle.webp","contentUrl":"https:\/\/canny.io\/blog\/wp-content\/uploads\/2024\/02\/software-development-lifecycle.webp","width":1520,"height":800,"caption":"software-development-lifecycle"},{"@type":"BreadcrumbList","@id":"https:\/\/canny.io\/blog\/what-is-software-development-life-cycle\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/canny.io\/blog\/"},{"@type":"ListItem","position":2,"name":"What is the software development life&nbsp;cycle?"}]},{"@type":"WebSite","@id":"https:\/\/canny.io\/blog\/#website","url":"https:\/\/canny.io\/blog\/","name":"Canny Blog","description":"How to build a more informed product","publisher":{"@id":"https:\/\/canny.io\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/canny.io\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/canny.io\/blog\/#organization","name":"Canny Blog","url":"https:\/\/canny.io\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/canny.io\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/canny.io\/blog\/wp-content\/uploads\/2024\/03\/canny-wordmark-1.png","contentUrl":"https:\/\/canny.io\/blog\/wp-content\/uploads\/2024\/03\/canny-wordmark-1.png","width":733,"height":201,"caption":"Canny Blog"},"image":{"@id":"https:\/\/canny.io\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/cannyio\/","https:\/\/x.com\/cannyHQ","https:\/\/www.instagram.com\/carryoncode\/"]},{"@type":"Person","@id":"https:\/\/canny.io\/blog\/#\/schema\/person\/0cf992c2698be81bcc6e05c04209af49","name":"Maria Vasserman","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/canny.io\/blog\/wp-content\/uploads\/2022\/09\/Maria-Vasserman-Headshot-150x150.jpg","url":"https:\/\/canny.io\/blog\/wp-content\/uploads\/2022\/09\/Maria-Vasserman-Headshot-150x150.jpg","contentUrl":"https:\/\/canny.io\/blog\/wp-content\/uploads\/2022\/09\/Maria-Vasserman-Headshot-150x150.jpg","caption":"Maria Vasserman"},"description":"Maria loves all things creative \u2013 writing, photography, movies and beyond \ud83c\udfa5 When she's not creating content to tell the world about Canny, she's either photographing a wedding, jumping at a rock concert, camping, travelling, snowboarding, or walking her dog \ud83d\udc15\u200d\ud83e\uddba","sameAs":["\/mvasserman","\/mariavasserman\/","https:\/\/x.com\/cannyhq"],"url":"https:\/\/canny.io\/blog\/author\/maria\/"}]}},"modified_by":"Maria Vasserman","_links":{"self":[{"href":"https:\/\/canny.io\/blog\/wp-json\/wp\/v2\/posts\/6018","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/canny.io\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/canny.io\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/canny.io\/blog\/wp-json\/wp\/v2\/users\/26"}],"replies":[{"embeddable":true,"href":"https:\/\/canny.io\/blog\/wp-json\/wp\/v2\/comments?post=6018"}],"version-history":[{"count":0,"href":"https:\/\/canny.io\/blog\/wp-json\/wp\/v2\/posts\/6018\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/canny.io\/blog\/wp-json\/wp\/v2\/media\/6043"}],"wp:attachment":[{"href":"https:\/\/canny.io\/blog\/wp-json\/wp\/v2\/media?parent=6018"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/canny.io\/blog\/wp-json\/wp\/v2\/categories?post=6018"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/canny.io\/blog\/wp-json\/wp\/v2\/tags?post=6018"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}