0% found this document useful (0 votes)
2 views

Unit 1

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

Unit 1

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 1

What is Software? Explain the Types of Software in Detail.

• Software is a set of instructions or programs that tells a computer how to perform specific tasks.
• It essentially directs the computer to carry out specific operations.

Types of Software:

1. System Software: This software is responsible for managing the computer hardware and
providing an interface for user applications. It controls internal operations of a computer system.
o Operating System (OS): Manages resources such as memory, CPU, storage, etc.
Examples: Windows, Linux, macOS.
o Language Processor: Converts high-level programming languages (e.g., Java, C++) into
machine code. Examples: Compilers, Interpreters.
o Device Driver: Software that allows the operating system to interact with hardware
devices like printers, monitors, and storage drives
2. Application Software: These programs are designed to perform specific tasks for the user.
o General Purpose Software: Designed for general use (e.g., MS Word, MS Excel,
PowerPoint).
o Customized Software: Tailored to the needs of specific users or organizations (e.g.,
payroll systems, reservation systems).
o Utility Software: Helps maintain the system and perform specific tasks like antivirus
programs, disk cleanup tools.

Difference Between System Software and Application Software

Feature System Software Application Software


Manages basic system resources and
Purpose Performs specific tasks to meet user needs.
processes.
Written in low-level languages (e.g., Written in higher-level languages (e.g.,
Language
assembly or machine code). Python, JavaScript).
Hardware Interacts closely with hardware; Does not interact directly with hardware;
Interaction supports specific hardware needs. does not take hardware into account.
Installed with the operating system,
Installation Installed by the user or admin when needed.
usually by the manufacturer.
Runs automatically when the computer
Runtime User triggers and stops the program.
is powered on.
User Works in the background; users usually Runs in the foreground; users directly
Interaction do not interact with it directly. interact with it to perform tasks.
Dependen Runs independently and is necessary for
Needs system software to function.
cy the system to function.
Necessity Essential for the system to function. Not essential for the system to function.

Explain Software Engineering as a Layered Technology

Software Engineering is a multi-layered approach that involves distinct activities that all connect to
create a successful software product.

1. Quality Focus: Focuses on maintaining security, usability, and maintainability throughout the
development process.
2. Process: The foundation of software engineering, ensuring that software is delivered on time and
within budget.
o It involves stages :
1. Communication: It is the first and foremost thing for the development of software.
Communication is necessary to know the actual demand of the client.
2. Planning: It basically means drawing a map for reducing the complications of
development.
3. Modeling: In this process, a model is created according to the client for better
understanding.
4. Construction: It includes the coding and testing of the problem.
5. Deployment: It includes the delivery of software to the client for evaluation and feedback
3. Method: Answers the "how-to-do" questions. Methods are frameworks for communication,
requirements analysis, design, coding, testing, and support.
4. Tools: Software engineering tools automate processes and tasks. They are integrated to make
different stages more efficient.

Explain Software Process Framework

The Software Process Framework provides an abstraction of the software development process. It lays
out the steps and order in which tasks are performed.

• Framework Activities:
1. Communication: Gathering customer requirements and understanding system
objectives.
2. Planning: Creating a detailed work plan, identifying risks, resources, and timelines.
3. Modeling: Designing architectural models and prototypes to better understand the
problem.
4. Construction: Writing the code, testing the system, and fixing issues.
5. Deployment: Delivering the software to clients for feedback and final delivery.
• Umbrella Activities: These are activities that support the entire process, such as:
1. Risk Management: Identifying and mitigating risks.
2. Quality Assurance: Ensuring the software meets the required quality standards.
3. Configuration Management: Managing software versions and changes.
4. Measurement: Tracking progress using performance metrics.

You might also like