0% found this document useful (0 votes)
44 views6 pages

20NE204 Advanced Software Engineering Key-Updated

Uploaded by

Loganayagi P
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
44 views6 pages

20NE204 Advanced Software Engineering Key-Updated

Uploaded by

Loganayagi P
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

1. What is prototyping?

Prototyping is defined as the process of developing a working replication of a


product or system that has to be engineered
2. Mention the need for software configuration management.
Software Configuration Management(SCM) is a process to systematically
manage, organize, and control the changes in the documents, codes, and other
entities during the Software Development Life Cycle.
3. What is the need for requirement analysis?
Requirements analysis is critical to the success or failure of a systems or software
project. The requirements should be documented, actionable, measurable,
testable, traceable, related to identified business needs or opportunities, and
defined to a level of detail sufficient for system design.
4. Define event class and Event messages.
Event class: an event is an action or occurrence recognized by software, often
originating asynchronously from the external environment, that may be
handled by the software.
Event Message: Events are objects or messages used when a software
components wants to notify a state change to other components.
5. What do you mean by refactoring?
Refactoring consists of improving the internal structure of an existing program's
source code, while preserving its external behaviour
6. Define data abstraction.
Data abstraction is the reduction of a particular body of data to a simplified
representation of the whole
7. What is smoke testing?
Smoke testing checks the core functionality of a program, to ensure that the
program is ready for further testing.
8. What do you mean by orthogonal array testing?
Orthogonal array testing is a black box testing technique that is a systematic,
statistical way of software testing. It is used when the number of inputs to the
system is relatively small, but too large to allow for exhaustive testing of every
possible input to the systems.
9. What is continues integration?
Continuous integration is a DevOps software development practice where
developers regularly merge their code changes into a central repository, after
which automated builds and tests are run.
10. Name the areas DevOps adaptation is preferred.
DevOps automation processes into four areas
Build,
Deployment,
Test, and
Infrastructure

11. a) Discuss about Classical and Iterative waterfall model?


Classical waterfall model divides the life cycle into a set of phases.
This model considers that one phase can be started after completion of
the previous phase. That is the output of one phase will be the input to
the next phase. Thus the development process can be considered as a
sequential flow in the waterfall. Here the phases do not overlap with
each other. The different sequential phases of the classical waterfall
model are shown in the below figure:

Let us now learn about each of these phases in brief details:

1. Feasibility Study:
2. Requirements analysis and specification:
o
3. Design: The aim of the design phase is to transform the
requirements specified in the SRS document into a structure
that is suitable for implementation in some programming
language.
4. Coding and Unit testing
5. Integration and System testing
6. Maintanance

The iterative waterfall model

provides feedback paths from every phase to its preceding phases,


which is the main difference from the classical waterfall model.

Feedback paths introduced by the iterative waterfall model are shown


in the figure below.
When errors are detected at some later phase, these feedback paths
allow correcting errors committed by programmers during some phase.
The feedback paths allow the phase to be reworked in which errors are
committed and these changes are reflected in the later phases. But,
there is no feedback path to the stage – feasibility study, because once
a project has been taken, does not give up the project easily.
It is good to detect errors in the same phase in which they are
committed. It reduces the effort and time required to correct the errors.

Phase Containment of Errors: The principle of detecting errors as


close to their points of commitment as possible is known as Phase
containment of errors.

b) Explain the basic concepts of project scheduling

Brief about the following


1. The product
2. The people
3. The software team
4. Agile team
5. Coordination and communication issues

12. a) Discuss in detail about functional and Non-functional requirements.

Functional Requirements: These are the requirements that the end


user specifically demands as basic facilities that the system should
offer. All these functionalities need to be necessarily incorporated into
the system as a part of the contract. These are represented or stated in
the form of input to be given to the system, the operation performed
and the output expected. They are basically the requirements stated by
the user which one can see directly in the final product, unlike the non-
functional requirements.

Non-functional requirements: These are basically the quality


constraints that the system must satisfy according to the project
contract. The priority or extent to which these factors are implemented
varies from one project to other. They are also called non-behavioral
requirements.
b) Briefly explain use case diagram with suitable example

1. explanation of the case study (8)


2. Use case diagram (8)
13. a) What is design pattern? Outline the model view controller architectural
design pattern with example

1. definition (4)

A design pattern is a general repeatable solution to a commonly


occurring problem in software design. It is a description or template for
how to solve a problem that can be used in many different situations.

2. MVC (12)
2.1 Client server
2.2. Peer to Peer
2.3. Three tier
2.4 Four tier
2.5 Pipe and filter

b) Write notes on user interface design.

1. Goal
2. Types of user interface
Graphical User Interfaces (GUI)
Command Line Interfaces (CLI)
Form-based interfaces.
Menu-based interfaces.
Natural language interfaces.

3. UID steps
4. UID activities
a) What is an integration testing? Brief the types of integration testing with an
example.

Definition (2)

Integration testing is the phase in software testing in which individual


software modules are combined and tested as a group.

Types of integration testing


 Bottom-Up Integration Testing
 Top-Down Integration Testing
 Mixed Integration Testing
 Big-Bang Integration Testing

b) Explain equivalence class partitioning boundary value analysis and


regression testing with an example.
boundary value analysis

Boundary Value Analysis and Equivalence Class Partitioning are the most
common technique in Black-box Testing Techniques for test case design.
Both are used to design test cases for validating a range of values for any
given input domain. Both these techniques are used together at all levels of
testing

Regression testing:

Regression testing verifies that recent code changes haven't altered or


destroyed the already existing functionality of a system. Regression testing
examples include iteration regression and full regression, and both can be
covered with manual and automated test cases

15. a) Appraise the pros and cons of using cloud as a platform for software
development and deployment (15)
Pros of Cloud:
1. Lower operational costs.
2. Increased IT resources.
3. Convenient, rapid access to technology.
4. Faster connectivity.
5. Greater scale.
6. Greater expertise.
7. More reliable infrastructure.
Cons of cloud
1. A complicated shared security model.
2. Complex pricing structures.
3. Outbound data transfer costs.
4. Less flexibility than DIY environments.
5. Sketchy, inconsistent customer support.
6. Fast, redundant connectivity.
7. Cloud-specific skills.
8. Country- or industry-specific regulatory requirements.

b) i. Outline the different characteristics of DevOps. (7)

Characteristics of a DevOps Organization

 Product-Based Teams Over Component Teams


 Obsession With Automation Over Preoccupation With Manual
Work
 Evidence-Based Over Gutfeel
 Teamwork Over Individual Work
 Fail Fast Over Delayed Learning
 Further Reading.

ii. Appraise the issues related to operational feasibility of DevOps. (6)

 Command-and-control leadership.
 Lack of a solid product management strategy.
 Poor application design and development process.

You might also like