CSE exam 2

Lakukan tugas rumah & ujian kamu dengan baik sekarang menggunakan Quizwiz!

The cyclomatic complexity metric provides the designer with the information regarding the number of a) cycles in the program b) errors in the program c) independent logic paths in the program d) statements in the program

c

Which is NOT a nonfunctional requirement? a) Ease of use b) robustness c) correctness d) portability

c

Occurrences or events are:

(ex: A property transfer or the completion of a series of robot movements) that occur within the context of system operation

Organizational units are

(ex: division, group, team) that are relevant to an application

Roles are:

(ex: manager, engineer, salesperson) played by people who interact w the system

Places are

(ex: manufacturing floor or loading dock) that establish the context of the problem and the overall function of the system

External entities are

(ex: other systems, devices, people) that produce or consume info to be used by a computer based system

Things are

(ex: reports, displays, letters, signals) that are part of the information domain for the problem

Structures are

(ex: sensors, four-wheeled vehicles, or computers) that define a class of objects or related classes of objects

How are the parameter types listed

(name: type)

Cyclomatic complexity is a quantitative measure of logical strength of the program. It indirectly measures the number of linearly independent paths through a program's source code. T or F?

F, directly measures logical strength

T or F? It is generally accepted that a late stage of agile processes is to design an overall systems architecture.

F, early stage

Function points are derived using a theoretical relationship based on countable (direct) measures of software's information domain and assessments of software complexity. T or F?

F, empirical relationships

Experimental verification for selected programming languages has not been performed T or F?

F, has been performed

T or F? An architectural pattern is a stylized description of good design practice, which has been tried and tested in only one environment.

F, in different environments

Valid statistical techniques should be applied to establish relationship between internal product attributes and external quality characteristics T or F?

T

When large amounts of data are to be shared, the repository model of sharing is most commonly used as this is an efficient data sharing mechanism. T or F?

T

Whenever possible, data collection and analysis should be automated T or F?

T

pipes /filters are also data flow architectures T or F

T

Client-server architecture: Distributed system model which shows how data and processing is distributed across a range of components. T or F? Can be implemented on a single computer?

T Yes

True or false: For large systems developed by different groups, design models are an important communication mechanism

TRUE

Flow chart symbol: Oval

Terminal, Start or stop

Product revision includes which qualities? a) Maintainability b) Reliability c) Flexibility d) Usability e) Testability f) Integrity g) Interoperability h) Portability i) Correctness j) Reusability k) Efficiency

a) c) e)

True or false: Sequence diagrams are used to model interactions between the actors and the object in a system

True

True or false: The first step in the design process is to understand the relationships between the software being designed and its external environment.

True

True or false: The layered architecture supports incremental development of a system

True

True or false: The repository architecture is based on different components share data

True

True or false: There is a strong relationship between the non-functional requirements and the system architecture

True

True or false? The conditions in the decision table may take on any number of values.

True

True or false: Object identification is an iterative process

True- you are unlikely to get it right the first time

Sequence diagrams are part of the what?

UML

System modeling has now come to representing a system using some sort of graphical notation, which is almost always based on notations in what language?

UML - unified modeling language

A common template for a user story is "As a <A>, I want to <B> so <C> What is <A>? a) a type of user b) a customer c) A developer d) none of the above What is <C>? a) the action in the system b) the action of the user c) the desired result for the user d) the end condition in the system

a) c)

Which of the following is a good name for a use case? a) Make appointment b) Appointment c) Doctor d) Patient

a) because is provides the verb and the subject

Operators include? a) Function name b) Variables c) Parenthesis d) Constants e) Type f) Brackets g) Strings h) Arithmetic/ logic operators

a) f) c) e) h)

Refactoring the system architecture is usually expensive because it affects so many _______________ in the system

components

Analysis classes elicitation does what?

considers the main perspectives of the system

A design goal when creating a module is to a) Maximize coupling abd cohesion b) minimize couple and cohesion c) maximize coupling and minimize cohesion d) minimize coupling and maximize cohesion

d

Generalization is a _____________ relationship

inheritance

every project should measure?

inputs—measures of the resources (e.g., people, tools) required to do the work. outputs—measures of the deliverables or work products created during the software engineering process. results—measures that indicate the effectiveness of the deliverables

What is a module?

lexically contiguous sequence of program statements, bounded by boundary elements, with aggregate identifier

4 different Architectural views....

logical view, development view, physical view, process view

main() { int a, b, c, avg; scanf ("%d %d %d", &a, &b, &c); avg = (a + b + c) / 3; printf ("avg = %d", avg); } Unique operators? Unique operands?

main, (), {}, int, scanf, &, =, +, /, printf a, b, c, avg, "%d %d %d", 3, "avg = %d"

A generalization relationship ____________ be used to model interface implementation

may not

Process management: derived outcomes from the process include?

measures of errors uncovered before release of the software defects delivered to and reported by end-users work products delivered (productivity) human effort expended calendar time expended schedule conformance other measures.

Verbs are potential

methods or responsibilities of a class

An indicator is a...

metric or combination of metrics that provide insight into the software process, a software project, or the product itself

Procedural Cohesion: module performs series of actions related by procedureon ___________ data values Why is this bad? Fix?

multiple actions are still weakly related to one another not reusable break it up

Coincidental Cohesion: module performs ________________, completely unrelated actions Why is this bad? Easy to fix. How?

multiple degrades maintainability & modules are not reusable break into separate modules each performing one task

n1 =? n2 =? N1 =? N2 =?

n1 = the number of distinct operators n2 = the number of distinct operands N1 = the total number of operators N2 = the total number of operands

Program Vocabulary formula? Program length formula?

n= n1 + n2 N= N1 + N2

To clarify its meaning, and association can be

named The name is represented as a label and is midway along the association line--- usually verb

State machine models show the system states as

nodes

Can you do anything you want with open source code?

nooo

Identifying analysis classes: Synonyms should be

noted

Information domain values are defined in the following manner

number of external inputs (EIs) number of external outputs (EOs) number of external inquiries (EQs) number of internal logical files (ILFs) number of external interface files (EIFs)

In terms of metrics knots are...

number of times control paths cross

Generalization indicates that...

objects of specialized class (subclass) are substitutable for objects of the generalized class (super-class) - "is kind of" relationship

Architectural patterns are a means of....

of reusing knowledge about generic system architectures. They describe the architecture, explain when it may be used and describe its advantages and disadvantages.

Functional Cohesion: module performs exactly __________ action why is this good?

one >more reusable >corrective maintenance easier >>fault isolation >>reduced regression faults >easier to extend product

In state machine modeling when an event occurs the system moves from

one state to another

Temporal Cohesion: module performs series of actions related in ____________ Why is this bad? How to fix initialization issue?

time actions weakly related to one another, but strongly related to actions in other modules code spread out -> not maintainable or reusable define these intializers in the proper modules & then have an initialization module call each

Is it okay to omit things from UML diagrams if they aren't needed by team/supervisor/instructor

true

State machine models show system responses to stimuli so are often used for modeling real-time systems

true

Coupling: Degree of interaction between_________ modules

two

Identifying analysis classes: Classes are determined by

underlining each noun or noun phrase and entering it into a table

Association is a ________________ relationship

usage

Object-Oriented Metrics include the number of?

use cases (scenario scripts) support classes (required to implement the system but are not immediately related to the problem domain) average number of support classes per key class (analysis class) Number of subsystems (an aggregation of classes that support a function that is visible to the end-user of a system)

when is MVC used?

when there are multiple ways to view and interact with data when the future requirements for interaction and presentation of data are unknown

What are CRC card exercises

write down classes' names on index cards next to each class list: responsibilities and collaborators

Comments are represented as

A folded note, attached to the appropriate class/methods/etc. by a dashed line

What is the component level of reuse

Components are collections of objects and object classes that you reuse in application systems

Collection: The computation of metrics and the application of mathematical tools. T or F?

F, The mechanism used to accumulate data required to derive the formulated metrics

T or F Architectural design is a creative process so the process is the same across all types of system being developed.

F, differs across all different types

True or false: The symbol for aggregation is an open diamond next to the class that is the part

False

True or false: UML activity diagrams may be used to define business process models?

TRUE

True or false: State diagrams are used for event-based modeling

True

What are the different system perspectives?

1. External 2. Interaction 3. Structural 4. Behavioral

Graphical models care used in what 3 ways

1. To facilitate discussion about an existing or proposed system (doesn't matter if models are incomplete or incorrect, the role is to support discussion) 2. To document a system (models should be accurate but don't need to be complete) 3. As a detailed system description that can be used to generate a system implementation (Models have to be correct and complete)

In a class diagram an object class can be thought of as what?

A general definition of one kind of a system object

In software quality assurance work, there is no difference between software verification and software validation. True or False

False, there is a difference

What are the 5 different UML diagram types?

Activity Use Case Sequence Class State

Interactions between objects are indicated by what?

Annotated arrows

Models are made and used to communicate with who?

Customers

Stimuli are categorized in what 2 types

Data and events

True or false: Actors in a use case may not be other systems

False- Actors in a use case can be other people or systems

The objects and actors involved in a sequence diagram are listed where?

At the top of the diagram, with a dotted line drawn vertically from these

Which of the following is NOT an objective for building a requirements model? A)Define a set of software requirements that can be validated B)Describe customer requirements C)Develop an abbreviated solution for the problem D)Establish a basis for software design

C

True or false: In an agile process, it is not relevant to create an architectural design

False

True or false: Modeling component interaction helps us determine if the system components haven't delivered the dependability

FALSO- Modeling component interaction helps us understand if a proposed system structure is likely to deliver the required system performance and dependability

What is the difference between a functional and a nonfunctional requirement?

Functional requirements identify what the product must do, while nonfunctional requirements identify the experience or quality

Modeling user interaction is important why?

Helps identify user requirements

Process models reveal what?

How the system being developed is used in broader business processes

What does an state diagram show?

How the system reacts to internal/external events

Use case diagrams and sequence diagrams may be used for what?

Interaction modeling

What does an sequence diagram show?

Interactions between actors and the system and between system components

Rather than learning the detailed characteristics of every entity that we experience we do what?

Place these entities in more general classes (ex: animals, cars, houses) and then learn the characteristics of these classes --- allows us to infer that different members of these classes have some common characteristics

A sequence diagram shows the what?

Sequence of interactions that take place during a particular use case or instance

True or false: Graphical models can be used to stimulate discussion on a system

TRUE

True or false: Model-driven engineering is an approach in which a system is represented as a set of models that can automatically be transformed into executable code

TRUE

True or false: System modeling is the process of developing abstract models of a system, with each model presenting different views or perspectives of that system

TRUE

True or false: UML activity diagrams show the activities in a process and how the flow of control moves from one activity to another

TRUE

What does an activity diagram show?

The activities involved in a process or data processing

Modeling system-to system interaction highlights what?

The communication problems that may arise

What does system modeling help analysts understand?

The functionality of the system

What does a use case diagram show?

The interactions between a system and its environment

What does an class diagram show?

The objects in classes in the system and the associations between these classes

Structural models display what

The organization of a system in terms of the components that make up that system and the relationships

Dynamic models show what?

The organization of the system when it is executing

A(n) _________ class serves as an interface between the system and its environment a) Communication b) Boundary c) Entity d) Control

b

Structural models can be static models, which show what?

The structure of the system design

Give an example of a functional requirement

The system must update the database

Use case modeling is represented diagrammatically why?

To provide an overview of the use case in a mode detailed textual, form

A use case scenario is a textual description of actions and conditions. True or False

True

Git is a version control system that you can think of as a series of snapshots or commits of your code while GitHub, is a web-page on which you can publish your Git repositories and collaborate with other people. True or False

True

True or false: A compiler is an example of a pipe and filter architecture

True

True or false: Architectural design is concerned about the overall structure of the system

True

True or false: Behavior models show the dynamic behavior of a system

True

True or false: Class diagrams are used to show the classes and the associations between the classes

True

True or false: Context models are used to illustrate the operational context of a system, they show outside the system boundaries

True

True or false: The MVC pattern is useful when there are multiple ways to interact with the data

True

When can structural models be created?

When designing and discussing the system architecture.

What is an external perspective?

Where you model the context or environment of a system

What's a behavioral perspective?

Where you model the dynamic behavior of a system and how it responds to events

What is an interaction perspective?

Where you model the interactions between a system and its environment, or between the components of the system

What's a structural perspective

Where you model the organization of a system or the structure of the data that is processed by the system

Were use cases developed originally to support requirements elicitation and now incorporated into the UML?

Yes

A technique to identify classes is to parse a description and a) Identify classes by nouns and operations by verbs b) Identify classes by verbs and operations by nouns c) Identify classes by data and operations by data flows d) Identify classes by actors and operations by services

a

The relationship between two or more objects where all objects have their own lifecycle and there is no owner is a) Association b) Aggregation c) Generalization d) Composition

a

Which is NOT true about creating CRC cards? a) it is best to use software as a tool rather than physical cards b) it is a group activity, rather than an individual activity c) participants act out the behaviors os classes d) Class definitions can change during session

a

Event-driven modeling is based on the assumption that a system has ______ number of states and that events may cause a _______ from one state to another

a finite transition

A data flow diagram represents how... a) Data objects are transformed as the move through the system b) data objects are related to each other c) Data objects interact with each other d) Data objects represent the state of an object

a)

A level 0 data flow diagram is also called... a) Context level diagram b) High level diagram c) Abstract diagram d) Main diagram

a)

When a user story is too large to be coded and tested within an iteration, it is called a(n) a) epic b) saga c) long story d) Bad requirement

a)

Coupling is a qualitative indication of the degree to which a module a) can be written more compactly b) focuses on just one thing c) is able to complete its function in a timely manner d) is connected to other modules and the outside world

d

How are use cases helpful? a) In determining requirements b) In communicating with clients c) For generating test cases d) All of the above

d

Look at practice exam What rule determines that A4 is to be done? a) R3 b) R7 c) R8 d) all of the above

d

Superclasses are identified on CRC cards, this indicates... a) Another class uses the class b) This class uses another class c) Another class inherits from this class d) This class inherits from another class

d

Which of the following is NOT a factor in the measurement of effort for a code review? a) effort to prepare for the review b) effort to hold the review c) rework effort d) training effort

d

Which of the following is NOT an analysis modeling approach? a) scenario-based models b) Flow models c) Behavioral models d) prototyping

d

Which of the following is NOT part of the definition of "use case"? a) sequence of actions b) observable result c) Value to particular actor d) Required action to be preformed

d

In a data flow diagram, an external entity is represented by a(n) a) oval with a label b) arrow with a label c) stick figure with a label d) rectangle with a label

d)

Look at practice exam What action are done if C1 && !C2 && !C3? a) A1 only b) A1 and A4 c) A1, A2, and A4 d) none of the above

d)

Real time systems are often ___________- driven

event, with minimal data processing ex: landline phone switching system responds to events such as 'receiver off hook' by generating a dial tone

Algorithm design is the closest design activity to what?

coding

GNU General public license (GPL)

'reciprocal license', that means if you use open source software under this license then you must make that software open source

What are some common size measurements?

# of LOC # of statements # of classes # of files

Analysis classes elicitation : The system logic

- Controls and coordinates the behavior Delegates the work to other classes Decouples interface and data classes

Aggregation test questions

- Is the phrase "part of" used to describe the relationship (A door is part of a car) - Are some operations on the whole automatically applied to its parts? (Move the car, move the door) - Are some attribute values propagated from the whole to all or some of its parts (The car is blue, therefore the door is blue) - Is there an intrinsic asymmetry to the relationship where one class is subordinate to the other (A door is part of a car. A car is not part of a door)

Design problems

- Tell several objects that the state of some other object has changed (Observer pattern). - Tidy up the interfaces to a number of related objects that have often been developed incrementally (Façade pattern). - Provide a standard way of accessing the elements in a collection, irrespective of how that collection is implemented (Iterator pattern). - Allow for the possibility of extending the functionality of an existing class at run-time (Decorator pattern).

Control classes are

-- For coordinating boundary and entity classes -- Receives or handles system events -- Often one control class per use case ( control classes encapsulate behavior of use case) -- Control object is created at the beginning of use case and is destroyed at the end of use case

Features of structured programming

-Uses a limited set of constructs - Leads to more readable, testable code - Can be used in conjunction with 'proof of correctness' - Important for achieving high quality, but not enough

3 different uses for UML

1. As a sketch- to communicate aspects of a system 2. As a blueprint - a complete design to be implemented 3. As a programming language- with the right tools, code can be auto generated and executed from UML- only good if this is faster than coding in a "real language"

How do we design classes (2 things)

1. Class identification from project specifications/requirements 2. CRC card exercises

Rate the different levels of cohesion worst (1) to best (7)

1. Coincidental (worst) 2. Logical 3. Temporal 4. Procedural 5. Communicational 7. Functional | Informational (best)

Operations are divided into what 4 categories?

1. Operations that can manipulate data (ex: adding, deleting, reformatting, selecting) 2. Operations that perform a computation 3. Operations that inquire about the state of an object 4. Operations that monitor an object for the occurrence of a controlling event

Approach for algorithm design

1. Review design description for component 2. Use stepwise refinement to develop algorithm 3. Use structured programming to implement procedural logic 4. Use formal methods to prove logic

4 Approaches to identification

1. Use a grammatical approach based on a natural language description of the language 2. Base the identification on tangible things in the application domain 3. Use a behavioural approach and identify objects based on what participates in what behavior 4. Use a scenario based analysis. The objects, attributes, and methods in each scenario are identified.

Classes can fulfill their responsibilities in 1 of two ways

1. Use its own operations to manipulate its own attributes, thereby fulfilling a particular responsibility 2. A class can collaborate w other classes

What are some questions asked in the transition

1. What classes will we need to implement a system that meets out requirements? 2. What fields and methods will each class have? 3. How will the classes interact with each other

Look at practice exam If there are 4 binary conditions in a decision table, how many rules are there assuming that no rules are reduced?

2^4 = 16 4 binary conditions 2 binary values

Five levels of coupling worst = 1 best = 5 ?. Data ?. Stamp ?. Control ?. Common ?. Content

5 4 3 2 1

Decision Table Components consists of what 3 main parts?

>Condition stubs Lists condition relevant to decision >Action stubs Actions that result from a given set of conditions >Rules Specify which actions are to be followed for a given set of conditions

An encapsulated object can be thought of as what?

A black box- Because the inner workings are hidden from the client

Object oriented design process requires what?

A lot of effort for development and maintenance of the models

Structured object-oriented design processes involve what?

A number of different system models

What is structured programming

A programming paradigm which is aimed at improving the clarity, quality, and development time of a computer program by making extensive use of subroutines, block structures, and for and while loops

What are reviews NOT?

A project summary or progress assessment A meeting solely to impart information A mechanism for political/personal reprisal

Whats a defect

A quality problem found AFTER the software has been released

Whats an error?

A quality problem found BEFORE the software is released to end users

What are informal reviews?

A simple desk check of software engineering work product w a colleague. Casual meeting to review product Side effect of pair programming

Every block in structured programming has

A single entrance and single exit

What is aggregation

A special form of association that models a whole-part relationship bw an aggregate (the whole) and its parts

Composition is

A strong form of aggregation

Generalization features

A subclass inherits from its super-class (attributes, operations, relationships) A sub class can add attributes, operations, relationships, and refine inherited operations

A design pattern is

A way of reusing abstract knowledge about a problem and its solution. A pattern is a description of the problem and the essence of its solution. It should be sufficiently abstract to be reused in different settings

Dependency

A weaker form of relationship which indicates that one class depends on another because it uses it at some point in time One class depends on another if the independent class is a parameter variable or local variable of a method of the dependent class This is different from association, where an attribute of the dependent class is an instance of the independent class

4 levels of reuse

Abstraction Object Component System

Advantages of using layered architecture patterns?

Allows replacement of entire layers so long as the interface is maintained. Redundant facilities (e.g., authentication) can be provided in each layer to increase the dependability of the system.

What is a role

An end of an association where it connects to a class

Generalization is what?

An everyday technique that we use to manage complexity

Constrains and notes do what

Annotate among other things associations, attributes, operations, and classes

What does Ea stand for in the total review effort formula

Assessment effort- the (in person hours) that is expended during the actual review

A(n) _______________ is a link between classes that indicates there is some relationship between these classes

Association

What 3 categories can classes be placed into

Boundary Entity Control

5 essential elements of a UML class diagram

Class Attributes Operations Relationships Constraint rules and notes

What does a class diagram show: (4)

Classes Attributes Operations (methods) Relationships among the classes

What are the Component-Level Design Metrics?

Cohesion metrics: a function of data objects and the locus of their definition Coupling metrics: a function of input and output parameters, global variables, and modules called Complexity metrics: hundreds have been proposed (e.g., cyclomatic complexity)

Pipe Filter Models are used when?

Commonly used in data processing applications (both batch- and transaction-based) where inputs are processed in separate stages to generate related outputs.

Decision Table is a tool that helps us look at the combination of conditions to detect.... _________________ of conditions & _________________ of conditions

Completeness Inconsistency

Repository Pattern Advantages?

Components can be independent—they do not need to know of the existence of other components. Changes made by one component can be propagated to all components. All data can be managed consistently (e.g., backups done at the same time) as it is all in one place.

The organization of the Model-View-Controller The controller maps? Model encapsulates? and notifies? The view renders? requests? sends what to controller?

Controller maps user actions to model updates and selects view Model encapsulated application state and notifies view of state changes View renders model and requests model updates and sends user events to controller

Flow chart symbol: Diamond

Decision. Used for any logic or comparison operation

Defect density forumla

Defect density = Errtot / WPS

Association is

Dependency Aggregation Composition

What does a class diagram do?

Describes the system structure

What are the 2 forms of measurements?

Direct and indirect

A measure provides a qualitative indication of the extent, amount, dimension, capacity, or size of some attribute of a product process. T or F

F, QUANTITATIVE

Defining operations means

Doing a grammatical parse of a processing narrative and looking at the verbs

What is the abstraction level of reuse

Don't reuse software directly, but you use the knowledge of successful abstractions in the design of your software

For calculating the cyclomatic complexity of a structured program, what does each variable represent E =? N=? P=? M=?

E= the number of edges of the graph N= the number of nodes of the graph P= the number of connected components (exit node) M= complexity

Client-server model disadvantages?

Each service is a single point of failure so susceptible to denial of service attacks or server failure. Performance may be unpredictable because it depends on the network as well as the system. May be management problems if servers are owned by different organizations.

Pipe Filter Models Advantages:

Easy to understand and supports transformation reuse. Workflow style matches the structure of many business processes. Evolution by adding transformations is straightforward. Can be implemented as either a sequential or concurrent system.

Typical Project Metrics include?

Effort/time per software engineering task Errors uncovered per review hour Scheduled vs. actual milestone dates Changes (number) and their characteristics Distribution of effort on software engineering tasks

Object oriented program facilitates :

Encapsulation and information hiding

Total review effort forumla

Ereview = Ep + Ea + Er

Total errors found formula

Errtot = Errminor + Errmajor

What is the job of the review leader

Evaluates the product for readiness, generates copies of product materials, and distributes them to 2/3 reviewers for advance preparation

Identifying analysis classes:

Examining the usage scenarios developed as a part of the requirements model and perform a 'grammatical parse'

What is the job of the reviewer(s)

Expected to spend b/w 1 and 2 hours reviewing the product, making notes, and otherwise becoming familiar with the work

7 identifying objects from use-cases

External entities Things Occurrences or events Roles Organizational units Places Structures

A good side effect of a review is the review of the performance of the people creating the work. T or F?

F

If there is an external quality management group, then the developers do not need to be committed to a high level of achieving a high level of product quality. T or F?

F

Software quality is directly comparable with quality in manufacturing. T or F?

F

Software standards, such as coding standards, are not important is plan-based software quality management. T or F?

F

T or F? Quality management in agile development is more formal than in plan-based development.

F

The coding standards using in this class are an example of process standards. T or F?

F

the filter is continuous and carries out one type of data transformation. T or F?

F the filter is discrete

The Repository pattern: Only some data in a system is managed in a central repository that is accessible to some system components. Components interact directly, not through the repository.

F, ALL DATA in a system is managed in a central repository that is accessible to ALL system components, and the components DO NOT interact directly, ONLY through the repository

The advantage of a decision tree....

Missing items are quickly apparent

In a client-server architecture, the functionality of the system is organized into services, with each service delivered from the same server. Clients are users of these services and access servers to make use of them. T or F?

F, not same server but each service is delivered from a different server

Supports the incremental development of sub-systems in different layers. When a layer interface changes, all layers are affected. T or F?

F, only the adjacent are affected

Quality attributes are always measured directly? T or F?

F, quality attributes are often measured indirectly, we measure attributes that reflect quality

Cyclomatic complexity is a software feature T or F?

F, software metric

T or F? Architectural patterns should not include information about when they are and when the are not useful.

F, they should include

Use case diagrams provide details of each use case. T or F?

F, use case diagrams not are detailed explanations of use cases

True or false: Statecharts aren't integral for UML, and are used to represent state machine models

FALSE, they are integral

True or false: A UML class diagram is a dynamic model

False

True or false: All open source licenses are the same

False

True or false: An architectural model can be used for encouraging discussion but not for documenting a current system

False

True or false: Design and implementation are the same thing on object oriented programming

False

True or false: Design is a clear-cut, sequential process

False

True or false: Host-target development is never an issue as all development and production environments are identical

False

True or false: In open source, you can do any thing you want with the software

False

True or false: Purchasing software off the shelf is always easier and less expensive

False

True or false: Reuse is only possible at the abstract level as all software is unique

False

True or false: Taking the incremental development approach to developing an architecture is the best approach

False

True or false: The client server architecture is not commonly used for distributed systems

False

True or false: The pipe and filter architecture requires that only a single path exists in the sequence

False

True or false: a system model is a complete representation of a system and does not leave out any details

False

True or false: architecture in the large is concerned with the architecture of individual programs

False

Use-case actors are always people, never system devices. True or False

False

Process management: True or false? We measure the efficiency of a software process directly

False Indirectly we derive a set of metrics based on the outcomes that can be derived from the process. Also derive process metrics by measuring the characteristics of specific software engineering tasks.

The decision table allows the iteration of only some of the combinations of values of the conditions, thus it provides a "completeness check." True or false?

False, allows the iteration of all the combinations

True or false: Not any work item can be review

False, any work item can be review

true or false: UML does not offer many pre-defined constraints

False, it does offer pre-defined constraints

Implementation issues focus on

Focus is not on programming but on other implementation issues

Pipe and filter architecture: _____________ transformations process their inputs to produce outputs.

Functional

The observer pattern: Consquences

Optimizations to enhance display performance are impractical

3 license models

GNU general public license (GPL) GNU lesser general public license (LGPL) Berkley standard distribution license (BSD)

Open triangle represents what?

Generalization/Realization

Nassi-Schneiderman Diagrams are

Graphical design representation for structured programming

4 algorithm design models

Graphical ex: flowchart, box diagram Pseudo code ex: PDL Programming language Decision table

Flowcharts do what?

Graphically depict the logical steps to carry out a task and show how the steps relate to eachother

For large off the self systems, reuse costs are typically

HIGH

a comprehensive collection of metrics all predicated on the number (count and occurrence) of operators and operands within a component or program What is the name of this code metric?

Halstead's Software Science

Are state diagrams low or high level models

High, they are high level models of a system or an objects run-time behaviour

State diagrams are used to show

How objects respond to different service requests and the state transitions triggered by these requests.

Static view shoes

How the classes are organized NOT how the objects interact

Subsystem models show

How the design is organized into logically related groups of objects

What is a difficult part of object oriented design

Identifying object classes

Disadvantages of using layered architecture patterns?

In practice, providing a clean separation between layers is often difficult and a high-level layer may have to interact directly with lower-level layers rather than through the layer immediately below it. Performance can be a problem because of multiple levels of interpretation of a service request as it is processed at each layer.

Entity classes are

Independent of the system interfaces Correspond to real world entities that the system manipulates

What are the 2 types of reviews?

Informal Formal

Generalization is

Inheritance between classes Interface implementation

Flow chart symbol: Rhombus

Input/output

For object identification what does it need?

Relies on skill/experience Domain knowledge of system designers

The observer pattern: Solution description

Involves 2 abstract objects: Subject and observer. ConcreteSubject and concreteObject, which inherit the attributes of the related abstract objects. The abstract objects include general operations that are applicable in all situations. The state to be displayed is maintained in concreteSubject, which inherits operations from subject allowing it to add and remove observers (each observer corresponds to a display) and to issue a notification when the state has changed The concreteObserver maintains a copy of the state of ConcreteSubject and implements the Update() interface of observer that allows these copies to be kept in step. The concreteObserver automatically displays the state and reflects changes whenever the state is updated.

What are the 3 generic relationships between classes

Is-Part-of has-knowledge-of depends-upon

Whats a metric for structured programming

Knots

What are some important open source products

Linux MySQL Java Apache

The complexity M is then defined as....

M = E − N + 2P

Why design language?

Machine readable and processable Can be embedded with source code, therefore easier to maintain Can be represented in great detail, if designer and code are different Easy to review

Indirect measurements are:

Measure one or more attributes to measure or infer some attribute Example Pedometer and Watch - number of steps taken in a given time interval is used to infer speed

What are reviews?

Meeting conducted by and for technical people Technical assessment of a work product created during process Software quality assurance mechanism A training ground

What are the three logical components that interact with each other in a (hint) Model-View-Controller pattern? What does each component do in terms of the system data?

Model, View, controller >Model component manages the system data and associated operations on that data >View component defines and manages how the data is presented to the user >Controller component manages user interaction (e.g., key presses, mouse clicks, etc.) and passes these interactions to the View and the Model

4 elements of a pattern

Name Problem description Solution description- Not concrete, just a template for a design solution that can be instantiated in different ways Consequences- The results of trade-offs of applying the pattern

Decision Table disadvantages....

Need to decide (or know) what conditions are relevant for testing - - - this may require Domain knowledge Scaling up can be massive: 2n rules for n conditions - - - that's if the conditions are binary and gets worse if the values are more than binary

For small systems is object oriented design process effective?

No

Pipe and filter models are suitable for interactive systems?

No

Pipe/filters only provide a single path?

No

The Berkley standard distribution (BSD) license

Non reciprocal license. You don't have to re-publish any changes or modifications made to open source code and you can include the code in proprietary systems that are sold

Pattern descriptions usually make use of what?

Object oriented characteristics like inheritance and polymorphism

Objects represent what when you are developing models during the early stages of the software engineering process

Objects represent something in the real world like: a patient, prescription doctor, etc.

The observer pattern: Name

Observer

How do layered architecture patterns organize the system?

Organizes the system into layers with related functionality associated with each layer. A layer provides services to the layer above it so the lowest-level layers represent core services that are likely to be used throughout the system.

Collaborators in CRC card exercises include:

Other classes that are sent messages by this class (asymmetric)

~ in a class diagram represents what?

Package

Modules: Higher level view?

Packages Subsystems consisting of multiple parts

In the UML subsystem models are shown using what?

Packages - an encapsulation construct. This is a logical model. The actual organization of objects in the system may be different

What does Ep stand for in the total review effort formula

Preparation effort- the (in person hours) required to review a work product prior to the actual review meeting

Responsibilities in CRC card exercises include:

Problems to be solved; short verb phrases

Flow chart symbol: Square

Processing. For arithmetic and data manipulation operations

Who attends reviews?

Producer Review Leader Reviewer(s) Recorder

What are the 3 categories of McCall's triangle of quality?

Product revision product Transition product operation

Why opt for FP

Programming language independent Used readily countable characteristics that are determined early in the software process Does not "penalize" inventive (short) implementations that use fewer LOC that other more clumsy versions Makes it easier to measure the impact of reusable components

Analysis classes elicitation: Interface between the system and its actors

Protocols for information exchange Don't concentrate on visual aspects

why do we measure?

Quality assurance >assess the status of an ongoing project >track potential risks >uncover problem areas before they go "critical," >adjust work flow or tasks, >evaluate the project team's ability to control quality of software work products.

An association between 2 classes indicates that objects at one end of the association ___________ objects at the other end and may send messages to them

Recognize

Boundary classes

Reduce complexity (minimize communication and coordination bw other classes and actors by providing an interface neutral form of communication) AND Helps maintainability (normally only boundary class will need to change when interface changes)

What is validation?

Refers to a different set of tasks that ensure that the software that has been built is traceable to the customer requirements.

What is verification?

Refers to the set of tasks that ensure that software implements a specific function

what does the +1 represent in the 4 +1 view model of software architecture

Related using use cases or scenarios

What are 3 implementation issues

Reuse Most modern software is constructed by reusing existing components or systems. When you are developing software, you should make as much use as possible of existing code. Configuration management During the development process, you have to keep track of the many different versions of each software component in a configuration management system. Host-target development Production software does not usually execute on the same computer as the software development environment. Rather, you develop it on one computer (the host system) and execute it on a separate computer (the target system).

What is the system level of reuse

Reuse the entire application system

Conduction the review features

Review the product, not producer Set an agenda, maintain it Limit debate Take written notes Enunciate problem areas, but do not solve problems noted Limit the number of participants and insist upon advance preparation Develop a checklist for each product that is likely to be reviewed Allocate resources and schedule for FTRs Conduct meaningful training for all reviewers

What is the job of the recorder

Reviewer who records (in writing) all important issues raised during the review

What does Er stand for in the total review effort formula

Rework effort- in person hours that is dedicated to the correction of errors found in the review

The observer pattern: Description:

Separates the display of object state from the object itself

Programs consist of nested blocks(3)

Sequence Iteration Decision

What are client server architectures composed of?

Set of stand-alone servers which provide specific services such as printing, data management, etc. Set of clients which call on these services. Network which allows clients to access servers.

What are 2 ways to manage the exchanging of sub-system data?

Shared data is held in a central database or repository and may be accessed by all sub-systems; Each sub-system maintains its own database and passes data explicitly to other sub-systems.

Context models show what? and do not show what?

Show the other systems in the environment Do not show how the system being developed is used in that environment

What is stimuli: data

Some data arrives that has to be processed by the system

What is stimuli: events

Some event happens that triggers system processing. Events may have associated data, although this isn't always the case

What are the 2 design models

Structural and dynamic

Whats version management

Support is provided to keep track of the different versions of software components. Version management systems include facilities to coordinate development by several programmers

A program inspection involves team members who examine the code, line-by-line. T or F?

T

Analysis: The computation of metrics and the application of mathematical tools. T or F?

T

Class diagrams are used to show the classes and the associations between the classes. T or F?

T

Cyclomatic complexity is computed using the control flow graph of the program T or F?

T

Cyclomatic complexity is used to indicate the complexity of a program.

T

Defect density can be estimated for any software engineering work product. T or F?

T

Each architectural model only shows one view or perspective of the system. T or F

T

Feedback: Recommendations derived from the interpretation of product metrics transmitted to the software team. T or F?

T

Formulation: The derivation of software measures and metrics appropriate for the representation of the software that is being considered. T or F?

T

In general the earlier a software defect is discovered and corrected, the less costly it is to the overall project budget T or F?

T

In terms of Cyclomatic complexity, the nodes of the graph correspond to indivisible groups of commands of a program, and a directed edge connects two nodes if the second command might be executed immediately after the first command. T or F?

T

Interpretation: The evaluation of metrics results in an effort to gain insight into the quality of the representation T or F?

T

Interpretative guidelines and recommendations should be established for each metric T or F?

T

It is important to have a quality plan to define the desired software qualities and how the qualities are assessed. T or F?

T

It is not possible for any system to be optimized for all software quality attributes. T or F?

T

It is possible to develop different models from different perspectives such as external, structural, or behavioral. T or F?

T

Layered Architecture design organizes the system into a set of layers (or abstract machines) each of which provide a set of services. T or F?

T

Model-driven engineering is an approach in which a system is represented as a set of models that can be automatically transformed into executable code. T or F?

T

Product quality metrics are useful for highlighting anomalous components that may have quality issues. T or F?

T

Project Metrics: used to minimize the development schedule by making the adjustments necessary to avoid delays and mitigate potential problems and risks used to assess product quality on an ongoing basis and, when necessary, modify the technical approach to improve quality. T or F?

T

Quality assurance is the definition of processes and standards that should lead to high-quality products. T or F?

T

Repository architecture is used when subsystems must exchange data. T or False

T

Software analytics is the automated analysis of large volumes of software product data. T or F?

T

Software is designed rather than manufacturing making the link between process quality and product quality more complex. T or F?

T

T or F A number of common decisions span all design processes and these decisions affect the non-functional characteristics of the system.

T

T or F Architectural design is concerned with understanding how a software system should be organized and designing the overall structure of that system.

T

T or F Modules in themselves are not "good" Must design them to have good properties

T

T or F? Architectural patterns are a means of representing, sharing and reusing knowledge.

T

T or F? Halstead's "laws" have generated substantial controversy, and many believe that the underlying theory has flaws

T

The ISO 9001 standard is actually a framework for developing software standards. T or F?

T

The assessment of software quality is a subjective process. T or F?

T

The purpose of software reviews is to uncover errors and defects in work products so they can be removed before moving on to the next phase of development T or F?

T

The use of quality management techniques has led to improvements in software quality over the last 20 years. T or F?

T

UML activity diagrams show the activities in a process and how the flow of control moves from one activity to another. T or F?

T

Use case modeling is mostly used to model interactions between a system and external entities. T or F?

T

What does a realization relationship indicate

That one class implements a behavior specified by another class (an interface or protocol) An interface can be realized by many classes A class may realize many interfaces

The algorithm design model represents what?

The algorithm at a level of detail that can be reviewed for quality options

What are the pipes and what are the filters?

The arrows are the pipes (path) and filters are the nodes in graph

The second rectangle of a class diagram contains what?

The attributes

Analysis classes elicitation: Data the system uses

The core of the system, key concepts

A transition from what the system must do --> to how the system will do it is what phase?

The design phase

What does Defect density represent?

The errors found per unit of work product reviewed

Pipe Filter Models Disadvantages:

The format for data transfer has to be agreed upon between communicating transformations. Each transformation must parse its input and unparse its output to the agreed form. This increases system overhead and may mean that it is impossible to reuse functional transformations that use incompatible data structures.

Configuration management is the name given to

The general process of managing a changing software system

Multiplicity is

The number of objects that participate in the association and indicates whether an association is mandatory

What do knots count?

The number of times control paths cross

Design models show what?

The objects and object classes and their relationships

The third rectangle of a class diagram contains what?

The operations

What is the job of the producer

The person who has developed the work product

Client-server model advantages?

The principal advantage of this model is that servers can be distributed across a network. General functionality (e.g., a printing service) can be available to all clients and does not need to be implemented by all services.

Repository Pattern Disadvantages?

The repository is a single point of failure so problems in the repository affect the whole system. May be inefficiencies in organizing all communication through the repository. Distributing the repository across several computers may be difficult.

What is underlined in a class diagram

The static methods

Features of composition

The whole is the sold owner of its part-( The part object may belong only to one whole.) Multiplicity on the whole side must be zero or one The life time of the part is dependent upon the whole (The composite must manage the creation and destruction of its parts)

Describe dynamic models

They describe the dynamic interactions between objects

Describe structural design models

They describe the static structure of the system in terms of object classes and relationships

Standard procedure for creating decision tables 1) Name the condition and values each condition can assume 2) Name all possible actions that can occur 3) List all rules 4) Define the actions for each rule 5) Simplify the table True or false?

True

True or False: Categorization represents a separation of concerns that supports maintainability and minimizes complexity

True

True or false: A use case models an interaction with a system

True

True or false: Configuration management includes version control

True

True or false: Design patterns are a way of reusing the knowledge and experience of other designers?

True

True or false: History of review results can help drive future reviews

True

True or false: In a class diagram the name of the class is always in the top rectangle of the class representation

True

True or false: In a grammatical parse, objects are nouns and operations are verbs

True

True or false: Reviews are useful to determine errors before release

True

Flow chart symbol: --------> Flowline

Used to connect symbols

Direct measurements are:

Used to directly measure some property or attribute Examples Thermometer - measure temperature Pedometer - measure the number of steps taken

When are layered architecture patterns used?

Used when building new facilities on top of existing systems; when the development is spread across several teams with each team responsibility for a layer of functionality; when there is a requirement for multi-level security.

Client-server architectures are used when? Can servers be replicated? If so, is it used when the load on a system is what?

Used when data in a shared database has to be accessed from a range of locations. Because servers can be replicated, may also be used when the load on a system is variable.

The observer pattern: Problem description

Used when multiple displays of state are needed

Generic Layered architecture is organized?

User interface UI management, authentication/authorization core business logic/ application functionality, system utilities System Support (OS, database etc.)

Types of boundary classes include:

User interfaces Other system interfaces Device interfaces

What does V& V stand for?

Verification and Validation

What are the questions asked with verification and validation?

Verification- Are we building the PRODUCT right? Validation - Are we building the RIGHT product?

3 configuration management activites

Version management System integration Problem tracking

What do formal reviews consist of?

Walkthroughs Inspections Between 3- 5 people Advance prep of no more than 2 hours of work per person. Duration of review meeting should be less than 2 hours Focus is on a work product (ex: portion of a requirements model, a detailed component sign, source code for a component)

Pipe and filter model: What is a common variant of this approach?

When transformations are sequential, this is a batch sequential model which is extensively used in data processing systems

Whats problem tracking

Where support is provided to allow users to report bugs and allow developers to see who is working on the problems and when they are fixed

Whats system integration

Where support is provided to help developers define what versions of components are used to create each version of a system. This description is then used to build a system automatically by compiling and linking the required components

Collaboration are identified by determining what

Whether a class can fulfill each responsibility itself

What does WPS stand for in the defect density formula?

Work product size, a measure of the size of the work product that has been reviewed. ex: UML models, or the number of document pages, or number of lines of code

Are more and more product companies using open source approach to development?

YES- their business model is not reliant on selling a software product but on selling support for that product. They believe that involving the open source community will allow software to develop cheaper, quicker, and create a community of users for the software

GNU Lesser General public license (LGPL)

You can write components of that link to open source code without having to publish the source of these components

What is the object level of reuse

You directly reuse objects from a library rather than writing the code yourself

In a structure chart, the decision making modules should be placed a) Toward the top of the structure b) at the bottom of the structure c) in the middle of the structure d) Whenever they are needed

a

Metric is defines as...

a quantitative measure of the degree to which a system, component, or process possesses a given attribute

what are the advantages and disadvantages of using MVC

ad: Allows the data to change independently of its representation and vice versa. Supports presentation of the same data in different ways with changes made in one representation shown in all of them. disad: Can involve additional code and code complexity when the data model and interactions are simple.

What does a boundary class serve as:

an interface between the system and its environment

SState machine models show the events as

arcs between nodes

Cohesion is a qualitative indication of the degree to which a module a) can be written more compactly b) focuses on just one thing c) is able to complete its function in a timely manner d) is connected to other modules and the outside world

b

Encapsulation supports the concept of a) inheritance b) information hiding c) polymorphism d) structured design

b

In a use case diagram, common usages that are required by multiple use case diagrams are marked as a) <<extend>> b) <<include>> c) a straight line d) An open arrow

b

The number of functions that a function calls is defined as its a) Fan-in b) Fan-out c) Coupling d) Cohesion

b

Which of the following is NOT a goal for the validation activity of requirements engineering a) finding errors in interpretation b) finding errors in planned release dates c) finding missing information d) finding unrealistic requirements

b

Data flow diagrams are an example of.. a) scenario-based models b) flow diagrams c) Behavioral models d) class models

b)

We read a decision table by ________________ of rules a) rows b) columns c) actions d) statements

b)

Product Operation includes which qualities? a) Maintainability b) Reliability c) Flexibility d) Usability e) Testability f) Integrity g) Interoperability h) Portability i) Correctness j) Reusability k) Efficiency

b) d) f) i) k)

Operands include? a) Function name b) Variables c) Parenthesis d) Constants e) Type f) Brackets g) Strings h) Arithmetic/ logic operators

b) d) g)

The operations are like the

behavior

A UML class diagram represents the _________ relationships among classes a) Dynamic b) Interacting c) Static d) Data

c

Inheritance is also called a) association b) aggregation c) generalization d) composition

c

Look at practice exam Which rules can be combined? a) R1 & R4 b) R4 & R5 c) R2 & R6 d) R1 & R8

c

Which is not a decision made at the end of a formal technical review? a) accept the work product without modification b) accept the work with minor modifications c) modify the work product and continue the review d) reject the product due to severe errors

c

Collaborations identify relationships between ______

classes

Nouns are potential

classes, objects, and fields

What is NOT an advantage of Decision Tables: a) Allow us to start with a "complete" view, with no consideration of dependence b) Allow us to look at and consider "dependence," "impossible," and "not relevant" situations and eliminate some test cases. c) Allow us to detect potential errors in our specifications d) The best approach to analyze the design of the interface

d

Which is NOT a software measurement? a) Size b) understandability c) Maintainability d) all are measurements

d

Which is not a goal of information hiding? a) reducing the likelihood of "side effects" b) emphasizing communication through controlled interfaces c) Resulting in higher quality software d) Removing

d

Which of the following are the objectives for formal technical reviews? a) allow senior staff members to correct errors b) assess programmer productivity c) determining who introduced an error into a program d) uncover errors in software work products

d

Which of the following is NOT a factor in the measurement of effort for a code review a) effort to prepare for the review b) effort to hold the review c) rework effort d) training effort

d

Stamp Coupling: ________ ____________ is passed as parameter, but called module operates on only some of individual components Example calculate withholding (employee record) Why is this bad?

data structure affects understanding not clear, without reading entire module, which fields of record are accessed or changed unlikely to be reusable other products have to use the same higher level data structures passes more data than necessary e.g., uncontrolled data access can lead to computer crime

Cohesion is the __________ of interaction within module

degree

Architectural design is between ___________ and requirements engineering, as it identifies the structural _____________ in a system and the relationships between them.

design components

Content Coupling: one module___________ references contents of the other Example: module a modifies statements of module b module a refers to local data of module b in terms of some numerical displacement within b module a branches into local label of module b Why is this bad?

directly almost any change to b requires changes to a

Whats backward design in UML

doing UML after coding as documentation

Whats forward design in UML

doing UML before coding

Behavioral models are models of...

dynamic behavior--- models of a system as it is executing. This shows what happens or what is supposed to happen when a system responds to a stimulus from its environments

While you get the conditions from the requirements, what do you look for? Requirement statement that talks about... a) inputs b) processing c) outputs d) criteria e) all of the above

e

The conditions in the decision table may be interpreted as the outputs of the table, and the actions may be thought of as inputs of the table.

false, conditions may be interpreted as the inputs while the actions are thought of as the outputs

The function point metric (FP) can be used effectively as a means for.....

for measuring the functionality delivered by a system

Product Transaction includes which qualities? a) Maintainability b) Reliability c) Flexibility d) Usability e) Testability f) Integrity g) Interoperability h) Portability i) Correctness j) Reusability k) Efficiency

g) h) j)

Common Coupling: two modules have write access to the same _________ data Example two modules have access to same database, and can both read and write same record use of Java public statement while (global variable == 0) if (argument xyz > 25) module 3 (); else module 4 (); Why is this bad?

global resulting code is unreadable modules can have side-effects must read entire module to understand difficult to reuse module exposed to more data than necessary

A development view shows...

how the software is decomposed for development.

A process view shows...

how, at run-time, the system is composed of interacting processes.

Control Coupling: ________ module passes an ____________ of control to the other Example control-switch passed as an argument Why is this bad?

one, element modules are not independent module b must know the internal structure of module a this affects reusability

Informational Cohesion: module performs a number of actions, each with its _____ entry point, with _______________ code for each action, all performed on the __________ data structure

own, independent, same

UML generally defined is

pictures of an object oriented system - programming languages are not abstract enough for OO design

Model-View-Controller Pattern (MVC) separates ____________ and ___________ from the system data

presentation and interaction

Communicational Cohesion: module performs series of actions related by the _______________ to be followed by , _______________ but in addition all the actions operate on _______ data why is it bad?

procedure, product, same still leads to less reusability -> break it up

Modules: Lower level view?

procedures & functions in classical programming languages (for example, C)

The filter is a....

processing component

Nassie Schneiderman diagrams force designers to

put algorithms into predefined boxes from LARGE to SMALL

Logical Cohesion: module performs series of _______________ actions, one of which is selected by calling module Why is this bad?

related interface difficult to understand code for more than one action may be intertwined difficult to reuse

The cost of adapting and configuring the reusable software components or systems to reflect the

requirements of the system that you are developing

Legal UML: Whats descriptive language

rigid formal syntax - like programming

Constraints are _________________ ______________________noted as BOOLEAN expressions

semantic restrictions

Legal UML: Whats prescriptive language

shaped by usage and convention

When is a Repository Pattern used?

should use this pattern when you have a system in which large volumes of information are generated that has to be stored for a long time. You may also use it in data-driven systems where the inclusion of data in the repository triggers an action or tool.

Data Coupling: every argument is either a ___________ argument or a _______ ____________ in which all elements are used by the called module Example display time of arrival (flight number) get job with highest priority (job queue) Why is this good?

simple, data structure maintenance is easier good design has high cohesion & weak coupling

Identifying analysis classes: If the class (noun) is required to implement a solution then it is part of the...

solution space, otherwise if a class is necessary only to describe a solution, it is part of the problem space

Design is

specifying the structure of how a software system will be written and function without actually writing the complete implementation

The attributes are like the

status

Layered Architecture is used to model the interfacing of _________________

subsystems

The aim of configuration management is to

support the system integration process so that all developers can access the project code in a controlled way, find out what changes have been made, and compile and link components to create a system.

Architectural patterns may be represented using __________ and ______________ descriptions.

tabular, graphical

A logical view shows....

the key abstractions in the system as objects or object classes.

A physical view shows...

the system hardware and how software components are distributed across the processors in the system.

Give an example of a nonfunctional requirement

the system must be user-friendly


Set pelajaran terkait

CHEM 211 Chapter 1 & 2 Homework questions

View Set

Words to Go! - Book G - Lesson 2

View Set

Chapter 19: Nursing Management of Pregnancy at Risk: Pregnancy-Related Complications

View Set

SPE 525 Measurement and experimental design

View Set

Milady's Standard Cosmetology Chp. 6

View Set

Types of chemical reactions review

View Set