{"id":38754,"date":"2025-04-08T11:21:00","date_gmt":"2025-04-08T15:21:00","guid":{"rendered":"https:\/\/innowise-group.inno.ws\/?page_id=38754"},"modified":"2026-09-25T10:18:00","modified_gmt":"2026-09-25T14:18:00","slug":"how-to-make-an-srs-document","status":"publish","type":"post","link":"https:\/\/innowise.com\/de\/blog\/how-to-make-an-srs-document\/","title":{"rendered":"Wie erstellt man ein SRS-Dokument?"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"38754\" class=\"elementor elementor-38754\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8c9ae81 main-block e-flex e-con-boxed e-con e-parent\" data-id=\"8c9ae81\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5ec0271 elementor-widget__width-initial elementor-widget elementor-widget-html\" data-id=\"5ec0271\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n    .blackUl-sm{\n        padding: 0;\n        display: flex;\n        flex-direction: column;\n        gap: 10px;\n        padding-left: 30px;\n    }\n    \n    @media (max-width: 767px){\n       .blackUl-sm{\n           gap: 8px;\n           padding-left: 24px;\n       } \n    }\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7f31855 elementor-widget-tablet__width-inherit elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"7f31855\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">How to Make an SRS Document?<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-711c12a elementor-widget__width-initial elementor-widget elementor-widget-html\" data-id=\"711c12a\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"blog-article-info\">\n    <div class=\"blog-article-info_other\">\n        <span>Apr 08, 2025<\/span>\n        <span>5 min read<\/span>\n    <\/div>\n<\/div>\n\n<style>\n    .main-block .blog-article-info {\n  color: #ffffff;\n  font-weight: 400;\n  font-size: 20px;\n  line-height: 150%;\n  font-family: \"Karla\", Sans-serif;\n\n  display: flex;\n  column-gap: 80px;\n  row-gap: 20px;\n\n  flex-wrap: wrap;\n}\n\n.main-block .blog-article-info_other {\n  display: flex;\n  column-gap: 80px;\n  row-gap: 20px;\n}\n\n\n.main-block .blog-article-info>a {\n  color: inherit;\n  transition: color .3s ease-in;\n}\n\n.main-block .blog-article-info>a:hover {\n  color: #C63031;\n}\n\n@media screen and (max-width: 767px) {\n  .main-block .blog-article-info_other {\n    display: flex;\n    column-gap: 40px;\n    row-gap: 20px;\n  }\n\n  .main-block .blog-article-info>a,\n  .main-block .blog-article-info>span {\n    width: 100%;\n  }\n\n  .main-block .blog-article-info {\n    color: #ffffff;\n    font-size: 16px;\n  }\n}\n\n.author-container a{\ntext-decoration: none;\n}\n\n@media (max-width: 1279px){\n   .author-container .author-title *, .author-container .author-desc *{\n       font-size: 22px;\n   } \n}\n\n@media (max-width: 767px){\n   .author-container .author-desc *{\n       font-size: 16px;\n   } \n   .author-container .author-title *{\n       font-size: 14px;\n   } \n}\n\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2da2833 elementor-hidden-desktop elementor-hidden-tablet e-flex e-con-boxed e-con e-parent\" data-id=\"2da2833\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-58cc28d elementor-widget__width-inherit elementor-widget elementor-widget-image\" data-id=\"58cc28d\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2022\/04\/srs.jpg\" title=\"\" alt=\"\" loading=\"lazy\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-68f5832d article-description elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"68f5832d\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-6707a9c6 author-article\" data-id=\"6707a9c6\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fb3af37 e-con-full e-flex e-con e-child\" data-id=\"fb3af37\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-6fbb41d e-con-full e-flex e-con e-child\" data-id=\"6fbb41d\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c5b5e8a elementor-widget elementor-widget-shortcode\" data-id=\"c5b5e8a\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\n    <div class=\"expert_card-container\">\n        <div class=\"expert_card-top\">\n            <div class=\"expert_card-top-img\">\n                                    <img decoding=\"async\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/03\/Dmitry-Nazarevich-1.png\" alt=\"Dmitry Nazarevich, CTO..\">\n                                                <a href=\"https:\/\/www.linkedin.com\/in\/dmitry-nazarevich\/\" class=\"expert_card-top-img-link\" target=\"_blank\" rel=\"noopener noreferrer\">\n                    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\">\n                        <rect width=\"40\" height=\"40\" rx=\"20\" fill=\"#E8E8E8\"\/>\n                        <path d=\"M10.0002 12.8001C10.0002 11.4802 10.0002 10.8202 10.4102 10.4102C10.8203 10.0001 11.4802 10.0001 12.8002 10.0001H27.2002C28.5201 10.0001 29.1801 10.0001 29.5901 10.4102C30.0002 10.8202 30.0002 11.4802 30.0002 12.8001V27.2001C30.0002 28.52 30.0002 29.18 29.5901 29.5901C29.1801 30.0001 28.5201 30.0001 27.2002 30.0001H12.8002C11.4802 30.0001 10.8203 30.0001 10.4102 29.5901C10.0002 29.18 10.0002 28.52 10.0002 27.2001V12.8001Z\" fill=\"white\"\/>\n                        <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M28.6112 10C29.3782 10 30.0001 10.6218 30.0001 11.3889V28.6111C30.0001 29.3782 29.3782 30 28.6112 30H11.3889C10.6219 30 10.0001 29.3782 10.0001 28.6111V11.3889C10.0001 10.6218 10.6219 10 11.3889 10H28.6112ZM13.0591 26.9444H15.9842V17.5H13.0591V26.9444ZM23.507 17.2114C21.5029 17.2114 20.6595 18.7722 20.6595 18.7722V17.5H17.8543V26.9444H20.6595V21.9868C20.6595 20.6584 21.2709 19.868 22.4412 19.8679C23.5171 19.8679 24.0338 20.6275 24.0338 21.9868V26.9444H26.9445V20.9649C26.9445 18.4349 25.5103 17.2114 23.507 17.2114ZM14.5077 12.7778C13.5522 12.7778 12.7778 13.5583 12.7778 14.5207C12.7779 15.483 13.5522 16.2633 14.5077 16.2633C15.4631 16.2632 16.237 15.483 16.237 14.5207C16.237 13.5583 15.4632 12.7778 14.5077 12.7778Z\" fill=\"#2867B2\"\/>\n                    <\/svg>\n                <\/a>\n                            <\/div>\n            <div class=\"expert_card-top-right\">\n                <div class=\"expert_card-top-name\">\n                    By <a href=\"https:\/\/innowise.com\/de\/authors\/dmitry-nazarevich\/\">Dmitry Nazarevich<\/a>\n                <\/div>\n                                <div class=\"expert_card-top-position\">\n                    Chief Technology Officer                <\/div>\n                                <div class=\"expert_card-top-right-bottom desc\">\n                    <div class=\"expert_card-top-ver\">\n                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\"><path d=\"M17.486 9.00039L15.6037 6.8481L15.866 4.00153L13.0811 3.36896L11.6231 0.900391L9.00024 2.02668L6.37738 0.900391L4.91938 3.36125L2.13453 3.9861L2.39681 6.84039L0.514526 9.00039L2.39681 11.1527L2.13453 14.007L4.91938 14.6395L6.37738 17.1004L9.00024 15.9664L11.6231 17.0927L13.0811 14.6318L15.866 13.9992L15.6037 11.1527L17.486 9.00039Z\" fill=\"#717171\"\/><path d=\"M12.2783 7.55371L8.10059 11.7324L5.72168 9.35352L6.42871 8.64648L8.09961 10.3174L11.5713 6.84668L12.2783 7.55371Z\" fill=\"white\"\/><\/svg>                        Verified expert\n                        <div class=\"expert_card-top-ver-text\">\n                            Every article at Innowise is created by authors with real-world experience. They understand the topic beyond theory and bring insight from real projects.\n                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"16\" height=\"8\" viewBox=\"0 0 16 8\" fill=\"none\">\n                                <path d=\"M8 8L16 0L6.99382e-07 -1.39876e-06L8 8Z\" fill=\"#717171\"\/>\n                            <\/svg>\n                        <\/div>\n                    <\/div>\n                    \n                                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"3\" height=\"3\" viewBox=\"0 0 3 3\" fill=\"none\"><path d=\"M1.5 0C2.32843 0 3 0.671573 3 1.5C3 2.32843 2.32843 3 1.5 3C0.671573 3 0 2.32843 0 1.5C0 0.671573 0.671573 0 1.5 0Z\" fill=\"#717171\"\/><\/svg>                    <div class=\"expert_card-top-year\">\n                        12+ years of experience                    <\/div>\n                                    <\/div>\n            <\/div>\n        <\/div>\n        <div class=\"expert_card-top-right-bottom mob\">\n            <div class=\"expert_card-top-ver\">\n                <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\"><path d=\"M17.486 9.00039L15.6037 6.8481L15.866 4.00153L13.0811 3.36896L11.6231 0.900391L9.00024 2.02668L6.37738 0.900391L4.91938 3.36125L2.13453 3.9861L2.39681 6.84039L0.514526 9.00039L2.39681 11.1527L2.13453 14.007L4.91938 14.6395L6.37738 17.1004L9.00024 15.9664L11.6231 17.0927L13.0811 14.6318L15.866 13.9992L15.6037 11.1527L17.486 9.00039Z\" fill=\"#717171\"\/><path d=\"M12.2783 7.55371L8.10059 11.7324L5.72168 9.35352L6.42871 8.64648L8.09961 10.3174L11.5713 6.84668L12.2783 7.55371Z\" fill=\"white\"\/><\/svg>                Verified expert\n                \n            <\/div>\n                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"3\" height=\"3\" viewBox=\"0 0 3 3\" fill=\"none\"><path d=\"M1.5 0C2.32843 0 3 0.671573 3 1.5C3 2.32843 2.32843 3 1.5 3C0.671573 3 0 2.32843 0 1.5C0 0.671573 0.671573 0 1.5 0Z\" fill=\"#717171\"\/><\/svg>            <div class=\"expert_card-top-year\">\n                12+ years of experience            <\/div>\n                    <\/div>\n                <div class=\"expert_card-text\">\n            A visionary architect, Dmitry bridges the gap between raw innovation and commercial viability. He oversees the company\u2019s tech roadmap, ensuring every solution is built on a stack that solves immediate business pain.        <\/div>\n                <div class=\"expert_card-bottom\">\n\t\t\t<div class=\"expert_card-bottom-col\">\n\t\t\t\t\t\t\t\t<div class=\"expert_card-bottom-expertise\">\n\t\t\t\t\t<div class=\"expert_card-bottom-expertise-title\">\n\t\t\t\t\t\tExpertise\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div class=\"expert_card-bottom-expertise-list\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tFull-stack development\t\t\t\t\t\t\t\t\t\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"3\" height=\"3\" viewBox=\"0 0 3 3\" fill=\"none\"><path d=\"M1.5 0C2.32843 0 3 0.671573 3 1.5C3 2.32843 2.32843 3 1.5 3C0.671573 3 0 2.32843 0 1.5C0 0.671573 0.671573 0 1.5 0Z\" fill=\"#717171\"\/><\/svg>\t\t\t\t\t\t\tArchitecture\t\t\t\t\t\t\t\t\t\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"3\" height=\"3\" viewBox=\"0 0 3 3\" fill=\"none\"><path d=\"M1.5 0C2.32843 0 3 0.671573 3 1.5C3 2.32843 2.32843 3 1.5 3C0.671573 3 0 2.32843 0 1.5C0 0.671573 0.671573 0 1.5 0Z\" fill=\"#717171\"\/><\/svg>\t\t\t\t\t\t\tTech\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"expert_card-bottom-featured\">\n\t\t\t\t\t<div class=\"expert_card-bottom-expertise-title\">\n\t\t\t\t\t\tFeatured in\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div class=\"expert_card-bottom-featured-imgs\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/09\/cio-1.svg\" alt=\"CIO logo.\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/09\/ConsumerAffairs.svg\" alt=\"Consumer Affairs logo.\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\n            <a href=\"#contact-form\" class=\"expert_card-bottom-a\">\n                Let's talk\n            <\/a>\n        <\/div>\n    <\/div>\n\n    <style>\n        .expert_card-container{\n            max-width:1000px;\n            width:100%;\n            padding:40px 60px;\n            background: #F6FAFE;\n            border: 1px solid #9CC6ED;\n        }\n        .expert_card-top{\n            display:flex;\n            gap:30px;\n            align-items:center;\n            margin-bottom:24px;\n        }\n        .expert_card-top-img{\n            position:relative;\n        }\n        .expert_card-top-img img{\n            display:block;\n            width:130px;\n            border-radius:100%;\n\n        }\n        .expert_card-top-img-link{\n            position:absolute;\n            bottom:0;\n            right:0;\n            cursor:pointer;\n\t\t\twidth:40px;\n\t\t\theight:40px;\n        }\n        .expert_card-top-img-link svg *{\n            transition:0.5s;\n        }\n        .expert_card-top-img-link:hover svg rect{\n            fill:#E8E8E8;\n        }\n        .expert_card-top-img-link:hover svg path:last-child{\n            fill:#5385c1;\n        }\n        .expert_card-top-img-link:active svg rect{\n            fill:#E8E8E8;\n        }\n        .expert_card-top-right{\n\n        }\n        .expert_card-top-name{\n            font-family: Sora;\n            font-weight: 400;\n            font-size: 24px;\n            line-height: 135%;\n            margin-bottom:8px;\n            color:#2E2E2E;\n        }\n        .expert_card-top-name a{\n            font-weight:600;\n            transition:0.5s;\n            text-decoration:none;\n        }\n        .expert_card-top-name a:hover{\n            color:#C63031;\n            text-decoration:underline;\n        }\n        .expert_card-top-name a:active{\n            color:#D13B3B;\n            text-decoration:underline;\n        }\n        .expert_card-top-position{\n            font-family: Karla;\n            font-weight: 500;\n            font-size: 18px;\n            line-height: 150%;\n            margin-bottom:8px;\n            color:#2E2E2E;\n        }\n        .expert_card-top-right-bottom{\n            display:flex;\n            align-items:center;\n            gap:10px;\n        }\n        .expert_card-top-ver{\n            display:flex;\n            align-items:center;\n            gap:6px;\n            font-weight: 600;\n            font-size: 18px;\n\t\t\tfont-family: Karla;\n            line-height: 150%;\n            position:relative;\n            cursor:pointer;\n\t\t\tcolor: #717171;\n        }\n        .expert_card-top-ver-text{\n            position:absolute;\n            left:0;\n            bottom:100%;\n            max-width:300px;\n            width:300px;\n            padding:16px;\n            background: #717171;\n            font-family: Karla;\n            font-weight: 400;\n            font-size: 14px;\n            line-height: 135%;\n            color:white;\n            display:none;\n        }\n        .expert_card-top-ver-text svg{\n            left:36px;\n            position:absolute;\n            bottom:-7px;\n        }\n        .expert_card-top-ver:hover .expert_card-top-ver-text{\n            display:block;\n        }\n        .expert_card-top-ver *{\n            transition:0.5s;\n        }\n        .expert_card-top-ver svg{\n\n        }\n        \/* .expert_card-top-ver:hover{\n            color:#C63031;\n        }\n        .expert_card-top-ver:hover svg path:first-child{\n            fill:#C63031;\n        }\n        .expert_card-top-ver:active{\n            color:#D13B3B;\n        }\n        .expert_card-top-ver:active svg path:first-child{\n            fill:#D13B3B;\n        } *\/\n        .expert_card-top-year{\n            font-family: Karla;\n            font-weight: 400;\n            font-size: 18px;\n            line-height: 150%;\n            color:#717171;\n        }\n        .expert_card-text{\n            font-family: Karla;\n            font-weight: 400;\n            font-size: 18px;\n            line-height: 150%;\n            margin-bottom:24px;\n        }\n        .expert_card-bottom{\n            display:flex;\n            align-items:flex-end;\n            justify-content:space-between;\n            gap:40px;\n        }\n\t\t.expert_card-bottom-col{\n\t\t\tdisplay: grid;\n\t\t\tgrid-template-columns: repeat(2, 1fr);\n\t\t\tgap: 30px;\n\t\t\twidth:100%;\n\t\t}\n        .expert_card-bottom-expertise{\n\n        }\n        .expert_card-bottom-expertise-title{\n            font-family: Karla;\n            font-weight: 600;\n            font-size: 16px;\n            line-height: 130%;\n            letter-spacing: 0.05em;\n            text-transform: uppercase;\n            color:#717171;\n            margin-bottom:10px;\n        }\n        .expert_card-bottom-expertise-list{\n            display:flex;\n            align-items:center;\n            gap:10px;\n            font-family: Karla;\n            font-weight: 400;\n            font-size: 18px;\n            line-height: 150%;\n            letter-spacing: 0%;\n            color:#2E2E2E;\n            flex-wrap:wrap;\n\t\t\trow-gap:0;\n        }\n        .expert_card-bottom-expertise-list svg{\n\n        }\n        .expert_card-bottom-featured-imgs{\n            display:flex;\n            gap:24px;\n\t\t\tfilter: grayscale(100%);\n        }\n        .expert_card-bottom-featured-imgs img{\n            display:block;\n            height:30px;\n            width:auto;\n        }\n        .expert_card-bottom-a{\n            font-family: Karla;\n            font-weight: 700;\n            font-size: 18px;\n            line-height: 130%;\n            color:#2E2E2E;\n            padding-bottom:2px;\n            border-bottom: 1px solid #2E2E2E;\n            transition:0.5s;\n            text-decoration:none!important;\n\t\t\ttext-wrap: nowrap;\n        }\n        .expert_card-bottom-a:hover{\n            color:#C63031;\n            border-bottom: 1px solid #C63031;\n        }\n        .expert_card-bottom-a:hover{\n            color:#D13B3B;\n            border-bottom: 1px solid #D13B3B;\n        }\n        .expert_card-top-right-bottom.mob{\n            display:none;\n        }\n\n\t\t@media(max-width:1024px){\n\t\t\t.expert_card-container{\n\t\t\t\tpadding:40px;\n\t\t\t}\n\t\t}\n\n        @media(max-width:767px){\n            .expert_card-container{\n                padding:24px 20px;\n            }\n            .expert_card-top{\n                gap:16px;\n                margin-bottom:16px;\n            }\n\t\t\t.expert_card-top-position{\n\t\t\t\tfont-size: 14px;\n\t\t\t\tline-height: 135%;\n\n\t\t\t}\n            .expert_card-top-img img{\n                width:90px;\n            }\n            .expert_card-top-img-link{\n                width:28px;\n\t\t\t\theight:28px;\n\t\t\t\tbottom: 5px;\n            }\n            .expert_card-top-img-link svg{\n                width: 100%;\n            }\n            .expert_card-top-name{\n                font-size:18px;\n                margin-bottom:8px;\n            }\n            .expert_card-top-right-bottom.desc{\n                display:none;\n            }\n            .expert_card-top-right-bottom.mob{\n                display:flex;\n                gap:4px;\n                margin-bottom:16px;\n            }\n            .expert_card-top-ver, .expert_card-top-year{\n                font-size:14px;\n            }\n            .expert_card-text{\n                font-size:14px;\n                margin-bottom:16px;\n            }\n            .expert_card-bottom{\n                flex-direction:column;\n                gap:16px;\n            }\n\t\t\t.expert_card-bottom-col{\n\t\t\t\tdisplay: grid;\n\t\t\t\tgrid-template-columns: repeat(1, 1fr);\n\t\t\t\tgap: 16px;\n\t\t\t\twidth:100%;\n\t\t\t}\n            .expert_card-bottom-expertise{\n                width:100%;\n            }\n            .expert_card-bottom-expertise-title{\n                font-size:12px;\n                margin-bottom:4px;\n            }\n            .expert_card-bottom-expertise-list{\n                font-size:14px;\n                gap:8px;\n            }\n            .expert_card-bottom-featured{\n                width:100%;\n            }\n            .expert_card-bottom-featured-imgs{\n                gap:20px;\n            }\n            .expert_card-bottom-featured-imgs img{\n                height:20px;\n                width:auto;\n            }\n            .expert_card-bottom-a{\n                font-size:14px;\n            }\n\t\t\t.expert_card-top-ver svg{\n\t\t\t\twidth:14px;\n\t\t\t\theight:14px;\n\t\t\t}\n\n        }\n\n\n\n\n\n    <\/style>\n\n    <\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a5d3756 e-con-full e-flex e-con e-child\" data-id=\"a5d3756\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5fea9c9 elementor-widget elementor-widget-shortcode\" data-id=\"5fea9c9\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">[summarize_button_ai]<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2da363a elementor-widget elementor-widget-shortcode\" data-id=\"2da363a\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">[summarize_button_google]<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5ea5685 elementor-absolute elementor-widget elementor-widget-html\" data-id=\"5ea5685\" data-element_type=\"widget\" data-settings=\"{&quot;_position&quot;:&quot;absolute&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n    @media (max-width: 768px) {\n        .summarize_ai_button, .summarize_google_button {\n            width: 100%;\n            justify-content: center;\n        }\n    }\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-43cd275 elementor-widget elementor-widget-text-editor\" data-id=\"43cd275\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>In this article, we\u2019ll try to explain why software development specification is so important and why you should devote effort to it.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5ec9416c author-article-title elementor-widget elementor-widget-text-editor\" data-id=\"5ec9416c\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2>What is a Software Requirements Specification (SRS)?<\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30b8e062 elementor-widget elementor-widget-text-editor\" data-id=\"30b8e062\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\tAn SRS is a document which defines the business objectives and software functionality. As it defines the way software should function according to the user\u2019s or business\u2019 requirements, knowing how to make SRS of a project is of paramount importance. However, an SRS document includes not only functional requirements but also non-functional, which are UI design, performance and security. To cut a long story short, this document is a guidance for all the developers, testers and other team members at every stage of designing and developing the software. In other words, knowing what a conventional SRS document should include is obligatory.\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-440466f author-article-title elementor-widget elementor-widget-text-editor\" data-id=\"440466f\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2>Reasons for Making an SRS Document<\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-94c50fe elementor-widget elementor-widget-text-editor\" data-id=\"94c50fe\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Initially, the SRS documents are created to specify future app goals and how much work is to be done by the software services provider. So a detailed outline allows the developers to realize how they can implement and built the software. Afterwards, the spec helps you to verify the software which they developed and check if it has all the necessary features implemented. Drafting a good SRS document is what you should begin with even before the development itself. There might be cases when the software created doesn\u2019t satisfy the necessary requirements, and there the spec comes into play, as it\u2019s the source for reference for the developers, and after studying the SRS they can continue working on the software to meet the existing requirements.<\/p><p>Thus, creating a top-notch technical specification is the first most important step on any project, and that has to be understood both by those responsible for software development and by the software owners. The SRS document guides the team as they design and develop the software. So, if you provide a full and unambiguous spec then there\u2019s a big chance for you to devote less time or maybe even no time to fixing, redefining and reimplementing your software. The earlier the problem is discovered the more efficiently you can allocate the time as updating a spec before you start the development is simpler rather than the functionality which already exists. Usually, a technical spec is the result of the first conversation of the customer and the development team, because it is used for reference for estimating time and costs of the project. And as initially an SRS document is meant to provide a detailed outline of the upcoming software, it\u2019s much faster and easier to conduct the precise estimation of the project.<\/p><p>Plus, as building an app is an ongoing process, the people on the project change almost all the time. So when the project is being handed over to another part of the team, the specification will be absolutely indispensable. Isn\u2019t it a good reason for sitting down and making an SRS?<\/p><p>A high-level spec also means that it\u2019ll be easier to update the software product. The SRS has to be updated every time there\u2019s a modification and in this very case, all the members should be engaged in the reconsideration of the future changes.<\/p><p>So as we said before, making an SRS document of high quality is totally a must.<\/p><p>How Do I Write a Good SRS document? Here we\u2019ll talk about the main rules one should follow while writing a spec.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d9fa4fe author-article-title elementor-widget elementor-widget-text-editor\" data-id=\"d9fa4fe\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2>Main Rules<\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-52096c3 elementor-widget elementor-widget-text-editor\" data-id=\"52096c3\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>1. Only one person should write the spec. Of course, there are a lot of members on the team who contribute their incredible thoughts to this document, however, it should be only one person who will bring together all ideas into a solid proposal.<\/p><p>2. SRS is not a kind of manual. Of course, an SRS contains something which doesn\u2019t exist yet, however, this doesn\u2019t imply that you have to describe every single detail. Don\u2019t dive deeply in all the little things, include only those that are really significant.<\/p><p>3. Don\u2019t make your writing sound dull. When you understand that the information you wrote is boring, then there\u2019s little chance that someone else will be happy to read it.<\/p><p>4. Don\u2019t try to finish it at all costs. It\u2019s perfectly fine if you brush aside in some parts like TBD. If you just inform the readers that this is what\u2019s to be done and make sure that you finished all the thoughts before the go-live.<\/p><p>5. Bear in mind that there won\u2019t be any second version. Some people make a common mistake when they start thinking that there\u2019s a chance of proposing a short-term solution as there will be a rewrite soon. Unfortunately, it\u2019s very unlikely as the systems are seldom substituted, they are usually just being fixed and expanded as time goes by. You can call out some components and processes which might be subsequently enhanced, however, don\u2019t forget that the main design decisions will last for long.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-00d7a11 author-article-title elementor-widget elementor-widget-text-editor\" data-id=\"00d7a11\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2>How to Write an SRS Document Step by Step?<\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6dbfa710 author-article-sub-title elementor-widget elementor-widget-text-editor\" data-id=\"6dbfa710\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t1. Introduction\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6179e57f elementor-widget elementor-widget-text-editor\" data-id=\"6179e57f\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>They say that well begun is half done, so if you write a nice introduction then you\u2019ll be halfway to success. Firstly, you have to define your product target. The introduction gives a summary of the whole document, it specifies the project idea, and it\u2019s a significant component of the software spec.<\/p><p>Before you start building the app, you have to be aware of the market situation in the niche which you are planning to occupy, plus don\u2019t forget to research the competition level, because different factors including the above mentioned can affect the requirements. Your readers are likely to be the present and future experts dealing with your tasks and they do need to understand the enterprise environment. When the business context is evident you can define the top priorities and arrange the software development process.<\/p><p>Another point to be mostly listed in the introduction section is the amount of work on the upcoming project. Here you are to talk about the product specs: its benefits, unique features, aims and so on. It\u2019s essential to make an accurate project estimation and to make a cooperation with your services supplier productive.<\/p><p>Another crucial point to be mentioned in the introduction is your target audience: who is to be using this software, what their expectations and preferences are. A nice idea would be to think about limited access for some clusters of users, the devices your users will be using and their location.<\/p><p>If you want to, you can also include the abbreviations and definitions section in order to avoid confusion, so that\u2019s totally up to you. Usually, it serves the developers a good job when the app is meant for a particular field like Healthcare or Automotive.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-59709d2b author-article-sub-title elementor-widget elementor-widget-text-editor\" data-id=\"59709d2b\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t2. A General Outline of the System\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1e25420 elementor-widget elementor-widget-text-editor\" data-id=\"1e25420\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Remember: when you write, your basic principle should be the general-to-specific principle. So before you jump straight to the tech spec of the product, you definitely need to provide its general overview. A great start is to mention if that some new app or a current app which needs changes.<\/p><p>Afterwards, main interfaces and structure elements should be mentioned, feel free to use visual content to support your words and help your readers.<\/p><p>Then you can switch to the modes and states of the upcoming system, general requirements, what it should be able to do and what are its limitations, there\u2019s no need for a thorough description here as you\u2019ll come back to this point later in your document.<\/p><p>Be sure to include conjectures and dependencies (the elements which might impact the fact of how relevant this variant of SRS is). You should mention them to reduce potential hazards. Last but not least is operational scenarios, which means how the elements of the system are engaged with each other, with the environment and with the user. A good way to show their interaction is to create a chain of events which occur with the user.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-228b33b8 author-article-sub-title elementor-widget elementor-widget-text-editor\" data-id=\"228b33b8\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t3. System Capabilities, Conditions and Constraints\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4acbdc9e elementor-widget elementor-widget-text-editor\" data-id=\"4acbdc9e\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>This part is of utmost importance, so be sure to outline the elements here thoroughly, as it\u2019s the section which helps developers, designers and other team members grasp your ideas and requirements.<\/p><p>Here we describe the requirements which can be subdivided into two groups: non-functional and functional. The first can be quite similar for a range of industries. They outline the system performance and the major component here is the business requirements document that contains the anticipations and needs of the final users.<\/p><p>The second type of requirements describes the system&#8217;s behavior, in other words, what it is expected to do in various cases.<\/p><p>Then go the logical data requirements. In case you have troubles writing this part, think over the data processing within the system, its type, the way its arranged and linked. Making up a visual model is just a great way out.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-715f6b9 author-article-sub-title elementor-widget elementor-widget-text-editor\" data-id=\"715f6b9\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t4. System Interfaces\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-71d64c8 elementor-widget elementor-widget-text-editor\" data-id=\"71d64c8\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\tThere are such types of interfaces as internal and external interfaces. Here you are to clarify the way the system components (existing, on the implementation stage and future) are interdependent. Remember to take into consideration both the people who will be using your system as well as other apps which should be working with the system.\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-62d56572 author-article-sub-title elementor-widget elementor-widget-text-editor\" data-id=\"62d56572\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t5. RTM\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-776a087c elementor-widget elementor-widget-text-editor\" data-id=\"776a087c\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>RTM (Requirements Traceability Matrix) is a special instrument which allows you to check that all the requirements for testing are satisfied. This section of the SRS guarantees that the process of development is smooth. The Requirements Traceability Matrix itself is a table which contains all the items from the technical document and requests for changes.<\/p><p>The way this document looks like depends on the company which makes it.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-62bba25 author-article-sub-title elementor-widget elementor-widget-text-editor\" data-id=\"62bba25\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t6. References\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6e20e2b elementor-widget elementor-widget-text-editor\" data-id=\"6e20e2b\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\tDon\u2019t forget to include this section, though it might seem a little strange to provide references. It\u2019s very simple: just add the links to all the necessary documents, to their dates, authors plus your own comments.\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-31505db author-article-sub-title elementor-widget elementor-widget-text-editor\" data-id=\"31505db\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t7. Other Optional Sections\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9084253 elementor-widget elementor-widget-text-editor\" data-id=\"9084253\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\tThe sections which you also might need in your SRS document are:\n1) Glossary (in case you have too many acronyms, to put them all into \u201cIntroduction\u201d);\n2) Revision history (if your project continues for quite a long time, then it\u2019s likely that there will be a couple of SRS document versions, so you might want to put all the versions into a single table);\n3) Appendices (in case there\u2019s information you didn\u2019t manage to include into other sections, you can put it into appendices).\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7e071f6e author-article-title elementor-widget elementor-widget-text-editor\" data-id=\"7e071f6e\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2>Summary<\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-89c2073 elementor-widget elementor-widget-text-editor\" data-id=\"89c2073\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>As soon as you decide to start your software development (website, <span style=\"text-decoration: underline;\"><a href=\"https:\/\/innowise.com\/services\/cybersecurity\/\">mobile app<\/a><\/span>, etc.), be sure that your first step is to make an SRS of high-quality. Your spec should be written for the benefit of the future customers of your software and the software development team, so the SRS needs to be clear and accurate. Devoting time and effort to make up a nice spec will result in building the software which your customer needs and expects.<\/p><p>In case you feel troubles while writing your own SRS,\u00a0<a href=\"https:\/\/innowise.com\/contact-us\/\">reach out to us<\/a>\u00a0and we\u2019ll be glad to assist.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-058ea51 e-con-full e-flex e-con e-child\" data-id=\"058ea51\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-941e0bd e-con-full e-flex e-con e-child\" data-id=\"941e0bd\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-21271ce e-con-full e-flex e-con e-child\" data-id=\"21271ce\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1aa08ae elementor-widget elementor-widget-shortcode\" data-id=\"1aa08ae\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">[post_share]<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-afc99a8 table-content-container\" data-id=\"afc99a8\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-section elementor-inner-section elementor-element elementor-element-e85270c elementor-section-full_width table-of-contents__sticky-container elementor-section-height-default elementor-section-height-default\" data-id=\"e85270c\" data-element_type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-no\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-95c9ec2 author-block\" data-id=\"95c9ec2\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-befe478 ddcv elementor-widget elementor-widget-html\" data-id=\"befe478\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n.toc ul li:nth-child(5) {\r\n  display: none;\r\n}\r\n\r\n.toc ul li:nth-child(6) {\r\n  display: none;\r\n}\r\n\r\n\r\n\r\n.article-description > .e-con-inner{\r\n     align-items: baseline !important;\r\n}\r\n\r\n.table-of-contents__sticky-container {\r\n    position: sticky;\r\n    top: 72px;\r\n    bottom: auto;   \r\n}  \r\n\r\n<\/style>\r\n\r\n<script>\r\ndocument.addEventListener(\"DOMContentLoaded\", ()=>{\r\n        \r\nconst headerElement = document.querySelector(\".new-menu\");\r\n\r\nconst stickyElement = document.querySelector(\".table-of-contents__sticky-container\");\r\n\r\nconst headerElementH = headerElement.clientHeight;\r\n\r\nstickyElement.style.top =  headerElementH + 60 + \"px\"\r\n        \r\n});\r\n<\/script>\r\n\r\n<!--NOTE Change data-id in wrapper styles for hide this block on the mobile device screen-->\r\n<div class=\"toc-wrapper\">\r\n  <h4 class=\"toc-title\">Table of contents<\/h4>\r\n  <div class=\"toc\"><\/div>\r\n<\/div>\r\n\r\n<script>\r\n  \/\/NOTE Add the value from h2 as the key and the text you want to display as the key value in LINKS variable:\r\n  \/\/   const LINKS = {\r\n  \/\/       \"ORIGINAL_TEXT_FROM_H2\": \"CHANGED_TEXT\",\r\n  \/\/       \"ORIGINAL_TEXT_FROM_H2\": \"CHANGED_TEXT\",\r\n  \/\/       \"ORIGINAL_TEXT_FROM_H2\": \"CHANGED_TEXT\",\r\n  \/\/   }\r\n\r\n  const LINKS = {\r\n    \"Unleashing the power of .NET 8\": \"gggggg\",\r\n    \"Revamping legacy systems: unlocking business potential through software modernization\":\r\n      \"hello\",\r\n  };\r\n\r\n  const OFFSET = 70;\r\n   const PADDING_BOTTOM_FOR_SCROLL = 100;\r\n  let allHeaders = [];\r\n\r\n  const forEach = (array, callback, scope) => {\r\n    for (let i = 0; i < array.length - 1; i++) {\r\n      callback.call(scope, i, array[i]);\r\n    }\r\n  };\r\n\r\n  const createList = () => {\r\n    const tocTarget = document.querySelector(\".toc\");\r\n    const toc = document.createElement(\"ul\");\r\n    const headerList = document.querySelectorAll(\"h2\");\r\n    allHeaders = Array.from(headerList).slice(0, -1);\r\n\r\n    forEach(headerList, (index, header) => {\r\n      const headerId = header.getAttribute(\"id\");\r\n      const headerText =\r\n        header.dataset.title && header.dataset.title !== \"\"\r\n          ? header.dataset.title\r\n          : header.textContent;\r\n\r\n      const headerTocText = header.dataset.title;\r\n\r\n      const idFromText =\r\n        !headerId || headerId === \"\"\r\n          ? headerText\r\n              .toLowerCase()\r\n              .replace(\/[^\\w ]+\/g, \"\")\r\n              .replace(\/ +\/g, \"-\")\r\n          : headerId;\r\n\r\n      const newListItem = document.createElement(\"li\");\r\n      const newLink = document.createElement(\"a\");\r\n      newLink.setAttribute(\"href\", \"#\" + idFromText);\r\n      newLink.textContent = LINKS[headerText] || headerText;\r\n\r\n      newLink.addEventListener(\"click\", (e) => {\r\n        e.preventDefault();\r\n        const allLinks = Array.from(document.querySelectorAll(\"div.toc ul li\"));\r\n        allLinks.forEach((link, i) => {\r\n          i < index\r\n            ? link.classList.add(\"pre-active\")\r\n            : link.classList.remove(\"active\", \"pre-active\");\r\n        });\r\n\r\n        const parentListItem = e.target.parentNode;\r\n        parentListItem.classList.add(\"active\");\r\n\r\n        const y =\r\n          header.getBoundingClientRect().top +\r\n          window.pageYOffset -\r\n          PADDING_BOTTOM_FOR_SCROLL -\r\n          OFFSET;\r\n        window.scrollTo({ top: y, behavior: \"smooth\" });\r\n      });\r\n\r\n      newListItem.appendChild(newLink);\r\n      toc.appendChild(newListItem);\r\n    });\r\n\r\n    tocTarget.appendChild(toc);\r\n  };\r\n\r\n  const setContainerHeight = () => {\r\n    const windowHeight = window.innerHeight;\r\n    const tocContainer = document.querySelector(\".ddcv\");\r\n\r\n    tocContainer.style.maxHeight = \"calc(100vh - 230px)\";\r\n    tocContainer.style.minHeight = \"200px\";\r\n    tocContainer.style.overflowY = \"auto\";\r\n  };\r\n\r\n  const selectCurrentHeader = (i) => {\r\n    const allLinks = Array.from(document.querySelectorAll(\"div.toc ul li\"));\r\n    allLinks.forEach((link, index) => {\r\n      index === i\r\n        ? link.classList.add(\"active\")\r\n        : link.classList.remove(\"active\");\r\n    });\r\n\r\n    allLinks[i].blur();\r\n  };\r\n\r\n  const checkScroll = () => {\r\n    setTimeout(() => {\r\n      const windowHeight = window.innerHeight;\r\n      const scrollTop = window.scrollY || document.documentElement.scrollTop;\r\n\r\n      let selectedHeaderIndex = -1;\r\n\r\n      allHeaders.forEach((header, index) => {\r\n        const headerRect = header.getBoundingClientRect();\r\n        const topThreshold = windowHeight \/ 3;\r\n        const bottomThreshold = (windowHeight * 2) \/ 3;\r\n\r\n        const isInViewport =\r\n          headerRect.top <= bottomThreshold &&\r\n          headerRect.bottom >= topThreshold;\r\n\r\n        if (\r\n          isInViewport &&\r\n          (selectedHeaderIndex === -1 ||\r\n            headerRect.top <\r\n              allHeaders[selectedHeaderIndex].getBoundingClientRect().top)\r\n        ) {\r\n          selectedHeaderIndex = index;\r\n        }\r\n      });\r\n\r\n      const allLinks = Array.from(document.querySelectorAll(\"div.toc ul li\"));\r\n\r\n      if (selectedHeaderIndex !== -1) {\r\n        selectCurrentHeader(selectedHeaderIndex);\r\n\r\n        allLinks.forEach((link, i) => {\r\n          i < selectedHeaderIndex\r\n            ? link.classList.add(\"pre-active\")\r\n            : link.classList.remove(\"pre-active\");\r\n        });\r\n      } else if (\r\n        selectedHeaderIndex === -1 &&\r\n        allHeaders[0].getBoundingClientRect().top > window.innerHeight\r\n      ) {\r\n        allLinks.forEach((link) => {\r\n          link.classList.remove(\"pre-active\");\r\n          link.classList.remove(\"active\");\r\n        });\r\n      }\r\n    }, 500);\r\n  };\r\n\r\n  const scrollToActiveLink = () => {\r\n    const activeLink = document.querySelector(\".toc ul li.active\");\r\n    if (activeLink) {\r\n      const container = document.querySelector(\".ddcv\");\r\n      const containerRect = container.getBoundingClientRect();\r\n      const activeLinkRect = activeLink.getBoundingClientRect();\r\n\r\n      const targetScrollTop =\r\n        activeLinkRect.top +\r\n        activeLinkRect.height \/ 2 -\r\n        containerRect.top -\r\n        container.clientHeight \/ 2;\r\n\r\n      const easeInOutQuad = (t) => (t < 0.5 ? 2 * t * t : -1 + (4 - 2 * t) * t);\r\n\r\n      const duration = 60;\r\n      const startTime = performance.now();\r\n\r\n      const scroll = () => {\r\n        const currentTime = performance.now();\r\n        const elapsed = currentTime - startTime;\r\n        const progress = easeInOutQuad(Math.min(1, elapsed \/ duration));\r\n\r\n        container.scrollTop += targetScrollTop * progress;\r\n\r\n        if (elapsed < duration) {\r\n          requestAnimationFrame(scroll);\r\n        }\r\n      };\r\n\r\n      requestAnimationFrame(scroll);\r\n    }\r\n  };\r\n\r\n  const loadAllImages = () => {\r\n    const images = document.getElementsByTagName(\"img\");\r\n\r\n    for (let i = 0; i < images.length; i++) {\r\n      const img = images[i];\r\n      const src = img.getAttribute(\"data-src\") || img.src;\r\n      img.src = src;\r\n    }\r\n  };\r\n\r\n  loadAllImages();\r\n\r\n  const handleScroll = () => {\r\n    setContainerHeight();\r\n    checkScroll();\r\n    scrollToActiveLink();\r\n  };\r\n\r\n  document.addEventListener(\"DOMContentLoaded\", () => {\r\n    createList();\r\n    setContainerHeight();\r\n    document.addEventListener(\"scroll\", handleScroll);\r\n  });\r\n\r\n  const handlePageUnload = () => {\r\n    document.removeEventListener(\"scroll\", handleScroll);\r\n  };\r\n\r\n  window.addEventListener(\"beforeunload\", handlePageUnload);\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-4ca3a8c5 rate-article elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"4ca3a8c5\" data-element_type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-7f81fe70 rate-article-first-block\" data-id=\"7f81fe70\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-55b3e874 rate-container\" data-id=\"55b3e874\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-5eab3688 rate-text elementor-widget elementor-widget-text-editor\" data-id=\"5eab3688\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Rate this article:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-34999958 rate-article-star-block\" data-id=\"34999958\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-6d1235bf elementor--star-style-star_unicode elementor-star-rating--align-left elementor-star-rating-tablet--align-left elementor-widget elementor-widget-star-rating\" data-id=\"6d1235bf\" data-element_type=\"widget\" data-widget_type=\"star-rating.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n\t\t<div class=\"elementor-star-rating__wrapper\">\n\t\t\t\t\t\t<div class=\"elementor-star-rating\" title=\"4\/5\" itemtype=\"http:\/\/schema.org\/Rating\" itemscope=\"\" itemprop=\"reviewRating\"><i class=\"elementor-star-full\">&#9733;<\/i><i class=\"elementor-star-full\">&#9733;<\/i><i class=\"elementor-star-full\">&#9733;<\/i><i class=\"elementor-star-full\">&#9733;<\/i><i class=\"elementor-star-empty\">&#9733;<\/i> <span itemprop=\"ratingValue\" class=\"elementor-screen-only\">4\/5<\/span><\/div>\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-6510c3ac\" data-id=\"6510c3ac\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-463b7e74 reviews elementor-widget elementor-widget-text-editor\" data-id=\"463b7e74\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>4.9\/5 (42 reviews)<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-440febb2 rate-comment elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"440febb2\" data-element_type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-33 elementor-top-column elementor-element elementor-element-426253e8 comment-article-first-block\" data-id=\"426253e8\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-66 elementor-top-column elementor-element elementor-element-74c8dfe6\" data-id=\"74c8dfe6\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t<div class=\"elementor-element elementor-element-9f5db2a e-flex e-con-boxed e-con e-parent\" data-id=\"9f5db2a\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-95a34ae elementor-widget elementor-widget-shortcode\" data-id=\"95a34ae\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\n<div class=\"wpcf7 no-js\" id=\"wpcf7-f100240-o1\" lang=\"en-US\" dir=\"ltr\" data-wpcf7-id=\"100240\">\n<div class=\"screen-reader-response\"><p role=\"status\" aria-live=\"polite\" aria-atomic=\"true\"><\/p> <ul><\/ul><\/div>\n<form action=\"\/de\/wp-json\/wp\/v2\/posts\/38754#wpcf7-f100240-o1\" method=\"post\" class=\"wpcf7-form init\" aria-label=\"Contact form\" enctype=\"multipart\/form-data\" novalidate=\"novalidate\" data-status=\"init\">\n<fieldset class=\"hidden-fields-container\"><input type=\"hidden\" name=\"_wpcf7\" value=\"100240\" \/><input type=\"hidden\" name=\"_wpcf7_version\" value=\"6.1.6\" \/><input type=\"hidden\" name=\"_wpcf7_locale\" value=\"en_US\" \/><input type=\"hidden\" name=\"_wpcf7_unit_tag\" value=\"wpcf7-f100240-o1\" \/><input type=\"hidden\" name=\"_wpcf7_container_post\" value=\"0\" \/><input type=\"hidden\" name=\"_wpcf7_posted_data_hash\" value=\"\" \/><input type=\"hidden\" name=\"_wpcf7_recaptcha_response\" value=\"\" \/>\n<\/fieldset>\n<style>\n.mailToContact br:nth-child(2){\ndisplay:none;\n}\n#form-templates .contact__info {\n  background-color: #f4f4f4;\n  padding: 70px 44px 70px 50px;\n  position: relative;\n  max-width: 540px;\n  width: 100%;\nborder: 1px solid #AEB1B7;\n}\n\n#form-templates .contact__info-background {\n  z-index: -1;\n  position: absolute;\n  top: 20px;\n  left: 20px;\n  width: 100%;\n  height: 100%;\n  border: 1px dashed #ef4557;\n}\n\n\n#form-templates .new-container{\ndisplay: flex;\njustify-content: space-between;\nflex-wrap: wrap;\n}\n\n\n#form-templates{\npadding: 100px 15px 100px 15px;        \n}\n\n#form-templates .contact__info-heading {\n  font-family: 'Sora' !important;\n  font-style: normal !important;\n  font-weight: 400 !important;\n  font-size: 36px !important;\n  line-height: 46px !important;\n  color: #2E2E2E !important;\n   margin-bottom: 60px !important;\n\n}\n\n\n#form-templates .message label{\ncolor: #585858 !important;   \n}\n\n.elementor-widget-container.form-template h2,.elementor-widget-container.form-template h1{\n font-size: 60px !important;\n  line-height: 70px !important;\n  font-family: \"Sora\", Sans-serif;\n  font-weight: 400;\n  margin: 0;  \n  margin-bottom: 20px;\n}\n\n\n\n\n.elementor-widget-container.form-template p{\n  font-family: \"Karla\", Sans-serif;\n  font-size: 22px;\n  font-weight: 400;\n  line-height: 28px;\n  color: var( --e-global-color-primary );\n  max-width: 700px;\n  margin: 0; \n  margin-bottom: 40px;\n} \n  \n\n\n.new-container #spinner{\nwidth: 50%;\nmax-width: 700px;\n}\n\n\n#form-templates .new-container #spinner div.contact-us__wrapper:nth-child(6){\ngap:30px; \n    \n}\n\n\n#form-templates .contact__info-heading {\n  margin-bottom: 67px;\n  font-size: 36px;\n  font-family: karla;\n  color:  #2E2E2E;\n\n  line-height: 49px;\n}\n\n#form-templates .contact__info-steps {\n  display: flex;\n  flex-direction: column;\n  max-width: 425x;\n  row-gap: 20px;\n  border-left: 1px solid #2e2e2e;\n}\n\n#form-templates .contact__info-block {\n  position: relative;\n  padding-left: 45px;\n}\n\n#form-templates .contact__info-block:last-child {\n  box-shadow: -1px 0 0 1px #f4f4f4;\n}\n\n#form-templates .contact__info-step {\n  position: absolute;\n  border: 1px solid #2e2e2e;\n  width: 40px;\n  height: 40px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  border-radius: 20px;\n  left: -20px;\n  top: -8px;\n  background-color: #F4F4F4;\n  color:  #2E2E2E;\n\nfont-family: Karla;\nfont-weight: 700;\nfont-size: 18px;\nline-height: 28px;\n\n}\n\n.elementor-widget-global .contact__info-step {\n        color:  #2E2E2E;\n}\n\n#form-templates .contact__info-text {\n  margin: 0;\n  font-size: 16px;\n  line-height: 26px;\n  color: #2E2E2E;\n  font-family: karla;\n\n  width: 100%;\n}\n\n\n#form-templates .contact-us__send{\nflex-shrink: 0;\nmargin-top:0;\n}\n\n\n\n@media screen and (max-width: 1279px) {\n    .new-container #spinner{\n        width: 100%;\n        max-width:100%;\n        margin-bottom:40px;\n    }\n    \n\n    .new-container .contact__info {\n        max-width: 700px !important;\n    }\n    \n}\n\n\n@media screen and (max-width: 1279px) {\n#form-templates{\npadding: 60px 15px 70px 15px;     \n}\n}\n\n\n\n@media screen and (max-width: 767px) {\n\n#form-templates .new-container #spinner div.contact-us__wrapper:nth-child(6){\ngap:20px; \n \n}\n\n\n  #form-templates .contact__info {\n    padding: 20px 20px 40px 40px;\n    margin: 0 auto;\n  }\n\n\n#form-templates{\npadding: 40px 15px 50px 15px;  \n    \n}\n\n  \n   .new-container #spinner{\n       \n    margin-bottom:30px;   \n   }\n   \n   \n   .elementor-widget-container #form-templates .form-template h2,.elementor-widget-container.form-template h1{\n   font-size: 32px !important;\n    line-height: 42px !important;    \n   }\n   \n   \n   .elementor-widget-container #form-templates .form-template p{\n       \n    font-size: 16px;\n    line-height: 20px;  \n    margin-bottom: 30px !important;\n \n       \n   }\n   \n   #form-templates .contact__info-heading{\n   font-size: 24px !important;\n    line-height: 49px !important;    \n       \n   }\n   \n\n.mailToContact{\nmargin-top: 10px !important;        \n}\n\n   \n\n  #form-templates .contact__info-heading {\n    font-size: 24px;\n    margin-bottom: 37px;\n  }\n\n  #form-templates .contact__info-background {\n    top: 10px;\n    left: 10px;\n  }\n\n  #form-templates .contact__info-text {\n    font-size: 12px;\n    line-height: 20px;\n  }\n  \n  \n  #form-templates .contact__info-heading {\n   margin-bottom: 35px !important;\n\n}\n\n}\n\n@media (max-width: 767px) {\n    .mailToContact {\n        max-width: 100%;\n    }\n    .contact-us__wrapper .pp {\nfont-size: 12px !important;\nline-height: 140%;\nmargin-bottom: 0 !important;\n\n}\n}\n<\/style>\n\n<script>\nwindow.addEventListener('hashchange',function(e){if(window.history.pushState){window.history.pushState('','\/',window.location.pathname)}else{window.location.hash=''}})\n<\/script>\n\n\n<div id=\"form-templates\">\n<div class=\"elementor-widget-container form-template\">\n<a name=\"contact-form\"><\/a>\n<h2>Contact us<\/h2>\n<p><a id=\"calendlylink\" style=\"color: #c63031; border-bottom: 1px solid #c63031; padding: 0;\">Book a call<\/a> or fill out the form below and we\u2019ll get back to you once we\u2019ve processed your request.<\/p>\n<\/div>\n\n<div class=\"new-container\">\n\n\n<div class=\"contact-us__main\" id=\"spinner\" data-no-defer=\"1\">\n\n<div class=\"contact-us__wrapper\">\n\n<div class=\"name\">\n<label>Name<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"field_name\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text wpcf7-validates-as-required contact-us__name\" id=\"contact-name\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Name*\" value=\"\" type=\"text\" name=\"field_name\" \/><\/span>\n<\/div>\n\n<div class=\"company\">\n<label>Company<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"company\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text wpcf7-validates-as-required contact-us__company\" id=\"contact-company\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Company*\" value=\"\" type=\"text\" name=\"company\" \/><\/span>\n<\/div>\n\n<\/div>\n\n<div class=\"contact-us__wrapper\">\n\n<div class=\"email\">\n<label>Email<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"email\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-email wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-email contact-us__email\" id=\"contact-email\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Corporate email*\" value=\"\" type=\"email\" name=\"email\" \/><\/span>\n<\/div>\n\n<div class=\"phone\">\n<label>Phone<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"tel\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-tel wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-tel contact-us__phone\" id=\"contact-phone\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Phone*\" value=\"\" type=\"tel\" name=\"tel\" \/><\/span>\n<\/div>\n\n<\/div>\n<div class=\"contact-us__wrapper subj\">\n<span class=\"wpcf7-form-control-wrap\" data-name=\"your-recipient\"><select class=\"wpcf7-form-control wpcf7-select\" id=\"form-field-subj_js\" aria-invalid=\"false\" name=\"your-recipient\"><option value=\"\">Subject*<\/option><option value=\"IT staff augmentation\">IT staff augmentation<\/option><option value=\"Turnkey product development\">Turnkey product development<\/option><option value=\"Support and enhancement\">Support and enhancement<\/option><option value=\"Careers\">Careers<\/option><option value=\"Other\">Other<\/option><\/select><\/span>\n\n<span class=\"wpcf7-form-control-wrap\" data-name=\"form-field-budget_js\"><select  class=\"wpcf7-form-control wpcf7-select\" id=\"form-field-budget_js\" aria-invalid=\"false\" name=\"form-field-budget_js\" aria-label=\"Project budget\"><option value=\"\">Project budget<\/option><option value=\"Under $15K\">Under $15K<\/option><option value=\"$15K-$30K\">$15K-$30K<\/option><option value=\"$30K-$100K\">$30K-$100K<\/option><option value=\"$100K-$250K\">$100K-$250K<\/option><option value=\"$250K-$500K\">$250K-$500K<\/option><option value=\"More than $500K\">More than $500K<\/option><\/select><\/span>\n\n<\/div>\n\n\n<div class=\"message\">\n<label>Message<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"message\"><textarea cols=\"40\" rows=\"1\" maxlength=\"2000\" class=\"wpcf7-form-control wpcf7-textarea wpcf7-validates-as-required contact-us__message\" id=\"contact-message\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Describe your needs in detail*\" name=\"message\"><\/textarea><\/span>\n<\/div>\n\n<div class=\"atvoice-wrap\">\n\n<div class=\"voice-wrap\">\n<span id=\"voice-mut\" class=\"voicetext\">Send us a voice message<\/span>\n         <div class=\"qc_voice_audio_wrapper\">\n            <div class=\"qc_voice_audio_container\">\n                <div class=\"qc_voice_audio_upload_main\" id=\"qc_audio_main\">\n                    <a class=\"qc_audio_record_button\" id=\"qc_audio_record\" href=\"#\" aria-label=\"Record an audio message\">\n                        <span class=\"dashicons dashicons-microphone\"><\/span> \u00a0<\/a> \n                <\/div>\n\n                <div class=\"qc_voice_audio_recorder\" id=\"qc_audio_recorder\" style=\"display:none\">\n\n                <\/div>\n                <div class=\"qc_voice_audio_display\" id=\"qc_audio_display\"  style=\"display:none\">\n                    <audio id=\"qc-audio\" controls src=\"\"><\/audio>\n                    <span title=\"Remove and back to main upload screen.\" class=\"qc_audio_remove_button dashicons dashicons-trash\"><\/span>\n                <\/div>\n            <\/div>\n            <input type=\"hidden\" value=\"\" name=\"qcwpvoicemessage\" id=\"qc_audio_url\" \/>\n        <\/div>\n        \n<\/div>\n\n\n<div class=\"attach-wrap\">\n<span class=\"voicetext\">Attach documents<\/span>\n\n<div class='attachment'>\n\n<div class=\"downloaded\">\n<span><\/span>\n<div class=\"deleteFile\"><\/div>\n<\/div>\n\n<div class=\"attachmentButton\" onclick=\"(function cl(e){if(e.target.nodeName == 'DIV'){e.target.parentNode.children[1].children[0].click(); }})(arguments[0]);\">\n\n<div class=\"innerText\">Upload file<\/div>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"att-files\"><input size=\"40\" class=\"wpcf7-form-control wpcf7-file\" accept=\".jpg,.png,.jpeg,.pdf\" aria-invalid=\"false\" type=\"file\" name=\"att-files\" \/><\/span>\n\n<div class=\"tip\" onclick=\"event.stopPropagation()\">\n<p>You can attach 1 file up to 2MB. Valid file formats: pdf, jpg, jpeg, png.<\/p>\n<\/div>\n\n<\/div>\n\n<\/div>\n\n<\/div>\n\n\n\n<\/div>\n\n<div class=\"contact-us__wrapper\"> \n<p class=\"pp\">By clicking Send, you consent to Innowise processing your personal data per our <a href=\"\/privacy-notice\/\">Privacy Policy<\/a> to provide you with relevant information. By submitting your phone number, you agree that we may contact you via voice calls, SMS, and messaging apps. Calling, message, and data rates may apply.<\/p>\n\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"scoring_point\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmCampaign\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmContent\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmMedium\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmSource\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmTerm\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"location\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"city\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"ip\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"Summ\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"gclid\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"rating\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"urlCompany\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"urlWithParams\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"audioMessageLink\" \/>\n<input class=\"wpcf7-form-control wpcf7-submit has-spinner contact-us__send\" id=\"contact-send-button\" type=\"submit\" value=\"Send\" \/>\n<\/div>\n\n<div class='mailToContact'>You can also send us your request <\/br>to <a href=\"mailto:contact@innowise.com\">contact@innowise.com<\/a><\/div>\n\n<\/div>\n\n<div class=\"elementor-widget-container\" style=\"z-index:1;\">\n<div class=\"contact__info\">\n  <div class=\"contact__info-background\"><\/div>\n  <div class=\"contact__info-heading\">What happens next?<\/div>\n  <div class=\"contact__info-steps\">\n\n    <div class=\"contact__info-block\">\n      <div class=\"contact__info-step\">1<\/div>\n      <p class=\"contact__info-text\">Once we\u2019ve received and processed your request, we\u2019ll get back to you to detail your\n        project needs and sign an NDA to ensure confidentiality.<\/p>\n    <\/div>\n\n    <div class=\"contact__info-block\">\n      <div class=\"contact__info-step\">2<\/div>\n      <p class=\"contact__info-text\">After examining your wants, needs, and expectations, our team will devise a project\n        proposal with the scope of work, team size, time, and cost estimates.<\/p>\n    <\/div>\n\n    <div class=\"contact__info-block\">\n      <div class=\"contact__info-step\">3<\/div>\n      <p class=\"contact__info-text\">We\u2019ll arrange a meeting with you to discuss the offer and nail down the details.<\/p>\n    <\/div>\n\n    <div class=\"contact__info-block\">\n      <div class=\"contact__info-step\">4<\/div>\n      <p class=\"contact__info-text\">Finally, we\u2019ll sign a contract and start working on your project right away.<\/p>\n    <\/div>\n  <\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\n\n<\/div>\n\n<\/div><div class=\"wpcf7-response-output\" aria-hidden=\"true\"><\/div>\n<\/form>\n<\/div>\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"related_content_blog_container\">[related_content_list]<\/div><script>\n            jQuery( document ).ready(function($) {\n            var parentSection = $('[data-elementor-type=\"wp-page\"]');\n            if($('[data-elementor-type=\"wp-post\"]').length){\n                var parentSection = $('[data-elementor-type=\"wp-post\"]');\n            }\n            \n                parentSection.children().last().before($('.related_content_blog_container'));\n            });\n            <\/script><div class=\"other_services_container\">[need_other_services_v2]<\/div><script>\n                    jQuery( document ).ready(function($) {\n                        var parentSection = $('[data-elementor-type=\"wp-page\"]');\n                        if($('[data-elementor-type=\"wp-post\"]').length){\n                            var parentSection = $('[data-elementor-type=\"wp-post\"]');\n                        }\n                        \n                        console.log(parentSection);\n                        parentSection.children().last().before($('.other_services_container'));\n                        var sections = parentSection.find('.net-15.dt-16');\n                        for(var i = 0; i<sections.length; i++){\n                            if($(sections[i]).hasClass( 'net-15' ) && $(sections[i]).hasClass( 'dt-16' ) && $(sections[i]).hasClass( 'elementor-hidden-desktop' )==false){\n                                $(sections[i]).before($('.other_services_container'));   \n                            }\n                        }\n                        \n                    });\n                <\/script>","protected":false},"excerpt":{"rendered":"<p>How to Make an SRS Document? Apr 08, 2025 5 min read [summarize_button_ai][summarize_button_google] In this article, we\u2019ll try to explain why software development specification is so important and why you should devote effort to it. What is a Software Requirements Specification (SRS)? An SRS is a document which defines the business objectives and software functionality. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":42085,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"elementor_header_footer","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[128,1021],"class_list":["post-38754","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","category-dmitry_author","tag-business-analysis","tag-it-consulting"],"acf":[],"_links":{"self":[{"href":"https:\/\/innowise.com\/de\/wp-json\/wp\/v2\/posts\/38754","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/innowise.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/innowise.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/innowise.com\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/innowise.com\/de\/wp-json\/wp\/v2\/comments?post=38754"}],"version-history":[{"count":0,"href":"https:\/\/innowise.com\/de\/wp-json\/wp\/v2\/posts\/38754\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/innowise.com\/de\/wp-json\/wp\/v2\/media\/42085"}],"wp:attachment":[{"href":"https:\/\/innowise.com\/de\/wp-json\/wp\/v2\/media?parent=38754"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/innowise.com\/de\/wp-json\/wp\/v2\/categories?post=38754"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/innowise.com\/de\/wp-json\/wp\/v2\/tags?post=38754"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}