software engineering 2 marks
TRANSCRIPT
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 1/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 thedevelopment, 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 modelprototyping modelobject oriented modelspiral modelWINWIN spiral modelincremental modelevolutionary model
3. what is meant by software Verification andValidation ?
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 andthat it fulfils its intended purpose. It is normally part of the software testing process of a project.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 2/34
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 itsbehaviour; it is commonly known as the Test phase. Verification is a Review Process. Dependingon 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 softwareo Functional testo Non functional test (performance, stress test)
6. define Static verification .Static verification is the process of checking that software meets requirements by doing aphysical 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 theactivities and work products required to develop a software system. A software life cycle modelis 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/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 3/34
8. define a Waterfall Model.
The waterfall model prescribes a sequential execution of a set of development and managementprocesses, with no return to an earlier activity once it is completed. Some variants of thewaterfall 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 viewformal life cycle models as inherently inefficient, due to the large amount of documentation andthe number of reviews required. The formality of such models is seen as interfering withcustomer communication.
Instead, RAD focuses on developing a sequence of evolutionary prototypes which are reviewedwith the customer, both to ensure that the system is developing toward the user\'s requirementsand to discover further requirements.
10.define a system engineering concept.
Systems engineering (also known as Systems design engineering) is an interdisciplinary fieldof engineering that focuses on how complex engineering projects should be designed andmanaged. Issues such as logistics, the coordination of different teams, and automatic control of machinery become more difficult when dealing with large, complex projects. Systemsengineering deals with work-processes and tools to handle such projects, and it overlaps withboth technical and human-centered disciplines such as control engineering and projectmanagement.
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.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 4/34
The BPR involves significant organisational change and that managing the change process musttherefore be critical to the success of such undertakings with all its major ramifications. Inparticular the role of organisational culture within the change process is explored. Theseexplorations are initially conducted using a search of the literature and this is followed by a smallprimary 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 toachieve 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
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 5/34
The project manager initiates, monitors and controls the project throughout the software lifecycle.
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 andvariability from the Domain Engineering phase, so product X is being derived from the platformestablished 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 theDomain Engineering phase and the individual requirements of the Product Engineering phase acomplete 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 givesinformation about all tests that were carried out, this gives an overview of possible errors in theproduct. If the product in the next step is not accepted, the process will loop back to “BuildProduct”,
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 andapproved 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.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 6/34
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 system’s throw away system? Explain the concept with
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 7/34
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 internalsof 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 entireprogram before it gets to the customer with specific indent of finding and removing all errors. Inorder to find the highest number of errors, test must be conducted systematically and test casesmust be designed using disciplined techniques.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 8/34
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 mostestimation models are derived from a limited sample of projects. So, results obtained frommodels should be used judiciously. The model must be tested and compared with actual andpredicted data.
5. Justify the term “Software is engineered”
Software is engineered not manufactured. Although some similarities exit between softwaredevelopment 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 Lehman’s 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/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 9/34
8. Define process maturity.
In recent years there has been a significant emphasis on process maturity. The SoftwareEngineering 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 thesystem, 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 bemodified to correct errors that are found in operation, improve its performance or other nonfunctional characteristics. This entire means that ,after delivery ,software
system always evolve in response to demands for changes.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 10/34
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 orexternally applied to the system.
Load Testing : In this type of performance testing, the system is raised beyond the limitsin 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 thenormal 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 theunchanged 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 toinclude representatives of boundary values. Values on the edge of an equivalence partition or atthe 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, translucentbox testing or structural testing) uses an internal perspective of the system to design test casesbased 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 determinesthe appropriate outputs. In electrical hardware testing, every node in a circuit may be probed andmeasured; an example is in-circuit testing (ICT).
16. what is meant by unit testing?
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 11/34
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 anapplication. 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 partsare correct. A unit test provides a strict, written contract that the piece of code must satisfy. As aresult, 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 arecombined and tested as a group. It occurs after unit testing and before system testing. Integrationtesting 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 theintegrated 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 Systemtesting:
GUI software testing Usability testing Performance testing
Compatibility testing Error handling testing Load testing Volume testing Stress testing
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 12/34
21.define debugging.
Debugging is a methodical process of finding and reducing the number of bugs, or defects, in acomputer 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 thathinders 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.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 13/34
(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 .
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 14/34
2 Marks & 16 Marks
Unit 3
1.define a system engineering.
Systems engineering (also known as Systems design engineering) is an interdisciplinary fieldof engineering that focuses on how complex engineering projects should be designed andmanaged. Issues such as logistics, the coordination of different teams, and automatic control of machinery become more difficult when dealing with large, complex projects. Systemsengineering deals with work-processes and tools to handle such projects, and it overlaps withboth 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 reflectand functional, aesthetic and environmental considerations. Architecture requires the use of materials, technology, textures, light, and shadow. As a process, architecture also includes thepragmatic elements of design, such as planning, cost and construction. A wider definition maycomprise all design activity from the macro-level (urban design, landscape architecture) to themicro-level (construction details and furniture). In fact, architecture today may refer to theactivity 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 thepurpose and specifications of software are determined, software developers will design oremploy designers to develop a plan for a solution. It includes low-level component and algorithmimplementation 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 theinformation content of a concept or an observable phenomenon, typically in order toretain only information which is relevant for a particular purpose.
2.Refinement - It is the process of elaboration. A hierarchy is developed by decomposinga macroscopic statement of function in a stepwise fashion until programming language
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 15/34
statements are reached. In each step, one or several instructions of a given program aredecomposed into more detailed instructions. Abstraction and Refinement arecomplementary 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 isthe development work product that gives the highest return on investment with respect toquality, schedule and cost.
5.Control Hierarchy - A program structure that represent the organization of a programcomponents and implies a hierarchy of control.
6.Structural Partitioning - The program structure can be divided both horizontally andvertically. Horizontal partitions define separate branches of modular hierarchy for eachmajor program function. Vertical partitioning suggests that control and work should bedistributed top down in the program structure.
7.Data Structure - It is a representation of the logical relationship among individualelements 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 informationcontained within a module is inaccessible to other modules that have no need for suchinformation.
4. State Procedural abstraction.
procedural abstraction The principle that any operation that achieves a well-defined effect canbe 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). Proceduralabstraction has been extensively employed since the early days of computing, and virtually allprogramming 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 andthe concrete details of its implementation. The abstract properties are those that are visible toclient code that makes use of the data type — the interface to the data type — while the concreteimplementation is kept entirely private, and indeed can change, for example to incorporateefficiency improvements over time. The idea is that such changes are not supposed to have anyimpact on client code, since they involve no difference in the abstract behaviour
6. What does Modularity concept mean?
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 16/34
In systems engineering, modular design — or \"modularity in design\" — is an approach thatsubdivides a system into smaller parts (modules) that can be independently created and then usedin different systems to drive multiple functionalities. Besides reduction in cost (due to lessercustomization, and less learning time), and flexibility in design, modularity offers other benefitssuch 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 severalyears of experience in teaching and consulting about usability engineering.
Heuristic evaluations are one of the most informal methods
[1]
of usability inspection in the fieldof human-computer interaction. There are many sets of usability design heuristics; they are notmutually 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 thescientific application of a set of tools and methods to a software system which is meant to resultin 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 thesoftware 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 onthe user\'s experience and interaction. The goal of user interface design is to make the user\'sinteraction as simple and efficient as possible, in terms of accomplishing user goals — what is
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 17/34
often called user-centered design. Good user interface design facilitates finishing the task at handwithout 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 thesystem that is being designed. The team also reviews at the proposed hardware architecture anddevelops a very basic software architecture. This architecture definition will be further refined inCo-Design.
Use Cases are also used in this stage to analyze the system. Use cases are used to understand theinteractions between the system and its users. For example, use cases for a telephone exchangewould specify the interactions between the telephone exchange, its subscribers and the operatorswhich maintain the exchange.
14.define task design.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 18/34
Designing a task requires that all the interfaces that the task needs to support should be very welldefined. 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 theapplication of systems theory to product development. There is some overlap with the disciplinesof 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 agroup 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 forthe design and implementation of the system.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 19/34
19. what is meant by data acquisition?
data acquisition is the sampling of real world physical conditions and conversion of theresulting samples into digital numeric values that can be manipulated by a computer. Sometimesabbreviated DAQ, data acquisition typically involves the conversion of analog signals andwaveforms 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 todigital 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 onthe project\'s progress. If the project deviates from the plan, then the project manager can takeaction to correct the problem. Project monitoring and control involves status meetings to gatherstatus from the team. When changes need to be made, change control is used to keep theproducts up to date.
Part b-(16marks)
1. (a) Which is a measure of interconnection among modules in a program structure?
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 20/34
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.
------------------------------------------------------------------------------------------------------
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 21/34
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 internalsof 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 entireprogram before it gets to the customer with specific indent of finding and removing all errors. Inorder to find the highest number of errors, test must be conducted systematically and test casesmust 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 LOCand FP estimated are plugged into estimation model. The empirical data that support mostestimation models are derived from a limited sample of projects. So, results obtained frommodels should be used judiciously. The model must be tested and compared with actual andpredicted data.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 22/34
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. Bothactivities 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 Lehman’s 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 SoftwareEngineering 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
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 23/34
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 thesystem, 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 bemodified to correct errors that are found in operation, improve its performance or other nonfunctional 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\'srequirements. Performance testing depends upon the Load and Stress Testing, that is internally orexternally applied to the system.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 24/34
Load Testing : In this type of performance testing, the system is raised beyond the limitsin 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 thenormal 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 itchecks whether a small change in any component of the application does not affect theunchanged 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 atthe 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 insoftware 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, translucentbox testing or structural testing) uses an internal perspective of the system to design test casesbased on internal structure. It requires programming skills to identify all paths through thesoftware. The tester chooses test case inputs to exercise paths through the code and determinesthe appropriate outputs. In electrical hardware testing, every node in a circuit may be probed andmeasured; 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 anapplication. In procedural programming a unit may be an individual function or procedure.
17. what is the goal of unit testing?
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 25/34
The goal of unit testing is to isolate each part of the program and show that the individual partsare correct. A unit test provides a strict, written contract that the piece of code must satisfy. As aresult, 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 arecombined and tested as a group. It occurs after unit testing and before system testing. Integrationtesting 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 theintegrated 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 Systemtesting:
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 acomputer 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 onemay cause bugs to emerge in another.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 26/34
22.define Anti-debugging.
Anti-debugging is \"the implementation of one or more techniques within computer code thathinders 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.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 27/34
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.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 28/34
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?
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 29/34
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
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 30/34
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.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 31/34
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 p’s 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.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 32/34
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.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 33/34
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.
8/4/2019 Software Engineering 2 Marks
http://slidepdf.com/reader/full/software-engineering-2-marks 34/34
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.