Software Process Flashcards

1
Q

Waterfall software process

A
Requirements: product requirements document 
Design: software architecture 
Implementation: software
Verification:
Maintenance:
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Accidental complexity

A

Relates to problems which engineers create and can fix

Ex) the details of writing and optimizing code

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

Essential complexity

A

Is caused by the problem to be solved and relate to the complexity of context and stakeholders involved

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

Problem of requirements

A
  • difficult to communicate clearly
  • difficult to document
  • difficult to negotiate
  • difficult to manage (change)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Success Factors in 1995

A
  1. User involvement
  2. Executive management support
  3. Clear statement of requirements
  4. Proper planning
  5. Clear vision and objectives
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Success factors 2015

A
  1. Execute sponsorship
  2. User Involvement
  3. Agile process
  4. Modest execution
  5. Clear business objectives
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Importance of software process

A

Project success
Financial
Safety

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

Mitigate project risks

A
  • continuous access to stakeholders
  • incremental and iterative software development
  • having cycles instead of steps
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Waterfall vs agile

A
  • waterfall does each step then done, not used anymore
  • agile has a cycle of testing and coding (working with stockholder) better method (ex scrum and spring planning in scrum)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Model, view, controller

A
  • segment our ideals from the model (sep how we interact with it to how we view it)
  • benefits: to make changes you know where to go and don’t have to change everything, easier to test components
  • downsides: disperse function into three parts and makes it hard to find code, takes over code and takes away flexibility
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Module cohesion

A

The extent to which software entities pertaining to the same functionality are contained within a single module

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

Inter-module coupling

A

The extent of inter-module connections

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

Architecture quality attributes

A

Want low coupling and high cohesion

-results in easier maintenance of code, higher modifiability, and localization of changes

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

Categories of requirements

A
  1. Functional requirements: what the software should do
  2. Quality requirements: qualifications (speed, reliability, …)
  3. Constraints: coming from somewhere (programming language, platform)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Role of architecture

A
  1. Functional requirements: ability of system to do work it was required
  2. Quality requirement: satisfied by quality of the system as a whole
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Functionality

A

-the ability of the system to do the work for which was intended
-has the strangest relationship with architecture
Eg) “when user presses the green button something happens”

17
Q

Quality requirements

A

Pertain to the functions of a system
Eg) how quickly does the dialog appear (performance)
How often will func fail (availability)
(Usability)

18
Q

Two categories of QA’s

A
  • ones that describe property of the system at runtime (availability, performance, usability)
  • ones that describe some property of development of the system (modifiability, testability)
19
Q

Problems with QA’s

A
  1. Testability: many quality attributes are difficult to test
  2. Mapping of concern: is a system failure due to a denial-of-service attack an aspect of availability, an aspect of performance, an aspect security or usability
20
Q

Storyboarding

A

Powerful validation technique

-always them to see if it looks and flows the way it should

21
Q

V & V activities through development

A
  • Requirement: rapid prototyping
  • Specification: do conform to req and any ambiguity
  • Design: design checked for faults
  • Implementation: tested and walk through (black-box~ don’t care about implementation white-box ~ do)
  • Integration: work in things independent and can be brought together
  • Product Testing: look at specs and start to check boundary’s outside spec
  • Acceptance Testing: software given to client to test