CS345 Exam2 (Part 2 revision)

0.0(0)
studied byStudied by 0 people
full-widthCall with Kai
GameKnowt Play
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/46

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

47 Terms

1
New cards

Development Environment:

The hardware and software that are used to (design and) implement a software product

2
New cards

Testing Environment:

The hardware and software that are used to test (usually integration testing and system testing) a software product

3
New cards

Production Environment:

The hardware and software system that the user interacts with through the software product

4
New cards

Physical Architectures

a realization of a software product as artifacts

5
New cards

An Important Note regarding Physical Architectures:

A product's physical architecture is distinct from its logical architecture

6
New cards

Characteristics of Physical Architectures

Where is the software installed?

Where is the software executed?
Where are user configurations and data stored?

  • Local device

  • Central device(s)

  • Hybrid

7
New cards

The Rare Archetypes:
Mobile Agents

  • The software is stored on the user device and executed on the shared device (using data from one or the other)


  • The software is stored and executed on one device (either the user device or the shared device) but the user data is stored on another

8
New cards

Archetypal Physical Architectures
Mainframe:

The software product is installed on and executes on a central device, and is accessed from the user's device

Configuration information for each user and user data is stored on the central device

9
New cards

Archetypal Physical Architectures
Personal:

  • The software product is "permanently" installed on the user's device (e.g., personal computer, phone, tablet) and executes on that device's processor

  • If the device has multiple users, configuration information and user data are associated with each user

10
New cards

Archetypal Physical Architectures
Shared:

  • The software product is "permanently" installed on a shared storage device but executes on the user device's processor

  • Configuration information for each user and user data are stored on the user's device

11
New cards

Archetypal Physical Architectures
Cloud:

  • The software product is temporarily delivered to the user's device and executes on that device's processor (e.g., applets, WWW apps)

  • Configuration information for each user and user data is (mostly) stored "in the cloud"

12
New cards

Archetypal Physical Architectures
The Hybrid Architectures:

  • Some components of the system (e.g., classes) may be stored/executed on one device while others might be stored executed on another

  • Some data may be one one device and some data may be on another

13
New cards

Activities in the Deployment Process
Release:

Prepare the product for the subsequent steps (i.e., assemble the parts/resources/artifacts and create a distributable package)

14
New cards

Activities in the Deployment Process
Install:

Transfer the product from the development environment to the production environment

15
New cards

Activities in the Deployment Process
Activate:

Start all of the executable components

16
New cards

Activities in the Deployment Process
Deactivate:

Stop the executable components

17
New cards

Activities in the Deployment Process
Uninstall:

Remove the product from the production environment

18
New cards

Adding Updates to the Idealized Process

The Issue:

All or part of an installed product may need to updated

19
New cards

Adding Updates to the Idealized Process
Some Complications:

  • It may or may not require deactivation and reactivation

  • It is important to be able to "undo" an update and return the product to its previous state

20
New cards

Adding Updates to the Idealized Process
An Implication:

Design and implement with updates in mind

21
New cards

Purpose of Deployment Diagrams:

To model a physical architecture

22
New cards

Elements of a Deployment Diagram:

  • Artifacts - a physical manifestation of a non-software element of a software system (e.g., files)

  • Components - a software element of a software system (e.g., an application)

  • Nodes - computational resources (i.e., a physical device or an execution environment such as a virtual machine)

23
New cards

Artifacts:

knowt flashcard image
24
New cards

Components:

knowt flashcard image
25
New cards

visual representation of a Node

knowt flashcard image
26
New cards

Visual Representation of Relationships
Communication Paths:

A solid line between elements

27
New cards

Visual Representation of Relationships

Static Deployment:

An artifact/component is placed in a node

28
New cards

Visual Representation of Relationships

Dynamic Deployment:

A dependency arrow (a dashed arrow with the stereotype <<deploy>>) connects the artifact/component to the node

29
New cards

Deployment Diagram

knowt flashcard image
30
New cards

31
New cards

Types of Support
Professional:

The person helping is employed by the provider of the software product

32
New cards

Types of Support
Community:

Users of the system helping others

33
New cards

Types of Support
Hybrid:

A community system in which the professionals participate

34
New cards

Methods of Providing/Delivering Support
Channels:

  • Telephone

  • Electronic Mail

  • Chat/Messaging

  • Social Network

  • WWW "Forms"

35
New cards

Methods of Providing/Delivering Support
Interaction:

  • Synchronous

  • Asynchronous

36
New cards

Support Tracking/Management
Purpose:

Accept, prioritize, assign, track, and log requests for support

37
New cards

Support Tracking/Management
Common Terminology:

  • Call Management System

  • Ticketing System

38
New cards

Levels/Tiers of Support
The Concept:

Provide different levels of support services to different stakeholders (usually for different fees)

39
New cards

Levels/Tiers of Support
Defining Tiers:

  • Hours of Support (e.g., 24/7, M-F)

  • Time to Engage (e.g., within 5 minutes, same-day)

  • Priority/Severity of the Request

40
New cards

Types of Maintenance (ISO/IEC 14764)

Corrective
Adaptive
Perfective
Preventive

41
New cards

Frequency (Maintenance)
Agile Processes:

Tend to deploy more frequently so maintenance activities tend to occur more frequently

42
New cards

Frequency (Maintenance)
Heavyweight Processes:

Tend to deploy Less frequently so maintenance is less frequent but no less significant

43
New cards

Why Maintenance is Expensive
Endemic Reasons:

Successful products are in the field for decades so huge costs are bound to accrue

44
New cards

Why Maintenance is Expensive
Other Reasons:

As a product is modified its structure deteriorates

45
New cards

Maintenance Tradeoffs

Related to Availability:

Maintenance improves a product but may make it unavailable

46
New cards

Maintenance Tradeoffs

Related to Quality:

There are often "elegant" solutions and "quick and dirty" solutions

47
New cards

Who is Involved in maintenance?

  • The original development team

  • A maintenance team