Software Engineering and SDLC - Vocabulary Flashcards

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

1/61

flashcard set

Earn XP

Description and Tags

A set of vocabulary flashcards covering key terms, models, concepts, and processes from the lecture notes on Software Engineering and SDLC.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

62 Terms

1
New cards

Software Engineering

Systematic approach to the design, development, testing, and maintenance of software; combines engineering principles with programming to build high-quality software.

2
New cards

Software Process

Set of activities and outcomes that produce a software product; engineers perform these activities.

3
New cards

SDLC (Software Development Life Cycle)

The process model used to plan, design, build, test, and deploy software.

4
New cards

Waterfall Model

A linear, sequential SDLC model where each phase is completed before the next; best when requirements are fixed.

5
New cards

RAD Model (Rapid Application Development)

An SDLC model that emphasizes quick UI demos and time-boxed iterations with component reuse to speed up development.

6
New cards

Spiral Model

A risk-driven SDLC model that develops software in cycles with ongoing risk assessment and refinement; suited for large, complex projects.

7
New cards

V-Model

A validation-oriented SDLC model where each development stage has a corresponding testing activity; emphasizes verification and validation.

8
New cards

Incremental Model

Software is built and delivered in increments, delivering core functionality first and adding more features in later iterations.

9
New cards

Agile Model

An iterative, incremental approach emphasizing fast releases, customer feedback, and adaptability to change.

10
New cards

Iterative Model

Develop a basic system and refine it step-by-step through repeated cycles.

11
New cards

Big Bang Model

Direct coding with little or no planning; high risk and suitable mainly for small prototypes.

12
New cards

Prototyping Model

Create a working model to explore requirements; used for gathering user feedback before finalizing the system.

13
New cards

Throwaway Prototype

A prototype meant to be discarded after requirements are clarified and used to inform the final system.

14
New cards

Evolutionary Model

Develop core features first and progressively add more; useful for large projects where early usage is possible.

15
New cards

Concurrent Development Model

Development activities can proceed in parallel, with ongoing integration and feedback; involves states like under development and awaiting changes.

16
New cards

Unified Process Model (UP/RUP)

An iterative, incremental, architecture-centric, use-case driven approach; phases include Inception, Elaboration, Construction, Transition.

17
New cards

UPM/RUP Phases: Inception

Initial phase focused on communication and planning to define project scope and requirements.

18
New cards

UPM/RUP Phases: Elaboration

Modeling and refinement phase to define architecture and mitigate risks.

19
New cards

UPM/RUP Phases: Construction

Development phase where software components are built and integrated.

20
New cards

UPM/RUP Phases: Transition

Deployment phase delivering the system to users and collecting feedback.

21
New cards

Requirements Engineering

The process of identifying and documenting client needs and constraints.

22
New cards

Use Case

A description of how users interact with the system to achieve goals; captures functional requirements.

23
New cards

Scenario-Based Modeling

Modeling using real-life stories to illustrate user interactions with the system.

24
New cards

Class-Based Modeling

Modeling focused on objects (classes) and their functions.

25
New cards

Functional Modeling

Modeling of system functionality in terms of operations and data flows.

26
New cards

Behavioral Modeling

Modeling how the system reacts to external inputs and events.

27
New cards

Validating Requirements

Ensuring requirements are correct, complete, and agreed upon by stakeholders.

28
New cards

Software Architecture

The high-level structure of a software system and the organization of its components.

29
New cards

Architectural Styles (Patterns)

Common structural approaches for software systems, such as client–server.

30
New cards

Client-Server Architecture

A model where clients request services from centralized servers.

31
New cards

Component-Level Design

Design of small, reusable software components (e.g., payment module).

32
New cards

User Experience Design (UX)

Designing how users interact with a system to ensure satisfaction and ease of use.

33
New cards

UI Design (Golden Rules)

Guidelines to create user-friendly interfaces and intuitive layouts.

34
New cards

Design Evaluation and Usability

Assessing design quality and how easy it is for users to use the system.

35
New cards

Fundamentals of Testing

Core testing concepts, including Unit, Integration, and System Testing.

36
New cards

Unit Testing

Testing individual components or units in isolation.

37
New cards

Integration Testing

Testing how integrated components work together.

38
New cards

System Testing

Testing the complete, integrated software system.

39
New cards

Black Box Testing

Testing without knowledge of internal code structure; focuses on inputs and outputs.

40
New cards

White Box Testing

Testing with knowledge of internal code, logic, and structure.

41
New cards

Security Testing

Evaluating the system’s security controls and vulnerability to threats.

42
New cards

Performance Testing

Assessing system responsiveness and stability under load.

43
New cards

Test Strategies for Web Applications

Testing across parts of a web app (login, cart, payment) across browsers and devices.

44
New cards

Review Techniques

Formal and informal methods for evaluating work products (code reviews, peer reviews).

45
New cards

Software Quality Assurance (SQA)

Activities to ensure software quality, including standards and process adherence.

46
New cards

Six Sigma

A quality standard focused on reducing errors and variation (ISO 9000 related concepts).

47
New cards

ISO 9000

Quality management standards used to ensure consistent product quality.

48
New cards

Software Configuration Management (SCM)

Managing changes to software across versions, typically using version control systems like Git.

49
New cards

Git

A distributed version control system used for tracking code changes and collaborating.

50
New cards

Software Measurement & Quality Metrics

Quantitative measures used to assess software quality and process effectiveness.

51
New cards

Umbrella Activities

Ongoing activities that support the software process (tracking, formal reviews, SQA, SCM, documentation, reusability, metrics, risk management).

52
New cards

Formal Technical Reviews (FTRs)

Structured reviews to assess technical work and ensure quality before progress.

53
New cards

Reusability Management

Managing and leveraging reusable software components across projects.

54
New cards

Risk Management

Identifying, analyzing, and mitigating risks to project success.

55
New cards

Dataflow Model

A modeling approach that represents the process as data transformations.

56
New cards

Workflow Model

A model of activities organized as a sequence with inputs, outputs, and dependencies, often performed by humans.

57
New cards

Role/Action Model

Model that defines the roles of people involved and the actions the system performs.

58
New cards

HMS (Hospital Management System)

A domain example used to illustrate software systems for hospitals (patient registration, scheduling, billing).

59
New cards

Data Modeling

Defining data objects and their relationships to support information needs.

60
New cards

Data Flow Diagrams (DFD), ER Diagrams, Flow Charts

Documentation types used to model data movement, entities, and processes.

61
New cards

Prototype Model vs. Final System

Prototype is a preliminary working model for exploring requirements; the final system is built atop validated requirements.

62
New cards

Evolutionary Model (Evolutionary Prototyping)

An approach that evolves the system in increments with ongoing customer feedback.