0% found this document useful (0 votes)
25 views11 pages

Ans of Mid 1

Software Engineering is the organized process of creating and maintaining software to ensure efficiency and reliability. The document discusses various software development models, including the Waterfall and Prototyping models, along with their advantages and disadvantages. It also covers project management responsibilities, estimation techniques, and the importance of requirement gathering and analysis in software development.

Uploaded by

srushtird1410
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)
25 views11 pages

Ans of Mid 1

Software Engineering is the organized process of creating and maintaining software to ensure efficiency and reliability. The document discusses various software development models, including the Waterfall and Prototyping models, along with their advantages and disadvantages. It also covers project management responsibilities, estimation techniques, and the importance of requirement gathering and analysis in software development.

Uploaded by

srushtird1410
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/ 11

1) Define Software Engineering.

Tell why
there is a need for Software Engineering.
Definition of Software Engineering:

Software Engineering is a set of istuction that tells to device that what to do and how
to do

Software Engineering is the process of creating and maintaining


software in a planned and organized way to make it work correctly
and efficiently.

Need for Software Engineering:


s/w shouud be cost effective as per the usages
s/w shoud be efficiant to use
s/w should be properly documented so we can re-refer it in future
s/w should have capability to have provide failure free service.
s/w should be reusable mens it’scode or logic should be resuable
this things wiil make s/w development organized that,s whay we need for s/w engineering

2) Classical Waterfall Model:


The Waterfall Model is a step-by-step software development process where each
phase is completed before moving to the next.

it is called as traditional model

It follows a linear and sequential approach.


Advantages:
✔ Simple and easy to use.
✔ Works well for small projects with clear requirements.
✔ Each phase has a well-defined output.
✔ In divides complex tasks into smaller, more manageable works.

Disadvantages:

❌ Hard to make changes once a phase is completed.


❌ Errors found in later stages are costly to fix.
❌ Not suitable for complex and long-term projects.

3) Explain sof
tware engineering layered approach with
neat figure.

1. Quality Focus Layer


· Mainly focuses on quality product
· It checks whether the output meets with its requirement or
not
· It provides security to the s/w so that data can be accessed
by authorized person
2. Process Model
· It is the heart of s/w engg.
· It is the foundation or base layer
· It is set of activities together & performed properly, then the
desired result would be produced
· Main objective of this layer is to deliver s/w in time.
3. Method Layer
· It gives the answers to all "how to do" questions
· includes steps like coding, testing, and debugging.
· It has the information of all the tasks
4. Tools
· It provides support to below layers
· Due to this layer, process is executed in proper manner
4) Describe Prototyping Model and list out its
disadvantages.
 In this model, a basic version (prototype) of the software is made first. Users
check it, give feedback, and changes are made until they are satisfied. Then, the
final software is developed.
 The prototype is usually not the final product but helps refine the actual
system.
 use to make GUI

Disadvantages:

❌ Takes more time because changes keep happening.


❌ Costs more due to multiple updates.
❌ Users may misunderstand and think the prototype is the final product.
❌ Not good for big projects as prototypes may not cover all features.

8) List various Umbrella activities of the


software process model.
 Performed throughout the process.
 These activities are independent of any framework activity.

Software Project Tracking & Control


 Allows the S/w team to check progress of software development.

FTR (Formal Technical Reviews)


 Reviewing the technique that has been used in the project.

SQA (S/w Quality Assurance)


 Ensure the quality of S/w.
 Checking S/w Development process with predefined standards.

Documentation:
 All the project planning and other activities should be hard copy.

Reusability Management:
 Each part of the S/w Project they can be connected or any kind of support can be given to
them. Later to update or upgrade the S/w.

Measurement:
 Include all the measurement estimation of S/w project.
 E.g. time estimation, cost estimation.

Risk Management:
 Series of steps that help a software team to understand & manage uncertainty.

9) Compare Traditional model and agile


Approach.

Traditional Model Agile Approach


(Waterfall)
it is used to developed simple it is used to developed
s/w complicated s/w
it provides less security it provides High security

it is used by freshers it is used by professionals


usfuull in small project usefull in large and complex project
The cost of development is The cost of development is
High. less.

High risk due to late testing. Low risk as issues are


detected early.
Large, well-defined projects Dynamic projects where
with stable requirements. requirements may change.

UNIT-3
1) What do you mean by project
monitoring and control?
Project Monitoring and Control:
Project monitoring and control is the process of tracking, evaluating, and adjusting
a software project to ensure it meets its goals.

Key Points:
 Ensures the project is completed on time, within budget, and as per requirements.
 Identifies problems early and takes corrective actions.
 Tracks resources, costs, tasks, and team performance.
 Ensures that the software meets quality standards at every stage.
 Helps in better decision-making by providing regular project updates.

This process keeps the project on track and ensures successful delivery. ✅

2) Explain Lines of code based size


estimation technique.
LOC is a method to estimate the size of a software project by counting the number
of lines in the source code. It helps in predicting effort, time, and cost needed for
development.

How It Works:
 The total number of source code lines is counted.
 Comments and blank lines are not included in the count.
 The project is divided into modules, and LOC is estimated for each module.
 More lines of code generally mean more effort, cost, and time required.

Disadvantages of LOC Estimation:

❌ Depends on coding style – Different programmers write code differently.


❌ Ignores complexity – A small but complex code may take more effort.
❌ Not useful in early stages – LOC can be counted only after coding starts.

Advantages of LOC-Based Size Estimation:

✅ Easy to Measure – Simple method to count lines of code.


✅ Useful for Productivity Calculation – Helps track developer efficiency.
✅ Works Well for Small Projects – Gives a rough estimate of effort and cost.
✅ Used for Comparing Projects – Helps compare different software systems

3) Discuss the responsibilities of


software project manager.

A Software Project Manager is responsible for planning, executing, and


completing a software project successfully.
Key Responsibilities:

1. Project Planning – Defines project goals, timeline, and budget.


2. Cost Estimation – Estimates resources, effort, and total project cost.
3. Scheduling – Creates a timeline for tasks and assigns responsibilities.
4. Team Management – Builds and manages a skilled development team.
5. Risk Management – Identifies and minimizes project risks.
6. Project Monitoring & Control – Tracks progress and makes necessary adjustments.
7. Quality Assurance – Ensures the software meets required standards.
8. Client Communication – Maintains regular updates and discussions with the client.

A good project manager ensures timely delivery of high-quality software within


budget. ✅

4) Explain COCOMO model with example


COCOMO Model -Constructive Cost Model):

The COCOMO Model is a software cost estimation model

It helps estimate effort, time, and cost based on the size of the project (measured in
KLOC – Kilo Lines of Code).

Types of COCOMO Models:

1. Basic COCOMO – Estimates effort using only the size of the project.
2. Intermediate COCOMO – Considers project complexity, team experience, and other factors.
3. Complete COCOMO – Breaks the project into modules and estimates each separately.

Basic COCOMO Formula:


 Effort (E) = a1 × (KLOC) ^ a2 PM
 Development Time (Tdev) = b1 × (Effort) ^ b2 Months

Where a1, a2,b1, b2 are constants based on the project type:

 Organic (Small, simple projects)


 Semi-Detached (Medium-sized projects)
 Embedded (Large, complex systems)

UNIT_2

1) Explain Requirement gathering and


Analysis
Requirement Gathering and Analysis is the first step in software development. It
helps understand what the user wants from the software and ensures there are no
misunderstandings before development starts.

Steps in Requirement Gathering and Analysis:

1. Requirement Gathering

 Collecting information from the customer.


 Understanding user needs through meetings, surveys, and documents.
 Studying existing systems to see what can be improved.

2. Requirement Analysis

 Checking if the collected requirements are clear, complete, and possible.


 Removing conflicts and misunderstandings in requirements.
 Recording requirements in System Requirement Specification (SRS).

Methods of Requirement Gathering:

✔ Interviews – Talking to users and stakeholders.


✔ Surveys & Questionnaires – Collecting feedback through forms.
✔ Brainstorming – Discussing ideas with the team and users.
✔ Task & Scenario Analysis – Understanding how users will use the software.

2) What is SRS? Explain the contents of


SRS & Characteristics of good SRS.
SRS-Software Requirement Specification

SRS is a document that clearly defines what the software should do.

It is created after requirement gathering and analysis and serves as a blueprint for
developers.

Contents of SRS:

1. Customer Requirements – Needs and expectations of users.


2. Functional Requirements – Features and functions the software must provide.
3. Non-Functional Requirements – Performance, security, usability, etc.
4. Constraints – Limitations like technology, budget, or regulations.

Characteristics of a Good SRS:


✔ Complete – Covers all user requirements.
✔ Clear & Simple – Easy to understand, no confusion.
✔ Structured – Well-organized and easy to follow.
✔ Modifiable – Easy to update when needed.
✔ Traceable – Each requirement can be linked to development and testing.
✔ Adaptable – It should be adaptable in both sides from the clients as well as from the
developers
3) What is DFD? Explain the symbols
used in DFD.
DFD-Data Flow Diagram

A Data Flow Diagram (DFD) is a graphical way to show how data moves within a
system.

It represents input, processing, storage, and output without focusing on how the
system works internally.

Symbols Used in DFD:

1. Process

 Symbol:

 Process is represented by circle or bubble


 Represents an action or operation performed on data.

 Circles are labeled with the names of the tasks or actions they perform.
 Example: "Calculate Salary"

2. External Entity (Source/Destination)

 Symbol:

 An entity is shown as a rectangle in DFD.


 It is outside the system and can send or receive data.
 It represents the source (input) or destination (output) of data.

3. Data Flow
 Symbol:

 Data flow is represented by an arrow.


 It shows how data moves in the system.
 It connects processes and entities by transferring data.
 It carries data from one part of the system to another.

4. Data Store (File/Database)

 Symbol:

 Data store is represented by two parallel lines.


 Generally it is a logical file or database.
 it can be a data structure in memory or a file on disk.

5. Output

 Symbol:

 Output is used when a hardcopy is produced.


 It is graphically represented by a rectangle cut either a side.

Why Use DFD?

✔ Helps in understanding system flow easily.


✔ Useful for designing and analyzing a system.
✔ Shows data movement clearly without technical details.

DFD makes complex systems easy to understand by showing how data flows
between different parts. ✅
4) Draw the DFD levels of any particular
system
‘'ææææææææææ

You might also like