Systems Development Lifecycle (EXAM #2) Flashcards

1
Q

Systems Development Lifecycle (SDLC)

A

-process of developing software or information systems from start to finish

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

SDLC Phases

A
  1. planning
  2. analysis
  3. design
  4. development
  5. testing
  6. implementation
  7. maintenance
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q
  1. Planning
A

a. the systems development team makes a plan for the systems development project. during this phase it is vital to conduct several types of feasibility analyses in order to assess whether developing the system is a good idea
b. main actors: project manager, project sponsor (usually VP or other high level manager), senior analysts
c. end result is a formal approval (usually signed off by management) that the project will move forward and high-level requirements matrix

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

requirements matrix

A

list of approved features and key characteristics of the new system that are required for success

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

feasibility analyses

A
  • technical
  • economical
  • legal
  • operational
  • scheduling
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

technical feasibility

A

is the system realistic, and we have the expertise to develop it?

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

economical feasibility

A

do benefits exceed costs?

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

legal feasibility

A

does the system meet all regulations and laws?

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

operational feasibility

A

will our organization be able to operate the system

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

scheduling feasibility

A

is the project timeline realistic given our resources

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

a. one of the key tasks is to determine user requirements (want do they want the system to be able to do)
- users can be: customers, clients, own organization, or other stakeholders (called requirement gathering or requirement elicitation)
- then compiled in a requirements definition document

b. main actors: system analysts & business analysts

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

requirements definition document

A

more detailed version of the requirements matrix

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

a. the system is laid out using mockups, and the basic modules and logic for the software portion of the system are outlined
- example screens and windows are developed (like storyboarding) to illustrate basic flow and feel of the system
- hardware requirements are also determined during this phase

b. main actors: project manager, system architect, programmers (support role, not programming), and users (to give input and advice)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q
  1. Development (Construction)
A

a. where actual programming takes place. the primary deliverable during this phase is a prototype or “alpha” system that can then be tested for quality assurance
- testing is actually begun during the development stage and are performed together

b. main actors: programmers, testers

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

a. users try out the system, find bugs, and see if they can break it and provide feedback to the development team in order to refine the system
- testers have to be creative and try to break into the system (system penetration testing or white hat)

b. main actors: testers, programmers

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

Types of testing:

A
  • unit
  • integration
  • system
  • user acceptance
17
Q

unit testing

A

do individual components of the code work properly?

EX: if i click “submit” does my information get stored?

18
Q

integration testing

A

test whether individual units work together properly

19
Q

system testing

A

does the entire system of groups of units work properly, occurs after integration

20
Q

user acceptance testint

A

doe the end user actually use this system the way it is intended, in a manner that allows them to perform their job successfully and will be continually followed by the user after nobody is looking over them

21
Q
  1. Implementation
A

a. when the system is ready to be delivered to the users/customers to “go live” - handle real transactions
- must train users how to use the new system

22
Q

Approach to implementation

A

direct conversion
parallel conversion
phased conversion
pilot conversion

23
Q

direct conversion

A

switch from the old system to the new one “overnight”

24
Q

parallel conversion

A

continue to run the old system until the new one is activated & working

25
Q

phased conversion

A

activate the new system one module at a time

26
Q

pilot conversion

A

activate and test the new system in one branch of an organization, then implement it in other branches once the pilot branch has figured out all the bugs

27
Q
  1. Maintenance
A

a. includes support for the system even after implementation
- if an error is discovered, the development team will fix it
- if new features are requested, the development team can negotiate for developing the new features

28
Q

make

A

the organization will write the software code - or some portion of it - themselves using their own programmers

29
Q

build

A

organization will fire an external consulting company to build the system, or some portion of it, for them

30
Q

buy

A

the organization will buy some off the shelf software to meet their needs

31
Q

Consider Advantages/Disadvantages

A
  1. availability of commercial packages
  2. availability of competent personnel
  3. risk of losing sensitive information

-if not unique, most likely a “commercial off the shelf” (COTS) package

32
Q

SDLC Methodologies

A
  • waterfall

- agile

33
Q

waterfall

A

moves through each of seven phases above in linear, step order fashion in which each phase is executed only once in its entirety

pros: low cost, if everything goes right
cons: if you get to user acceptance and it’s clear the system isn’t going to work back to the beginning

therefore, if a) you expect your requirements to change over time for whatever reason b) can’t adequately gather your requirements in a single effort then consider agile

34
Q

agile

A

approaches such as rapid application development (RAD), and Extreme programming (XP) approaches iterate repeatedly through frequent design/develop/test/redesign cycles in order to prototype as often as possible to quickly work out kinks and bugs

35
Q

quality constraints

A

These three variables are interdependent
You cannot change one without changing the others
For example, decreasing a project’s timeframe means either increasing the cost of the project or decreasing the scope of the project to meet the new deadline
Increasing a project’s scope means either increasing the project’s timeframe or increasing the project’s cost – or both – to meet the increased scope changes
Project management is the science of making intelligent trade-offs among time, cost, and scope

36
Q

Reasons for Systems Development Problems

A
  • Important Business Requirements Unclear or Missing
  • Skip SDLC Phases
  • Failure to Manage Project Scope
  • Poor project management
  • Changing Technology
37
Q

Principles of Successful Development

A
  • Keep the Budgets small
  • If it doesn’t work, kill it
  • Keep requirements to a minimum
  • Test and Deliver Frequently
  • Assign NON-IT execs to software projects
  • [Ask the “dumb” questions]