Beginning Flashcards

1
Q

Software Development Life-Cycle

A

Process followed for a software project. Consists of detailed plan describing how to develop, maintain, replace and alter or enhance specific software.

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

The software process model

A

Abstract representation of a process

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

Specification

A

Identifies a necessary attribute, capability, characteristic, or quality of a system in order for it to have value and utility to a user.

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

Design

A

Implementation of specification in code form. The part where SE program the code for the project.

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

Validation

A

Testing portion of software process. Deals with detection of errors and bugs.

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

Evolution

A

Process of removing errors and bugs to better refine the code of the project, then repeatedly updating.

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

Things that determine the model to use:

A

Budget
Time
Resource Constraints
Complexity

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

Describe the Waterfall Model.

A

Sequential(non-iterative) design process, used in software development processes, in which progress is seen as flowing steadily downwards through distinct phases of specification and development.

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

What are the phases of the waterfall model?

A
  1. Requirement Analysis
  2. System Design
  3. Implementation
  4. Testing
  5. Deployment
  6. Maintenance
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are drawbacks of the waterfall model?

A

It has difficulty accommodating change after process if underway. One phase has to be complete before moving onto the next phase.

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

Evolutionary Development

A

Initially a rapid version of the product is being developed and then product is developed to more accurate version with the help of the reviewers who review the product after each release and submit improvements. Specification, development, and validation are interleaved.

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

Exploratory Development

A

Planning and reviewing potential scenarios and approaches until the one that appears to be optimal is selected.

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

Throw-away prototyping

A

Small part of system is developed and then given to end users to try out and evaluate. User feedback can be quickly be incorporated into the development of the main system. Prototype is then discarded or thrown away.

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

Component-based Software Engineering

A

Process that assembles a project from existing software programs. Based on systematic reuse where systems are integrated from existing components

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

Iterative Model

A

Start with simple implementation of small set of software requirements and iteratively enhance the evolving versions until the complete system is implemented and ready to be deployed.

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

Spiral Development

A

Combination of iterative development process model and sequential linear development model(waterfall) with very high emphasis on risk analysis. It allows incremental releases of the product or incremental refinement through each iteration around the spiral.

17
Q

Phases of spiral development

A
  1. Identification
  2. Design
  3. Construct or build
  4. Evaluation and risk analysis
18
Q

Rational Unified Process

A

It divides the development process into four distinct phases that each involve business modeling, analysis and design, implementation, testing, and deployment.

19
Q

What are the phases for RUP?

A
  1. Inception - the idea for the project is stated. Dev team determines if the project is worth pursuing and what resources will be needed.
  2. Elaboration - The project’s architecture and required resources are further evaluated. Developers consider possible applications of the software and costs associated with the development.
  3. Construction - The project is developed and completed. The software is designed, written, and tested.
  4. Transition - The software is released to the public. Final adjustments or updates are made based on feedback from end users.
20
Q

Agile Software Development

A

Solutions evolve through collaboration between self-organizing, cross-functional teams utilizing the appropriate practices for their context.

21
Q

Rapid Application Development

A

Uses minimal planning in favor of rapid prototyping. Planning in RAD is mixed with writing software itself. Lack of pre-planning generally allows software to be written much faster, and makes it easier to change requirements.

22
Q

Joint Requirement Definition

A

This meeting initiates the whole development cycle. Takes place at beg. of dev. cycle, where requirements are defined. Involved people are business owner/directors, business analysis, team leaders, project managers, high tech people, domain experts, and developers may or may not be involved.

23
Q

Joint Application Dev.

A

Involves the client or end user in the design and development of an application, through a succession of collaborative workshops called JAD sessions.

24
Q

What is Database Management System (DBMS)?

A

system software for creating and managing databases. The DBMS provides users and programmers with a systematic way to create, retrieve, update and manage data.

25
Q

What is Relational Database Management System (RDBMS)?

A

is a program that lets you create, update, and administer a relational database. Most commercial RDBMS’s use the Structured Query Language (SQL) to access the database

26
Q

What is a relational database?

A

Relational database match data using common characteristics found throughout the dataset. RDBMS supports a tabular structure for the data, with enforced relationships between the tables.

27
Q

What are the characteristics of relational database?

A
  1. Data is viewed as existing two dimensional tables known as relations
  2. A relation(table) consists of unique attributes (columns) and tuples (rows)
  3. Tuples are unique
  4. Value may be unknown or have no value. Represented by null.
  5. Null is not same as zero, blank, or an empty string.
28
Q

What are the stages of SDLC?

A
  1. Identify current problems
  2. Plan
  3. Design
  4. Build
  5. Test
  6. Deploy
  7. Maintain