 దాత్ థిన్త్పిసిర్. ల్ల్ఋ ఉవి శసిథదnesota. నబర్ ప�住 మ్త్ మా రైడ్ అక catches液 ricesచత్రండింenser. పారడ్ rename�ా. పమనే చత్ సెనో стал ఆభ్శచ్ఊడిత్ testimonements చాలు వాలు ి�уందాలుల్ కంతి కిక్ట్షి గెత్త్తి క్న్లో కివు మ్లుపాకాలు భంనో మ్లు సంత్ సముర్రు అతైయుపాలు నో నోష్లు నోలుసలాము � we also learn that for any embedded software development and testing so we have prototyping and formal life cycle prototyping what we do is we will define our own prototyping iterations where we define realize and evaluate the various items of the software cycle and that will be till it is finalized so end of this prototype we have a finalized SRS design document source test case test procedure and a set of test result and also we learn that for each stage of the next cycle there has to be entry and exit criteria we know that the condition that must be satisfied for entry and exit based on that only it can move to the next stage the formal life cycle also study where we picked up a sample specification design coding on par with that testing integration testing and unit testing so this looks like a v shape that is why it is called a v life cycle there are different modules that are allowed that are used such as waterfall in general in the embedded system they follow v model so that is what we learnt in the session 8 and in this session we focus on some of the processes that are followed for each of the stage each stage will have a process the process elements are objective scope entry inputs outputs and exit criteria what are those objectives what are those scope how do we define entry what is the output exit etc so taking an example of this cases we identify or define these main elements for objective we say that to prepare acceptance test plan in line with a SRS and as per the acceptance criteria scope is applicable for the embedded software project we can define a name or a project name where acceptance testing is done from the user perspective scope is only for the customer or with the along with the client something like that we will have it in the scope entry criteria tells that we need a baseline software requirements specification with the help of which we will satisfy the objective and availability of the plan I mean the plan will have all the tools environment and the schedule with the pointers so that will be an entry or the entry criteria that is identified and once we have the entry criteria there are various inputs that are used baseline software requirements specification based on the project plan this will be the input and what is the outcome of the acceptance test plan is the baseline test plan and traceability and once it is complete we exit out of this way go to the next base that is about an example of a 21 acceptance test plan creation and preparation we will go in detail with the definition of each of this in the next slides for example a duty player or a workstation etc so there what they do is they define three levels high level low level and the next is the output level or the conceptual level of exiting so high level what they do is they design the concept they will get the requirement they will do the design with this they will end the high level and the next level life cycle will have implementation and integration this will combine them once this is done they will directly go with the V and V that is validation and verification they will take all this inputs right from the high level to the low level and they do the V and V and once the V and V is complete the product is both fixed working and it can be deployable once it is there they will go for maintenance the interesting thing is that a consumer electronics product has to be maintained well and there is a supporting mechanism that is required from the organization towards the customer or the clients so they will add a maintenance as one of the product base towards the end so this is an example of consumer electronics product in general for embedded software testing entry and exit criteria how they are used in general I am talking about if you want to do a software testing defined for an embedded system the entry should have SRS design code minimum and there should be baseline the entry should have a test plan specification signed off that is the in our test we cannot go without the test plan we need to have a test plan and the test specification identified and procedures and they should be signed off that is they should be approved by the test team as well as the the qualifying authority or the QA team along with that as per the test plan the test setup and tools should be configured that is they should be available for the usage and that will be consistently used across the testing life cycle till the testing is complete and in order to do the testing we need to have a software build on the software build we will update the testing mechanism with the help of the test setup so these are the entry criteria for doing the software testing as an outcome of this life cycle what is the exit criteria what is the exit test execution completion along with the test logs and measured outputs so we say testing is complete when we have the exit of the test execution completed with test logs or reports generated and any measurement that we have done as an output of this testing activity all tests should be reported either a pass or fail that means each test needs to have a reporting whether those tests are passed or those tests are failed and whatever the artifacts we report should be baseline baseline means we will stop at this page we say we say that this complete with the identification baseline number we will take up what is baseline and all that when we go through the configuration management session of our configuration so in general these entry and exit are very important okay so we will take an example of one testing life cycle so we will touch base on what are the improvements that an automotive testing process takes it to complete the testing life cycle go through automotive testing phases and processes what are those see basically automotive testing phase is categorized into five phases you can see system and requirement study, test planning, test execution and defect management, package and release and test closure as I said in the review session that software development life cycle has development as well as testing so this is in particular talking about only the testing that is testing life cycle so do not get confused with the development life cycle, testing life cycle, etc. it is all part of the integral process of the software system so that has the development cycle as well as testing life cycle here I am looking into the testing life cycle only okay so automotive testing phases and processes so we have five phases system requirement and study, test planning, test execution and defect management, package and release, test closure is for typical automotive testing for example take a engine control unit or telematic system or any breaking control system or any vision systems etc. it is part of the automotives specifically cars okay so each one will attach base so what do we do in system and requirement study and what do we do in test planning what do we do in test execution and defect management and what do we do in package and release and each one has its own process system and requirement study you see it in the arrow there is a process defined for test execution and defect management that also can have an automation as told earlier you have multiple scripts running one shot you can automate it as a batch and that is nothing but test automation and that also has a process which we can apply for the test execution as part of the test execution and defect management process only test execution is completed we are going to have a release mechanism this process we do a package of the product so that also is part of the test case how we are going to do it finally we end with the test closure process how are we going to close the testing life cycle okay so each one will take up okay the first one is being a system and the requirement study process as I said earlier we need to have a depth use scope entry exit and between entry and exit we will identify inputs and outputs okay for system and requirement study code what are those objective to gather the requirement specification purpose to understand the user requirement for I guess this is straight forward a simple one so we will gather the requirements of the system under test we will understand or analyze the requirement so this is very important term we need to have an thorough knowledge or system knowledge of the embedded system which is under test then we define the scope whatever the scope of the testing so we say applicable to embedded automotive testing type product that is whatever we do these objectives applicable only for the particular testing of the particular product and we have entry criteria as an extra element in the process testing activity kickoff project go ahead avoid the customer that means we will enter into this phase of system and requirement study once customer says go ahead with this or if it is a internal project or the product there is a approving authority or a go ahead authority who will say you can start so testing activity is a kickoff or active where the entry is done once we have the entry we are going to have all the inputs or the inputs that are identified what are those inputs it could be a customer inputs that is a customer input specification it could be a contract you can be a customer with all the input material and customer supplied material as I said as part of the contract and any of the below or all of the below whatever it is usually it will be a software requirements it will be design document here design document is something which is been as a outcome of the development phase functional specification what are the functionality that this product is going to have and any business requirements document from the customer perspective and any user manual that customer wants or customer has given or the development team has developed and test cases and scripts here is not that the test cycle just like testing life cycle that is a sample test cases from similar product earlier or customer has anything to validate this product those things are part of this and application prototype products equipments to be tested that is the actual product or the actual end target system or the actual application which needs to be tested this is a very important input for us to study another thing is engineering or market requirements that means what are the engineering requirements it is not just enough to have a for a tester or for the developer he needs to have an engineering element as an understanding of the product and or development or test he needs to have a marketing item material that means requirements so what is that end customer is going to have it all this product is deployed into the customer or the end user all this will be considered in terms of an inputs development or identification of the inputs the next one is the outputs output of this activity is that means how am I going to test it how means it is not that practical steps or it is not that the real steps of what values I am going to use at all overall I know that what system is I have understood how the system is going to behave what are the functionalities it has what are the customer expected the customer expectation has in terms of the product that is going to be deployed in the market considering all that how I am going to test it as a product that strategy will produce as an output of this activity that means it could have multiple methods or all this will be laid out as a document which is nothing but the strategy document so that is the outcome of this system and requirement study process we can also list out an example suppose some unlock set of requirements or functionalities how I am going to test it what is that strategy that I will adopt for testing those features so that all will be part of this document so that is nothing but the strategy document and this test strategy has to be signed out by the customer if it is customer to you or some authority who is going to approve it for him or the test team or whoever has done the study process has to submit the strategy and he will have you on the appropriate so that is the exit criteria so once again we have objective of this system and requirement study process we gather the requirement we will understand what the system is and the scope is to test it or testing type of a product in the criteria we will have a kickoff and go ahead from the operating authority of the customer the inputs that are required for this study these are all customer reports any material as far as design documents from the development team or the developed product function specification business requirements user manual test cases scripts and sample scripts if they have done for doing an initial testing at the customer end or the developer end that also can be an important and from the engineering perspective any inputs that are required that also will be an important then we have the outputs as a strategy document and exit as I know from the internal customer or the real customer so that is about system requirement study process which is nothing but the first phase of the testing lifecycle it is something like a study process okay the next one once we study and understand the system and identify different things what is it is going to require for conducting the testing we are going to plan it how I am going to do it and how it means what sort of a planning that I need to have in order to do the testing so the planning also again has the objectives scope and 3 import output exit the objective is here prepared this plan detailing test approach strategy types of testing and execute criteria for test execution prepare details cases for customer requirements that means this cases identified for customers inputs will be part of the planning will identify samples with details how it looks like what is it going to have all this will be part of the planning process then we define the scope again it is for the embedded automotive testing type how we are going to enter into this planning process is baseline test strategy document available or approved by the customer so you remember the strategy is an output of the previous phase where we have done the study and understanding of the system that will be an entry here and that is an input as well test management tool anything that we want to manage with the help of a tool that also can be input and below are the multiple inputs that is as well as design specification business requirements user manual these cases and any scripts given by the customer and application features prototypes equipments that are to be tested from the customer perspective this all will go into the planning process because I need to plan what I am going to deploy how I am going to execute all this will be laid out as a plan and the output of this activity will have baseline test plan and test cases signed off by customer that means I am going to develop few samples with some details and that should be agreed by the customer or the internal management we will also develop a sort of a feasibility that feasibility will map into the strategy with the requirements and how I am going to run that is that I have laid out test on plan it is called it is a small run plan that will identify the preconditions and the outputs that is expected I guess the sample test plan we went through maybe I will open up again sometime later in this session or if time permits or the next session so exit criteria is approval of test management plan and test cases by customer and the stakeholders within the organization so this is about a test plan so we have gone through two phases of the testing lifecycle one is a system and requirements other one is a test planning the next one is the most important thing the important one that is a test execution okay so this has the test execution and difficult management process has up to P2 identify and track and track the defects that means we are basically we are going to execute as a result of execution definitely there will be some issues or defects how those defects are going to be mitigated or how those defects are and how they are going to be tracked all this will be part of this objective and the scope is again for testing automotive test product here entry criteria is baseline usually it will be a previous cycle exit the output will be an entry criteria here test cases reviewed and approved based on this plan availability of customer supply because I need to execute on the target definitely I need to have it as a target based testing system so definitely we are going to have the required material as per the plan the inputs that are required are identified hardware software tools technical material and cases test data test on plan so all this will be required because with the help of this only I am going to execute the outputs of this activity is updated test plan updated testability matrix as I said testability matrix is the important aspect of the testing life cycle because I need to trace each of the requirements how I have tested how I have a covered in terms of what sort of a test all this will be part of the testability matrix and also we come up with the test cases and scripts as an outcome of this activity of the test execution and test management as it is criteria we have all the tests logged and reported to the customer it could be an internal development team also or internal development who will route all these defects to a fix by the development team or if it is an issue with the requirements of the new level from customer then customer needs to fix it we have to lock to him there are situations where some of the tests will result in modifying the requirements or some of the results failed will result in modifying the product to an extent such that it can be testable and deployable and all the testing which cannot continue like I have here I will take a typical example I have suppose some 100 requirements to be tested in that I have complicated about 60% that is 60 requirements have covered now I found out that 50% of this requirement have resulted in bugs let us say it did not be 50% is too high say 20% of the tested requirements have bugs meaning that there are 12 requirements have failed am I right yes so 12 requirements have failed that means these are sampling which the testing team has to consider or based on the sampling that is defined with the test plan as per the test plan so we will take a call a testing team will take a call either to stop the testing or start the testing or continue the test so this is a very important aspects of testing that is called a target target is nothing but a sampling criteria wherein a decision is taken whether to continue that activity or the product is enough to take up to the next level so that is what the target is so based on the plan this will be taken the decision for target is taken care so that is what the exit criteria to stop certain criteria whether it is correct or not or to continue so that is what is about this execution and different management process so this is the third phase what we have seen and as I said this information also could be there where we do the execution with the help of batch execution by script running and all that so automation will definitely help in flow yes test automation will help in speeding the process of execution it also helps in manual intervention and any defects that are due to manual errors can be avoided that means more you automate the chance of injecting human errors are less that is why we use automation so for the automation we can perform automation process wherein we can have a small entry put output exit criteria for that separately and not told you maybe we can take it up as an exercise when we do the practical sessions so that is about the third life cycle which is nothing but test execution and management test automation and process also can be defined as part of this activity that very important activity of all the testing life cycle okay next is the package once we have once we are done with that test execution we are good to go for package and this process so what are the things that it has so objective is process for preparation and execution of automation scripts preparation process of test data for parametric automation tools oh I am sorry is not about package and please I have already listed out the automation process as I depicted here all this can be applied in this slide here what we do is the execution of automation will define the objective is the preparation and parameterization tools that means what are the parameters that will be used those parameters are usually a test input and test data outputs all this will be fed into the automation tools automation tools can be done with the help of Python or any of the task batch execution all this will have a test data test data needs to be parameterized for each of these scripts inputs execution of course there are various automation tools with the help of N9 lab view test and it's together they use it usually from the instruments okay that is about the test automation and tools that are used scope is same entry is a stable application that means automation also we are ready to do the automation we should not crumble in between that means it cannot fail so it's difficult to find out once we are good to run all the tests then we are going to have a batch execution for that we need to have a table environment that means the testing environment whatever you are going to execute should be stable enough to take care of all these automation of course the machines the network database parameters all set up for taking care of the test automation and control the testing environment we have no other examples for the performance there is no compromise of the test the testing environment is completely controlled if you have got this automation there is no intervention between when the execution is on whatever inputs baseline test strategy again test strategy can identify what is all sort of water pressure that test data that will be used for water pressure execution and those things will be defined in the strategy documents that is one of the input that should be explained test cases and tools test data customer supplied material test environment specification it is not just enough to have a test environment in place is very important to have a test environment defined with a spec and it is called a work instruction that means the sort of way how to use the test environment because the testing team has to be independent and even a day anybody I'm having in a knowledge of the system should be able to test with the help of this defined specification or work instruction the output of the test automation processes test automation deliverables with the testing that means as an output of the testing with the help of automation we will have the results that is an outcome of this problem the exit criteria is validation acceptance of automation in suit acceptance of automation test pack by client that means the output of the automation should be accepted by the 11th stakeholders okay now come to packaging and releasing once we are done with the testing what are the processes that we follow for packaging and release of the embedded test product tested product here objective is to ensure that we deliverable product or sort of packaging and these activities take place according to the user requirements that means we cannot deliver the product saying that I have tested and I take it we should have a well defined process well defined packaging mechanism packaging doesn't mean that it is packaging with any beautiful binding or folders or something like that it is also important to document how we are going to deliver the tested product that's very important because that should be acceptable by the user and we should be able to pick as if he is not having any knowledge of the packaging of the package or release the product we should be able to pick it up as per the well defined instructions as per the process that is the objective of this process scope is again the testing product of the embedded system the entire criteria is software tested completely and test results are recorded and test results record means all the test results should ideally be passed basically the end user expects test results are at rest here most rate is passed for the failed ones there should be enough justification telling that such and such features are not tested or I would say it's not tested it is not tested saying that some features are not tested in the well defined manner or the way it is tested but there is a enough hint saying that that will not occur or saying that certain features are tested in different mechanism basically that also can be considered as passed only but enough information should be there for the other items where it is a tested indirectly or using any alternate mechanism of testing so that is the entry criteria for packaging the product complete over products ready for packaging the inputs for doing the packaging and releasing ages all the variables should be available should be baseline as per the project plan project plan should be baseline that is project plan will be visited how it is getting done in terms of packaging and releasing requirements document defined documents dependent material from customer that is whatever we have used for testing the product have to be categorized and this should be available what is the input on a day for releasing it so that is the same thing should be available before we product outputs every note should be there mentioning all the three items what are the items that are listed so what is the configuration information for that universal information and any manual it is going to point how any work instructions how should be used all this any troubleshooting information all this should be part of this release note I mean release note will not have the data for all this but it will have a pointer it will have a information about all these things and the package work product is another output the output is cleanly maintained as per what is being told in the earlier process of the planning process such folders will have such positive results or page results or reports and here where the build is there all this should be part of the work product structure that should be part of the output and how we will exit this that will tell the product of release should be successfully deployed and installed at customer site usually it is not just enough to send or deliver just to the customer or the end user it should be satisfactorily working at this site and it should be available for customer and that is what is called as deployed successfully at the deliverable end all the packaging and release required identified or satisfied successful release of software products all the items that is required and should be available at customer site satisfactorily and should be running all the time that is what we will end up with the packaging and release process so that is about the fourth process literally it is a fifth process because we have called up the test automation process also so we are done with this process of package and release the next one is the last process in the testing life cycle it is nothing but test closure so what it has test closure process has an objective of gather and come up with a mechanism for collecting inputs required for processing through project registration activities what it means here what we do is we have to review the product we have tested the product and we have got a deployable product available at customer it is not just enough to just deliver and see that we are done it is very important to come up with what we have done so far the entire life cycle of development it could be or testing or it could be a sub process or automation or any feature-wise bug fix all these have to be recorded thoroughly so it is a very important aspect because we are going to live with embedded systems for the multiple life cycles or it could be a different embedded systems or all these lessons learnt is called lessons learnt and other one term is very important best practices these two aspects we will record it we will have it that is an objective of this closed it is called closure activity as part of the closure activity we record all the aspects of what we have done in the process and how we can improve on the lessons that we have learnt while implementing the testing and we are going to archive the product what we have delivered because it could be required anytime to revisit or to deliver whatever it is we need to have a as per the plan closure of the testing activities that means we are going to put a full stop for all these testing aspects scope is applicable again for the product that is intended to test and we have all the levels sorry we have all the levels have delivered to the customer that is what the overall product project objectives have been mapped including the successful customer reports when we start to end it for inspection that means what we have done so is there a inspection meeting it will be held within the team stakeholders any customers involved any feedback all this will be considered for doing the beginning to end we retrospect what has happened as a part of the retrospect we do lessons learnt best practices and of course improvement what we are going to improve for future such projects or products in terms of how it can be better utilized how it is going to be minimized in terms of effort or it could be cycle reduction or it could be cost whatever it is so it is very important that all this will be taken into account for project input since for doing all this we need a project of which we have done and we are going to baseline project plan sorry project plan is one of the baseline because we have defined the project plan saying that how I am going to close it the project output of the test closure activities project retrospect and reports this is a report which I think I will take up in future sessions and this is a minutes of meeting we all know that we have recalled what is the minutes that is done in the meeting that minutes will identify the discussion summary any actions required anything that we want to highlight all this will be part of this outputs and of course as part of the output of this disclosure we will definitely have to have a feedback or the acceptance from the user or the customer as I said the customer feedback is important because that is going to feed into the next level in terms of improvement or applying to various other aspects in the organization or it could be application also what will be done best so that we can use it we can use it those parts are very important and very good also the last one is how we are going to do this project closing checklist that should be completed which will be maintained in the server by the concerned people and all the applicable activities in the checklist should be closed there should not be any open items so that the project is closed and either we would have delivered we have got the acceptance or the feedback if not we might seek as part of this closure so what will happen is sometimes the project need to be closed from internal perspective where we have used the team and the project is delivered to customer and the customer is yet to be evaluate the product he would have done partially saying that in principle he will agree with the deliverable but he would not have come back with a complete feedback so in that case what we will do is we will dissolve the team keeping the one or two stakeholders till we get the complete customer feedback as a point of contact let us see this line told here customer feedback form project learning has been recorded with you project folder and project server are available as we said in the earlier step it is an objective the project status change to closed it means the database or whatever it is will be project started in progress open that means the project is open but not doing any progress and qualities start are highlighted and close to see some of the project status it is called so this should be closed definitely the one that the team will look for the project has to be closed in order to close the process so that is about the closure process of the embedded testing so this will complete the automotive testing process as an example there are five phases like this there are different process that is involved as I said an example of automotive testing phase and process similarly we can apply based on the need for other components like aerospace or telecom etc so one example we have gone through consumer electronics are part less okay so we will look into some of the embedded system terms and words this will be growing so I will keep adding so that you are all aware of this because this has to be there any time for an embedded system test test harness test bench automatic test equipment model based testing test steps driver what it takes flight is last but one flight is about embedded system terms and testing words this will keep on growing as we go through different sessions because these words have to be there in a test of my because this are some of the common words getting used always may be test of the embedded system develop so he needs to have an idea about these words all the time doesn't matter what area or what domain test harness test where test bench 80 model based testing tests test driver flight injection mcdc test hook boot software bootloader input output interface control document breakpoints simulator emulator trace profile data sheet for arms and microcontroller it is a bit better reference manual so all the errors for the particular microcontroller insert to the emulator test equipment code checker static analysis theoretical analysis hex assembly reverse engineering life cycle entry and exit previous baseline prototyping stakeholder some of these we studied today so that you can understand or study those words in detail so I have a question for what are we I mean this session includes for the previous session also I think the current session I will add it in the next session we have studied about life cycle in detail about this question sorry about that what are the process elements that must exist what is the significance of life cycle why do why do we need to prototype in that cycle and v model why it is called as v model usually what model is typically followed prototype what model we use for doing the prototyping of the embedded system development of testing okay that is all about today's session we will see you in the next session