SE : Chapter 3 ^ 4

Ace your homework & exams now with Quizwiz!

Personal software process (PSP)

Makes the practitioner responsible for the project planning and empowers the practitioner to control the quality of all software work products that are developed

Aspects

Mechanism beyond subroutines and inheritance for localizing the expression of a crosscutting concern

Elicitation

More commonly called requirements gathering

Iteration

Occurs as the prototype is tuned to satisfy the needs of various stakeholders

Unified process

A "use-case driven, architecturecentric, iterative and incremental" software process closely aligned with the Unified Modeling Language (UML)

Transition phase

Encompasses the latter stages of the generic construction activity and the first part of the generic deployment (delivery and deployment activity).

High-level design review

Formal verification methods are applied to uncover errors in the design. Metrics are maintained for important tasks and work results

Elaboration phase

Encompasses the communication and modeling activities of the generic process model

Prototype

Can serve as "the first system"

Problem

Specific problem to be solved by the pattern

Cyclic, anchor point milestone

2 main distinguishing features of spiral development model

Planning, high-level design, high-level design review, deployment, postmortem

5 framework activities of the PSP model

Anchor point milestones

A combination of work products and conditions that are attained along the path of the spiral

Software process

A framework for the activities, actions and tasks that are required to build high-quality software

ISO 9001:2000 for Software

A generic standard that applies to any organization that wants to improve the overall quality of the products, systems or services that it provides. Therefore, the standard is directly applicable to software organizations and companies

Spiral

A model that uses prototyping as a risk reduction mechanism but more important, enables you to apply prototyping approach at any stage in the evolution of the product

Software process

A road map that you follow

SPICE(ISO/IEC15504)

A standard that defines a set of requirements for software process assessment. The intent of the standard is to assist organizations in developing an objective evaluation of the efficacy of any defined software process

Waterfall model

A useful process model in situations where requirements are fixed and work is to proceed to completion in a linear manner

Cleanroom software engineering

A variation in the formal methods model approach is said to be currently applied by some software development organizations

V-model

A variation in the representation of the waterfall model

Cyclic

Approach for incrementally growing a system's degree of definition and implementation while decreasing it's degree of risk

Evolutionary model

Are iterative. They are characterized in a manner that enables you to develop increasingly more complete versions of the software

Clockwise

As this evolutionary process begins, the software team performs activities that are implied by a circuit around the spiral in a _____________ direction, beginning at tge center

UML

Became a de facto industry standard for object-oriented software development

Prototyping paradigm

Begins with a communication

True

Both stakeholders and software engineers like the prototyping paradigm. Users get a feel for the actual system and developers get to build something immediately. True or False

Prototyping

Can be used as a stand-alone process model. It is more commonly used as a technique that can be implemented within the context of any one of the process models

Production phase

Coincides with the deploymemt activity of the generic process. During this phase the ongoing use of the software is monitored, support for the operating environment (infrastructure) is provided, defect reports and requests for changes are submitted and evaluated

Initial context

Describes the conditions under which pattern applies

Incremental model

Combines the elements' linear and parallel process flows, applies linear sequences in a staggered fashion as a calendar time progresses. Each linear sequence produces deliverable "increments" of the software. Example : word-processing software

Phase pattern

Define the sequence of framework activities that occurs within the process, even when the overall flow of activities is iterative in nature

Aspectual requirements

Define those crosscutting concerns that have an impact across the software architecture

Stage pattern

Defines a problem associated with a framework activity for the process. Since a framework activity encompasses multiple actions and work task, a __________________ incorporates multiple task pattern that are relevant to the stage

Task pattern

Defines a problem associated with a software engineering action or work task and relevant to successful software engineering practice

Concurrent modeling

Defines a series of events that will trigger transitions from state to state for each of the software engineering activities, actions, or tasks

Task set

Defines the actual work to be done to accomplish the objectives of a software engineering action

Software process

Defines the approach that is taken as software is engineered

Spiral model

Demands a direct consideration of technical risk of all stages of the project and if properly applied, should reduce risks before they came problematic

V-model

Depicts the relationship of quality assurance actions to the actions associated with communication, modeling and early construction activities

Process pattern

Describes a process-related problem that is encountered and suggests one or more proven solutions to the problem

Process flow

Describes how the framework activities and the actions and tasks that occur within each framework activityare organized with respect to sequence and time

Solution

Describes how to implement a pattern successfully. This section describes how the initial state of the process (that exists before the pattern is implemented) is modified as a consequence of the initiation of the pattern

Resulting context

Describes the conditions that will result once the pattern has been successfully implemented

Commercial off-the-shell (COTS) software components

Developed by vendors who offer them as products, provide targeted functionality with well defined interfaces that enable the component to be integrated into the software that is to be built

Personal software process (PSP)

Emphasizes personal measurement of both the work product that is produced and the resultant quality of the work product

Formal methods

Enable you to specify, develop and verify a computer-based system by applying a rigorous mathematical notation

Formal methods model

Encompasses a set of activities that leads to formal mathematical specification of computer software

Inception phase

Encompasses both customer communication and planning activities

Software engineering

Encompasses technologies that populate process--technical methods and automated tool

Anchor point of milestones

Ensuring stakeholder commitment to feasible and mutually satisfactory system solutions

Linear process flow

Executes each of the five framework activities in sequence, beginning with communication and culminating with deployment

Parallel process flow

Executes one or more activities in parallel with other activities

Evolutionary process flow

Executes the activities in a "circular" manner. Each circuit through the five activities lead to a more complete version of the software

High-level design

External specification for each component to be constructed are developed and a component design is created. Prototypes are built when uncertainty exist. All issues are recorded and tracked

Communication, planning, modeling, consrtruction and deployment

Five framework activities

Quick design

Focuses on the representation of those aspects of the software that will be visible to end users. It leads to the construction of a prototype

Construction phase

Identical to the construction activity defined for the generic software process

Task set

Identifies the work tasks that are to be completed, the work products that will be produced, the quality assurance points that will be required, and the milestones that will be used to indicate progress.

True

If a market window is missed, the software projecr itself may be meaningless. True or False

Blocking states

In which some project team members must wait for other members of the team to complete dependent tasks. The _____________________ tends to be more prevalent at the beginning and end of a linear sequential process

Component-based development model

Incorporates many of the characteristics of the spiral model. It is evolutionary in nature, demandin an iterative approach to the creation of the software

Known uses and examples

Indicate the specific instances in which the pattern is applicable

Spiral model

Is a realistic approach to the development of large-scale systems and software

Spiral development model

Is a risk-driven process model generator that is used to guide multi-stakeholder concurrent engineering of software intensive systems

Aspect-oriented software development (AOSD)

Is abrelatively new software engineering paradigm that provides a process and methodological approach for defining, specifying, designing and constructing aspects

Unified process

Is an attempt to draw on the best features and some characteristics of traditional software process model, but characterize them in a way that implements many of the best principles of agile software development

Spiral model

Is an evolutionary software process model that couples the iterative nature of prototyping with the controlled and systematic aspects of the waterfall model. It provides for rapid development of increasingly more complete versions of the software

Workflow

Is analogous to a task set. It identifies the task required to accomplish an important software engineering action and the work products that are produced as a consequence of successfully completing the task

Risk

Is considered as each revolution is made

Process

Is defined as a collection of work activities, actions and tasks that are performed when some work product is to be created

Edge of chaos

Is defined as a natural state between order and chaos, a grand compromise between structure and surprise. Can be visualized as an unstable, partially structured state (it is unstable because it is constantly attracted to chaos or to absolute order)

Software engineering

Is performed by creative, knowledgable people who should adapt a mature software process so that it is appropriate for the products that they build and the demands of their marketplace

Prototyping iteration

Is planned quickly and modeling ( in the form of a "quick design" occurs

Time-to-market

Is the most important management requirement

Waterfall model

Is the oldest paradigm for software engineering

Process model

It defines the flow of all activities, actions and tasks, the degree of iteration, the work products and the organization of the work that must be done

Spiral model

It maintains the systematic stepwise approach suggested by the classic life cycle but incorporates it incorporates it into an iterative framework that more realistically reflects the real world

True

It should be noted that not every task identified for a UP workflow is conducted for every software project. True or False

Aspect-oriented software development (AOSD)

Ofren referred to as aspect-oriented programming (AOP) or aspect-oriented component engineering (AOCE)

Related patterns

Provide a list of all process patterns that are directly related to this one. This may be represented as a hierarchy or in some other diagrammatic form

CMM-Based Appraisal for Internal Process Improvement (CBA IPI)

Provides a diagnostic technique for assessing the relative maturity of a software organization

Standard CMMI Assessment Method for Process Improvement (SCAMPI)

Provides a five-step process assessment model that incorporates five phases : initiating, diagnosing, establishing, acting and learning

Process model

Provides a specific roadmap for software engineering work

Elaboration

Refines and expands the preliminary use case that were developed as part of the inception phase and expands the architectural representation to include five different views of the software

Iterative process flow

Repeats one or more of the activities before proceeding to the next

Prototype

Serves as a mechanism for identifying software requirements

Inception, elicitation, elaboration, negotation, specification and validation

Six distinc actions for more complex projects

Waterfall model

Sometimes call classic life cycle, suggests a systematic, sequential approach to software development that begins with customer specification of requirements and progresses through planning, modeling, construction and deployment, culminating in ongoing support of the completed software

Concurrent development model

Sometimes called concurrent engineering allows a software team to represent iterative and concurrent elements of any of the process models described

Prescriptive process model

Strives for structure and order in software development

Requirements gathering

The goal of _____________ is to understand what various stakeholders want from the software that is to be built

Forces

The environment in which the pattern is encountered and the issues that make the problem visible

Pattern name

The pattern is giving a meaningful name describing it with context of the software process

Work products

These are the programs, documents and data that are produced as a consequence of the activities and tasks defined by the process

Planning

This activity isolates requirements and develops both size and resources estimates. In addition, a defect estimate (the number of defect projected for the work) is made alletrics are recorded on worksheets or templates. Finally, deployment task are identified and a project schedule is created

Process model (Prescriptive process model)

Were originally proposed to bring order to the chaos of software development

Core product

When an incremental model is used, the first increment is often a ____________________

Crosscutting concern

When concerns cut across multiple system functions, features and information l, they are often referred to as ______________________

Analysis model correction

Which will trigger the requirements analysis action from the done state into the awaiting changes


Related study sets

2019 SHRM-SCP - Interpersonal Cluster

View Set

Solaris 10 Exam - Chapter 7 - System Backups and Restores

View Set

Unit 10 - Final Chapters - Notes

View Set

EGEE 102- Ozone, Pollutants, and Fossil Fuels

View Set

Life Span Development Final Exam

View Set

Management Theory & Practice 15,16,17,18

View Set