software engineering 2 marks

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.

Upload: vishnupriya-omprakash

Post on 07-Apr-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Software Engineering 2 Marks

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.

Page 2: Software Engineering 2 Marks

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

Page 3: Software Engineering 2 Marks

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. 

Page 4: Software Engineering 2 Marks

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

Page 5: Software Engineering 2 Marks

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.

Page 6: Software Engineering 2 Marks

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 

Page 7: Software Engineering 2 Marks

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.

Page 8: Software Engineering 2 Marks

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?

Page 9: Software Engineering 2 Marks

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.

Page 10: Software Engineering 2 Marks

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?

Page 11: Software Engineering 2 Marks

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 

Page 12: Software Engineering 2 Marks

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.

Page 13: Software Engineering 2 Marks

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 .

Page 14: Software Engineering 2 Marks

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

Page 15: Software Engineering 2 Marks

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?

Page 16: Software Engineering 2 Marks

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

Page 17: Software Engineering 2 Marks

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.

Page 18: Software Engineering 2 Marks

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.

Page 19: Software Engineering 2 Marks

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?

Page 20: Software Engineering 2 Marks

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.  

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

Page 21: Software Engineering 2 Marks

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.

Page 22: Software Engineering 2 Marks

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 

Page 23: Software Engineering 2 Marks

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.

Page 24: Software Engineering 2 Marks

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?

Page 25: Software Engineering 2 Marks

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.

Page 26: Software Engineering 2 Marks

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.

Page 27: Software Engineering 2 Marks

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.

Page 28: Software Engineering 2 Marks

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?

Page 29: Software Engineering 2 Marks

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

Page 30: Software Engineering 2 Marks

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.

Page 31: Software Engineering 2 Marks

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.

Page 32: Software Engineering 2 Marks

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.

Page 33: Software Engineering 2 Marks

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.

Page 34: Software Engineering 2 Marks

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.