Chapter 1: Software and Software Engineering

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/11

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

12 Terms

1
New cards
Nature of Software
Software serves as both a product and a vehicle for delivering products, managing and transforming data across various platforms.
2
New cards

Key Characteristic of Software

Software does not wear out like hardware but deteriorates over time due to changes and updates.

3
New cards
Types of Software Applications
Includes system software, application software, embedded software, engineering/scientific software, and artificial intelligence-based software.
4
New cards
Legacy Software Challenges
Outdated designs, poor documentation, and maintenance complexities that hinder continued viability and adaptability.
5
New cards
IEEE Definition of Software Engineering
A systematic, disciplined, and quantifiable approach to software development, operation, and maintenance.
6
New cards
Layers of Software Engineering
Includes quality focus, process layer, methods, and tools to support software development.
7
New cards
Software Process Framework Activities
Includes communication, planning, modeling, construction, and deployment.
8
New cards
Umbrella Activities in Software Engineering
Cross-cutting tasks like project tracking, risk management, quality assurance, and change control.
9
New cards
Process Adaptation
Adjusting the software process based on specific project requirements.
10
New cards
George Polya’s Problem-Solving Approach
Consists of understanding the problem, planning a solution, carrying out the plan, and examining the result.
11
New cards
Initiation of Software Projects
Often starts with an idea or market need, illustrated by examples such as SafeHome.
12
New cards
Importance of Software Engineering
Ensures quality, maintainability, and reliability in software development due to growing complexity.