Intro to SE Methodologies Flashcards

(45 cards)

1
Q

A process or series of processes used in software development

A

Software Development Methodology

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

Software Development Methodology Phases

A
  • Design Phase
  • Development Phase
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Takes the form of defined phases. It is designed to describe the how of the life cycle of a piece of software

A

Software Development Methodology

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

codified communication. It is setting set of norms between a group of people that say this is how you’re going to work and this is how you are going to pass information between each of you in certain ways; whether that is documentation, whether that is discussion, whether that is drawings on paper

A

Software Development Methodology

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

Every software development methodology framework acts as a basis for
applying specific approaches to develop and maintain software. Several
software development approaches have been used since the origin of
information technology. These are:

A
  • 🚿Waterfall
  • 🤖Prototyping
  • 📦Incremental
  • 🌪️Spiral
  • 🏃Rapid Application Development
  • 🌋Extreme Programming
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Each phase must be completed before the next phase can begin and there is no overlapping in the phases

A

Waterfall Model

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

Earliest Software Development Life Cycle approach

A

Waterfall Model

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

Sequential design divided into separate phases

A

Waterfall Model

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

Waterfall Model is also known as

A

Linear-Sequential Life Cycle Model

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

Sample of Waterfall Model

A
  1. Requirements 📃
  2. System Design 🌈
  3. Implementation 🎬
  4. Integration and Testing 🏗️
  5. Deployment of System 🚀
  6. Maintenance ⛑️
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Roles of the User in waterfall

A
  1. Specific Suggestions Needed
  2. Feedbacks on Testing each Dev Phases
  3. Don’t Hesitate on Finished Phase
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Advantages of Waterfall Model

A
  • simple and easy
  • easy to manage due to rigidity
  • no overlapping
  • works well with smol projects
  • structured
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Disadvantages of Waterfall Model

A
  • 🤷working model not easily available
  • 🥴communication gaps
  • 😕not good to handle changes
  • 🤔potential risks and uncertainties
  • 😫not good for long and complex OOP projects
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is Agile?

A
  • Quick and Easy
  • Iterative Development
  • Values and Principles
  • Tangible & Working results
  • Efficient Communication
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Team Lead or Scrum Master is Responsible for?

A
  1. Facilitating the Team
  2. Resources
  3. Removing Impediments
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Responsible for the creation and delivery of the project, planning, design, development, testing and project delivery

A

Team Member

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

Team Member comprised of

A
  1. Developers
  2. Quality Assurance
  3. Documentation
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Represents the voice of the customer and is the customer and is responsible for the prioritized backlog and maximizing the return of investment

A

Product Owner

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

Responsibility includes documenting user stories

A

Product Owner

18
Q

Represents a broad category of people who can be users, managers of users, operations, support, portfolio managers, other Agile development teams with dependencies, executive team, investors and more

19
Q

Lightweight process framework for software development and the most widely used one

20
Q

Benefits of Scrum

A
  • Increase the quality of deliverables
  • Cope better with change (and expect the changes)
  • Provide better estimates while spending less time creating them
  • Be more in control of the project schedule and state
21
Q

A method for managing the creation of products with an emphasis on continual delivery while not overburdening the development team

22
Q

Principles of Kanban

A
  • Visualization increase communication and
    collaboration
  • Limit in progress for prioritization
  • Optimize flow, Metrics to predict future problems
  • Continuous improvement
23
One of the oldest model also known as ad-hoc model
Build and Fix
24
Product quality is never addressed by the vendor, no specifications or any attempts at design
Build and Fix Model
25
Software code is developed and passed on to the next phase
Build
25
Code developed in build phase is made error free. Also, in addition to the corrections to the code, the code is modified according to the user's requirements
Fix
26
Expected Results of Build and Fix
* initial application not that good, usually it is not maintainable. 🤒 * a lot of maintenance is done 🏥 * user checks the functions, modify/delete 🔎 * user checks until satisfaction (can be used productively) 👀
27
Testing of the system is done by
Client
28
Maintenance and Modification of the system is done by
Programmer/Developer
29
A process of software development where requirements are broken down into multiple standalone modules of software development cycle. Done in steps from analysis, design, implementation, testing/verification and maintenance.
Incremental Model
30
Characteristics of Incremental Module
* ⛓️‍💥system dev break down to mini dev projects * 🌓partial systems to final * ⚠️high priority tackled first * 🧊once requirement is developed, increment frozen
31
Incremental Model sample
* 📃Requirements * 🔎Analysis * 🌈Design * 💻Coding * 🏫Testing
32
A system development approach encouraging and facilitating re-use of software components.
Object Oriented Methodology
33
A computer system can be developed on a component basis, which enables the effective re-use of existing components and facilitates the sharing of its components by other systems
Object Oriented Methodology
34
Benefits of OOM
* 🤰Improve Productivity * ⚡Deliver High Quality System * 🫰Lower Maintenance cost * 👶Facilitate Reuse * 🙃Manage Complexity
35
When to Use OOM?
* Projects of **medium** to **large** scale * Departments/project teams with a planned **series** of developments within a **similar** business area * Projects with an **inventory** of suitable components available either in-house or in the market * Projects with development/implementation environment which provide adequate support for **object tech**
36
Expected Results of Prototyping Model
* System with Overall Functionality * Prototype -> Present -> Feedback -> Enhancements
37
the one who will test or evaluate our prototype and he/she will suggest if there still things to be improved in the prototype.
The Client
38
What is Spiral Model?
* combination of **sequential** and **prototype** model * best used for **large** projects * **continuous** enhancements * activities does with one iteration, small prototype of the whole software (Spiral) * activities **repeated for all spirals** till whole software built
39
Not well-known as other SDLC models
Spiral Model
40
Pretty costly to use and doesn't work well for small projects
Spiral Model
41
Advantages of Spiral Model
* Risk monitoring * See working product at early stages * Changes occur late life cycle stages * Risky parts can be developed earlier then other parts to decrease management difficulties * Realistic project estimates (schedule, costs) * Strong Documentation Control
42
Disadvantages of Spiral Model
* Risk monitoring additional sources * Pretty Costly to Use * Not for smol projects * Difficult Time Management