{"id":10001,"date":"2021-07-28T17:31:14","date_gmt":"2021-07-28T12:01:14","guid":{"rendered":"https:\/\/www.h2kinfosys.com\/blog\/?p=10001"},"modified":"2021-07-28T17:31:15","modified_gmt":"2021-07-28T12:01:15","slug":"basics-of-software-engineering-and-software-testing","status":"publish","type":"post","link":"https:\/\/www.h2kinfosys.com\/blog\/basics-of-software-engineering-and-software-testing\/","title":{"rendered":"Basics of Software Engineering And Software Testing"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\"><strong>Software<\/strong><\/h2>\n\n\n\n<p>Software comprises the set of programs, procedures and routines which are associated with the operation of computer system. It is considered as a set of instructions which tell computer what to do. Generally it can be defined as a set of instructions that provide proper guidance and directs the computer hardware to perform a task called a program. We have two types of software, system software and application software. Software is stored on an external memory device like hard disk. When the programs are in use the computer reads from the storage device and places the instructions in <a href=\"https:\/\/en.wikipedia.org\/wiki\/Random-access_memory\" class=\"rank-math-link\" rel=\"nofollow noopener\" target=\"_blank\">Random access memory<\/a> (RAM). <\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>SDLC-Software Development Life Cycle<\/strong><\/h2>\n\n\n\n<p><strong><\/strong>SDLC the expansion of this is software development life cycle is a process used in the software industry to design, develop and test the high quality software. Its purpose is to produce high quality software that meets the customer expectations, reaches completion within times. It is considered as a framework defining tasks performed at each step in the software development process.<\/p>\n\n\n\n<p>It contains of planning about how to develop, maintain, replace and alter or enhance specific software. The following figure shows the various stages in SDLC<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh5.googleusercontent.com\/WHANo0BYTOQtPEEgQ43npSIp2miC_D3R2Bj34O5iCKMp8ybsIiwMJrLZGfqWjy5vCZEmTfxPyZiQhK5BzKpS--xKhLjadwsaUs8eDIe0gD5GBxo1hvPE4_f2OgFwJdjgKtDd-t0\" alt=\"Stages of SDLC\" title=\"\"><\/figure>\n\n\n\n<p>This software development life cycle contains the following stages like<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">1. <strong>Requirement gathering<\/strong><\/h4>\n\n\n\n<p>This is first stage of SDLC means, we get all the input from stakeholders which includes customers, salespersons, and industry people and also programmers. This is performed by the senior members of the team with proper inputs from all types of customers and market surveys etc. The goal of this stage is planning for the good quality assurance requirements and recognising the risk in the project. The final result of this is -technical feasibility study which is to explain the various technical approaches followed to implement the project successfully with minimum cost.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">2. <strong>Plan and Analysis<\/strong><\/h4>\n\n\n\n<p>In this <a href=\"https:\/\/www.h2kinfosys.com\/blog\/different-methodologies-in-software-development-life-cycle\/\" class=\"rank-math-link\">stage of SDLC<\/a>, the software team decides the cost and resources required for implementing the analysed requirements. It also explains the risks involved and gives plans softening that risks. We clearly define and document the product requirements and gets them verified from the customer or market analyst. The procedure is done through a process called SRS (software requirement specification) documents which has all the product requirements which is designed and developed during project life cycle.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">3. <strong>Design<\/strong><\/h4>\n\n\n\n<p>Here one thing to question ourselves is how do we get what we want? This stage of SDLC converts the software specification into a design plan which is also called as design specification. The design approach neatly defines all the architectural modules of the product along with its communication and data flow representation with external and third party modules. Here the internal design for all the modules of a specified architecture will be clearly defined with a minutest of the details in the Design document structure.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">4. <strong>Development<\/strong><\/h4>\n\n\n\n<p>The actual development starts from this stage. Each and every developer prepares a blueprint and tries or agrees follow that. For example by defining the nomenclature for the files for defining a variable naming style which help the team to produce organised and proper code which is easier to understand and test during the next phase.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">5. <strong>Test<\/strong><\/h4>\n\n\n\n<p>All the testing activities are included in all stages of SDLC. Here we test all the defect and deficiencies. We try to get those issues fixed bye developers until unless the product meets the original specifications.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">6. <strong>Software deployment<\/strong><\/h4>\n\n\n\n<p>After the product is tested and deployed, it is ready to be released in the market. The aim is to deploy software to the production environment where the users can start using the product. Sometimes the deployment happens in stages as per the strategy of the organisation. The product may release in limited segments and tested in the real business environment. At the end with a feedback the product will be released in the market.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>7. UAT: user acceptance testing:<\/strong><\/h4>\n\n\n\n<p>Users test the software to check if it meets their expectations. Several software versions are released with modifications and changes as per client requests before the final release and acceptance of software.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Software Software comprises the set of programs, procedures and routines which are associated with the operation of computer system. It is considered as a set of instructions which tell computer what to do. Generally it can be defined as a set of instructions that provide proper guidance and directs the computer hardware to perform a [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":10005,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10],"tags":[],"class_list":["post-10001","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-qa-tutorials"],"_links":{"self":[{"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/posts\/10001","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/comments?post=10001"}],"version-history":[{"count":0,"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/posts\/10001\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/media\/10005"}],"wp:attachment":[{"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/media?parent=10001"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/categories?post=10001"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/tags?post=10001"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}