Lesson 17: Software Development Concepts Flashcards

1
Q

What are the steps in Software Development Lifecycle (SDLC)?

A

● Requirements Gathering: Like discussing the blueprint
of a building with an architect.

● Design: Creating the blueprint based on requirements.

●Implementation/Construction: Builders (developers) construct the building (write the code).

● Testing: Inspecting the building (software) for any issues.

● Deployment: Opening the building (software) for use.

● Maintenance: Regular upkeep and improvements,
similar to a building’s maintenance.

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

What are the different Methodologies in software development?

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

What the steps in waterfall?

A

REQUIREMENTS

DESIGN

IMPLEMENTATION

TESTING

MAINTENANCE

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

What are the steps in agile?

A
  1. Design
  2. Test
  3. Analyze
  4. Define
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are some key aspects of waterfall?

A

● A sequential software
development methodology.

● Follows a linear approach, where each phase is completed
before moving to the next.

● Suitable for projects with
well-defined and unchanging requirements.

● Not ideal for projects requiring
frequent changes or iterations.

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

What are some key aspects of agile?

A

● An iterative and collaborative approach
to software development.

● Emphasizes flexibility, adaptability, and
customer satisfaction.

● Key concepts include:
- Iterative development: Breaks the project into
smaller iterations or sprints.

  • Sprints: Timeboxed periods (usually 1-4 weeks) to complete a set of tasks.
  • User stories: Descriptions of specific features or
    functionality from the user’s perspective.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What does DevOps stand for?

A

(development+operations)

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

In DevOps, ___________ and _________ work closely, similar to a professional restaurant kitchen. Chefs prepare dishes (developers
write code).

A

Chefs (developers) & servers (operations)

● Servers deliver dishes to customers (operations deploy code to end users).

● Servers relay customer feedback to
chefs (operations relay user feedback
to developers).

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

What is the aim in DevOPs?

A

High-quality ‘food’ (software) delivered quickly and efficiently.

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

What is Integrated Development Environment (IDE)

A

An Integrated Development Environment (IDE)
is like a comprehensive tool kit for programmers.

It provides all the tools needed to develop software in one convenient place!

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

Why Use an IDE?

A

● Simplifies code writing
● Speeds up development
● Helps in identifying and fixing errors, making the entire process of creating software more efficient and enjoyable.

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

What are the different Software Applications?

A
  1. Desktop applications
  2. Web applications
  3. Mobile applications
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Desktop Applications

A

Software installed
and run on a personal
computer.

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

Web Applications

A

Software accessed
and utilized through
web browsers.

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

Mobile Applications

A

Software designed
for smartphones
and tablets.

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

What are some characteristics, advantages, & challenges of Desktop Applications?

A

Characteristics
● Installed and run locally on a computer.
● Typically offer richer functionality and access to system resources.

Advantages
● Offline access to data and functionality.
● Greater control over the user interface and user experience.

Challenges
● Platform-dependent, requiring different versions for different operating systems.
● Installation and updates can be more complex for users.

17
Q

What are some characteristics, advantages, & challenges of Web Applications?

A

Characteristics
● Accessed and utilized through web browsers.
● Often rely on server-side processing and client-side scripting.

Advantages
● Cross-platform compatibility, accessible from any device with a browser and internet connection.
● Easier deployment and updates since changes are made on the server.

Challenges
● Reliance on internet connectivity.
● Limited access to system resources compared to desktop applications.

18
Q

What are some characteristics, advantages, & challenges of Mobile Applications?

A

Characteristics:
● Designed specifically for smartphones and tablets.
● Utilize the device’s capabilities like GPS, camera, and touch gestures.

Advantages
● High user engagement due to frequent use of mobile devices.
● Access to device-specific features and capabilities.

Challenges
● Fragmentation across different mobile operating systems (iOS, Android).
● User interface and user experience need to be tailored for different screen sizes.

19
Q

What are the Impact of Software Applications?

A

● Increased efficiency and productivity
● Improved decision-making
● Enhanced customer experience
● Cost savings
● Innovation and competitive advantage