SoftDev Flashcards

1
Q

It comprises programs, procedures, and routines that facilitate computer operations.

A

Software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Is a set of instructions, data or programs used to operate computers and execute specific tasks

A

Software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

2 types of software

A

1) System Software
2) Application Software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

It directly operates the computer hardware and provides the basic functionality to the users as well as to the other software to operate smoothly

A

System Software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

It basically controls a computer’s internal functioning and also controls hardware devices such as monitors, printers, and storage devices

A

System Software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Example of System Software

A

1) Windows
2) Linux

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

It performs special functions or provides functions that are much more than the basic operation of the computer.

A

Application Software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

It is designed to perform a specific task for end-users.

A

Application Software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Example of Application Software

A

1) Microsoft Word
2) PowerPoint

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

It is the process of creating abstract representations of a software system

A

Software Modeling

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

These models serves as blueprints that guide developers, designers, and stakeholders through the system’s structure, behavior, and functionality

A

Software Modeling

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Give the Top 8 Software Development Models

A

1) Waterfall Model
2) V-Model
3) RAD Model
4) Iterative Model
5) Spiral Model
6) Incremental Model
7) Prototype Model
8) Agile Model

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

It is a linear and sequential model

A

Waterfall Model

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What are the advantages of Waterfall Model?

A

1) Simple and easy to understand
2) The goal is to determined early
3) It provides a structured way to do things

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What are the disadvantages of Waterfall Model?

A

1) Complete and accurate requirements are expected at the beginning of the development process
2) The testing period comes very late
3) This is not a good model for large and complex projects

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

It is considered a disciplined model

A

V-Model

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What are the 2 V’s in V-Model

A

Verification and Validation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What are the advantages of V-Model?

A

1) Planning, testing and designing can be done even before coding
2) Defects are detected in the initial stage itself
3) Small and medium scale developments can be easily completed using it

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What are the disadvantages of V-Model?

A

1) This model is not suitable for complex projects as it lacks flexibility
2) It involves high risk and uncertainty due to its rigid structure
3) It is not ideal for ongoing projects that require continuous updates

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

The software development process is divided into multiple increments, with each increment following the same development phases

A

Incremental Model

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

This model breaks down a complex project into smaller, manageable modules or builds, which are developed and integrated step by step

A

Incremental Model

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

What are the advantages of Incremental Model?

A

1) This model is flexible and allows for cost-effective changes in requirements and scope
2) The customer can review each module and provide feedback for improvements
3) Project progress can be easily measured for each increment

23
Q

What are the disadvantages of Incremental Model?

A

1) Management is a continuous activity that must be effectively handled throughout the project
2) Before the project can be divided and developed incrementally, the complete software requirements should be clearly defined
3) This requires good planning and designing

24
Q

What does RAD Model stands for

A

Rapid Application Development Model

25
Q

The methodology of this model is similar to that of incremental or waterfall model

26
Q

This model is fast, highly efficient, and results in fewer errors due to continuous feedback and iterative development

27
Q

What are the advantages of RAD Model

A

1) The RAD model reduces the development time by promoting rapid prototyping and iterative improvements
2) It supports component reusability, which enhances efficiency
3) It is easily transferable, similar to scripts, due to the use of high-level abstraction and intermediate code

28
Q

What are the disadvantages of RAD Model

A

1) This model requires highly skilled developers and designers to ensure efficient development
2) Managing the process can be challenging due to its iterative and fast-paced nature
3) It is not suitable for complex projects that require a long development time or have evolving requirements

29
Q

It is a type of model where the software is developed through multiple iterations, where each iteration enhances and refines the previous version

A

Iterative Model

30
Q

This means repeating the development process multiple times until the final product meets the desired requirements

31
Q

What are the advantages of Incremental Model?

A

1) In the iterative model, bugs and errors can be identified and fixed quickly due to repeated cycles of development and testing
2) Software is developed rapidly with initial specifications, allowing for early deployment of functional versions
3) Testing and debugging become easier as each iteration improves and refines the software

32
Q

What are the disadvantages of Incremental Model?

A

1) Since the Iterative Model involves multiple iterations, it requires more resources throughout the development process
2) Constantly changing the requirements lead to frequent modifications in the software
3) As a result, the project budget increases, and more time is needed to complete the development

33
Q

This model has the characteristics of both iterative and waterfall model

A

Spiral Model

34
Q

True or False,

The number of loops in Spiral Model are fixed in advance

A

False,

The number of loops is not fixed in advance; it depends on the project size and changing user requirements

35
Q

What does each loop in the spiral model represents?

A

a PHASE of the software development process, ensuring continuous refinement and risk management.

36
Q

This feature is also called Risk Handling

A

Spiral Model

37
Q

What are the advantages of Spiral Model?

A

1) The spiral model is well-suited for large and complex projects due to its iterative and risk-focused approach
2) it allows for better cost estimation as the project progresses through multiple phases
3) Risk analysis is conducted in each phase, helping to identify and mitigate potential issues early in development

38
Q

What are the disadvantages of Spiral Model?

A

1) The Spiral Model is the most complex SDLC model, making it difficult to manage
2) It is not suitable for small projects due to its extensive processes
3) It requires more documentation compared to other models to track progress and risks effectively

39
Q

This model was introduced to overcome the shortcomings of the waterfall model, allowing early user feedback, reducing risks, and improving requirement accuracy before full-scale development

A

Prototype Model

40
Q

What are the advantages of Prototype Model?

A

1) The prototype model is ideal for applications with simple prototypes and human-machine interaction
2) It is used when only the general objective is known, but input, processing, and output details are unclear
3) When a developer is unsure about an algorithm’s capability or its compatibility with an OS, the prototype model helps in testing and refinement

41
Q

What are the disadvantages of Prototype model?

A

1) When the first version of the prototype model is ready, customers often prefer small fixes and changes rather than redesigning the system
2) The first version of the prototype may involve many compromises in design and functionality
3) Sometimes, developers make short-term compromises to quickly build a prototype, but over time, they may become accustomed to these compromises, forgetting that such practices are inappropriate for the final product

42
Q

This model is a combination of iterative and incremental model

A

Agile Model

43
Q

This model is designed to enhance flexibility and customer satisfaction

A

Agile Model

44
Q

When was the Agile Model introduced?

A

the 1990’s

45
Q

What are the advantages of Agile Model?

A

1) This is a very realistic approach to software development
2) It provides flexibility to developers
3) The software project is completed in a very short time

46
Q

What are the disadvantages of Agile Model?

A

1) It struggles to handle complex dependencies, making it less suitable for highly interconnected systems
2) Due to the lack of formal documentation, developers may face confusion during development
3) It relies heavily on the customer representative, and if they provide incorrect information, the software may not meet the actual requirements

47
Q

It is a fundamental human characteristic that involves creation and use of tools to develop artifacts

48
Q

What are the two aspects underpinning design activity?

A

1) Tool Creation and Usage
2) Communication

49
Q

Tools help in creating further artifacts, making design an essential part of human evolution

A

Tool Creation and Usage

50
Q

Design Ideas need to be effectively communicated to development to transform a design into a product

A

Communication

51
Q

It is the process of defining the architecture, components, modules, interfaces, and data structures required to meet specified software requirements

A

Software Design

52
Q

A well designed software system is:

A

1) More understandable
2) Easier to modify
3) More reliable

53
Q

This plays a crucial role in development as it ensures that the software meets user and stakeholder needs

A

Software Design

54
Q

Key benefits in software design includes:

A

1) Provides a blueprint for development
2) Ensures consistency and organization
3) Improves maintainability
4) Facilitates Issue Identification and Resolution