AAAAAAAAAAAAAAAAAAAAAAAA

Ace your homework & exams now with Quizwiz!

How can informal graphical models be improved?

By adding semantics to the diagram editor through scripts

What does a Behavioral Viewpoints capture?

Capture the expected behavior of (parts of) a system

What is a concurrency viewpoint?

Captures how concurrency and threading will be managed in a system.

What does the "Cautions" relationship with Connector Dimension Interrelationships mean

Combinations may result in unstable or unreliable connectors

What are the 4 roles that need to be determined for a software connector?

Communication, coordination, conversion, facilitation

What is Koala Language for modeling?

Darwin-inspired notation for specifying product lines of embedded consumer-electronics devices

What does unit interconnection define?

Defines relations between system's unit. Units are the components and the basic unit relationship is a dependency.

What is syntactic interconnection?

Describes relationships among syntactic elements of programming languages

What are Static vs Dynamic aspect inconsistencies with Views?

Dynamic aspects (e.g. behavioral specifications) conflict with static aspects (topologies)

All connectors can be composed. True or False

False

It is feasible to capture everything we want to model in a single model or document. True or False

False

What is informal graphical modeling?

General diagrams produced in tools like Powerpoint

What are refinement inconsistencies with Views?

High-level (more abstract) and low-level (more concrete) views of the same parts of a system conflict

Views are consistent when?

If the design decisions they contain are compatible

Views are inconsistent when?

If two views assert design decisions that cannot simultaneously be true.

What is a model "viewpoint"

It is a concern (or criteria) in modeling

What is a model "View"

It is a subset of a model capturing certain design decisions

Types of Domain-and style-specific languages to Modeling (3)

Koala, Weaves, AADL

What is the one disadvantage to Koala?

Limited to structural specification with additional focus on interfaces.

Types of generic approaches to modeling (3)

Natural language, Powerpoint-style modeling, UML

What 4 properties of interaction does semantic interconnections ensures?

Robustness, reliability, security, availability

What are the 3 fundamental use cases for an Intent

Starting an activity, Start a service, delivering a broadcast

What type of interconnection is this: IM = ( {methods, types, variables, locations}, {"is def at", "is set at", "is used at", "is del from", "is changed to", "is added to"})

Syntactic

What are domain and style specific ADLs good for?

They are great for providing more advanced features and or reduced complexity.

What is an Implicit intent

They do not name a specific component, but instead declare a general action to perform, which allows a component from another app to handle it. For example, if you want to show the user a location on a map, you can use an implicit intent to request that another capable app show a specified location on a map.

How can Ambiguity in Natural Language be reduced?

Through the use of Templates where there are fill-in-the-black wordage (think behave tests)

Temporary inconsistencies are a natural part of exploratory design. True or False

True

There is a distinction between dynamic aspects of a model and a dynamic model. True or False

True

True or False: Android Runtime can run multiple virtual machines on low-memory devices by executing DEX files

True

TypeScript transcompiles to JavaScript. True or False

True

What does the "Prohibits" relationship with Connector Dimension Interrelationships mean

Two dimensions can never be composed into a single connector

What are Android System Apps?

a set of core apps for email, SMS messaging, calendars, internet browsing, contacts, and more.

What does Android Content Providers do

enable apps to access data from other apps, such as the Contacts app, or to share their own data

What does the Android Notification Manager do

enables all apps to display custom alerts in the status bar

What is a Linux Kernel?

foundation of the Android platform, security

When is a model ambiguous?

if it is open to more than one interpretation

What is a Service worker in a PWA?

is a background script that runs separately from your web page. Its main job is to respond to events (such as network requests) and push notices from your server. A service worker is on demand. Meaning it is only active when it gets an event and runs only as long as it needs to process it. Basically, it's a programmable proxy.

What is an Intent in Android

is a messaging object you can use to request an action from another app component.

What is Angular

is a platform and framework for building single-page applications (SPA) using HTML and TypeScript.

What is TypeScript?

is a primary language for Angular application development. It is a programming language developed and maintained by Microsoft. It is a strict syntactical superset of JavaScript and adds optional static typing to the language.

What is a progressive web application (PWA)?

is a type of application software delivered through the web, built using common web technologies including HTML, CSS and JavaScript. It is intended to work on any platform that uses a standards-compliant browser, including both desktop and mobile devices.

When is a model accurate?

is accurate if it is correct, conforms to fact, or deviates from correctness within acceptable limits

What is an Architectural Model?

is an artifact that captures some or all of the design decisions that comprise a system's architecture

What is Node.js

is an open-source, cross-platform, back-end JavaScript runtime environment that runs on the V8 engine and executes JavaScript code outside a web browser.

What is Angular written in and who is it written by?

is written in TypeScript led by the Angular Team at Google and by a community of individuals and corporations. It implements core and optional functionality as a set of TypeScript libraries that you import into your apps.

What architecture style does Android closely resemble?

it closely resembles the Layered architecture style. In a Layered architecture style, the architecture is separated into layers, wherein a program in one layer may obtain services from a layer below it. The communication between the layers facilitates the completion of certain tasks like displaying a restaurants website, providing a map with the restaurant's location, or to call the restaurant.

What does the Android Activity Manager do

manages the lifecycle of apps and provides a common navigation back stack

What does the Android Resource Manager provide

provides access to non-code resources such as localized strings, graphics, and layout files

What is an Explicit Intent

specify which application will satisfy the intent, by supplying either the target app's package name or a fully-qualified component class name. You'll typically use an explicit intent to start a component in your own app, because you know the class name of the activity or service you want to start.

What architecture style does PWA use?

use the Client-Server Architecture Style. Newer web architectures use Client-side rendering where JavaScript runs in the browser and manipulates the DOM. The main advantage is that CSR can selectively re-render portions of the page when new data is received from server.

What does the "Restricts" relationship with Connector Dimension Interrelationships mean

1)Dimensions are not always required to be used together 2)Certain dimension combinations may be invalid

What are the 3 main characteristics of syntactic interconnections?

1)Finer-grain interconnections 2)Interconnections are static & dynamic 3)Incomplete interconnection specification

Prior to Android version 5.0, which runtime environment was used?

Dalvik

Types of early arch description languages (ADL) (3)

Darwin, Rapide, Wright

What type of interconnection is this : IM = ({files},{"include"})?

Unit

What is Architectural Modeling Notation?

is a language or means of capturing design decisions.

What is an example of direct inconsistencies with Views?

"The system runs on two hosts" and "the system runs on three hosts"

What are the advantages of Wright ADL ? (2)

1) Structural specification similar to Darwin or Rapide 2) Formal interface specifications can be translated automatically into CSP an analyzed with tools

What are the advantages to UMLs? (3)

1) Support for a diverse array of viewpoints focused on many common software engineering concerns 2) Ubiquity improves comprehensibility 3) Extensive documentation and tool support from many vendors

What does the "Requires" relationship with Connector Dimension Interrelationships mean

Choice of one dimension mandates the choice of another

In many systems a connector of multiple types may be required to service (a subset of) the components. True or False

True

Architectural models tend to be functional. Is it still important to capture the non-functional decisions even if they cannot be automatically or deterministically interpreted or analyzed? Yes or No

Yes

What is Architectural Modeling?

is the reification and documentation of design decisions that comprise a system's architecture

Android: View System refers to what?

is used for building an app's UI, including lists, grids, text boxes, buttons, and even an embeddable web browser

Describe semantic interconnections

-Expresses how system components are meant to be used -Component designers' intentions -Captures how system components are actually used -Component users' (i.e., system builders') intention -Interconnection semantics can be formally specified -Pre- & post-conditions

What are the 2 advantages of Koala

1) Advanced product-line features left you specify many systems in a single model 2) Direct mapping to implemented systems promotes design and code reuse

What are the disadvantages to Informal Graphical Modeling? (2)

1) Ambiguous 2) Cannot be effectively process or analyzed by machines

What are the disadvantages to Natural Language? (3)

1) Ambiguous 2) often verbose 3) Cannot be effectively processed by machines/software

What are examples of syntactic interconnections? (4)

1) Automated software change management 2) Static analysis e.g., Detection of unreachable code by compilers 3) Smart recompilation....Changes inside unit ->recompilation of only the changes 4) System modeling Finer level of granularity than unit-IM

What are semantic interconnections characteristics (3)

1) Builds on syntactic interconnections 2) Interconnections are static & dynamic 3) Complete interconnection specification

What are the advantages of informal Graphical Modeling (3)

1) Can be aesthetically pleasing 2) Size limitations 3) Extremely flexible due to large symbolic vocab

What are 3 considerations for choosing a Software Connector?

1) Determine its appropriate type(s) 2) Determine its dimensions of interest 3) Select appropriate values for each dimension

What are the advantages of Weaves (2)?

1) Extremely optimized notation (even simpler than darwin diagrams) 2) Close mapping to implemented systems

Describe examples of the functional and non-functional parts of the system that we model?

1) Functional "The system prints medical records" 2)Non-functional "The system prints medical records quickly and confidentially."

Well known Composite Connectors (4)

1) Grid Connectors 2) Peer to Peer Connectors 3) Client-Server Connectors 4) Event-Based Connectors

What are the disadvantages of Wright ADL (3)

1) High learning curve 2) No direct mapping to implemented systems 3) Addresses a small number of system properties relative to cost of use.

What are the advantages to Natural Language? (4)

1) Highly Expressive 2) Accessible to all stakeholders 3) Good for capturing non-rigorous or informal architectural elements like rationale or non-functional requirements 4) Plentiful tools available

What elements and constraints do we model? (5)

1) Inclusion of specific basic elements (e.g., components, connectors, interfaces) 2) Component, connector, and interface types 3) Constraints on interactions 4) Behavioral constraints 5) Concurrency constraints

What 4 things is semantic interconnections necessary for?

1) Large components 2) Complex interactions 3) Heterogeneity 4) Component reuse

What are the disadvantages to Darwin ADL? (2)

1) Limited usefulness beyond simple structural modeling 2) No notion of explicit connectors

What are 3 commonly used viewpoints? Describe them.

1) Logical - Captures the logical (often software) entities in a system and how they are interconnected. 2) Physical - Captures the physical (often hardware) entities in a system and how they are interconnected. 3) Deployment - Capture how logical entities are mapped onto physical entities.

What are the disadvantages to UMLs? (3)

1) Needs customization through profiles to reduce ambiguity 2) Difficult to assess consistency among views 3) Difficult to capture foreign concepts or views

What are the disadvantages of Rapide ADL? (3)

1) No natural or explicit mapping to implemented systems 2) high learning curve 3) important tool support is difficult to run on modern machines

What are 4 key features of Node.js

1) Open source --> is an open-source, cross-platform, back-end JavaScript runtime environment that runs on the V8 engine and executes JavaScript code outside a web browser. 2) Server-side scripting --> lets developers use JavaScript to write command line tools and for server-side scripting - running scripts server-side to produce dynamic web page content before the page is sent to the user's web browser. 3) JavaScript everywhere --> represents a "JavaScript everywhere" paradigm, unifying web-application development around a single programming language, rather than different languages for server-side and client-side scripts. 4) Event-Driven Arch --> has an event-driven architecture capable of asynchronous I/O. These design choices aim to optimize throughput and scalability in web applications with many input/output operations, as well as for real-time Web applications.

What connector types does a composite Grid connector contain?

1) Procedure Calls 2) Data Access 3) Stream 4) Distributor

What is the advantages of Darwin ADL? (4)

1) Simple, straightforward mechanism for modeling structural dependencies 2) Interesting way to specify repeated elements through programmatic constructs 3) Can be modeled in pi-calculus for formal analysis 4) Can specify hierarchical structures

What Static and Dynamic aspects do we model? (2)

1) Static aspects of a system do not change as a system runs e.g., topologies, assignment of components/connectors to hosts 2) Dynamic aspects do change as a system runs e.g., State of individual components or connectors, state of a data flow through a system

What are the 3 software interconnection models?

1) Unit interconnection 2) Syntactic interconnection 3) Semantic interconnection

What are 2 key advantages of PWAs?

1) provide the same utilities as conventionally installed apps including offline web pages, push notifications and fast speed load times. 2) They work on-demand and are always accessible, without taking up a smart phone's valuable memory or data.

What are the advantages of the Rapide ADL? (2)

1) unique and expressive language for describing asynchronously communicating components 2) Tool-set supports simulation of models and graphical visualization of event traces

What are the 3 main characteristics of unit interconnections?

1)Coarse-grain interconnections 2)Interconnections are static 3)Does not describe component interactions (only dependencies)

How does Stakeholder Driven modeling work?

1)Stakeholders identify aspects of the system they are concerned about 2)Stakeholders decide the relative importance of these concerns 3)Modeling depth should roughly mirror the relative importance of concerns

Why are syntactic interconnections incomplete?

1)Valid syntactic interconnections may not be allowed by semantics 2)Operation ordering, communication transactions e.g., Pop on an empty stack 3)Violation of (intended) operation semantics e.g., Trying to use calendar add operation to add integers

What are the 2 questions to ask when determining the correct values for the different connector dimensions?

1)What are the appropriate values? 2)What values are imposed by your favorite programming language(s)?

How do we choose what to Architecturally Model? What 3 critical decisions do architects and stakeholders have to make?

1.What architectural decisions and concepts should be modeled, 2.At what level of detail, and 3.With how much rigor or formality

When is a model precise?

A model is precise if it is sharply exact or delimited

After Android 5.0, which runtime environment was used?

ART. Each app runs its own process with its own instance of ART

Types of Extensible architecture description languages

Acme, ADML, xADL

What is Weaves notation?

An architectural style and notation for modeling systems of small-grain tool fragments that communicate through data flows of objects

What connector types does a composite P2P connector contain? (4)

Arbitrator, Data Access, Stream, Distributor


Related study sets

Acts IV and V Quotations Test King Lear

View Set

MGT312 Chapter 3 Terms & Learn Smart

View Set

BI 231/241 Exam 1 Review - Tissue

View Set

Lesson 2 homework: acid-base balance and fluid and electrolytes

View Set

BIO100 Exam #3 DNA Profiling Study Guide

View Set

Ch 45: Nursing Care of a Family when a child has a Gastrointestinal Disorder

View Set