Final Flashcards

1
Q

Project Dictionary

A

Provides specific details regarding the project (ex. DFDs, Components of DFDs)

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

How are project dictionary’s organized?

A

Entries are typically arranged alphabetically.

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

What are the advantages of the project dictionary?

A

Can review with user
reference for project team

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

For which stages of the SDLC is a project dictionary useful?

A

The last 3 stages (design, implementation, and maintenance)

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

Data Description Hierarchy: Data can be described by

A

data elements
Data structures

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

What is a data element?

A

Data that can not be decomposed (i.e. employee id number, and first name)

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

What is a data structure?

A

Composed of Data Elements (and/or other data structures)
(i.e. Customer Name = First Name + Last Name)

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

Data Specifications: Conventions: Symbols

A

= is composed of
+ and
() optional
M{}N repetitions of (ranging from M to N)
[a|b] either/or

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

Data Specifications: Conventions: defining data structures

A

can represent “sequence”

Participant Information = First Name + Last Name + Email Address + (Middle name) + (Invitation Code)

Can represent “repetition”

M{repeating group}N
M=minimum
N = maximum
M=0 (optional)
if no N=max is unlimited

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

Data Specifications: Values

A

If appropriate, it can be useful to indicate the acceptable values or value range

Ex.
Length 6{character}8
Values:[Freshman|Sophomore|Junior]

Length: 1{digit}3
Value range: 1 to 100 pounds

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

Data Specifications: External Entities and Data Stores

A

Data Stores: define as a repeating set of data structures, include minimum and maximum amount of structures (emp.File= 1{employee Record}1000
ALSO DEFINE IT
Emp.Record= Emp.ID Num+Name+Title

External Entities
DEFINE THESE TOO

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

How to prepare models and data specifications, organize and share easier?

A

CASE

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

What is CASE technology?

A

Computer Aided Software Engineering

Software that helps to support the software development process

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

Case Components:
Diagramming Tools
Analysis Tools
Repository(Project Dictionary)

A

Diagramming Tools: Create/Revise diagrams

Analysis Tools: automates checking for incomplete, inconsistent specifications

Repository: save the details and ensure consistent definitions. Easy to store/share information in a commonplace, and easy to generate selected reports for repository information (ex. DFDs and Data flow only)

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

Who would look at reports for repository information

A

other analysts, programmers

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

What are the applications of the Repository?

A
  1. Design- User Interface design
    Generate prototypes for input and output forms
  2. Implementation-Generate Program Code
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What is a data model and what is its goal/benefits?

A

It is a representation of organizational data

Goal: Convey Info about:
Important entities
Characteristics of entities (“attributes”)
Relationship between entities

Benefits:
Supplement DFDs
Tool to help communicate with user
Use for database design

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

ER Modeling: Primary Key

A

Unique, identifying attribute(s) for each instance

Represent by underlining the attribute

there can be multiple primary keys

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

ER Modeling: Multi-Valued Attributes

A

An attribute with more than one value for a given instance, represent with {}

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

ER Modeling: Relationship

A

Shows associated between instances of entity types
verb phrase label
specify label to read left to right or top to bottom

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

ER Modeling: Cardinality

A

Property of a relationship
the number of instances of entity b that can or must be associated with entity A
(minimum cardinality (0 or 1))
(maximum (1 or many))

Maximums are near the entity, and minimums are on the inside (near the relationship)

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

Why are Cardinalities Helpful:

A

Very Helpful/Relevant for database design

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

ER Modeling: Degree of Relationship

A

Number of entities that participate in a relationship

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

ER Modeling: Degree of Relationship: Binary

A

Two entities
Variations (refers to maximums):
1:Many
Many:Many
1:1

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

ER Modeling: Degree of Relationship: Unary

A

Recursive Relationship
Read relationship label in clockwise relationship
Variations:
1:Many
Many:Many
1:1

26
Q

ER Modeling: Degree of Relationship: Ternary

A

Simultaneious Relationship

27
Q

ER Modeling: Supertypes and Subtypes:

A

Sometimes different entity types can have common attributes, as well as distinct attributes.

Supertype: attributes shared by all (a person has name, address, birth date)

Subtype: attributes unique to a subtype (a person who is an employee has a salary, hire date. A person who is a student has a major, GPA)

Connect supertype and subtype via a circle and lines

28
Q

ER Modeling: Supertypes and Subtypes: Specification

A

Total Specification: a supertype MUST be specified as one of the subtypes (DOUBLE LINES)

Partial Specification: A supertype does not need to be specified as a subtype (SINGLE LINE)

Overlap Rule: a supertype can be a member of multiple subtypes (O in circle).

Disjoint rule: a supertype can be a member of only 1 subtype (D in circle).

29
Q

What type of model is an entity relationship model?

A

Data model

30
Q

what does an ER model represent?

A

entities, attributes (including primary keys), relationships, cardinalities

31
Q

Why create an ER model?

A

Communication tool for SDLC, specifies/clarifies data components/relationships, and critical from database design.

32
Q

What is done during the analysis phase?

A

Requirements determination, documentation, alternative generation and selection

33
Q

What are the two parts of the design stage?

A

Logical Design and Physical Design

34
Q

what is the objective of the design stage?

A

How to satisfy the system requirements?

Develop blueprints for the system that may be used by implementation team

35
Q

What is “Logical” design

A

Technology-INdependent
ex. Logical database design (create a set of well-structured data tables).
ex. user interface design (“look and Feel” of user interface and inputs/outputs)

36
Q

what is “physical” design

A

Technology specific

Programming language(s), database software, hardware, cloud computing, network design.

37
Q

Relational Database Model-Data represented as “relations”. what are relations?

A

2-D table of data
each cell has 1 value (“Atomic”)

Notation:
Underline Primary Key
Dotted Underline Foreign Key
REMEBER UNDERSCORE IN SPACES

38
Q

What is the databse designer’s goal:

A

Well structured relations

minimize redundancy, minimize anomalies

39
Q

Definition of Normalization

A

Process for converting complex, messy relations into well structured relations.

40
Q

What is a functional dependence:

A

One (or a combination of) attribute value(s) determines (or implies) the values for another attribute.

41
Q

Concatenated Primary key

A

when there are two primary keys

42
Q

Definition of “normal” forms

A

a relational state that can be determined by applying simple rules regarding dependencies

43
Q

First Normal Form (Goal/Solution):

A

Goal: eliminate situations in which a table may have more than one value in a cell (or no value in a cell).
remember that entries need to be atomic
Solution: figure out a way to make the cells atomic

44
Q

Second Normal Form:

A

Goal: eliminate partial dependencies
Note: partial dependencies only involve relations with a concatenated primary key
desired: every non-key attribute is functionally dependent on the full-set of primary key attributes
Solution:if partial dependencies exist, then decompose the relation

45
Q

what is partial dependency?

A

One (or more) non-key attributes are functionally dependent on part, but not all, of the primary key.

46
Q

Third Normal Form

A

Goal: eliminate transitive dependencies
Solution: if transitive dependencies exist, then decompose relation

47
Q

Definition of transitive dependency

A

a functional dependency between two or more non-key attributes

48
Q

Simplification fo the Normalization Steps

A

Table is not atomic

1NF: Make Atomic
2NF: Remove Partial Dependencies
3NF: Remove Transitive Dependencies

49
Q

Converting an ER Diagram into Relations: Goal

A

Use the ER diagrams generated in an analysis phase to create a logical data model (data blueprint)

50
Q

ER Conversion: Stage 1: Prepare ER Diagram

A

should be done during analysis stage
make sure cardinalities are specified
REMEMBER if min is 0 and max is 1, treat max as many for conversion purposes.

51
Q

ER Conversion: Stage 2: Represent Entities

A

use relational notation

use entity name for each entity on diagram as the name for a relational table

Include primary key in relation

include other attributes in relation

52
Q

ER Conversion: Stage 3: Represent Relationships

A

rules depend on degree of relationship (binary, unary)

binary relationship
1:1
1:Many
Many:Many

53
Q

ER Conversion: Stage 3: Represent Relationships: 1:1

A

Marge attributes tinto 1 relational table

54
Q

ER Conversion: Stage 3: Represent Relationships: 1:Many

A

Move Primary Key from 1 to the many and make it a foreign key. everything else is the same

55
Q

ER Conversion: Stage 3: Represent Relationships: Many:Many

A

Make an intersection table

Title=verb phrase used to describe relationship
Use both primary keys, stay as primary keys, and put the output at the end

56
Q

ER Conversion: Stage 3: Represent Relationships: Multi-Valued Attributes

A

{Skill}

create new relational tabel with name of attribute
use the primary key from the table it comes from and the attribute itself (both are primary keys–aka concatenated key)

57
Q

ER Conversion: Stage 4: Normalize Relations

A

Normalize relational tables, we do this to ensure that relations are well structured and easy to maintain

58
Q

ER Conversion: Converting Unary Relationships: 1:Many

A

Create a new “recursive” foreign key
(use the name of the relationship. ex. managed by = manager employee id becomes a foreign key)

59
Q

ER Conversion: Converting Unary Relationships: Many:Many

A

Create 2 relations, original entity and one named the relationship (i.e. contains)
For the second relation (contains) have the original primary key, create a second primary key (that is relevant-subcomponent item number) and the output of the relationship.

60
Q

Designing a Database: the analysis, design, and implementation

A

Analysis stage: analyst interviews users to develop ER diagram (determines entities, attributes, cardinalities + develop project dictionary)

Design stage: convert the ER diagram to a set of relational tables. if needed, normalize the relations to eliminate redundancies and anomalies

implementation stage: use the set of relations- and information in the project dictionary- to implement the data base.

61
Q

What do you use a well structured database for?

A

address organizational needs

use database to support management and decision making

Happy people! users, database managers