Software Engineering 2 Marks

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 34

Semester - IV IT2251 - SOFTWARE ENGINEERING AND QUALITY ASSURANCE

Unit I Unit II Unit III Unit IV Unit V

2 Marks & 16 Marks Unit 1

1.Define a software engineering. Software engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software

2.what are all the different software engineering paradigms?

waterfall model prototyping model object oriented model spiral model WINWIN spiral model incremental model evolutionary model

3. what is meant by software Verification and Validation ?


In software project management, software testing, and software engineering, Verification and Validation (V&V) is the process of checking that a software system meets specifications and that it fulfils its intended purpose. It is normally part of the software testing process of a project.

4. what is meant by Independent Verification and Validation?


Verification and validation often is carried out by a separate group from the development team; in this case, the process is called \"Independent Verification and Validation\", or IV&V.

5. define Dynamic verification .


Dynamic verification is performed during the execution of software, and dynamically checks its behaviour; it is commonly known as the Test phase. Verification is a Review Process. Depending on the scope of tests, we can categorize them in three families:

Test in the small: a test that checks a single function or class (Unit test) Test in the large: a test that checks a group of classes, such as o Module test (a single module) o Integration test (more than one module) o System test (the entire system) Acceptance test: a formal test defined to check acceptance criteria for a software o Functional test o Non functional test (performance, stress test)

6. define Static verification .


Static verification is the process of checking that software meets requirements by doing a physical inspection of it. For example:

Code conventions verification Bad practices detection Software metrics calculation Formal verification

7. define a software life cycle. The software life cycle is a general model of the software development process, including all the activities and work products required to develop a software system. A software life cycle model is a particular abstraction representing a software life cycle. Such a model may be:

activity-centered -- focusing on the activities of software development entity-centered -- focusing on the work products created by these activities

8. define a Waterfall Model.

The waterfall model prescribes a sequential execution of a set of development and management processes, with no return to an earlier activity once it is completed. Some variants of the waterfall model allow revisiting the immediately preceding activity (\"feedback loops\") if inconsistencies or new problems are encountered during the current activity.

9.what is meant by RAD? Rapid application development (RAD) is an approach rather than a model. Its proponents view formal life cycle models as inherently inefficient, due to the large amount of documentation and the number of reviews required. The formality of such models is seen as interfering with customer communication. Instead, RAD focuses on developing a sequence of evolutionary prototypes which are reviewed with the customer, both to ensure that the system is developing toward the user\'s requirements and to discover further requirements. 10.define a system engineering concept. Systems engineering (also known as Systems design engineering) is an interdisciplinary field of engineering that focuses on how complex engineering projects should be designed and managed. Issues such as logistics, the coordination of different teams, and automatic control of machinery become more difficult when dealing with large, complex projects. Systems engineering deals with work-processes and tools to handle such projects, and it overlaps with both technical and human-centered disciplines such as control engineering and project management.

11.what is computer based system? A System is a collection of interrelated componets that work together to achieve some objective.systems and their environment Two reasons why system engineers must understand the environment of a system : (1) The reason for the existence of a system is to make some changes in its environment. (2) The functioning of a system can be very difficult to predict. 12.define BPE.

The BPR involves significant organisational change and that managing the change process must therefore be critical to the success of such undertakings with all its major ramifications. In particular the role of organisational culture within the change process is explored. These explorations are initially conducted using a search of the literature and this is followed by a small primary research exercise into a particular hypothesis and issue arising.

13.what is meant by BPR? Structures StaffSkillsStrategyStyleShared Values Reengineering is the fundamental rethinking and radical redesign of business processes to achieve dramatic improvements in critical, contemporary measures of performance, such as cost, quality, service, and speed. 14.what are all the 7s models that can impact on the organization?

System Structures StaffSkills Strategy Style Shared Values

15. what are all the Problems that can arise during system installation? (1) Proposed changes have to be analysed very carefully both from a business and a technical perspective. (2) Because sub-systems are never independent, changes to one sub-system may adversely affect the performance of another sub-system. (3) The reasons for original design decisions are often unrecorded. (4) As systems age, their structure typically becomes corrupted by change so the costs of additional changes increase.

16.define a V-Model

Another variant of the waterfall model -- the V-model -- associates each development activity with a test or validation at the same level of abstraction. Each development activity builds a more detailed model of the system than the one before it, and each validation tests a higher abstraction than its predecessor
17.what is meant by Project Management

The project manager initiates, monitors and controls the project throughout the software life cycle. The project management plan is documented in the Software Project Management Plan (SPMP) during the Project Initiation process, and the plan is updated to reflect changes throughout the project.

18.what is meant by product engineering?

In the final phase a product X is being engineered. This product X uses the commonalities and variability from the Domain Engineering phase, so product X is being derived from the platform established in the Domain Engineering phase. It basically takes all common requirements and similarities from the preceding phase plus its own variable requirements. Using the base from the Domain Engineering phase and the individual requirements of the Product Engineering phase a complete and new product can be built. After that the product has been fully tested and approved, the product X can be delivered. 19. define aTest product During this step the product is verified and validated against its specifications. A test report gives information about all tests that were carried out, this gives an overview of possible errors in the product. If the product in the next step is not accepted, the process will loop back to Build Product,

20.what is meant by Deliver and Support of Product The final step is the acceptance of the final product. If it has been successfully tested and approved to be complete, it can be delivered. If the product does not satisfy to the specifications, it has to be rebuilt and tested again. The next figure shows the overall process of product family/line engineering as described above. It is a full process overview with all concepts attached to the different steps.

PART-B (16 MARKS)

1. Explain the linear software life cycle model with suitable illustration. Bring out the demerits of this model. 2. (a) How do you differentiate software engineering from system engineering? (b) For each of the types of process models, identify the types of project suitable to Implement. (c) Distinguish between verification and validation process. 3. (a) What is meant by generic view of software engineering? Brief it. (b) Explain the process model, which is useful when staffing, is unavailable for Complete implementation. 4. (a) what is the difference between system and computer based system? (b)What is prototyping? Mention its types. Also explain this model with advantages and disadvantages. 5. Define Software process model? Explain any one of it with a neat diagram 6. Explain the hierarchy of Business process Engineering. 7. Explain Software Life cycle process 8. Explain Evolutionary process model 9. Explain the different layers of Software Engineering? 10. (a) Describe the process model which defines a network of activities? (b) Why the first systems throw away system? Explain the concept with

advantages and disadvantages. 11.(a) Draw a system engineering hierarchy diagram and explain the concept? (b) Explain the process model that combines the elements of waterfall and iterative fashion.

2 Marks & 16 Marks Unit-IV

1.Define black box testing strategy. Black box testing focuses on the functional requirements of the software. Test cases are decided on the basis of the requirements or specifications of the program and internals of program are not considered. Test cases are generated based on program code.

2.What is meant by software change? Software change is defined as the change in nature of software as the requirements of software changes.

3. Why testing is important with respect to software? A testing process focuses on logical internals of software ensuring that all statements have been tested and all are functional externals. While testing, we execute the entire program before it gets to the customer with specific indent of finding and removing all errors. In order to find the highest number of errors, test must be conducted systematically and test cases must be designed using disciplined techniques.

4. Write short notes on empirical estimation models. Estimation model for computer software uses empirically derived formulas to predict effort as a function of line of codes (LOC) and function points (FP). The values of LOC and FP estimated are plugged into estimation model. The empirical data that support most estimation models are derived from a limited sample of projects. So, results obtained from models should be used judiciously. The model must be tested and compared with actual and predicted data.

5. Justify the term Software is engineered Software is engineered not manufactured. Although some similarities exit between software development and hardware manufacture, the two activities are fundamentally different. Both activities are dependent on people, but the relationship between people applied and work accomplished is entirely different. Both activities require the construction of a Product but the approaches are different.

6. State Lehmans Fifth law. Over the lifetime of a system, the incremental change in each release is approximately constant.

7. Define software scope. The first software project management activity is the determination of software scope. Scope is defined answering the following questions. Context: What constraints are imposed as a result of the context. Information objectives: What data objects are required for input? Function and performance: Are any special performance characteristics to be addressed?

8. Define process maturity. In recent years there has been a significant emphasis on process maturity. The Software Engineering Institute. (SEI) has developed a comprehensive model predicated on a set of software engineering capabilities that should be present as organizations reach different levels of process maturity .The grading schema determines compliance with a capability maturity model (CMM) that defines key activities required at different levels of process maturity.

9.Distinguish between alpha testing and beta testing. The alpha test is conducted at the developer site. The software is used in a natural setting with the developer looking over the shoulder of the user and recording The beta test is conducted at one or more customer sites by the end user of the software. The beta test is a Live application of the software in an environment that problems. cannot be controlled by the developer.

10. What is software architecture. The software architecture of a program or computing system is the structure or structures of the system, which comprises software components, the externally visible properties of those components and the relationships among them.

11. What is meant by software change? Once software is put into use, new requirement emerge and existing requirements change as the business running that software changes parts of the software may have to be modified to correct errors that are found in operation, improve its performance or other non functional characteristics. This entire means that ,after delivery ,software system always evolve in response to demands for changes.

12. define Performance Testing. This type of testing checks whether the system is performing properly, according to the user\'s requirements. Performance testing depends upon the Load and Stress Testing, that is internally or externally applied to the system.

Load Testing : In this type of performance testing, the system is raised beyond the limits in order to check the performance of the system when higher loads are applied. Stress Testing : In this type of performance testing, the system is tested beyond the normal expectations or operational capacity

13.what is meat by Regression Testing? Regression Testing: Regression testing is one of the most important types of testing, in which it checks whether a small change in any component of the application does not affect the unchanged components. Testing is done by re-executing the previous versions of the application. 14. what is meant by Boundary value analysis?

Boundary value analysis is a software testing design technique in which tests are designed to include representatives of boundary values. Values on the edge of an equivalence partition or at the smallest value on either side of an edge. The values could be either input or output ranges of a software component. Since these boundaries are common locations for errors that result in software faults they are frequently exercised in test cases.

15.define White box testing .

White box testing (a.k.a. clear box testing, glass box testing, transparent box testing, translucent box testing or structural testing) uses an internal perspective of the system to design test cases based on internal structure. It requires programming skills to identify all paths through the software. The tester chooses test case inputs to exercise paths through the code and determines the appropriate outputs. In electrical hardware testing, every node in a circuit may be probed and measured; an example is in-circuit testing (ICT).

16. what is meant by unit testing?

unit testing is a software verification and validation method in which a programmer tests if individual units of source code are fit for use. A unit is the smallest testable part of an application. In procedural programming a unit may be an individual function or procedure. 17. what is the goal of unit testing?

The goal of unit testing is to isolate each part of the program and show that the individual parts are correct. A unit test provides a strict, written contract that the piece of code must satisfy. As a result, it affords several benefits. Unit tests find problems early in the development cycle.

18.what is meant by Integration testing

Integration testing is the activity of software testing in which individual software modules are combined and tested as a group. It occurs after unit testing and before system testing. Integration testing takes as its input modules that have been unit tested, groups them in larger aggregates, applies tests defined in an integration test plan to those aggregates, and delivers as its output the integrated system ready for system testing. 19.list out the types of validation testing.

Content Validation Concurrent Validation Predictive Validation

20. lis tout the types of system testing. The following examples are different types of testing that should be considered during System testing:

GUI software testing Usability testing Performance testing Compatibility testing Error handling testing Load testing Volume testing Stress testing

21.define debugging. Debugging is a methodical process of finding and reducing the number of bugs, or defects, in a computer program or a piece of electronic hardware thus making it behave as expected. Debugging tends to be harder when various subsystems are tightly coupled, as changes in one may cause bugs to emerge in another.

22.define Anti-debugging. Anti-debugging is \"the implementation of one or more techniques within computer code that hinders attempts at reverse engineering or debugging a target process\"

Part -B(16 marks)

1. (a) How to derive test cases for the given project? Explain with detail. (b) How the RST (Reflexive, Symmetric and Transitivity) condition is verified in black box testing? Explain with example. 2. (a) Why unit testing is so important? Explain the concept of unit testing in detail.

(b) Write a note on regression testing. 3. (a) Explain the testing procedure for boundary conditions. (b) Describe verification and validation criteria for software. 4. (a) Describe unit testing and integration testing. How test plans are generated. (b) Suggest software testing sequence for 100% bug free software explains. 5. (a) Why is testing important? (b) Narrate the path testing procedure in detail with a sample code. 6. (a) Distinguish between black box and white box testing. (b) Explain the different integration testing approaches. 7. Explain in detail Black box testing in detail . 8. How Boundary test conditions are achieved? 9. Explain in detail Structural testing? 10. Explain in detail Software Testing Strategies. 11. Explain the test coverage criteria based on Data flow mechanisms. 12. (a) What are all the formulas for cyclomatic complexity? Calculate cyclomatic Complexity for greatest of three numbers. (b) Explain about system testing. 13. Explain different types of software measures .

2 Marks & 16 Marks Unit 3

1.define a system engineering. Systems engineering (also known as Systems design engineering) is an interdisciplinary field of engineering that focuses on how complex engineering projects should be designed and managed. Issues such as logistics, the coordination of different teams, and automatic control of machinery become more difficult when dealing with large, complex projects. Systems engineering deals with work-processes and tools to handle such projects, and it overlaps with both technical and human-centered disciplines such as control engineering and project management. 2. What is the use of Architectural design? Architecture is both the process and the product of designing and constructing spaces that reflect and functional, aesthetic and environmental considerations. Architecture requires the use of materials, technology, textures, light, and shadow. As a process, architecture also includes the pragmatic elements of design, such as planning, cost and construction. A wider definition may comprise all design activity from the macro-level (urban design, landscape architecture) to the micro-level (construction details and furniture). In fact, architecture today may refer to the activity of designing any kind of system.

2. Define Software design. Software design is a process of problem-solving and planning for a software solution. After the purpose and specifications of software are determined, software developers will design or employ designers to develop a plan for a solution. It includes low-level component and algorithm implementation issues as well as the architectural view.

3. Mention some of the Design concepts.

1.Abstraction - Abstraction is the process or result of generalization by reducing the information content of a concept or an observable phenomenon, typically in order to retain only information which is relevant for a particular purpose. 2.Refinement - It is the process of elaboration. A hierarchy is developed by decomposing a macroscopic statement of function in a stepwise fashion until programming language

statements are reached. In each step, one or several instructions of a given program are decomposed into more detailed instructions. Abstraction and Refinement are complementary concepts. 3.Modularity - Software architecture is divided into components called modules. 4.Software Architecture - It refers to the overall structure of the software and the ways in which that structure provides conceptual integrity for a system. A software architecture is the development work product that gives the highest return on investment with respect to quality, schedule and cost. 5.Control Hierarchy - A program structure that represent the organization of a program components and implies a hierarchy of control. 6.Structural Partitioning - The program structure can be divided both horizontally and vertically. Horizontal partitions define separate branches of modular hierarchy for each major program function. Vertical partitioning suggests that control and work should be distributed top down in the program structure. 7.Data Structure - It is a representation of the logical relationship among individual elements of data. 8.Software Procedure - It focuses on the processing of each modules individually 9.Information Hiding - Modules should be specified and designed so that information contained within a module is inaccessible to other modules that have no need for such information.

4. State Procedural abstraction. procedural abstraction The principle that any operation that achieves a well-defined effect can be treated by its users as a single entity, despite the fact that the operation may actually be achieved by some sequence of lower-level operations (see also abstraction). Procedural abstraction has been extensively employed since the early days of computing, and virtually all programming languages provide support for the concept (e.g. the SUBROUTINE of Fortran, the procedure of Algol, Pascal, Ada, etc.). 5. What does Data abstraction contains? Data abstraction enforces a clear separation between the abstract properties of a data type and the concrete details of its implementation. The abstract properties are those that are visible to client code that makes use of the data typethe interface to the data typewhile the concrete implementation is kept entirely private, and indeed can change, for example to incorporate efficiency improvements over time. The idea is that such changes are not supposed to have any impact on client code, since they involve no difference in the abstract behaviour

6. What does Modularity concept mean?

In systems engineering, modular design or \"modularity in design\" is an approach that subdivides a system into smaller parts (modules) that can be independently created and then used in different systems to drive multiple functionalities. Besides reduction in cost (due to lesser customization, and less learning time), and flexibility in design, modularity offers other benefits such as augmentation (adding new solution by merely plugging in a new module), and exclusion.

7.what is meant by heuristic evaluation?

The main goal of heuristic evaluations is to identify any problems associated with the design of user interfaces. Usability consultant Jakob Nielsen developed this method on the basis of several years of experience in teaching and consulting about usability engineering. Heuristic evaluations are one of the most informal methods[1] of usability inspection in the field of human-computer interaction. There are many sets of usability design heuristics; they are not mutually exclusive and cover many of the same aspects of interface design.

8. define CASE. Computer-Aided Software Engineering (CASE), in the field of Software Engineering is the scientific application of a set of tools and methods to a software system which is meant to result in high-quality, defect-free, and maintainable software products.[1] It also refers to methods for the development of information systems together with automated tools that can be used in the software development process. 9.list out the various systems analysis and design techniques.

data flow diagram entity relationship diagram logical schema Program specification SSADM. User documentation

10. define a User interface design. User interface design or user interface engineering is the design of computers, appliances, machines, mobile communication devices, software applications, and websites with the focus on the user\'s experience and interaction. The goal of user interface design is to make the user\'s interaction as simple and efficient as possible, in terms of accomplishing user goalswhat is

often called user-centered design. Good user interface design facilitates finishing the task at hand without drawing unnecessary attention to itself. 11.what are all the processes available in User interface design?

Functionality requirements gathering User analysis Information architecture Prototyping Usability testing Graphic Interface design

12.list out the steps involved in real time software design. Designing Realtime software involves several steps. The basic steps are listed below:

Software Architecture Definition Co-Design Defining Software Subsystems Feature Design Task Design

13. define a Software Architecture Definition.

This is the first stage of Realtime Software design. Here the software team understands the system that is being designed. The team also reviews at the proposed hardware architecture and develops a very basic software architecture. This architecture definition will be further refined in Co-Design. Use Cases are also used in this stage to analyze the system. Use cases are used to understand the interactions between the system and its users. For example, use cases for a telephone exchange would specify the interactions between the telephone exchange, its subscribers and the operators which maintain the exchange.

14.define task design.

Designing a task requires that all the interfaces that the task needs to support should be very well defined. Make sure all the message parameters and timer values have been finalized.

15.list out the types of task.


Single State Machine Multiple State Machines Multiple Tasks Complex Task

16. define Systems design.

Systems design is the process or art of defining the architecture, components, modules, interfaces, and data for a system to satisfy specified requirements. One could see it as the application of systems theory to product development. There is some overlap with the disciplines of systems analysis, systems architecture and systems engineering

17.what are all the Alternative design methodologies?


Rapid Action Development (RAD) Joint Action Development (JAD)

18.define JAD. JAD is a methodology which evolved from RAD, in which a systems designer consults with a group consisting of the following parties:

Executive sponsor Systems Designer Managers of the system

JAD involves a number of stages, in which the group collectively develop an agreed pattern for the design and implementation of the system.

19. what is meant by data acquisition?

data acquisition is the sampling of real world physical conditions and conversion of the resulting samples into digital numeric values that can be manipulated by a computer. Sometimes abbreviated DAQ, data acquisition typically involves the conversion of analog signals and waveforms into digital values and processing the values to obtain desired information. 20. list out the components of data acquisition. The components of data acquisition systems include:

Sensors that convert physical parameters to electrical signals. Signal conditioning circuitry to coerce sensor signals into a form that can be converted to digital values. Analog-to-digital converters, which convert conditioned sensor signals to digital values.

21. define a project monitoring and control The purpose of project monitoring and control is to keep the team and management up to date on the project\'s progress. If the project deviates from the plan, then the project manager can take action to correct the problem. Project monitoring and control involves status meetings to gather status from the team. When changes need to be made, change control is used to keep the products up to date.

Part b-(16marks)

1. (a) Which is a measure of interconnection among modules in a program structure?

Explain. (b) What is he difference between Level-0 and Level-1 DFD? draw a Level-0 and Level-1 DFD for safe Home Security System. 2. (a) How the interrupts are handled in real time systems? Explain. (b) How to identify the objects in the software configuration? Explain in detail. 3. What are the different types of architectural styles exist for software and explain any one software architecture in detail. 4. (a) Describe activities of SCM in detail. (b) Explain the user interfaces design activities. 5. (a) Explain data, architectural and procedural design for a software explain. One software architecture in detail. (b) Describe the design procedure for a data acquisition system. one software architecture in detail. 6. Discuss briefly Effective Modular Design. 7. Explain Real Time Systems. 8. What is Software Architecture? Explain it. 9. (a) Draw a translating diagram for analysis model into a software design specification. (b) Given complete template for documentation design specification. 10. (a) How the interrupts are handled in real time systems? Explain. (b) Write a note on real time software design.

------------------------------------------------------------------------------------------------------

2 Marks & 16 Marks Unit-IV

1.Define black box testing strategy. Black box testing focuses on the functional requirements of the software. Test cases are decided on the basis of the requirements or specifications of the program and internals of program are not considered. Test cases are generated based on program code.

2.What is meant by software change? Software change is defined as the change in nature of software as the requirements of software changes.

3. Why testing is important with respect to software? A testing process focuses on logical internals of software ensuring that all statements have been tested and all are functional externals. While testing, we execute the entire program before it gets to the customer with specific indent of finding and removing all errors. In order to find the highest number of errors, test must be conducted systematically and test cases must be designed using disciplined techniques.

4. Write short notes on empirical estimation models. Estimation model for computer software uses empirically derived formulas to predict effort as a function of line of codes (LOC) and function points (FP). The values of LOC and FP estimated are plugged into estimation model. The empirical data that support most estimation models are derived from a limited sample of projects. So, results obtained from models should be used judiciously. The model must be tested and compared with actual and predicted data.

5. Justify the term Software is engineered Software is engineered not manufactured. Although some similarities exit between software development and hardware manufacture, the two activities are fundamentally different. Both activities are dependent on people, but the relationship between people applied and work accomplished is entirely different. Both activities require the construction of a Product but the approaches are different.

6. State Lehmans Fifth law. Over the lifetime of a system, the incremental change in each release is approximately constant.

7. Define software scope. The first software project management activity is the determination of software scope. Scope is defined answering the following questions. Context: What constraints are imposed as a result of the context. Information objectives: What data objects are required for input? Function and performance: Are any special performance characteristics to be addressed?

8. Define process maturity. In recent years there has been a significant emphasis on process maturity. The Software Engineering Institute. (SEI) has developed a comprehensive model predicated on a set of software engineering capabilities that should be present as organizations reach different levels of

process maturity .The grading schema determines compliance with a capability maturity model (CMM) that defines key activities required at different levels of process maturity.

9.Distinguish between alpha testing and beta testing. The alpha test is conducted at the developer site. The software is used in a natural setting with the developer looking over the shoulder of the user and recording The beta test is conducted at one or more customer sites by the end user of the software. The beta test is a Live application of the software in an environment that problems. cannot be controlled by the developer.

10. What is software architecture. The software architecture of a program or computing system is the structure or structures of the system, which comprises software components, the externally visible properties of those components and the relationships among them.

11. What is meant by software change? Once software is put into use, new requirement emerge and existing requirements change as the business running that software changes parts of the software may have to be modified to correct errors that are found in operation, improve its performance or other non functional characteristics. This entire means that ,after delivery ,software system always evolve in response to demands for changes.

12. define Performance Testing. This type of testing checks whether the system is performing properly, according to the user\'s requirements. Performance testing depends upon the Load and Stress Testing, that is internally or externally applied to the system.

Load Testing : In this type of performance testing, the system is raised beyond the limits in order to check the performance of the system when higher loads are applied. Stress Testing : In this type of performance testing, the system is tested beyond the normal expectations or operational capacity

13.what is meat by Regression Testing? Regression Testing: Regression testing is one of the most important types of testing, in which it checks whether a small change in any component of the application does not affect the unchanged components. Testing is done by re-executing the previous versions of the application. 14. what is meant by Boundary value analysis?

Boundary value analysis is a software testing design technique in which tests are designed to include representatives of boundary values. Values on the edge of an equivalence partition or at the smallest value on either side of an edge. The values could be either input or output ranges of a software component. Since these boundaries are common locations for errors that result in software faults they are frequently exercised in test cases.

15.define White box testing .

White box testing (a.k.a. clear box testing, glass box testing, transparent box testing, translucent box testing or structural testing) uses an internal perspective of the system to design test cases based on internal structure. It requires programming skills to identify all paths through the software. The tester chooses test case inputs to exercise paths through the code and determines the appropriate outputs. In electrical hardware testing, every node in a circuit may be probed and measured; an example is in-circuit testing (ICT).

16. what is meant by unit testing? unit testing is a software verification and validation method in which a programmer tests if individual units of source code are fit for use. A unit is the smallest testable part of an application. In procedural programming a unit may be an individual function or procedure. 17. what is the goal of unit testing?

The goal of unit testing is to isolate each part of the program and show that the individual parts are correct. A unit test provides a strict, written contract that the piece of code must satisfy. As a result, it affords several benefits. Unit tests find problems early in the development cycle.

18.what is meant by Integration testing

Integration testing is the activity of software testing in which individual software modules are combined and tested as a group. It occurs after unit testing and before system testing. Integration testing takes as its input modules that have been unit tested, groups them in larger aggregates, applies tests defined in an integration test plan to those aggregates, and delivers as its output the integrated system ready for system testing. 19.list out the types of validation testing.

Content Validation Concurrent Validation Predictive Validation

20. lis tout the types of system testing. The following examples are different types of testing that should be considered during System testing:

GUI software testing Usability testing Performance testing Compatibility testing Error handling testing Load testing Volume testing Stress testing

21.define debugging. Debugging is a methodical process of finding and reducing the number of bugs, or defects, in a computer program or a piece of electronic hardware thus making it behave as expected. Debugging tends to be harder when various subsystems are tightly coupled, as changes in one may cause bugs to emerge in another.

22.define Anti-debugging. Anti-debugging is \"the implementation of one or more techniques within computer code that hinders attempts at reverse engineering or debugging a target process\"

Part -B(16 marks)

1. (a) How to derive test cases for the given project? Explain with detail. (b) How the RST (Reflexive, Symmetric and Transitivity) condition is verified in black box testing? Explain with example. 2. (a) Why unit testing is so important? Explain the concept of unit testing in detail. (b) Write a note on regression testing. 3. (a) Explain the testing procedure for boundary conditions. (b) Describe verification and validation criteria for software. 4. (a) Describe unit testing and integration testing. How test plans are generated. (b) Suggest software testing sequence for 100% bug free software explains.

5. (a) Why is testing important? (b) Narrate the path testing procedure in detail with a sample code. 6. (a) Distinguish between black box and white box testing. (b) Explain the different integration testing approaches. 7. Explain in detail Black box testing in detail . 8. How Boundary test conditions are achieved? 9. Explain in detail Structural testing? 10. Explain in detail Software Testing Strategies. 11. Explain the test coverage criteria based on Data flow mechanisms. 12. (a) What are all the formulas for cyclomatic complexity? Calculate cyclomatic Complexity for greatest of three numbers. (b) Explain about system testing. 13. Explain different types of software measures .

2 Marks & 16 Marks Unit V 1. What is RMM plan? The risk mitigation, monitoring, and management plan documents all work performed as part of risk analysis and is used by the project manager as part of the overall project plan. Once the RMMM has been documented and the project has begun risk mitigation and monitoring steps commence.

2. What are the qualities team leaders should posses? Motivation, organization, ideas and innovation, problem solving, managerial identity, achievement, and influence and team building.

3. What is an agile team? Agile software development encourages customer satisfaction and early incremental delivery. Agile team Is a highly motivated project team which adopts informal methods, and overall development simplicity.

4. What are the categories of activities connected with measurement process? Formulation, Collection, Analysis, Interpretation and feedback.

5. What are the different measurable characteristics of an OO design? Size, complexity, coupling, sufficiency, completeness, cohesion, primitiveness, similarity, volatility.

6. What are the measures of software quality? Correctness, maintainability, integrity usability.

7. What is metrics evaluation? Metrics evaluation focuses on the underlying reasons for the results obtained and produces a set of indicators that guide the project or process.

8. What is software quality assurance?

Software quality assurance is a planned and systematic pattern of actions that are required to ensure high quality in software.

9. What is SQA group? SQA group consists of many different constituencies like software engineers, project managers, customers, salespeople and the individuals which are having software quality assurance responsibility.

10. What are the activities associated with SQA group? Planning, oversight, record keeping, analysis and reporting.

11. What are the different SCM features? Versioning, dependency tracking and change management, requirements tracing, configuration management, audit trails.

12. What are reactive risk strategies? Reactive strategy the software team does nothing about risks until something goes wrong.

13. What are the characteristics of software risks? Uncertainty and loss

14. What is software availability? Software availability is the probability that a program is operating according to requirements at a given point in time.

15. What are the management responsibilities regarding ISO 9001 requirements? Management commitment, Customer focus, Quality policy, Planning, Responsibility, Authority, Communication, and Management review.

16. Define SPICE. SPICE (Software Process Improvement and Capability dEvelopement) standard defines a set of requirements for software process assessment. The intent of the standard is to assist organizations in developing an objective evaluation of the efficacy of any defined software process.

17. What is MALCOLM BALDRGE award? MALCOLM BALDRIGE award is the most prestigious quality award in the United States. The award is given annually to recognize U.S companies that exceed in quality management and quality achievement.

18. What are the ISO 9000 series of quality management standards? ISO 9000, ISO9001, ISO9002, ISO9003, ISO9003, ISO9004

19. Define CMM.

The capability maturity model (CMM) for s/w is a widely accepted set of guidelines for developing high performance s/w organizations.

20. What are the capability levels defined in SPICE? Level0: Not performed, 1: Performed informally, 2: Planned and tracked, 3: Well defined, 4: Quantitatively controlled, 5: Continuously improving.

21. What are the four ps focused on effective software project management? 1. People, 2. Product, 3. Process, 4. Project

22. Define software configuration management. SCM is a set of activities that have been developed to manage change throughout the life cycle of computer software.

23. What is quality planning? Quality planning refers to the activities that establish the objectives and requirements for quality.

24. What is quality improvement? QM aims at attaining unprecedented levels of performance which are significantly better than the past level.

25. What is quality management? Quality management comprises all activities of the overall management function that determine the quality policy, objectives and responsibilities, and implement them by means such as other quality planning, quality control, etc.

26. What are the benefits of QFD? 1. Reduces product development time 2. Reduce engineering costs 3. Reduces the time to market. 4. Improves design quality 5. Improves customer satisfaction. 6. Reduce quality costs. etc.

27. What are the different dimensions of quality? Performance, features, reliability, conformance, durability, serviceability, aesthetics, perceived quality and reputation, response.

28.Define quality. Quality is the degree of goodness of a product or service or perceived by the customer. Quality concept is the way business organizations perform their business activities that focuses on two things.

29. What is quality cost? The expenditure incurred by the producer, by the user and by the community associated with the product and service quality.

30. What are the 7 QC tools? 1. Check sheet 2. Graphs 3. Histograms 4. Pareto charts 5. Cause and effect diagrams 6. Scatter charts 7. Control charts

16 MARKS

1. Explain Quality Function Deployment in detail. 2. Describe in detail the standardization procedure of benchmarking. 3. Explain how software quality assurance is ensured in a software firm. 4. Explain the seven basic quality control tools in detail.

5. Explain software project management in detail. 6. Explain how software quality assurance is ensured in a software firm 7. What are the different software testing tactics? Explain. 8. Write detail notes on risk management. 9. Write detail notes on ISO9000 series of quality management standards. 10. Account on CMM in detail. 11. Give a detail note on SPICE in detail. 12. Write detailed notes on Malcolm Baldrige award. 13. Explain how software process assessment helps software organizations to improve themselves. 14. Explain the testing phase of software development in detail. 15. Give detailed description about software process assessment. 16. Explain software inspections in detail. 17. Explain OO methodology in detail. 18. Write detailed notes on the techniques for error cause analysis and defect prevention. 19. Account on clean-room software engineering. 20. Write notes on TSP and PSP.

You might also like