a collection of innovative, user-centered approaches to system development
2
New cards
Prototyping
an information-gathering technique useful in seeking user reactions, suggestions, innovations, and revision plans
3
New cards
Throwaway Prototypes
patched-up prototypes nonoperational prototypes
4
New cards
Evolutionary Prototypes
first-of-a-series prototypes selected features prototypes
5
New cards
honest involvement communicate the purpose of the prototype clearly get suggestions and feedback for changing, expanding the prototype and innovation
users' role in prototyping
6
New cards
communication simplicity courage feedback
agile values
7
New cards
satisfy the customer embrace change deliver functioning software incrementally and frequently work together daily trust motivated individuals face-to-face conversation getting software to work continuous, regular, & sustainable development agility and mindful design self-organizing teams rapid feedback quality adjust behavior simple
basic principles of agile modeling
8
New cards
short release 40-hour workweek pair programming on-site customer
agile core practices
9
New cards
time cost scope quality
agile resources
10
New cards
coding testing designing listening
agile activities
11
New cards
listen for user stories draw a logical workflow model create new user stories based on the logical model develop some display prototypes create a physical data model using feedback from the prototypes and logical workflow diagrams
agile development process
12
New cards
spoken interaction between developers and users seeking first and foremost to identify valuable business user requirements the goal is prevention of misunderstandings or misinterpretations of user requirements
writing user stories
13
New cards
pigs
highly committed members of the sprint cycle scrum master, development team, product owner, other team members
14
New cards
chickens
contributing members of the sprint cycle customer, vendor, executives
15
New cards
Product Owner
owns the product backlog
16
New cards
Scrum Master
owns the scrum process
17
New cards
rugby
sport scrum comes from
18
New cards
Burndown Chart
shows the amount of work that has been completed in an epic or sprint, and the total work remaining
19
New cards
1. customer reads story and development team asks questions 2. team estimates and tests 3. team discusses 4. team estimates and repeats steps until a consensus is reached
Agile steps
20
New cards
short releases allow evolution pair programming enhances quality onsite customers are mutually beneficial 40-hour work week improves effectiveness balanced resources and activities support goals agile values are crucial to success
lessons learned from Agile
21
New cards
Kanban
displays and visualizes task workflows with cards used to control the flow of production through a factory
22
New cards
card, visual board, or sign
meaning of Kanban
23
New cards
Kaizen
continuous improvement that involves all participants.
24
New cards
good change or improvement
meaning of Kaizen
25
New cards
quick development user-oriented teamwork less confusing flexible satisfying rewards small accomplishments provides feedback adaptable
Scrum advantages
26
New cards
documenting features improperly releasing products with errors releasing products too soon completing the spring backlog under pressure geographically dispersed team special skills may be required hard to replace team members
Scrum disadvantages
27
New cards
DevOps (Development Operations)
the practice of blending the tasks performed by the development and IT operations groups to enable faster and more reliable software releases.
28
New cards
decrease the deployment time for newly developed applications maximize profit by rapidly addressing market opportunities and getting customer feedback in a timely manner minimize maintenance costs
DevOps (Development Operations) advantages
29
New cards
5 to 10 times more productive than the worst ones
based on their study of a group of programmers, Davis and Naumann claim that the best programmers are...
30
New cards
fit of dev team culture best timing training costs client's reaction impact of agile methods individual rights of programmers/analysts
risks of adopting new IS
31
New cards
entity process data flow data store
4 data flow diagram symbols
32
New cards
5 +- 2 (3 to 7)
number of processes per level
33
New cards
freedom from committing to technical implementations too early understanding of interrelatedness of systems and subsystems communicating current system knowledge to users analysis of the proposed system
advantages of the data flow approach
34
New cards
External Entities
represent another department, a business, a person, or a machine a source or destination of data, outside the boundaries of the system should be named with a noun
35
New cards
Data Flow
shows movement of data from one point to another described with a noun arrowhead indicates the flow direction represents data about a person, place, or thing
36
New cards
Process
denotes a change in or transformation of data represents work being performed in the system verb-adjective-noun
37
New cards
Data Store
symbol not included on context level a depository for data that allows examination, addition, and retrieval of data named with a noun represents a database, computerized file, filing cabinet
38
New cards
1. make a list of business activities and determine various flows, entities, processes, and data stores 2. create a context diagram 3. draw Diagram 0 4. create a child diagram 5. check for errors 6. develop a physical data flow diagram 7. partition the physical data flow diagram
steps in developing data flow diagrams
39
New cards
data flow touches a process
requirement of data flow
40
New cards
logical focuses on the business and business activities physical focuses on how a system is implemented
difference between logical and physical data flow diagrams
41
New cards
create read update delete
C.R.U.D.
42
New cards
CRUD Matrix
the activities that must be present in a system for each master file represents where each of the processes occurs in a system
43
New cards
Data Dictionary
a reference work of data about data collects and coordinates data terms, and confirms what each term means to different people in the organization
44
New cards
"is composed of"
equal sign
45
New cards
"and"
plus sign
46
New cards
repetitive elements
braces {}
47
New cards
either/or situation
brackets []
48
New cards
optional element
parentheses ()
49
New cards
Base Element
one that has been initially keyed into the system
50
New cards
Derived Element
one that is created by a process, usually as the result of a calculation or a series of decision-making statements
51
New cards
Data Truncation
if the element is too small it will be shortened and could affect the system outputs
52
New cards
Structured Decision Analysis Methods
promote completeness, accuracy, and communication
53
New cards
reduce process ambiguity obtain a precise description of what is accomplished validate the system design
goals of producing process specification
54
New cards
Sequential Structure
a block of instructions in which no branching occurs
55
New cards
Decision Structure
only IF a condition is true, complete the following statements; otherwise, jump to the ELSE
56
New cards
Case Structure
a special type of decision structure in which the cases are mutually exclusive (if one occurs, the others cannot)
57
New cards
Iteration {}
blocks of statements that are repeated until done entries become DO WHILE, DO UNTIL, or PERFORM UNTIL
58
New cards
Sequence
a simple sequence of statements MOVE, ADD, and SUBTRACT
59
New cards
Selection []
entries become IF...THEN...ELSE statements
60
New cards
Decision Trees
used when complex branching occurs in a structured decision process useful when it is essential to keep a string of decisions in a particular sequence
61
New cards
the order of checking conditions and executing actions is immediately noticeable conditions and actions of decision trees are found on some branches but not on others compared to decision tables, decision trees are more readily understood by others in the organization
decision tree advantages
62
New cards
Structured English (Pseudocode)
use when there are many repetitious actions or when communication to end users is important
63
New cards
Decision Tables
use when a complex combination of conditions, actions, and rules are found or you require a method that effectively avoids impossible situations, redundancies, and contradictions
64
New cards
Object-Oriented Analysis and Design
works well in situations where complicated systems are undergoing continuous maintenance, adaptation, and design objects, classes are reusable
65
New cards
Unified Modeling Language
U.M.L.
66
New cards
Unified Modeling Language (UML)
an industry standard for modeling object-oriented systems
67
New cards
Object Oriented Analysis
O.O.A. uses use cases
68
New cards
Object Oriented Design
O.O.D.
69
New cards
Object Oriented Programming
O.O.P.
70
New cards
Reusability
recycling of program parts should reduce the costs of development in computer-based systems
71
New cards
Maintaining Systems
making a change in one object has a minimal impact on other objects
72
New cards
Objects
persons, places, or things that are relevant to the system being analyzed may be customers, items, orders, and so on may be GUI displays or text areas on a display
73
New cards
Classes
defines the set of shared attributes and behaviors found in each object in the class should have a name that differentiates it from all other classes
74
New cards
Instantiate
when an object is created from a class
75
New cards
Attribute
describes some property that is possessed by all objects of the class
76
New cards
Method
an action that can be requested from any object of the class
77
New cards
class responsibilities collaborators
C.R.C.
78
New cards
CRC Cards
used to represent the responsibilities of classes and the interaction between the classes
79
New cards
things relationships diagrams
UML concepts and diagrams
80
New cards
Structural Things
classes, interfaces, use cases, and other elements that provide a way to create models they allow the user to describe relationships
81
New cards
Behavioral Things
describe how things work interactions and state machines
82
New cards
Group Things
used to define boundaries
83
New cards
Annotational Things
can add notes to the diagrams
84
New cards
Structural Relationships
tie things together in structural diagrams dependencies, aggregations, associations, generalizations
85
New cards
Behavioral Relationships
used in behavioral diagrams communicates, includes, extends, generalizes
86
New cards
Structural Diagrams
used to describe the relation between classes class diagrams, object diagrams, component diagrams, deployment diagrams
87
New cards
Behavioral Diagrams
used to describe the interaction between people (actors) and a use case (how the actors use the system) use case diagrams, sequence diagrams, collaboration diagrams, statechart diagrams, activity diagrams
88
New cards
Communication Diagrams
show the same information that is depicted in a sequence diagram but emphasize the organization of objects rather than the time ordering
89
New cards
Generalization
describes a relationship between a general kind of thing and a more specific kind of thing described as an "is a" relationship used for modeling class inheritance and specialization
90
New cards
General Class
a parent, base, or superclass
91
New cards
Specialized Class
a child, derived, or subclass
92
New cards
Inheritance
helps to foster reuse helps to maintain existing program code
93
New cards
Polymorphism
the capability of an object-oriented program to have several versions of the same method with the same name within a superclass/subclass relationship
94
New cards
overrides the superclass method
the subclass method...
95
New cards
the most specific one is used
when attributes or methods are defined more than once...
96
New cards
reusability maintenance
pros of UML
97
New cards
high cost steep learning curve complicated
cons of UML
98
New cards
Associative Class
an association that has attributes or operations of its own or that participates in relationships with other classes
99
New cards
Extreme Programming (XP)
a form of agile software development that promotes incremental development of a system using short development cycles to improve productivity and to accommodate new customer requirements
100
New cards
HTML
hypertext markup language a language used to create web pages