E.G.S. PILLAY ENGINEERING COLLEGE Rev.0 Nagore …coe.egspec.org/ct12017/pdf/1702CA203.pdf ·...

15
E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai) Nagore Post, Nagapattinam 611 002, Tamilnadu. Rev.0 COE/2018/QB 1702CA203 SOFTWARE ENGINEERING METHODOLOGIES Academic Year : 2017-2018 Question Bank Programme : MCA Year / Semester : I / II Course Coordinator : Mrs.S.Visalatchy Course Objectives Course Outcomes: 1. To provide an insight into the processes of software development. 2. To understand and practice the various fields such as analysis, design, development, testing of Software Engineering. 3. To develop skills to construct software of high quality with high reliability. 4. To apply metrics and testing techniques to evaluate the software. On completion of the course, students will be able to CO1: Familiarize the basic concepts of Software Engineering and various models. CO2: Model software projects into high level design using DFD,UML diagrams. CO3: Perform software testing on various applications. CO4: Apply various software metrics on software quality products. PART A ( 2 Mark Questions With Key) S.No Questions Mark COs BTL UNIT I INTRODUCTION 1 Define software engineering paradigm. 2 1 K1 To solve actual problems in an industry, a software engineer or a team of engineers must combine a development strategy that includes the process, methods and tools. This strategy is referred as software engineering paradigm or process model 1.5 There exist various software development strategies or process models. 0.5 2 Give the difference between “known risks” and “predictable risks”. 2 1 K1 Known Risks: That can be not covered after careful computation of the project plan, business and technical environment in which the product is being build up. Illustration: Impractical delivery rate. 1 Predictable Risks: Extrapolated from the past project experience. Illustration: Staff turn-over. 1 3 Define software prototyping. 2 1 K1 Software prototyping is defined as a rapid software development for validating the requirements. 4 What are the disadvantages of linear sequential model? 2 1 K1 Once an application is in the testing stage, it is very difficult to go back and change something that was not well-thought out in the concept stage. High amounts of risk and uncertainty. 1 Not a good model for complex and object-oriented projects. Poor model for long and ongoing projects. 1 5 What is the difference between systems engineering and software engineering? 2 1 K1 System engineering It deals with all aspects of computer-based system development. It is to identify the roles of hardware, software, people, database and other system elements involved with that system which is going to be developed. 1 Software engineering It is a part of system engineering. It is to tell the practicalities of developing and delivering useful software. 1 6 Write the approaches for Software process assessment. 2 1 K1

Transcript of E.G.S. PILLAY ENGINEERING COLLEGE Rev.0 Nagore …coe.egspec.org/ct12017/pdf/1702CA203.pdf ·...

E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai)

Nagore Post, Nagapattinam – 611 002, Tamilnadu.

Rev.0 COE/2018/QB

1702CA203 SOFTWARE ENGINEERING METHODOLOGIES

Academic Year : 2017-2018 Question Bank

Programme : MCA

Year / Semester : I / II Course Coordinator : Mrs.S.Visalatchy

Course Objectives Course Outcomes: 1. To provide an insight into the processes of software

development.

2. To understand and practice the various fields such as

analysis, design, development, testing of Software

Engineering.

3. To develop skills to construct software of high quality

with high reliability.

4. To apply metrics and testing techniques to evaluate the

software.

On completion of the course, students will be able to

CO1: Familiarize the basic concepts of Software

Engineering and various models.

CO2: Model software projects into high level design

using DFD,UML diagrams.

CO3: Perform software testing on various applications.

CO4: Apply various software metrics on software

quality products.

PART – A ( 2 Mark Questions With Key)

S.No Questions Mark COs BTL

UNIT I – INTRODUCTION

1 Define software engineering paradigm. 2 1 K1

To solve actual problems in an industry, a software engineer or a team of engineers must

combine a development strategy that includes the process, methods and tools. This strategy is

referred as software engineering paradigm or process model

1.5

There exist various software development strategies or process models. 0.5

2 Give the difference between “known risks” and “predictable risks”. 2 1 K1

Known Risks:

That can be not covered after careful computation of the project plan, business and technical

environment in which the product is being build up.

Illustration: Impractical delivery rate.

1

Predictable Risks:

Extrapolated from the past project experience.

Illustration: Staff turn-over.

1

3 Define software prototyping. 2 1 K1

Software prototyping is defined as a rapid software development for validating the requirements.

4 What are the disadvantages of linear sequential model? 2 1 K1

Once an application is in the testing stage, it is very difficult to go back and change

something that was not well-thought out in the concept stage.

High amounts of risk and uncertainty.

1

Not a good model for complex and object-oriented projects.

Poor model for long and ongoing projects.

1

5 What is the difference between systems engineering and software engineering? 2 1 K1

System engineering

It deals with all aspects of computer-based system development.

It is to identify the roles of hardware, software, people, database and other system elements

involved with that system which is going to be developed.

1

Software engineering

It is a part of system engineering.

It is to tell the practicalities of developing and delivering useful software.

1

6 Write the approaches for Software process assessment. 2 1 K1

E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai)

Nagore Post, Nagapattinam – 611 002, Tamilnadu.

Rev.0 COE/2018/QB

Obtaining guidance for improving software development and test processes

Obtaining an independent and unbiased review of the process

Obtaining a baseline (defined as a set of software components and documents that have been

formerly reviewed and accepted; that serves as the basis for further development) for

improving quality and productivity of processes.

7 What are the benefits of prototyping? 2 1 K1

1. Prototyping serves as a basis for deriving system specification.

2. Design quality can be improved.

3. System can be maintained easily.

4. Development efforts may get reduced.

5. System usability can be improved.

8 What are the various rapid prototyping techniques? 2 1 K1

1. Dynamic high level language development.

2. Database programming.

3. Component and application assembly.

9

What is Software Engineering? 2 1 K1

The application of a systematic, disciplined, quantifiable approach to the development,

operation, and maintenance of software; that is, the application of engineering to software.

10 How does Personal Software Process(PSP) differ from Team Software Process(TSP)? 2 1 K2

The Personal Software Process (PSP) is an SEI technology that brings discipline to the practices

of individual software engineers, dramatically improving product quality, increasing cost and

schedule predictability, and reducing development cycle time for software.

1

The Team Software Process (TSP) is a complementary SEI technology that enables teams to

develop software-intensive products more effectively. TSP shows a team of engineers how to

produce quality products for planned costs and on aggressive schedules.

1

11 What is a process Framework? 2 1 K1

Establishes foundation for a complete software process. 1

By identifying a small number of framework activities that are applicable for all software

projects regardless of their size and complexity.

1

12 What are the Generic Framework Activities? 2 1 K1

Communication.

Planning.

Modeling.

Construction.

Deployment.

13

Define Stakeholder. 2 1 K1

Anyone who has stake in successful outcome of project. Business managers, end users, software

engineer, support people.

14 How the process models differ from one another? 2 1 K1

Based on flow of activities.

Inter dependencies between activities.

Manner of quality assurance.

Manner of project tracking.

Team organization and roles.

Work products identify an requirement identifier

15 What are the drawbacks of RAD model? 2 1 K1

Require sufficient number of human resources to create enough number of teams.

Developers and customers are not committed, system result in failure.

1

Not properly modularized building component may problematic.

Not applicable when there is more possibility for technical risk.

1

UNIT II – REQUIREMENT ANALYSIS

1 Define Metrics for software. 2 1 K1

E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai)

Nagore Post, Nagapattinam – 611 002, Tamilnadu.

Rev.0 COE/2018/QB

A software metric is a measure of software characteristics which are quantifiable or countable.

Software metrics are important for many reasons, including measuring software performance,

planning work items, measuring productivity, and many other uses.

2 Mention the different types of software metrics. 2 1 K1

1. Productivity Metrics.

2. Quality Metrics.

3. Technical Metrics.

4. Size-Oriented Metrics.

5. Function oriented Metrics.

6. Human-oriented Metrics.

3 What is the difference between verification and validation? 2 1 K2

Verification Validation

1. Are we building the product right? 1. Are we building the right product? 1

2. Verification shows conformance with

specification.

2. Validation shows that the program meets the

customer’s needs.

1

4 List the common errors in verification process. 2 1 K1

Incomplete specifications

Misunderstand of customer communication

Deviation from specifications

Violation of programming standards

Errors in data representation

5 List out the elements of analysis model. 2 1 K1

i. Data Dictionary

ii. Entity Relationship Diagram

iii. Data Flow Diagram

iv. State Transition Diagram

v. Control Specification

vi. Process specification

6 What are the information’s available in the data dictionary? 2 1 K1

Precise definition of data elements, User names, roles and privileges, Schema objects, Integrity

constraints, stored procedure, General data base structure, Space allocations.

7 Why it is difficult to gain a clear understanding of what the customer wants? 2 1 K2

Customer requirement is gathered at particular period of time. So the customer is not able to

predict the future which they are going to work. So it is difficult to gain a clear understand about

what they wants.

8 What are the five distinct steps in requirement engineering? 2 1 K1

Requirement inception

Requirement elicitation

Requirement elaboration

Requirement analysis and negotiation

Requirement specification

9 What are the non functional requirements for software? 2 1 K2

The non functional requirements define system properties and constraints. Various properties of

the system can be Reliability, response time, storage requirements. Constraints of the system can

be Input and output device capability, system representations.

10 What is CSPEC? 2 1 K2

A control specification (CSPEC) represents the behaviour of the system (at the level from which

it has been referenced) in two different ways.

The CSPEC contains a state diagram that is a sequential specification of behaviour.

It can also contain a program activation table—a combinatorial specification of behaviour.

11 Define requirement engineering process. 2 1 K1

Requirement engineering is the process of establishing the services that the customer requires

from the system and the constraints under which it operates and is developed.

12 What is Class Based Modelling? 2 1 K2

E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai)

Nagore Post, Nagapattinam – 611 002, Tamilnadu.

Rev.0 COE/2018/QB

A CRC model is really a collection of standard index cards that represent classes. The cards are

divided into three sections. Along the top of the card you write the name of the class. In the body

of the card you list the class responsibilities on the left and the collaborators on the right.

13 List out the basic principles of software project scheduling? 2 1 K1

Compartmentalization.

Interdependency.

Time Allocation.

Effort Validation.

Defined Responsibilities.

Defined Outcomes.

Defined Milestones.

14 What are the elements for requirement model? 2 1 K1

Scenario-based elements.

Data models

Class-based elements.

Behavioural elements

Flow-oriented elements.

15 What is Domain Analysis? 2 1 K2

Software domain analysis is the identification, analysis, and specification of common

requirements from a specific application domain, typically for reuse on multiple projects within

that application domain

UNIT III – SOFTWARE DESIGN

1 List of principles of a software design. 2 2 K2

i. The design process should not suffer from ―tunnel vision‖.

ii. The design should be traceable to the analysis model.

iii. The design should exhibit uniformity and integration.

iv. Design is not coding.

v. The design should not reinvent the wheel.

2 What are the characteristics of a good design? 2 2 K2

Understanding

Meaning

Value

Engagement

Fit

Emotion

3 Define Abstraction. 2 2 K1

Abstraction is a process of consolidating on entire set of detailed attributed by using a few

central traits or even a single name to represent them. It is a tool that allows us to deal with

concepts apart from particular instances or those concepts.

4 List out the types of Abstraction? 2 2 K1

a. Function al abstraction.

b. Data abstraction.

c. Control abstraction.

5 Define Modularity. 2 2 K1

Module is a small functional routine.

It can stand on itself or it can be coupled with other application also.

Modular systems incorporate collections of abstraction.

A modular system consists of well-defined manageable units with well-defined interface

among units.

6 How the architecture design can be represented? 2 2 K2

Architecture design can be represented by one or more different models. They are:

a. Structural Models.

E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai)

Nagore Post, Nagapattinam – 611 002, Tamilnadu.

Rev.0 COE/2018/QB

b. Framework Models.

c. Dynamic Models.

d. Process Models.

7 What is cohesion? 2 2 K2

Indication of relative functional strength of a module.

Natural extension of information hiding.

Performs a single task, requiring little integration with other components.

8 What are the different types of coupling? 2 2 K2

a. Content Coupling.

b. Common Coupling.

c. Control Coupling.

d. Stamp Coupling.

e. Data Coupling.

f. Routine Call Coupling.

g. Type Use Coupling.

h. Inclusion or Import Coupling.

i. External Coupling.

9 What is the various design notations are there? 2 2 K2

1. Dataflow diagram.

2. Structure charts.

3. HIPO diagram.

4. Pseudo code.

10 What are use-cases? 2 2 K2

A use case in software engineering is a description of a system’s behavior as it responds to a

request that originates from outside of that system. In other words, a use case describes ―who‖

can do ―what‖ with the system in question. The use case technique is used to capture a system’s

behavioral requirements by detailing scenario-driven threads through the functional requirements

11 What are the different types of Cohesion? 2 2 K1

*Coincidentally cohesive

* logically cohesive

*Temporal cohesion

* Procedural Cohesion

* Communicational cohesion

12 Define real time system. 2 2 K1

Real time system is a software system in which the correct functionalities of the system are

dependent upon results produced by the system and the time at which these results are produced.

13 What are the characteristics of distributed system design? 2 2 K2

Fault-Tolerant: It can recover from component failures without performing incorrect

actions.

Highly Available: It can restore operations, permitting it to resume providing services even

when some components have failed.

Recoverable: Failed components can restart themselves and rejoin the system, after the

cause of failure has been repaired.

Consistent: The system can coordinate actions by multiple components often in the

presence of concurrency and failure.

Scalable: It can operate correctly even as some aspect of the system is scaled to a larger

size.

Predictable Performance: The ability to provide desired responsiveness in a timely

manner.

Secure: The system authenticates access to data and services.

14 What is the importance of Documentation? 2 2 K2

Documentation is an important part of Software Engineering. It is a viable part of Software

Development process and without it, it is hard to maintain any project and the developers have to

E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai)

Nagore Post, Nagapattinam – 611 002, Tamilnadu.

Rev.0 COE/2018/QB

re-invent the wheel

15 What are the major issues of designing reuse? 2 2 K2

The design reuse process has four major issues:

1. Retrieve

2. Reuse

3. Repair

4. Recover

UNIT IV – SOFTWARE TESTING

1 Define software Testing. 2 3 K1

Testing can be described as a process used for revealing defects in software, and for establishing

that the software has attained a specified degree of quality with respect to selected attributes.

2 What are the principles of testing the software engineer must apply while performing the

software testing?

2 3 K2

All tests should be traceable to customer requirements.

Tests should be planned long before testing begins.

The Pareto principle can be applied to software testing-80% of all errors uncovered

during testing will likely be traceable to 20% of all program modules.

Testing should begin ―in the small‖ and progress toward testing ―in the large‖.

Exhaustive testing is not possible.

To be most effective, an independent third party should conduct testing.

3 Distinguish black box and white box testing. 2 3 K2

Black Box Testing White Box Testing

1. Black box testing is called behavioural

testing

2.It examines a system functionality with

testcase input and output.

1. white box testing is called glass box testing

2. Here the procedural details, all the logical paths,

all the internal data structures are closely

examined.

4 What is meant by cyclomatic complexity? 2 3 K1

Cyclomatic complexity is a software metric that gives the quantitative measure of logical

complexity of the program

V(G)=E-N+2

E-Number of flow graph edges

N-Number of flow graph nodes

5 Differentiate between testing and debugging. 2 3 K2

Testing Debugging

Testing as a dual purpose

process

Reveal defects

And to evaluate quality attributes

Debugging or fault localization is the process of

Locating the fault or defect

Repairing the code, and

Retesting the code.

6 List out the characteristics of testability of software? 2 3 K1

Operability.

Controllability.

Decomposability.

Simplicity.

Stability.

Understand ability.

7 What problems may be encountered when Top-Down Integration is chosen? 2 3 K2

Delays are test until stubs replace with actual modules.

Develop stubs that perform limited functions that simulate the actual module.

Integrate the software from the bottom of the hierarchy upward.

8 What are the steps in bottom-up integration? 2 3 K2

Low level components are combined into clusters perform specific software sub function.

Driver is written to coordinate test case input and output.

Cluster is tested.

E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai)

Nagore Post, Nagapattinam – 611 002, Tamilnadu.

Rev.0 COE/2018/QB

Drivers are removed and clusters are combined moving inward in program structure.

9 What is the objective of unit testing? 2 3 K2

The objective of unit testing is to test the modules individually in order to detect the defect.

10 What are the steps involved in testing real time system? 2 3 K2

*Task testing

* Behavioural Testing

*Inter task Testing

*System Testing

11 What is the use of drivers and stubs in testing? 2 3 K2

A driver is a main program that accepts test case data, passes such data to the component and

print relevant results.

A stub or dummy subprogram uses the subordinate module’s interface, may do the minimal data

manipulation, prints verification of entry and returns control to the module undergoing testing.

12 What are the errors uncovered by black box testing? 2 3 K2

Incorrect or missing functions

Interface errors

Errors in data structures

Performance errors

Initialization or termination error

13 Why tests are important with respect to software? 2 3 K2

The purpose of software testing is to ensure whether the software functions appear to be working

according to specifications and performance requirements. This helps in improving the overall

quality of the software.

14 What are the attributes of good test? 2 3 K2

a. High probability of finding errors.

b. Not redundant.

c. Best of breed‖

d. Neither too simple nor too complex.

15 What are the limitations of testing? 2 3 K2

In traceability

Undesirability

UNIT V – SOFTWARE MAINTENANCE AND SOFTWARE METRICS

1 What are the types of maintenance? 2 4 K2

Corrective maintenance: maintenance for correcting the software faults

Adaptive maintenance: maintenance for adapting the change in environment.

Enhancement maintenance: modifying or enhancing the system to meet the new

requirements

Preventive maintenance: changes made to improve future maintainability.

2 What is software configuration management? 2 4 K2

The software configuration management is a mechanism for

Identifying.

Controlling.

Tracking.

3 What are the components of the cost of quality? 2 4 K2

Quality costs.

Prevention costs.

Appraisal costs.

4 What is software quality control? 1 4 K2

Involves series of inspections reviews and tests.

Used throughout software process to ensure each work product meets requirements placed

E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai)

Nagore Post, Nagapattinam – 611 002, Tamilnadu.

Rev.0 COE/2018/QB

upon it.

5 What are baseline criteria in SCM? 1 4 K2

a) Help to control change.

b) Specification or product that has been formally.

c) Reviewed and agreed upon serves as basis for future development.

d) That can be change only through formal change control procedures.

6 List out the elements of SCM? 2 4 K1

Component elements.

Process elements.

Construction elements.

Human elements.

7 What are the features supported by SCM? 2 4 K2

Versioning.

Dependency tracking and change management.

Requirements tracking.

Configuration Management.

Audit trails.

8 What are the objectives of SCM process? 2 4 K2

Identify all items, collectively define software configuration.

Manage changes to one or more these items.

Facilitate construction of different version of an application.

Ensure that the software quality is maintained.

9 What do you understand by direct measure and indirect measure with respect to software? 2 4 K2

Direct measures of the software engineering process include cost and effort applied. Direct

measures of the product include lines of code (LOC) produced, execution speed, memory size,

and defects reported over some set period of time.

Indirect measures of the product include functionality, quality, complexity, efficiency,

reliability, maintainability, and many other "–abilities".

10 List out few product and process metrics. 2 4 K1

Process metrics: Lines of code or function points per module and function, defect reported

for major software function, errors found during formal technical review.

Product metrics: Metrics for testing , maintenance ,quality

11 Define CASE Tools. 2 4 K1

It is system software.

Provide automated support for software process activities.

Includes program used to support software process activities such as requirement analysis,

system modelling, debugging and testing.

12 What are the types of CASE Tools? 2 4 K1

Types of CASE Tools.

1. Upper CASE Tools.

2. Lower CASE Tools.

13 What is meant by metrics and measurement? 2 4 K1

Metrics is the degree to which a system component or processes possesses a given attribute. The

software metrics relate several measures.

Eg: average no. of errors found per review.

Measurement means deriving a numeric value for an attribute of a software product or process.

14 What are the building blocks of CASE? 2 4 K2

CASE has the following components, Environment architecture, Hardware platform, Operating

system, Portability services, Integration frame work, and CASE tools

15 Define software reliability. 2 4 K1

Software reliability is defined in statistical terms as "the probability of failure-free operation of a

E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai)

Nagore Post, Nagapattinam – 611 002, Tamilnadu.

Rev.0 COE/2018/QB

computer program in a specified environment for a specified time"

PART – B (12 Mark Questions with Key)

S.No Questions Mark COs BTL

UNIT I – INTRODUCTION

1 Explain linear life cycle model in detail. Give the advantages and disadvantages of the same 12 1 K2

Diagram for Waterfall model

The model encompasses the following activities:

1. System/information engineering and modelling

2. Software requirement analysis

3. Design

4. Code generation

5. Testing

6. Support

Advantages and disadvantages

4

5

3

2 Explain in detail the spiral model with a neat sketch and discuss its merits and demerits. 12 1 K2

It is an evolutionary software process model.

Combines the elements of the linear sequential model with

iterative nature of prototyping

Used for the development of large scale systems and software.

Spiral model diagram

The task regions are:

Customer communication

Planning

Risk analysis.

Engineering.

Construction and release.

Customer evaluation.

4

8

3 Explain the various prototyping approaches or prototyping models in detail. 12 1 K2

i. Evolutionary Prototyping

Objective is to deliver a working system to end user

Start with the user requirements which are best understood.

Diagram for Evolutionary prototyping.

Advantages

Accelerated delivery of the system

User engagement with the system

Problems

Management problems

Maintenance problems

Contractual problems

ii. Throw-away Prototyping

Objective is to validate or derive the system requirements.

Diagram for Throw away prototyping

Start with those requirements that are not well understood.

Advantages

Requirements risks are very less.

Problems

It can be undocumented.

Changes made during the software development proceed may degrade the system

structure.

Sometimes organizational quality standard may not be strictly applied.

4

2

2

2

2

4 Discuss in detail the RAD model with a neat sketch and discuss its advantages and

disadvantages.

12 1 K2

Rapid Application Development Model is the type of incremental

Model. Diagram

2

E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai)

Nagore Post, Nagapattinam – 611 002, Tamilnadu.

Rev.0 COE/2018/QB

Phases include

1. Business modelling

2. Data modelling

3. Process modelling

4. Application generation.

5. Testing and turnover.

2

2

2

2

2

5 Write in detail about 12 Agility principles 12 1 K2

1. Our highest priority is to satisfy the customer through early and continuous

delivery of valuable software.

2. Welcome changing requirements, even late in development. Agile processes

harness change for the customer’s competitive advantage.

3. Deliver working software frequently, from a couple of weeks to a couple of

months, with a preference to the shorter timescale.

4. Business people and developers must work together daily throughout the

project.

5. Build projects around motivated individuals. Give them the environment and

support they need, and trust them to get the job done.

6. The most efficient and effective method of conveying information to and

within a development team is face-to-face conversation.

7. Working software is the primary measure of progress.

8. Agile processes promote sustainable development. The sponsors, developers,and users should

be able to maintain a constant pace indefinitely.

9. Continuous attention to technical excellence and good design enhances

agility.

10. Simplicity—the art of maximizing the amount of work not done—is

essential.

11. The best architectures, requirements, and designs emerge from self–

organizing teams.

12. At regular intervals, the team reflects on how to become more effective, then

tunes and adjusts its behavior accordingly.

6 Explain in detail about Industrial Extreme Programming (IXP). 12 1 K2

Explanation about IXP

Readiness assessment.

Project community.

Project chartering.

Test-driven management.

Retrospectives.

Continuous learning.

2

4

4

2

UNIT II –REQUIREMENT ANALYSIS

1 Discuss in detail about Requirements elicitation and analysis in requirements engineering. 12 1 K2

The activities involved in elicitation and analysis process are:

Collaborative Requirements Gathering

Quality Function Deployment

Normal requirements.

Expected requirements.

Exciting requirements. Elicitation Work Products

Usage Scenarios

2 What are the elements of Requirements model? Explain it. 12 1 K2

Scenario-based elements with example.

Class-based elements with example.

Behavioural elements with example.

Flow-oriented elements with example.

3

3

3

3

E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai)

Nagore Post, Nagapattinam – 611 002, Tamilnadu.

Rev.0 COE/2018/QB

3 Explain about Data Modeling concepts in requirement modeling in detail. With neat

diagram.

12 1 K2

Introduction

Data Objects

Data Attributes

Relationships

Examples with neat diagram.

2

2

2

2

4

4 Create a control flow in requirement modeling with neat diagrammatic representation. 12 1 K3

Introduction

The Control Specification

The Process Specification

PSPEC: process password

Examples with neat diagram.

3

3

3

3

5 Describe the process and product metrics in detail. 12 1 K2

Measures, Metrics, and Indicators

Metrics in the Process and Project Domains

Software Measurement

Reconciling Different Metrics Approaches

Metrics for Software Quality

Integrating Metrics Within the Software Engineering Process

Managing Variation: Statistical Quality Control

Metrics for Small Organizations

Establishing a Software Metrics Program

6 Discuss about classification of Metrics with neat diagram. 12 1 K2

Halstead’s Metrics

Graph Theoretic Metric

McClure’s Complexity Metric

Example with neat diagram.

3

3

3

3

UNIT III – SOFTWARE DESIGN

1 Explain the set of principles for software engineering design. 12 2 K2

The design process should not suffer from tunnel vision.

The design should be traceable to the analysis model.

The design should not reinvent the wheel.

The design should minimise intellectual distance between the software and the problem as it

exists in the real world.

The design should exhibit uniformity and integration.

The design should be structured to degrade gently, even with bad data, events, or operating

conditions are encountered.

The design should be reviewed to minimize conceptual (semantic) errors.

Design is not coding, coding is not design.

The design should be structured to accommodate change.

The design should be assessed for quality as it is being created.

2 Explain various design concepts in detail. 12 2 K2

Abstraction

Architecture

Patterns

Separation of Concerns

Modularity

Information Hiding

Functional Independence

Refinement

Aspects

E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai)

Nagore Post, Nagapattinam – 611 002, Tamilnadu.

Rev.0 COE/2018/QB

Refactoring

Object-Oriented Design Concepts

Design Classes

3 Define cohesion and coupling. Explain the various types in each of them. 12 2 K2

Definition for Cohesion

Types of Cohesion

Example

Definition for Coupling

Types of Coupling

Example

2

2

2

2

2

2

4 Explain the software documentation in detail. 12 2 K2

Introduction

Writing a good design documentation

Supporting documents

Program Unit Notebooks

Release Approval

Internal Documentation

2

2

2

2

2

2

5 Explain in detail about real-time and distributed system design with neat diagrammatic

representation.

12 2 K2

Real-time and Distributed System design Explanation.

Example with neat Diagram for real-time system.

Real-time programming

Example for Distributed System with neat diagram

The distributed architecture and design principles

4

2

2

2

2

6 Discuss in detail about software reuse. 12 2 K2

Reuse based software engineering

Benefits of reuse

Requirements for design reuse

Reuse Problem

Designing for reuse

Design with reuse is complementary to design for reusability

2

2

2

2

2

2

UNIT IV – SOFTWARE TESTING

1 Explain the bottom up testing with neat diagram 12 3 K2

Bottom up

Bottom Up Testing Strategies.

Bottom Up Testing Flow Diagram.

Advantages and disadvantages of Bottom Up Testing.

2

4

4

2

2 Explain the bottom up testing with neat diagram 12 3 K2

Bottom up

Bottom Up Testing Strategies.

Bottom Up Testing Flow Diagram.

Advantages and disadvantages of Bottom Up Testing.

2

4

4

2

3 Explain in detail about Unit Testing with neat diagram 12 3 K2

Unit Testing

Advantages and disadvantages of Unit Testing

Unit Testing Life Cycle

Unit Testing Techniques.

2

2

4

4

4 Explain Functional Testing verses structural Testing Coding. 12 3 K2

Functional Testing

Merits of Functional Testing

Demerits of Functional Testing

structural Testing Coding

2

2

2

2

2

E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai)

Nagore Post, Nagapattinam – 611 002, Tamilnadu.

Rev.0 COE/2018/QB

Merits of structural Testing Coding

Demerits of Functional Testing

2

5 Explain Functional Testing in detail. 12 3 K2

Functional Testing

Advantages and disadvantage of Functional Testing

Functional Testing Workflow

2

4

6

6 Explain structural Testing Coding in detail. 12 3 K2

Structural Testing Coding

Advantages and disadvantage of structural Testing Coding

Structural Testing Coding workflow

2

4

6

UNIT V – SOFTWARE MAINTENANCE AND SOFTWARE METRICS

1 How to measure the Process and Product attributes in detail. 12 4 K2

Product Vs Process

Process Metrics and software process improvement.

Project Metrics

Example with neat diagram.

4

4

2

2

2 Explain in detail about Direct and Indirect measure with examples. 12 4 K2

Size Oriented Metrics

Function-Oriented Metrics

Feature Point Metrics

Metrics for Software Quality

Integrating Metrics within Software process

2

2

2

3

3

3 Describe about Software Reliability. 12 4 K2

Software Reliability Metrics

Software Safety

Mistake-Proofing Software

ISO 9000 Quality Standards

The SQA Plan

4

2

2

2

2

4 Discuss in detail about Software Quality Assurance. 12 4 K2

Software Quality Assurance.

SQA Group Activities

Software Reviews

Cost impact of software defects

Formal Technical Reviews

Statistical Quality Assurance

Six Sigma for software Engineering

2

2

2

2

2

1

1

5 Explain in detail about Software Configuration Items with neat diagram. 12 4 K2

The SM repository

The Role of the Repository

General Features and Content

SCM Features

3

3

3

3

6 What is the Need for SCM? Explain it in detail with example. 12 4 K2

A SCM Scenario

Elements of a configuration Management System

Baselines.

4

4

4

PART – C (20 Mark Questions with Key)

S.No Questions Mark COs BTL

UNIT I – INTRODUCTION

E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai)

Nagore Post, Nagapattinam – 611 002, Tamilnadu.

Rev.0 COE/2018/QB

1 Case study for Project Plan and Software Requirements Specification. 20 1 K4

Project Plan

Explanation

5

15

2 Explain in detail about Extreme Programming (XP) in Agile model with example. 20 1 K2

XP Values

The XP Process

Industrial XP

The XP Debate

5

5

5

5

UNIT II – REQUIREMENT ANALYSIS

1 Develop a use case for Safe Home control panel. 20 1 K3

Identify the Actors

The basic use case for system activation to homeowner uses the control panel

Use case Diagram

The following template for detailed descriptions of use cases:

Use case: Initiate Monitoring

Primary actor: Homeowner.

Goal in context: To set the system to monitor sensors when the homeowner leaves

the house or remains inside.

Preconditions: System has been programmed for a password and to recognize

various sensors.

Trigger: The homeowner decides to ―set‖ the system, i.e., to turn on the alarm

functions.

Scenario:

1. Homeowner: observes control panel

2. Homeowner: enters password

3. Homeowner: selects ―stay‖ or ―away‖

4. Homeowner: observes read alarm light to indicate that SafeHome has been armed

Exceptions:

1. Control panel is not ready: homeowner checks all sensors to determine which are

open; closes them.

2. Password is incorrect (control panel beeps once): homeowner re enters correct

password.

3. Password not recognized: monitoring and response subsystem must be contacted

to reprogram password.

4. Stay is selected: control panel beeps twice and a stay light is lit; perimeter sensors

are activated.

5. Away is selected: control panel beeps three times and an away light is lit; all

sensors are activated.

Priority: Essential, must be implemented

When available: First increment

Frequency of use: Many times per day

Channel to actor: Via control panel interface

Secondary actors: Support technician, sensors

Channels to secondary actors:

Support technician: phone line

Sensors: hardwired and radio frequency interfaces

3

17

2 Explain in detail about Cost Estimation with example. 20 1 K2

Expert Judgment

Delphi estimation technique

Work Breakdown Structure(WBS)

6

8

6

UNIT III – SOFTWARE DESIGN

1 Explain in detail about data Flow Oriented Modeling with neat diagrammatic

representation.

20 2 K2

E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai)

Nagore Post, Nagapattinam – 611 002, Tamilnadu.

Rev.0 COE/2018/QB

Creating a control flow model

The Control Specification(CSPEC)

The Process Specification(PSPEC)

Class-Responsibility-Collaborator(CRC( Modeling

5

5

5

5

2 Discuss in detail about Software Architecture with diagrammatic representation. 20 2 K2

Why Architecture is important

Architectural Styles and Patterns

Refining the Architecture into components

Assessing alternative architectural designs

Analyzing Architectural design

Describing instantiations of the system

Architectural Complexity

Architectural Description Language

Mapping dataflow into a Software Architecture

Transform mapping

Transaction mapping

Functional Independence

2

3

2

2

2

2

2

1

1

1

1

1

UNIT IV – SOFTWARE TESTING

1 Case study for Testing Techniques. 20 3 K4

Testing Types with explanation

Test Case Design

Example with diagram.

10

5

5

2 Explain in detail about Software Testing fundamental with example. 20 3 K2

Software Testing Fundamentals

Testing Objectives

Testing Principles

Testability

5

10

5

UNIT V – SOFTWARE MAINTENANCE AND SOFTWARE METRICS

1 Explain in detail about CASE Taxonomy. 20 4 K2

Explanation about CASE Tools Types.

Configuration Management Features need by CASE Tools

15

5

2 Describe about SCM Task in detail with diagram. 20 4 K2

Identification of Objects in the Software Configuration

Version Control

Change Control

Configuration Audit

Status Reporting

6

5

3

3

3